[xml/sgml-commit] [xmlsec1] 26/32: Imported Upstream version 1.2.24

Rene Engelhard rene at moszumanska.debian.org
Sun Jun 25 17:46:34 UTC 2017


This is an automated email from the git hooks/post-receive script.

rene pushed a commit to branch experimental
in repository xmlsec1.

commit 7edb3e6de8216327002a281f65145e3eb60cb84d
Author: Rene Engelhard <rene at rene-engelhard.de>
Date:   Fri Jun 23 13:00:36 2017 +0200

    Imported Upstream version 1.2.24
---
 ChangeLog                                          |    5 +
 HACKING                                            |   10 +-
 Makefile.am                                        |    9 +-
 Makefile.in                                        |   11 +-
 aclocal.m4                                         |  211 +-
 apps/Makefile.in                                   |    4 +
 apps/crypto.c                                      |  173 +-
 apps/xmlsec.c                                      |  126 +-
 config.guess                                       |   47 +-
 config.h.in                                        |    3 +-
 config.sub                                         |   36 +-
 configure                                          | 2250 +++++---
 configure.ac                                       |   94 +-
 docs/Makefile.in                                   |    4 +
 docs/api/Makefile.am                               |   69 +-
 docs/api/Makefile.in                               |   73 +-
 docs/api/index.html                                |  403 +-
 docs/api/left-insensitive.png                      |  Bin 0 -> 333 bytes
 docs/api/left.png                                  |  Bin 187 -> 193 bytes
 docs/api/right-insensitive.png                     |  Bin 0 -> 233 bytes
 docs/api/right.png                                 |  Bin 186 -> 185 bytes
 docs/api/src/chapters/using-x509-certs.sgml        |    2 +-
 docs/api/src/xmlsec.sgml                           |  187 +-
 docs/api/tmpl/base/errors.sgml                     |   14 +
 docs/api/tmpl/base/private.sgml                    |   31 +-
 docs/api/tmpl/base/xmlsec-unused.sgml              |  234 +
 docs/api/tmpl/base/xmlsec.sgml                     |   48 +-
 docs/api/tmpl/base/xmltree.sgml                    |   22 -
 docs/api/tmpl/nss/crypto.sgml                      |   64 +
 docs/api/tmpl/openssl/app.sgml                     |    2 +-
 docs/api/tmpl/openssl/crypto.sgml                  |  147 +-
 docs/api/tmpl/openssl/x509.sgml                    |    2 +-
 docs/api/tmpl/openssl/xmlsec-openssl-unused.sgml   |   22 +-
 docs/api/up-insensitive.png                        |  Bin 0 -> 288 bytes
 docs/api/xmlsec-app.html                           | 2881 +++++-----
 docs/api/xmlsec-base64.html                        |  674 ++-
 docs/api/xmlsec-bn.html                            | 1550 +++--
 docs/api/xmlsec-buffer.html                        | 1306 +++--
 docs/api/xmlsec-custom-keys-manager.html           |   85 +-
 docs/api/xmlsec-decrypt-with-keys-mngr.html        |   79 +-
 docs/api/xmlsec-decrypt-with-signle-key.html       |   79 +-
 docs/api/xmlsec-dl.html                            |  413 +-
 docs/api/xmlsec-encrypt-dynamic-template.html      |  115 +-
 docs/api/xmlsec-encrypt-template-file.html         |  111 +-
 docs/api/xmlsec-encrypt-with-session-key.html      |  121 +-
 docs/api/xmlsec-encryption-klasses.html            |   70 +-
 docs/api/xmlsec-errors.html                        | 1265 +++--
 .../xmlsec-examples-sign-dynamimc-template.html    |  117 +-
 docs/api/xmlsec-examples-sign-template-file.html   |  112 +-
 docs/api/xmlsec-examples-sign-x509.html            |  121 +-
 docs/api/xmlsec-examples.html                      |  142 +-
 docs/api/xmlsec-gcrypt-app.html                    | 1040 ++--
 docs/api/xmlsec-gcrypt-crypto.html                 | 1920 ++++---
 docs/api/xmlsec-gcrypt-ref.html                    |   72 +-
 docs/api/xmlsec-gnutls-app.html                    | 1040 ++--
 docs/api/xmlsec-gnutls-crypto.html                 | 1754 +++---
 docs/api/xmlsec-gnutls-ref.html                    |   75 +-
 docs/api/xmlsec-gnutls-x509.html                   |  751 +++
 docs/api/xmlsec-index.html                         | 3159 ++++++-----
 docs/api/xmlsec-io.html                            |  406 +-
 docs/api/xmlsec-keyinfo.html                       | 1164 ++--
 docs/api/xmlsec-keys.html                          | 2637 +++++----
 docs/api/xmlsec-keysdata.html                      | 4298 +++++++-------
 docs/api/xmlsec-keysmngr.html                      | 1579 +++---
 docs/api/xmlsec-list.html                          | 1459 +++--
 docs/api/xmlsec-membuf.html                        |  204 +-
 docs/api/xmlsec-mscrypto-app.html                  | 1412 +++--
 docs/api/xmlsec-mscrypto-certkeys.html             |  490 +-
 docs/api/xmlsec-mscrypto-crypto.html               | 1920 ++++---
 docs/api/xmlsec-mscrypto-keysstore.html            |  341 +-
 docs/api/xmlsec-mscrypto-ref.html                  |   81 +-
 docs/api/xmlsec-mscrypto-x509.html                 |  930 ++-
 docs/api/xmlsec-nodeset.html                       | 1064 ++--
 docs/api/xmlsec-notes-compiling-others.html        |   62 +-
 docs/api/xmlsec-notes-compiling-unix.html          |  149 +-
 docs/api/xmlsec-notes-compiling-windows.html       |  119 +-
 docs/api/xmlsec-notes-compiling.html               |   81 +-
 docs/api/xmlsec-notes-contexts.html                |   85 +-
 docs/api/xmlsec-notes-custom-keys-store.html       |   80 +-
 docs/api/xmlsec-notes-decrypt.html                 |  113 +-
 .../xmlsec-notes-dynamic-encryption-templates.html |   91 +-
 .../xmlsec-notes-dynamic-signature-templates.html  |   91 +-
 docs/api/xmlsec-notes-encrypt.html                 |  142 +-
 docs/api/xmlsec-notes-include-files.html           |   99 +-
 docs/api/xmlsec-notes-init-shutdown.html           |  120 +-
 docs/api/xmlsec-notes-keys-manager-sign-enc.html   |   92 +-
 .../api/xmlsec-notes-keys-mngr-verify-decrypt.html |   88 +-
 docs/api/xmlsec-notes-keys.html                    |   77 +-
 docs/api/xmlsec-notes-keysmngr.html                |   91 +-
 docs/api/xmlsec-notes-new-crypto-functions.html    |   85 +-
 docs/api/xmlsec-notes-new-crypto-key-stores.html   |   46 +
 docs/api/xmlsec-notes-new-crypto-keys.html         |   69 +-
 docs/api/xmlsec-notes-new-crypto-klasses.html      |  120 +-
 .../xmlsec-notes-new-crypto-sharing-results.html   |   64 +-
 .../xmlsec-notes-new-crypto-simple-keys-mngr.html  |   64 +-
 docs/api/xmlsec-notes-new-crypto-skeleton.html     |  161 +-
 docs/api/xmlsec-notes-new-crypto-transforms.html   |  120 +-
 docs/api/xmlsec-notes-new-crypto.html              |  110 +-
 docs/api/xmlsec-notes-overview.html                |   63 +-
 docs/api/xmlsec-notes-sign-encrypt.html            |   87 +-
 docs/api/xmlsec-notes-sign-x509.html               |  108 +-
 docs/api/xmlsec-notes-sign.html                    |  124 +-
 docs/api/xmlsec-notes-simple-keys-store.html       |   83 +-
 docs/api/xmlsec-notes-structure.html               |   75 +-
 docs/api/xmlsec-notes-templates.html               |   77 +-
 docs/api/xmlsec-notes-transforms.html              |  114 +-
 docs/api/xmlsec-notes-verify-decrypt.html          |   89 +-
 docs/api/xmlsec-notes-verify-x509.html             |  105 +-
 docs/api/xmlsec-notes-verify.html                  |  119 +-
 docs/api/xmlsec-notes-x509.html                    |   77 +-
 docs/api/xmlsec-notes.html                         |  203 +-
 docs/api/xmlsec-nss-app.html                       | 1387 +++--
 docs/api/xmlsec-nss-bignum.html                    |  238 +-
 docs/api/xmlsec-nss-crypto.html                    | 1737 +++---
 docs/api/xmlsec-nss-keysstore.html                 |  341 +-
 docs/api/xmlsec-nss-pkikeys.html                   |  357 +-
 docs/api/xmlsec-nss-ref.html                       |   84 +-
 docs/api/xmlsec-nss-x509.html                      |  919 ++-
 docs/api/xmlsec-openssl-app.html                   | 1490 +++--
 docs/api/xmlsec-openssl-bn.html                    |  230 +-
 docs/api/xmlsec-openssl-crypto.html                | 3141 ++++++-----
 docs/api/xmlsec-openssl-evp.html                   |  305 +-
 docs/api/xmlsec-openssl-ref.html                   |   81 +-
 docs/api/xmlsec-openssl-x509.html                  | 1117 ++--
 docs/api/xmlsec-parser.html                        |  362 +-
 docs/api/xmlsec-ref.html                           |  135 +-
 docs/api/xmlsec-reference.html                     |  226 +-
 docs/api/xmlsec-signature-klasses.html             |   70 +-
 docs/api/xmlsec-templates.html                     | 2549 +++++----
 docs/api/xmlsec-transforms.html                    | 5934 ++++++++++----------
 docs/api/xmlsec-verify-with-key.html               |   79 +-
 docs/api/xmlsec-verify-with-keys-mngr.html         |   79 +-
 docs/api/xmlsec-verify-with-restrictions.html      |  157 +-
 docs/api/xmlsec-verify-with-x509.html              |   79 +-
 docs/api/xmlsec-version.html                       |  157 +-
 docs/api/xmlsec-x509.html                          |  239 +-
 docs/api/xmlsec-xmldsig.html                       | 1611 +++---
 docs/api/xmlsec-xmlenc.html                        | 1106 ++--
 docs/api/xmlsec-xmlsec.html                        |  539 +-
 docs/api/xmlsec-xmltree.html                       | 3327 ++++++-----
 docs/authors.html                                  |   46 +
 docs/bugs.html                                     |   46 +
 docs/c14n.html                                     |   46 +
 docs/documentation.html                            |   46 +
 docs/download.html                                 |   65 +-
 docs/faq.html                                      |   46 +
 docs/index.html                                    |   72 +-
 docs/news.html                                     |   62 +
 docs/related.html                                  |   46 +
 docs/xmldsig-verifier.html                         |   46 +
 docs/xmldsig.html                                  |   46 +
 docs/xmlenc.html                                   |   46 +
 docs/xmlsec-man.html                               |    8 +
 include/Makefile.in                                |    4 +
 include/xmlsec/Makefile.in                         |    4 +
 include/xmlsec/app.h                               |    2 +-
 include/xmlsec/base64.h                            |    2 +-
 include/xmlsec/bn.h                                |    2 +-
 include/xmlsec/buffer.h                            |    2 +-
 include/xmlsec/crypto.h                            |    2 +-
 include/xmlsec/dl.h                                |    2 +-
 include/xmlsec/errors.h                            |   45 +-
 include/xmlsec/exports.h                           |    2 +-
 include/xmlsec/gcrypt/Makefile.in                  |    4 +
 include/xmlsec/gcrypt/app.h                        |    4 +-
 include/xmlsec/gcrypt/crypto.h                     |    4 +-
 include/xmlsec/gcrypt/symbols.h                    |    4 +-
 include/xmlsec/gnutls/Makefile.in                  |    4 +
 include/xmlsec/gnutls/app.h                        |    4 +-
 include/xmlsec/gnutls/crypto.h                     |    4 +-
 include/xmlsec/gnutls/symbols.h                    |    4 +-
 include/xmlsec/gnutls/x509.h                       |    4 +-
 include/xmlsec/io.h                                |    2 +-
 include/xmlsec/keyinfo.h                           |    2 +-
 include/xmlsec/keys.h                              |    2 +-
 include/xmlsec/keysdata.h                          |    2 +-
 include/xmlsec/keysmngr.h                          |    2 +-
 include/xmlsec/list.h                              |    2 +-
 include/xmlsec/membuf.h                            |    2 +-
 include/xmlsec/mscrypto/Makefile.in                |    4 +
 include/xmlsec/mscrypto/app.h                      |    4 +-
 include/xmlsec/mscrypto/certkeys.h                 |    4 +-
 include/xmlsec/mscrypto/crypto.h                   |    4 +-
 include/xmlsec/mscrypto/keysstore.h                |    4 +-
 include/xmlsec/mscrypto/symbols.h                  |    4 +-
 include/xmlsec/mscrypto/x509.h                     |    4 +-
 include/xmlsec/nodeset.h                           |    2 +-
 include/xmlsec/nss/Makefile.in                     |    4 +
 include/xmlsec/nss/app.h                           |    4 +-
 include/xmlsec/nss/bignum.h                        |    4 +-
 include/xmlsec/nss/crypto.h                        |   58 +-
 include/xmlsec/nss/keysstore.h                     |    4 +-
 include/xmlsec/nss/pkikeys.h                       |    4 +-
 include/xmlsec/nss/symbols.h                       |    7 +-
 include/xmlsec/nss/x509.h                          |    4 +-
 include/xmlsec/openssl/Makefile.in                 |    4 +
 include/xmlsec/openssl/app.h                       |    6 +-
 include/xmlsec/openssl/bn.h                        |    4 +-
 include/xmlsec/openssl/crypto.h                    |  114 +-
 include/xmlsec/openssl/evp.h                       |    4 +-
 include/xmlsec/openssl/symbols.h                   |    4 +-
 include/xmlsec/openssl/x509.h                      |    6 +-
 include/xmlsec/parser.h                            |    2 +-
 include/xmlsec/private.h                           |   86 +-
 include/xmlsec/private/Makefile.in                 |    4 +
 include/xmlsec/private/xslt.h                      |    2 +-
 include/xmlsec/skeleton/app.h                      |    4 +-
 include/xmlsec/skeleton/crypto.h                   |    4 +-
 include/xmlsec/skeleton/symbols.h                  |    4 +-
 include/xmlsec/soap.h                              |   50 +-
 include/xmlsec/strings.h                           |    2 +-
 include/xmlsec/templates.h                         |    2 +-
 include/xmlsec/transforms.h                        |    2 +-
 include/xmlsec/version.h                           |   12 +-
 include/xmlsec/version.h.in                        |    6 +-
 include/xmlsec/x509.h                              |    2 +-
 include/xmlsec/xmldsig.h                           |    2 +-
 include/xmlsec/xmlenc.h                            |    2 +-
 include/xmlsec/xmlsec.h                            |   89 +-
 include/xmlsec/xmltree.h                           |    6 +-
 install-sh                                         |   23 +-
 ltmain.sh                                          | 5533 +++++++++++-------
 m4/libtool.m4                                      | 2521 +++++----
 m4/ltoptions.m4                                    |  127 +-
 m4/ltsugar.m4                                      |    7 +-
 m4/ltversion.m4                                    |   12 +-
 m4/lt~obsolete.m4                                  |    7 +-
 man/Makefile.in                                    |    4 +
 man/xmlsec1-config.1                               |    4 +-
 man/xmlsec1.1                                      |   14 +-
 scripts/build_release.sh                           |    2 +-
 scripts/change-release.sh                          |   34 -
 scripts/push_release.sh                            |   30 -
 scripts/test_release.sh                            |   12 -
 src/Makefile.am                                    |    1 +
 src/Makefile.in                                    |    5 +
 src/app.c                                          |  446 +-
 src/base64.c                                       |  219 +-
 src/bn.c                                           |  209 +-
 src/buffer.c                                       |  104 +-
 src/c14n.c                                         |  138 +-
 src/dl.c                                           |  557 +-
 src/enveloped.c                                    |   35 +-
 src/errors.c                                       |   23 +-
 src/errors_helpers.h                               |  872 +++
 src/gcrypt/Makefile.am                             |    4 -
 src/gcrypt/Makefile.in                             |   60 +-
 src/gcrypt/app.c                                   |  201 +-
 src/gcrypt/asn1.c                                  |  175 +-
 src/gcrypt/asymkeys.c                              |  499 +-
 src/gcrypt/ciphers.c                               |  199 +-
 src/gcrypt/crypto.c                                |   23 +-
 src/gcrypt/digests.c                               |   61 +-
 src/gcrypt/globals.h                               |   56 +-
 src/gcrypt/hmac.c                                  |  108 +-
 src/gcrypt/kw_aes.c                                |  134 +-
 src/gcrypt/kw_des.c                                |  143 +-
 src/gcrypt/signatures.c                            |  271 +-
 src/gcrypt/symkeys.c                               |    5 +-
 src/globals.h                                      |    3 +
 src/gnutls/Makefile.am                             |    4 -
 src/gnutls/Makefile.in                             |   64 +-
 src/gnutls/app.c                                   |  287 +-
 src/gnutls/asymkeys.c                              |  107 +-
 src/gnutls/ciphers.c                               |    4 +-
 src/gnutls/crypto.c                                |   35 +-
 src/gnutls/digests.c                               |    4 +-
 src/gnutls/globals.h                               |   75 +-
 src/gnutls/hmac.c                                  |    4 +-
 src/gnutls/kw_aes.c                                |    5 +-
 src/gnutls/kw_des.c                                |    5 +-
 src/gnutls/signatures.c                            |    4 +-
 src/gnutls/symkeys.c                               |    5 +-
 src/gnutls/x509.c                                  |  664 +--
 src/gnutls/x509utils.c                             |  448 +-
 src/gnutls/x509vfy.c                               |  236 +-
 src/io.c                                           |   69 +-
 src/keyinfo.c                                      |  363 +-
 src/keys.c                                         |  258 +-
 src/keysdata.c                                     |  255 +-
 src/keysmngr.c                                     |  151 +-
 src/kw_aes_des.c                                   |   98 +-
 src/kw_aes_des.h                                   |    4 +-
 src/list.c                                         |   62 +-
 src/membuf.c                                       |   39 +-
 src/mscrypto/Makefile.am                           |    4 -
 src/mscrypto/Makefile.in                           |   68 +-
 src/mscrypto/app.c                                 |  479 +-
 src/mscrypto/certkeys.c                            |  976 ++--
 src/mscrypto/ciphers.c                             |  235 +-
 src/mscrypto/crypto.c                              |  228 +-
 src/mscrypto/csp_calg.h                            |    4 +-
 src/mscrypto/csp_oid.h                             |    4 +-
 src/mscrypto/digests.c                             |   85 +-
 src/mscrypto/globals.h                             |   57 +
 src/mscrypto/hmac.c                                |  147 +-
 src/mscrypto/keysstore.c                           |  165 +-
 src/mscrypto/kt_rsa.c                              |  169 +-
 src/mscrypto/kw_aes.c                              |  125 +-
 src/mscrypto/kw_des.c                              |  207 +-
 src/mscrypto/private.h                             |    4 +-
 src/mscrypto/signatures.c                          |  182 +-
 src/mscrypto/symkeys.c                             |  151 +-
 src/mscrypto/x509.c                                |  789 +--
 src/mscrypto/x509vfy.c                             |  356 +-
 src/mscrypto/xmlsec-mingw.h                        |    4 +-
 src/nodeset.c                                      |   60 +-
 src/nss/Makefile.am                                |    4 -
 src/nss/Makefile.in                                |   63 +-
 src/nss/README                                     |    2 +-
 src/nss/app.c                                      |  510 +-
 src/nss/bignum.c                                   |   34 +-
 src/nss/ciphers.c                                  |  181 +-
 src/nss/crypto.c                                   |   84 +-
 src/nss/digests.c                                  |   78 +-
 src/nss/globals.h                                  |   44 +
 src/nss/hmac.c                                     |  121 +-
 src/nss/keysstore.c                                |  132 +-
 src/nss/keytrans.c                                 |  778 ++-
 src/nss/kw_aes.c                                   |  157 +-
 src/nss/kw_des.c                                   |  163 +-
 src/nss/pkikeys.c                                  |  632 +--
 src/nss/signatures.c                               |  376 +-
 src/nss/symkeys.c                                  |    5 +-
 src/nss/x509.c                                     |  695 +--
 src/nss/x509vfy.c                                  |  274 +-
 src/openssl/Makefile.am                            |    6 +-
 src/openssl/Makefile.in                            |   66 +-
 src/openssl/app.c                                  |  606 +-
 src/openssl/bn.c                                   |   49 +-
 src/openssl/ciphers.c                              |  183 +-
 src/openssl/crypto.c                               |   56 +-
 src/openssl/digests.c                              |  105 +-
 src/openssl/evp.c                                  |  708 +--
 src/openssl/evp_signatures.c                       |  140 +-
 src/openssl/globals.h                              |   75 +
 src/openssl/hmac.c                                 |  167 +-
 src/openssl/kt_rsa.c                               |  280 +-
 src/openssl/kw_aes.c                               |  100 +-
 src/openssl/kw_des.c                               |  132 +-
 src/openssl/openssl11_wrapper.h                    |  213 -
 src/openssl/openssl_compat.h                       |   62 +
 src/openssl/signatures.c                           |  386 +-
 src/openssl/symkeys.c                              |    5 +-
 src/openssl/x509.c                                 |  821 +--
 src/openssl/x509vfy.c                              |  453 +-
 src/parser.c                                       |  215 +-
 src/relationship.c                                 |  252 +-
 src/skeleton/Makefile.am                           |    4 -
 src/skeleton/app.c                                 |  110 +-
 src/skeleton/crypto.c                              |   16 +-
 src/skeleton/globals.h                             |    3 +
 src/soap.c                                         |  319 +-
 src/strings.c                                      |    2 +-
 src/templates.c                                    |  720 +--
 src/transforms.c                                   |  746 +--
 src/x509.c                                         |    2 +-
 src/xmldsig.c                                      |  423 +-
 src/xmlenc.c                                       |  382 +-
 src/xmlsec.c                                       |  114 +-
 src/xmltree.c                                      |  433 +-
 src/xpath.c                                        |  303 +-
 src/xslt.c                                         |  152 +-
 .../enveloping-sha1-ecdsa-sha1.xml                 |   34 +-
 .../enveloping-sha256-ecdsa-sha256.xml             |   34 +-
 ...xml => enveloping-sha256-rsa-sha256-verify.xml} |   37 +-
 .../enveloping-sha512-ecdsa-sha512.xml             |   34 +-
 tests/keys/README                                  |   23 +-
 tests/keys/demoCA/index.txt                        |    1 +
 tests/keys/demoCA/index.txt.old                    |    1 +
 tests/keys/demoCA/newcerts/AFA28BB933ADDAB5.pem    |   60 +
 tests/keys/demoCA/serial                           |    2 +-
 tests/keys/demoCA/serial.old                       |    2 +-
 tests/keys/ecdsa-secp256r1-cert.der                |  Bin 0 -> 899 bytes
 tests/keys/ecdsa-secp256r1-cert.pem                |   60 +
 tests/keys/ecdsa-secp256r1-key.der                 |  Bin 0 -> 121 bytes
 tests/keys/ecdsa-secp256r1-key.p12                 |  Bin 0 -> 3621 bytes
 tests/keys/ecdsa-secp256r1-key.p8-der              |  Bin 0 -> 179 bytes
 tests/keys/ecdsa-secp256r1-key.pem                 |    5 +
 tests/keys/merlincert.der                          |  Bin 0 -> 848 bytes
 tests/testDSig.sh                                  |   35 +-
 tests/testrun.sh                                   |    3 +
 win32/Makefile.msvc                                |   32 +-
 win32/README.txt                                   |    2 +-
 win32/configure.js                                 |   58 +-
 win32/mycfg.bat                                    |   10 +-
 xmlsec1-config                                     |   18 +-
 xmlsec1-gcrypt.pc                                  |    2 +-
 xmlsec1-gnutls.pc                                  |    6 +-
 xmlsec1-nss.pc                                     |    2 +-
 xmlsec1-openssl.pc                                 |    6 +-
 xmlsec1.pc                                         |    2 +-
 xmlsec1.spec                                       |    2 +-
 xmlsec1Conf.sh                                     |    6 +-
 394 files changed, 51844 insertions(+), 56844 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e25f8e3..5adc5c4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+The changelog file is obsolete, please view the commits log on github
+
+https://github.com/lsh123/xmlsec/commits/master
+
+
 2016-10-15 Aleksey Sanin  <aleksey at aleksey.com>
 	* 1.2.23 release
 
diff --git a/HACKING b/HACKING
index b9f96d6..d28cbc4 100644
--- a/HACKING
+++ b/HACKING
@@ -95,17 +95,17 @@ Igor Zlatkovic get an exception for the send before commit rule.
     - Errors reporting (XMLSEC_ERRORS_R_XMLSEC_FAILED vs. XMLSEC_ERRORS_R_CRYPTO_FAILED)
     The correct usage rule is:
 	if the failed function starts with "xmlSec" then use
-    	    XMLSEC_ERRORS_R_XMLSEC_FAILED
-	else if it is xmlMalloc/xmlFree/xmlStrdup/etc then use
-            XMLSEC_ERRORS_R_MALLOC_FAILED
+    	    xmlSecInternalError() aka XMLSEC_ERRORS_R_XMLSEC_FAILED
+	else if it is xmlMalloc/xmlFree/etc then use
+            xmlSecMallocError() aka XMLSEC_ERRORS_R_MALLOC_FAILED
 	else if the function starts with "xml" or "xslt" (i.e. it comes 
 	from libxml or libxslt) then use
-	    XMLSEC_ERRORS_R_XML_FAILED
+            xmlSecXmlError/xmlSecXmlParserError aka XMLSEC_ERRORS_R_XML_FAILED
 	else if it is related to IO (fopen, fread, fwrite, etc.) then use
 	    XMLSEC_ERRORS_R_IO_FAILED
 	else if the function could be used only from xmlsec-crypto (i.e. 
 	it is crypto engine related) then use
-	    XMLSEC_ERRORS_R_CRYPTO_FAILED
+	    xmlSecOpenSSLError/... aka XMLSEC_ERRORS_R_CRYPTO_FAILED
 	else if there is another reason (invalid data, invalid size, etc.)
 	    corresponding error reason should be used
 	else
diff --git a/Makefile.am b/Makefile.am
index 3453c01..82e2665 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,7 +1,13 @@
 NULL =
 
 SAFE_VERSION	= @XMLSEC_VERSION_SAFE@
-SUBDIRS 	    = include src apps man docs
+SUBDIRS 	    = include src
+if XMLSEC_APPS
+SUBDIRS += apps
+endif
+if XMLSEC_DOCS
+SUBDIRS += man docs
+endif
 TEST_APP 	    = apps/xmlsec1$(EXEEXT)
 DEFAULT_CRYPTO	= @XMLSEC_DEFAULT_CRYPTO@
 
@@ -66,6 +72,7 @@ PRECHECK_COMMANDS = \
 	$(NULL)
 else
 PRECHECK_COMMANDS= \
+	export LD_LIBRARY_PATH="$(ABS_BUILDDIR)/src/.libs:$$LD_LIBRARY_PATH" ; \
 	for i in $(XMLSEC_CRYPTO_LIST) ; do \
 	    export LD_LIBRARY_PATH="$(ABS_BUILDDIR)/src/$$i/.libs:$$LD_LIBRARY_PATH" ; \
 	done && \
diff --git a/Makefile.in b/Makefile.in
index f35b430..ef0aed9 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -89,6 +89,8 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+ at XMLSEC_APPS_TRUE@am__append_1 = apps
+ at XMLSEC_DOCS_TRUE@am__append_2 = man docs
 subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -194,7 +196,7 @@ am__define_uniq_tagged_files = \
 ETAGS = etags
 CTAGS = ctags
 CSCOPE = cscope
-DIST_SUBDIRS = $(SUBDIRS)
+DIST_SUBDIRS = include src apps man docs
 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
 	$(srcdir)/xmlsec-config.in $(srcdir)/xmlsec-gcrypt.pc.in \
 	$(srcdir)/xmlsec-gnutls.pc.in $(srcdir)/xmlsec-nss.pc.in \
@@ -306,6 +308,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -353,6 +356,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -369,6 +373,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -458,6 +463,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -468,7 +474,7 @@ top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 NULL = 
 SAFE_VERSION = @XMLSEC_VERSION_SAFE@
-SUBDIRS = include src apps man docs
+SUBDIRS = include src $(am__append_1) $(am__append_2)
 TEST_APP = apps/xmlsec1$(EXEEXT)
 DEFAULT_CRYPTO = @XMLSEC_DEFAULT_CRYPTO@
 bin_SCRIPTS = xmlsec1-config
@@ -525,6 +531,7 @@ EXTRA_CLEAN = \
 ABS_SRCDIR = @abs_srcdir@
 ABS_BUILDDIR = @abs_builddir@
 @XMLSEC_NO_APPS_CRYPTO_DYNAMIC_LOADING_FALSE at PRECHECK_COMMANDS = \
+ at XMLSEC_NO_APPS_CRYPTO_DYNAMIC_LOADING_FALSE@	export LD_LIBRARY_PATH="$(ABS_BUILDDIR)/src/.libs:$$LD_LIBRARY_PATH" ; \
 @XMLSEC_NO_APPS_CRYPTO_DYNAMIC_LOADING_FALSE@	for i in $(XMLSEC_CRYPTO_LIST) ; do \
 @XMLSEC_NO_APPS_CRYPTO_DYNAMIC_LOADING_FALSE@	    export LD_LIBRARY_PATH="$(ABS_BUILDDIR)/src/$$i/.libs:$$LD_LIBRARY_PATH" ; \
 @XMLSEC_NO_APPS_CRYPTO_DYNAMIC_LOADING_FALSE@	done && \
diff --git a/aclocal.m4 b/aclocal.m4
index e538221..8798bb5 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -20,32 +20,63 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
-# serial 1 (pkg-config-0.24)
-# 
-# Copyright © 2004 Scott James Remnant <scott at netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
+dnl pkg.m4 - Macros to locate and utilise pkg-config.   -*- Autoconf -*-
+dnl serial 11 (pkg-config-0.29.1)
+dnl
+dnl Copyright © 2004 Scott James Remnant <scott at netsplit.com>.
+dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists at gmail.com>
+dnl
+dnl This program is free software; you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation; either version 2 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful, but
+dnl WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+dnl General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program; if not, write to the Free Software
+dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+dnl 02111-1307, USA.
+dnl
+dnl As a special exception to the GNU General Public License, if you
+dnl distribute this file as part of a program that contains a
+dnl configuration script generated by Autoconf, you may include it under
+dnl the same distribution terms that you use for the rest of that
+dnl program.
+
+dnl PKG_PREREQ(MIN-VERSION)
+dnl -----------------------
+dnl Since: 0.29
+dnl
+dnl Verify that the version of the pkg-config macros are at least
+dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's
+dnl installed version of pkg-config, this checks the developer's version
+dnl of pkg.m4 when generating configure.
+dnl
+dnl To ensure that this macro is defined, also add:
+dnl m4_ifndef([PKG_PREREQ],
+dnl     [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])])
+dnl
+dnl See the "Since" comment for each macro you use to see what version
+dnl of the macros you require.
+m4_defun([PKG_PREREQ],
+[m4_define([PKG_MACROS_VERSION], [0.29.1])
+m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1,
+    [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])])
+])dnl PKG_PREREQ
+
+dnl PKG_PROG_PKG_CONFIG([MIN-VERSION])
+dnl ----------------------------------
+dnl Since: 0.16
+dnl
+dnl Search for the pkg-config tool and set the PKG_CONFIG variable to
+dnl first found in the path. Checks that the version of pkg-config found
+dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is
+dnl used since that's the first version where most current features of
+dnl pkg-config existed.
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
 m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
@@ -67,18 +98,19 @@ if test -n "$PKG_CONFIG"; then
 		PKG_CONFIG=""
 	fi
 fi[]dnl
-])# PKG_PROG_PKG_CONFIG
+])dnl PKG_PROG_PKG_CONFIG
 
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists.  Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-# only at the first occurence in configure.ac, so if the first place
-# it's called might be skipped (such as if it is within an "if", you
-# have to call PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
+dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------------------------------
+dnl Since: 0.18
+dnl
+dnl Check to see whether a particular set of modules exists. Similar to
+dnl PKG_CHECK_MODULES(), but does not set variables or print errors.
+dnl
+dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+dnl only at the first occurence in configure.ac, so if the first place
+dnl it's called might be skipped (such as if it is within an "if", you
+dnl have to call PKG_CHECK_EXISTS manually
 AC_DEFUN([PKG_CHECK_EXISTS],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 if test -n "$PKG_CONFIG" && \
@@ -88,8 +120,10 @@ m4_ifvaln([$3], [else
   $3])dnl
 fi])
 
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
+dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+dnl ---------------------------------------------
+dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting
+dnl pkg_failed based on the result.
 m4_define([_PKG_CONFIG],
 [if test -n "$$1"; then
     pkg_cv_[]$1="$$1"
@@ -101,10 +135,11 @@ m4_define([_PKG_CONFIG],
  else
     pkg_failed=untried
 fi[]dnl
-])# _PKG_CONFIG
+])dnl _PKG_CONFIG
 
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
+dnl _PKG_SHORT_ERRORS_SUPPORTED
+dnl ---------------------------
+dnl Internal check to see if pkg-config supports short errors.
 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
@@ -112,19 +147,17 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
 else
         _pkg_short_errors_supported=no
 fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
+])dnl _PKG_SHORT_ERRORS_SUPPORTED
 
 
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
+dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl --------------------------------------------------------------
+dnl Since: 0.4.0
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES might not happen, you should be sure to include an
+dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
 AC_DEFUN([PKG_CHECK_MODULES],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
@@ -178,16 +211,40 @@ else
         AC_MSG_RESULT([yes])
 	$3
 fi[]dnl
-])# PKG_CHECK_MODULES
+])dnl PKG_CHECK_MODULES
 
 
-# PKG_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable pkgconfigdir as the location where a module
-# should install pkg-config .pc files. By default the directory is
-# $libdir/pkgconfig, but the default can be changed by passing
-# DIRECTORY. The user can override through the --with-pkgconfigdir
-# parameter.
+dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+dnl   [ACTION-IF-NOT-FOUND])
+dnl ---------------------------------------------------------------------
+dnl Since: 0.29
+dnl
+dnl Checks for existence of MODULES and gathers its build flags with
+dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags
+dnl and VARIABLE-PREFIX_LIBS from --libs.
+dnl
+dnl Note that if there is a possibility the first call to
+dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to
+dnl include an explicit call to PKG_PROG_PKG_CONFIG in your
+dnl configure.ac.
+AC_DEFUN([PKG_CHECK_MODULES_STATIC],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+_save_PKG_CONFIG=$PKG_CONFIG
+PKG_CONFIG="$PKG_CONFIG --static"
+PKG_CHECK_MODULES($@)
+PKG_CONFIG=$_save_PKG_CONFIG[]dnl
+])dnl PKG_CHECK_MODULES_STATIC
+
+
+dnl PKG_INSTALLDIR([DIRECTORY])
+dnl -------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable pkgconfigdir as the location where a module
+dnl should install pkg-config .pc files. By default the directory is
+dnl $libdir/pkgconfig, but the default can be changed by passing
+dnl DIRECTORY. The user can override through the --with-pkgconfigdir
+dnl parameter.
 AC_DEFUN([PKG_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -198,16 +255,18 @@ AC_ARG_WITH([pkgconfigdir],
 AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_INSTALLDIR
+])dnl PKG_INSTALLDIR
 
 
-# PKG_NOARCH_INSTALLDIR(DIRECTORY)
-# -------------------------
-# Substitutes the variable noarch_pkgconfigdir as the location where a
-# module should install arch-independent pkg-config .pc files. By
-# default the directory is $datadir/pkgconfig, but the default can be
-# changed by passing DIRECTORY. The user can override through the
-# --with-noarch-pkgconfigdir parameter.
+dnl PKG_NOARCH_INSTALLDIR([DIRECTORY])
+dnl --------------------------------
+dnl Since: 0.27
+dnl
+dnl Substitutes the variable noarch_pkgconfigdir as the location where a
+dnl module should install arch-independent pkg-config .pc files. By
+dnl default the directory is $datadir/pkgconfig, but the default can be
+dnl changed by passing DIRECTORY. The user can override through the
+dnl --with-noarch-pkgconfigdir parameter.
 AC_DEFUN([PKG_NOARCH_INSTALLDIR],
 [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
 m4_pushdef([pkg_description],
@@ -218,13 +277,15 @@ AC_ARG_WITH([noarch-pkgconfigdir],
 AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
 m4_popdef([pkg_default])
 m4_popdef([pkg_description])
-]) dnl PKG_NOARCH_INSTALLDIR
+])dnl PKG_NOARCH_INSTALLDIR
 
 
-# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
-# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-# -------------------------------------------
-# Retrieves the value of the pkg-config variable for the given module.
+dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl -------------------------------------------
+dnl Since: 0.28
+dnl
+dnl Retrieves the value of the pkg-config variable for the given module.
 AC_DEFUN([PKG_CHECK_VAR],
 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
 AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
@@ -233,7 +294,7 @@ _PKG_CONFIG([$1], [variable="][$3]["], [$2])
 AS_VAR_COPY([$1], [pkg_cv_][$1])
 
 AS_VAR_IF([$1], [""], [$5], [$4])dnl
-])# PKG_CHECK_VAR
+])dnl PKG_CHECK_VAR
 
 # Copyright (C) 2002-2014 Free Software Foundation, Inc.
 #
diff --git a/apps/Makefile.in b/apps/Makefile.in
index 6561820..b4b0b72 100644
--- a/apps/Makefile.in
+++ b/apps/Makefile.in
@@ -248,6 +248,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -295,6 +296,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -311,6 +313,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -400,6 +403,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/apps/crypto.c b/apps/crypto.c
index 1e53bc7..cb23f5b 100644
--- a/apps/crypto.c
+++ b/apps/crypto.c
@@ -23,19 +23,11 @@
 int
 xmlSecAppCryptoInit(const char* config) {
     if(xmlSecCryptoAppInit(config) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppInit failed\n");
         return(-1);
     }
     if(xmlSecCryptoInit() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoInit failed\n");
         return(-1);
     }
     
@@ -45,20 +37,12 @@ xmlSecAppCryptoInit(const char* config) {
 int
 xmlSecAppCryptoShutdown(void) {
     if(xmlSecCryptoShutdown() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoShutdown",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoShutdown failed\n");
         return(-1);
     }
 
     if(xmlSecCryptoAppShutdown() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppShutdown",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppShutdown failed\n");
         return(-1);
     }
     return(0);
@@ -115,24 +99,16 @@ xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad(xmlSecKeysMngrPtr mngr,
     key = xmlSecCryptoAppKeyLoad(files, format, pwd, 
                 xmlSecCryptoAppGetDefaultPwdCallback(), (void*)files);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppKeyLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", 
-                    xmlSecErrorsSafeString(files));
+        fprintf(stderr, "Error: xmlSecCryptoAppKeyLoad failed: file=%s\n",
+                xmlSecErrorsSafeString(files));
         return(-1);
     }
     
     if(name != NULL) {
         ret = xmlSecKeySetName(key, BAD_CAST name);
-        if(ret < 0) {   
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeySetName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s", 
-                        xmlSecErrorsSafeString(name));
+        if(ret < 0) {
+            fprintf(stderr, "Error: xmlSecKeySetName failed: name=%s\n",
+                    xmlSecErrorsSafeString(name));
             xmlSecKeyDestroy(key);
             return(-1);
         }
@@ -141,13 +117,9 @@ xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad(xmlSecKeysMngrPtr mngr,
 #ifndef XMLSEC_NO_X509     
     for(files += strlen(files) + 1; (files[0] != '\0'); files += strlen(files) + 1) {
         ret = xmlSecCryptoAppKeyCertLoad(key, files, format);
-        if(ret < 0){
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecCryptoAppKeyCertLoad",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "uri=%s", 
-                        xmlSecErrorsSafeString(files));
+        if(ret < 0) {
+            fprintf(stderr, "Error: xmlSecCryptoAppKeyCertLoad failed: file=%s\n",
+                    xmlSecErrorsSafeString(files));
             xmlSecKeyDestroy(key);
             return(-1);
         }
@@ -155,22 +127,14 @@ xmlSecAppCryptoSimpleKeysMngrKeyAndCertsLoad(xmlSecKeysMngrPtr mngr,
 #else /* XMLSEC_NO_X509 */
     files += strlen(files) + 1;
     if(files[0] != '\0') {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "x509",
-                    XMLSEC_ERRORS_R_DISABLED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: X509 support is disabled\n");
         return(-1);
     }
 #endif /* XMLSEC_NO_X509 */        
 
     ret = xmlSecCryptoAppDefaultKeysMngrAdoptKey(mngr, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppDefaultKeysMngrAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppDefaultKeysMngrAdoptKey failed\n");
         xmlSecKeyDestroy(key);
         return(-1);
     }
@@ -191,24 +155,16 @@ xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad(xmlSecKeysMngrPtr mngr, const char *f
     key = xmlSecCryptoAppKeyLoad(filename, xmlSecKeyDataFormatPkcs12, pwd, 
                     xmlSecCryptoAppGetDefaultPwdCallback(), (void*)filename);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppKeyLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        fprintf(stderr, "Error: xmlSecCryptoAppKeyLoad failed: filename=%s\n",
+                xmlSecErrorsSafeString(filename));
         return(-1);
     }
         
     if(name != NULL) {
         ret = xmlSecKeySetName(key, BAD_CAST name);
         if(ret < 0) {   
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeySetName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s",
-                        xmlSecErrorsSafeString(name));                  
+            fprintf(stderr, "Error: xmlSecKeySetName failed: name=%s\n",
+                    xmlSecErrorsSafeString(name));
             xmlSecKeyDestroy(key);
             return(-1);
         }
@@ -216,22 +172,14 @@ xmlSecAppCryptoSimpleKeysMngrPkcs12KeyLoad(xmlSecKeysMngrPtr mngr, const char *f
     
     ret = xmlSecCryptoAppDefaultKeysMngrAdoptKey(mngr, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppDefaultKeysMngrAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppDefaultKeysMngrAdoptKey failed\n");
         xmlSecKeyDestroy(key);
         return(-1);
     }
     
     return(0);
 #else /* XMLSEC_NO_X509 */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "x509",
-                XMLSEC_ERRORS_R_DISABLED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    fprintf(stderr, "Error: X509 support is disabled\n");
     return(-1);
 #endif /* XMLSEC_NO_X509 */
 }
@@ -250,33 +198,22 @@ xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad(xmlSecKeysMngrPtr mngr, const char* k
     dataId = xmlSecKeyDataIdListFindByName(xmlSecKeyDataIdsGet(), BAD_CAST keyKlass, 
                                            xmlSecKeyDataUsageAny);
     if(dataId == xmlSecKeyDataIdUnknown) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdListFindByName",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(keyKlass));
-        return(-1);    
+        fprintf(stderr, "Error: xmlSecKeyDataIdListFindByName failed keyKlass=%s\n",
+                xmlSecErrorsSafeString(keyKlass));
+        return(-1);
     }
 
     key = xmlSecKeyReadBinaryFile(dataId, filename);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyReadBinaryFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecKeyReadBinaryFile failed filename=%s\n",
+                xmlSecErrorsSafeString(filename));
         return(-1);    
     }
     
     ret = xmlSecKeySetName(key, BAD_CAST name);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetName",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(name));
+        fprintf(stderr, "Error: xmlSecKeySetName failed: name=%s\n",
+                xmlSecErrorsSafeString(name));
         xmlSecKeyDestroy(key);
         return(-1);    
     }
@@ -284,11 +221,7 @@ xmlSecAppCryptoSimpleKeysMngrBinaryKeyLoad(xmlSecKeysMngrPtr mngr, const char* k
     /* finally add it to keys manager */    
     ret = xmlSecCryptoAppDefaultKeysMngrAdoptKey(mngr, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppDefaultKeysMngrAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppDefaultKeysMngrAdoptKey failed\n");
         xmlSecKeyDestroy(key);
         return(-1);
     }
@@ -307,22 +240,14 @@ xmlSecAppCryptoSimpleKeysMngrKeyGenerate(xmlSecKeysMngrPtr mngr, const char* key
     
     key = xmlSecAppCryptoKeyGenerate(keyKlassAndSize, name, xmlSecKeyDataTypePermanent);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAppCryptoSimpleKeysMngrKeyGenerate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(name));
+        fprintf(stderr, "Error: xmlSecAppCryptoSimpleKeysMngrKeyGenerate failed: name=%s\n",
+                xmlSecErrorsSafeString(name));
         return(-1);    
     }    
 
     ret = xmlSecCryptoAppDefaultKeysMngrAdoptKey(mngr, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoAppDefaultKeysMngrAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        fprintf(stderr, "Error: xmlSecCryptoAppDefaultKeysMngrAdoptKey failed\n");
         xmlSecKeyDestroy(key);
         return(-1);
     }
@@ -341,56 +266,38 @@ xmlSecAppCryptoKeyGenerate(const char* keyKlassAndSize, const char* name, xmlSec
 
     buf = (char*) xmlStrdup(BAD_CAST keyKlassAndSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_STRDUP_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(name));
+        fprintf(stderr, "Error: xmlSecStrdupError(keyKlassAndSize) failed\n");
         return(NULL);    
     }
         
     /* separate key klass and size */
     p = strchr(buf, '-');
     if(p == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "key size is not specified %s", 
+        fprintf(stderr, "Error: key size is not specified in the key definition \"%s\"\n",
                     xmlSecErrorsSafeString(buf));
         xmlFree(buf);
         return(NULL);
     }
     *(p++) = '\0';
     size = atoi(p);
-    
+
     key = xmlSecKeyGenerateByName(BAD_CAST buf, size, type);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyGenerate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "klass=%s;size=%d",
-                    xmlSecErrorsSafeString(buf), 
-                    size);
+        fprintf(stderr, "Error: xmlSecKeyGenerateByName() failed: name=%s;size=%d;type=%d\n",
+                xmlSecErrorsSafeString(buf), size, (int)type);
         xmlFree(buf);
         return(NULL);   
     }
-    
+
     ret = xmlSecKeySetName(key, BAD_CAST name);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetName",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=\"%s\"", 
-                    xmlSecErrorsSafeString(name));
+        fprintf(stderr, "Error: xmlSecKeySetName failed: name=%s\n",
+                xmlSecErrorsSafeString(name));
         xmlSecKeyDestroy(key);
         xmlFree(buf);
         return(NULL);
     }
-    
+
     xmlFree(buf);
     return(key);
 }
diff --git a/apps/xmlsec.c b/apps/xmlsec.c
index 85cc040..e28c23e 100644
--- a/apps/xmlsec.c
+++ b/apps/xmlsec.c
@@ -512,6 +512,19 @@ static xmlSecAppCmdLineParam idAttrParam = {
     NULL
 };    
 
+static xmlSecAppCmdLineParam xxeParam = { 
+    xmlSecAppCmdLineTopicAll,
+    "--xxe",
+    NULL,   
+    "--xxe"
+    "\n\tenable External Entity resolution."
+    "\n\tWARNING: this may allow the reading of arbitrary files and URLs,"
+    "\n\tcontrolled by the input XML document.  Use with caution!",
+    xmlSecAppCmdLineParamTypeFlag,
+    xmlSecAppCmdLineParamFlagNone,
+    NULL
+};    
+
 
 /****************************************************************
  *
@@ -742,6 +755,17 @@ static xmlSecAppCmdLineParam X509SkipStrictChecksParam = {
     xmlSecAppCmdLineParamFlagNone,
     NULL
 };
+
+static xmlSecAppCmdLineParam X509DontVerifyCerts = {
+    xmlSecAppCmdLineTopicDSigCommon,
+    "--insecure",
+    NULL,
+    "--insecure"
+    "\n\tdo not verify certificates",
+    xmlSecAppCmdLineParamTypeFlag,
+    xmlSecAppCmdLineParamFlagNone,
+    NULL
+};
 #endif /* XMLSEC_NO_X509 */    
 
 static xmlSecAppCmdLineParamPtr parameters[] = {
@@ -804,6 +828,7 @@ static xmlSecAppCmdLineParamPtr parameters[] = {
     &verificationTimeParam,
     &depthParam,    
     &X509SkipStrictChecksParam,    
+    &X509DontVerifyCerts,
 #endif /* XMLSEC_NO_X509 */    
     
     /* General configuration params */
@@ -813,6 +838,7 @@ static xmlSecAppCmdLineParamPtr parameters[] = {
     &disableErrorMsgsParam,
     &printCryptoErrorMsgsParam,
     &helpParam,
+    &xxeParam,
         
     /* MUST be the last one */
     NULL
@@ -968,8 +994,8 @@ int main(int argc, const char **argv) {
         xmlsec_crypto = tmp;
     }
 #else /* !defined(XMLSEC_NO_CRYPTO_DYNAMIC_LOADING) && defined(XMLSEC_CRYPTO_DYNAMIC_LOADING) */
-    if((tmp != NULL) && (xmlStrcmp(BAD_CAST tmp, xmlSecGetDefaultCrypto()) != 0)) {
-        fprintf(stderr, "Error: dynaimc crypto libraries loading is disabled and the only available crypto library is '%s'\n", xmlSecGetDefaultCrypto());
+    if((tmp != NULL) && (xmlStrcmp(BAD_CAST tmp, xmlSecGetDefaultCrypto()) != 0) && (xmlStrcmp(BAD_CAST tmp, BAD_CAST "default") != 0)) {
+        fprintf(stderr, "Error: dynamic xmlsec-crypto library loading is disabled and the only available crypto library is '%s'\n", xmlSecGetDefaultCrypto());
         xmlSecAppPrintUsage();
         goto fail;
     }
@@ -988,6 +1014,11 @@ int main(int argc, const char **argv) {
         goto fail;
     }
     
+    /* enable XXE? */
+    if(xmlSecAppCmdLineParamIsSet(&xxeParam)) {
+        xmlSecSetExternalEntityLoader( NULL );     // reset to libxml2's default handler
+    }
+
     /* get the "repeats" number */
     if(xmlSecAppCmdLineParamIsSet(&repeatParam) && 
        (xmlSecAppCmdLineParamGetInt(&repeatParam, 1) > 0)) {
@@ -1822,6 +1853,9 @@ xmlSecAppPrepareKeyInfoReadCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
     if(xmlSecAppCmdLineParamIsSet(&X509SkipStrictChecksParam)) {
         keyInfoCtx->flags |= XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS;
     }
+    if(xmlSecAppCmdLineParamIsSet(&X509DontVerifyCerts)) {
+        keyInfoCtx->flags |= XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS;
+    }
 #endif /* XMLSEC_NO_X509 */
 
     /* read enabled key data list */
@@ -1830,21 +1864,20 @@ xmlSecAppPrepareKeyInfoReadCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
             fprintf(stderr, "Error: invalid value for option \"%s\".\n", 
                     enabledKeyDataParam.fullName);
             return(-1);
-        } else {
-            xmlSecKeyDataId dataId;
-            const char* p;
-            
-            for(p = value->strListValue; (p != NULL) && ((*p) != '\0'); p += strlen(p)) {
-                dataId = xmlSecKeyDataIdListFindByName(xmlSecKeyDataIdsGet(), BAD_CAST p, xmlSecKeyDataUsageAny);
-                if(dataId == xmlSecKeyDataIdUnknown) {
-                    fprintf(stderr, "Error: key data \"%s\" is unknown.\n", p);
-                    return(-1);
-                }
-                ret = xmlSecPtrListAdd(&(keyInfoCtx->enabledKeyData), (const xmlSecPtr)dataId);
-                if(ret < 0) {
-                    fprintf(stderr, "Error: failed to enable key data \"%s\".\n", p);
-                    return(-1);
-                }
+        }
+        xmlSecKeyDataId dataId;
+        const char* p;
+
+        for(p = value->strListValue; (p != NULL) && ((*p) != '\0'); p += strlen(p)) {
+            dataId = xmlSecKeyDataIdListFindByName(xmlSecKeyDataIdsGet(), BAD_CAST p, xmlSecKeyDataUsageAny);
+            if(dataId == xmlSecKeyDataIdUnknown) {
+                fprintf(stderr, "Error: key data \"%s\" is unknown.\n", p);
+                return(-1);
+            }
+            ret = xmlSecPtrListAdd(&(keyInfoCtx->enabledKeyData), (const xmlSecPtr)dataId);
+            if(ret < 0) {
+                fprintf(stderr, "Error: failed to enable key data \"%s\".\n", p);
+                return(-1);
             }
         }
     }
@@ -2299,41 +2332,40 @@ xmlSecAppXmlDataCreate(const char* filename, const xmlChar* defStartNodeName, co
                     idAttrParam.fullName);
             xmlSecAppXmlDataDestroy(data);
             return(NULL);
+        }
+        xmlChar* attrName = (value->paramNameValue != NULL) ? BAD_CAST value->paramNameValue : BAD_CAST "id";
+        xmlChar* nodeName;
+        xmlChar* nsHref;
+        xmlChar* buf;
+
+        buf = xmlStrdup(BAD_CAST value->strValue);
+        if(buf == NULL) {
+            fprintf(stderr, "Error: failed to duplicate string \"%s\"\n", value->strValue);
+            xmlSecAppXmlDataDestroy(data);
+            return(NULL);
+        }
+        nodeName = (xmlChar*)strrchr((char*)buf, ':');
+        if(nodeName != NULL) {
+            (*(nodeName++)) = '\0';
+            nsHref = buf;
         } else {
-            xmlChar* attrName = (value->paramNameValue != NULL) ? BAD_CAST value->paramNameValue : BAD_CAST "id";
-            xmlChar* nodeName;
-            xmlChar* nsHref;
-            xmlChar* buf;
-            
-            buf = xmlStrdup(BAD_CAST value->strValue);
-            if(buf == NULL) {
-                fprintf(stderr, "Error: failed to duplicate string \"%s\"\n", value->strValue);
+            nodeName = buf;
+            nsHref = NULL;
+        }
+
+        /* process children first because it does not matter much but does simplify code */
+        cur = xmlSecGetNextElementNode(data->doc->children);
+        while(cur != NULL) {
+            if(xmlSecAppAddIDAttr(cur, attrName, nodeName, nsHref) < 0) {
+                fprintf(stderr, "Error: failed to add ID attribute \"%s\" for node \"%s\"\n", attrName, value->strValue);
+                xmlFree(buf);
                 xmlSecAppXmlDataDestroy(data);
                 return(NULL);    
             }
-            nodeName = (xmlChar*)strrchr((char*)buf, ':');
-            if(nodeName != NULL) {
-                (*(nodeName++)) = '\0';
-                nsHref = buf;
-            } else {
-                nodeName = buf;
-                nsHref = NULL;
-            }
-
-            /* process children first because it does not matter much but does simplify code */
-            cur = xmlSecGetNextElementNode(data->doc->children);
-            while(cur != NULL) {
-                if(xmlSecAppAddIDAttr(cur, attrName, nodeName, nsHref) < 0) {
-                    fprintf(stderr, "Error: failed to add ID attribute \"%s\" for node \"%s\"\n", attrName, value->strValue);
-                    xmlFree(buf);
-                    xmlSecAppXmlDataDestroy(data);
-                    return(NULL);    
-                }
-                cur = xmlSecGetNextElementNode(cur->next);
-            }
-
-            xmlFree(buf);
+            cur = xmlSecGetNextElementNode(cur->next);
         }
+
+        xmlFree(buf);
     }
 
 
diff --git a/config.guess b/config.guess
index 1f5c50c..1659250 100755
--- a/config.guess
+++ b/config.guess
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2014 Free Software Foundation, Inc.
+#   Copyright 1992-2015 Free Software Foundation, Inc.
 
-timestamp='2014-03-23'
+timestamp='2015-08-20'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -24,12 +24,12 @@ timestamp='2014-03-23'
 # program.  This Exception is an additional permission under section 7
 # of the GNU General Public License, version 3 ("GPLv3").
 #
-# Originally written by Per Bothner.
+# Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
 #
 # You can get the latest version of this script from:
 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 #
-# Please send patches with a ChangeLog entry to config-patches at gnu.org.
+# Please send patches to <config-patches at gnu.org>.
 
 
 me=`echo "$0" | sed -e 's,.*/,,'`
@@ -50,7 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2015 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -168,20 +168,27 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 	# Note: NetBSD doesn't particularly care about the vendor
 	# portion of the name.  We always set it to "unknown".
 	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
+	    /sbin/$sysctl 2>/dev/null || \
+	    /usr/sbin/$sysctl 2>/dev/null || \
+	    echo unknown)`
 	case "${UNAME_MACHINE_ARCH}" in
 	    armeb) machine=armeb-unknown ;;
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
 	    sh5el) machine=sh5le-unknown ;;
+	    earmv*)
+		arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
+		endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
+		machine=${arch}${endian}-unknown
+		;;
 	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
 	esac
 	# The Operating System including object format, if it has switched
 	# to ELF recently, or will in the future.
 	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+	    arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax)
 		eval $set_cc_for_build
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
 			| grep -q __ELF__
@@ -197,6 +204,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 		os=netbsd
 		;;
 	esac
+	# Determine ABI tags.
+	case "${UNAME_MACHINE_ARCH}" in
+	    earm*)
+		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
+		abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+		;;
+	esac
 	# The OS release
 	# Debian GNU/NetBSD machines have a different userland, and
 	# thus, need a distinct triplet. However, they do not need
@@ -207,13 +221,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
 		release='-gnu'
 		;;
 	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+		release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
 		;;
 	esac
 	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
 	# contains redundant information, the shorter form:
 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
+	echo "${machine}-${os}${release}${abi}"
 	exit ;;
     *:Bitrig:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
@@ -235,6 +249,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     *:MirBSD:*:*)
 	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
 	exit ;;
+    *:Sortix:*:*)
+	echo ${UNAME_MACHINE}-unknown-sortix
+	exit ;;
     alpha:OSF1:*:*)
 	case $UNAME_RELEASE in
 	*4.0)
@@ -579,8 +596,9 @@ EOF
 	else
 		IBM_ARCH=powerpc
 	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
+	if [ -x /usr/bin/lslpp ] ; then
+		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
+			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
 	else
 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
 	fi
@@ -932,6 +950,9 @@ EOF
     crisv32:Linux:*:*)
 	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
 	exit ;;
+    e2k:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	exit ;;
     frv:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
 	exit ;;
@@ -1020,7 +1041,7 @@ EOF
 	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
 	exit ;;
     x86_64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
 	exit ;;
     xtensa*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
diff --git a/config.h.in b/config.h.in
index 83d8e1e..9723687 100644
--- a/config.h.in
+++ b/config.h.in
@@ -96,8 +96,7 @@
 /* Define to 1 if you have the `vsprintf' function. */
 #undef HAVE_VSPRINTF
 
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
+/* Define to the sub-directory where libtool stores uninstalled libraries. */
 #undef LT_OBJDIR
 
 /* Name of package */
diff --git a/config.sub b/config.sub
index bba4efb..1acc966 100755
--- a/config.sub
+++ b/config.sub
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2014 Free Software Foundation, Inc.
+#   Copyright 1992-2015 Free Software Foundation, Inc.
 
-timestamp='2014-09-11'
+timestamp='2015-08-20'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -25,7 +25,7 @@ timestamp='2014-09-11'
 # of the GNU General Public License, version 3 ("GPLv3").
 
 
-# Please send patches with a ChangeLog entry to config-patches at gnu.org.
+# Please send patches to <config-patches at gnu.org>.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
@@ -68,7 +68,7 @@ Report bugs and patches to <config-patches at gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2014 Free Software Foundation, Inc.
+Copyright 1992-2015 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -117,7 +117,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
   linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
-  knetbsd*-gnu* | netbsd*-gnu* | \
+  knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
   kopensolaris*-gnu* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
@@ -255,12 +255,13 @@ case $basic_machine in
 	| arc | arceb \
 	| arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
 	| avr | avr32 \
+	| ba \
 	| be32 | be64 \
 	| bfin \
 	| c4x | c8051 | clipper \
 	| d10v | d30v | dlx | dsp16xx \
-	| epiphany \
-	| fido | fr30 | frv \
+	| e2k | epiphany \
+	| fido | fr30 | frv | ft32 \
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| hexagon \
 	| i370 | i860 | i960 | ia64 \
@@ -305,7 +306,7 @@ case $basic_machine in
 	| riscv32 | riscv64 \
 	| rl78 | rx \
 	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
+	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
 	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
 	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
@@ -313,6 +314,7 @@ case $basic_machine in
 	| tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
 	| ubicom32 \
 	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
+	| visium \
 	| we32k \
 	| x86 | xc16x | xstormy16 | xtensa \
 	| z8k | z80)
@@ -327,6 +329,9 @@ case $basic_machine in
 	c6x)
 		basic_machine=tic6x-unknown
 		;;
+	leon|leon[3-9])
+		basic_machine=sparc-$basic_machine
+		;;
 	m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
 		basic_machine=$basic_machine-unknown
 		os=-none
@@ -372,12 +377,13 @@ case $basic_machine in
 	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
 	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
 	| avr-* | avr32-* \
+	| ba-* \
 	| be32-* | be64-* \
 	| bfin-* | bs2000-* \
 	| c[123]* | c30-* | [cjt]90-* | c4x-* \
 	| c8051-* | clipper-* | craynv-* | cydra-* \
 	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
+	| e2k-* | elxsi-* \
 	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
 	| h8300-* | h8500-* \
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
@@ -424,12 +430,13 @@ case $basic_machine in
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
 	| pyramid-* \
+	| riscv32-* | riscv64-* \
 	| rl78-* | romp-* | rs6000-* | rx-* \
 	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
 	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
 	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
 	| tahoe-* \
 	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
 	| tile*-* \
@@ -437,6 +444,7 @@ case $basic_machine in
 	| ubicom32-* \
 	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
 	| vax-* \
+	| visium-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* \
 	| xstormy16-* | xtensa*-* \
@@ -513,6 +521,9 @@ case $basic_machine in
 		basic_machine=i386-pc
 		os=-aros
 		;;
+        asmjs)
+		basic_machine=asmjs-unknown
+		;;
 	aux)
 		basic_machine=m68k-apple
 		os=-aux
@@ -774,6 +785,9 @@ case $basic_machine in
 		basic_machine=m68k-isi
 		os=-sysv
 		;;
+	leon-*|leon[3-9]-*)
+		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
+		;;
 	m68knommu)
 		basic_machine=m68k-unknown
 		os=-linux
@@ -1365,7 +1379,7 @@ case $os in
 	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
 	      | -sym* | -kopensolaris* | -plan9* \
 	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
+	      | -aos* | -aros* | -cloudabi* | -sortix* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
diff --git a/configure b/configure
index 9ff0eee..39fbe5f 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for xmlsec1 1.2.23.
+# Generated by GNU Autoconf 2.69 for xmlsec1 1.2.24.
 #
 # Report bugs to <http://www.aleksey.com/xmlsec>.
 #
@@ -590,8 +590,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='xmlsec1'
 PACKAGE_TARNAME='xmlsec1'
-PACKAGE_VERSION='1.2.23'
-PACKAGE_STRING='xmlsec1 1.2.23'
+PACKAGE_VERSION='1.2.24'
+PACKAGE_STRING='xmlsec1 1.2.24'
 PACKAGE_BUGREPORT='http://www.aleksey.com/xmlsec'
 PACKAGE_URL=''
 
@@ -669,6 +669,12 @@ XMLSEC_DL_INCLUDES
 XMLSEC_NO_CRYPTO_DYNAMIC_LOADING
 XMLSEC_NO_CRYPTO_DYNAMIC_LOADING_FALSE
 XMLSEC_NO_CRYPTO_DYNAMIC_LOADING_TRUE
+XMLSEC_APPS
+XMLSEC_APPS_FALSE
+XMLSEC_APPS_TRUE
+XMLSEC_DOCS
+XMLSEC_DOCS_FALSE
+XMLSEC_DOCS_TRUE
 XMLSEC_NO_XMLENC
 XMLSEC_NO_XMLENC_FALSE
 XMLSEC_NO_XMLENC_TRUE
@@ -771,8 +777,6 @@ LIBXML_CFLAGS
 PKG_CONFIG_LIBDIR
 PKG_CONFIG_PATH
 PKG_CONFIG
-SHAREDLIB_HACK_FALSE
-SHAREDLIB_HACK_TRUE
 BUILD_API_DOCS_FALSE
 BUILD_API_DOCS_TRUE
 BUILD_MAN_DOCS_FALSE
@@ -797,6 +801,7 @@ TAR
 MV
 CP
 RM
+LT_SYS_LIBRARY_PATH
 OTOOL64
 OTOOL
 LIPO
@@ -900,6 +905,7 @@ infodir
 docdir
 oldincludedir
 includedir
+runstatedir
 localstatedir
 sharedstatedir
 sysconfdir
@@ -929,6 +935,7 @@ enable_shared
 enable_static
 with_pic
 enable_fast_install
+with_aix_soname
 with_gnu_ld
 with_sysroot
 enable_libtool_lock
@@ -965,6 +972,8 @@ enable_aes
 enable_gost
 enable_xmldsig
 enable_xmlenc
+enable_docs
+enable_apps
 enable_crypto_dl
 enable_apps_crypto_dl
 with_html_dir
@@ -984,6 +993,7 @@ LDFLAGS
 LIBS
 CPPFLAGS
 CPP
+LT_SYS_LIBRARY_PATH
 PKG_CONFIG
 PKG_CONFIG_PATH
 PKG_CONFIG_LIBDIR
@@ -1037,6 +1047,7 @@ datadir='${datarootdir}'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
 localstatedir='${prefix}/var'
+runstatedir='${localstatedir}/run'
 includedir='${prefix}/include'
 oldincludedir='/usr/include'
 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
@@ -1289,6 +1300,15 @@ do
   | -silent | --silent | --silen | --sile | --sil)
     silent=yes ;;
 
+  -runstatedir | --runstatedir | --runstatedi | --runstated \
+  | --runstate | --runstat | --runsta | --runst | --runs \
+  | --run | --ru | --r)
+    ac_prev=runstatedir ;;
+  -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
+  | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
+  | --run=* | --ru=* | --r=*)
+    runstatedir=$ac_optarg ;;
+
   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1426,7 +1446,7 @@ fi
 for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 		datadir sysconfdir sharedstatedir localstatedir includedir \
 		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
-		libdir localedir mandir
+		libdir localedir mandir runstatedir
 do
   eval ac_val=\$$ac_var
   # Remove trailing slashes.
@@ -1539,7 +1559,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures xmlsec1 1.2.23 to adapt to many kinds of systems.
+\`configure' configures xmlsec1 1.2.24 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1579,6 +1599,7 @@ Fine tuning of the installation directories:
   --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
   --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
   --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
+  --runstatedir=DIR       modifiable per-process data [LOCALSTATEDIR/run]
   --libdir=DIR            object code libraries [EPREFIX/lib]
   --includedir=DIR        C header files [PREFIX/include]
   --oldincludedir=DIR     C header files for non-gcc [/usr/include]
@@ -1609,7 +1630,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of xmlsec1 1.2.23:";;
+     short | recursive ) echo "Configuration of xmlsec1 1.2.24:";;
    esac
   cat <<\_ACEOF
 
@@ -1653,6 +1674,8 @@ Optional Features:
   --enable-gost2012       enable EXPERMIENTAL GOST2012 support (no)
   --enable-xmldsig        enable XMLDSig support (yes)
   --enable-xmlenc         enable XMLEnc support (yes)
+  --enable-docs         enable documentation (yes)
+  --enable-apps         enable applications (yes)
   --enable-crypto-dl      enable dynamic loading support for xmlsec-crypto libraries (yes)
   --enable-apps-crypto-dl  enable dynamic loading support for xmlsec-crypto libraries in xmlsec command line tool (yes)
   --enable-skm            enable Simple Keys Manager testing (yes)
@@ -1667,9 +1690,12 @@ Optional Packages:
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                           both]
+  --with-aix-soname=aix|svr4|both
+                          shared library versioning (aka "SONAME") variant to
+                          provide on AIX, [default=aix].
   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
-  --with-sysroot=DIR Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).
+  --with-sysroot[=DIR]    Search for dependent libraries within DIR (or the
+                          compiler's sysroot if not specified).
   --with-libxml=PFX       libxml2 location
 
   --with-libxml-src=PFX   not installed yet libxml2 location
@@ -1697,6 +1723,8 @@ Some influential environment variables:
   CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
   CPP         C preprocessor
+  LT_SYS_LIBRARY_PATH
+              User-defined run-time library search path.
   PKG_CONFIG  path to pkg-config utility
   PKG_CONFIG_PATH
               directories to add to pkg-config's search path
@@ -1788,7 +1816,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-xmlsec1 configure 1.2.23
+xmlsec1 configure 1.2.24
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2340,7 +2368,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by xmlsec1 $as_me 1.2.23, which was
+It was created by xmlsec1 $as_me 1.2.24, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2692,7 +2720,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 XMLSEC_PACKAGE=xmlsec1
 XMLSEC_VERSION_MAJOR=1
 XMLSEC_VERSION_MINOR=2
-XMLSEC_VERSION_SUBMINOR=23
+XMLSEC_VERSION_SUBMINOR=24
 XMLSEC_VERSION="$XMLSEC_VERSION_MAJOR.$XMLSEC_VERSION_MINOR.$XMLSEC_VERSION_SUBMINOR"
 XMLSEC_VERSION_INFO=`echo $XMLSEC_VERSION | awk -F. '{ printf "%d:%d:%d", $1+$2, $3, $2 }'`
 XMLSEC_VERSION_SAFE=`echo $XMLSEC_VERSION | sed 's/\./_/g'`
@@ -3294,7 +3322,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='xmlsec1'
- VERSION='1.2.23'
+ VERSION='1.2.24'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -5001,8 +5029,8 @@ esac
 
 
 
-macro_version='2.4.2'
-macro_revision='1.3337'
+macro_version='2.4.6'
+macro_revision='2.4.6'
 
 
 
@@ -5016,7 +5044,7 @@ macro_revision='1.3337'
 
 
 
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 
 # Backslashify metacharacters that are still active within
 # double-quoted strings.
@@ -5065,7 +5093,7 @@ func_echo_all ()
     $ECHO ""
 }
 
-case "$ECHO" in
+case $ECHO in
   printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
 $as_echo "printf" >&6; } ;;
   print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
@@ -5258,19 +5286,19 @@ test -z "$GREP" && GREP=grep
 
 # Check whether --with-gnu-ld was given.
 if test "${with_gnu_ld+set}" = set; then :
-  withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
+  withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
 else
   with_gnu_ld=no
 fi
 
 ac_prog=ld
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
 $as_echo_n "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
+    # gcc leaves a trailing carriage return, which upsets mingw
     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
   *)
     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
@@ -5284,7 +5312,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
 	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
       done
-      test -z "$LD" && LD="$ac_prog"
+      test -z "$LD" && LD=$ac_prog
       ;;
   "")
     # If it fails, then pretend we aren't using GCC.
@@ -5295,7 +5323,7 @@ $as_echo_n "checking for ld used by $CC... " >&6; }
     with_gnu_ld=unknown
     ;;
   esac
-elif test "$with_gnu_ld" = yes; then
+elif test yes = "$with_gnu_ld"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
 $as_echo_n "checking for GNU ld... " >&6; }
 else
@@ -5306,32 +5334,32 @@ if ${lt_cv_path_LD+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD=$ac_dir/$ac_prog
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some variants of GNU ld only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
       *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
+	test no != "$with_gnu_ld" && break
 	;;
       *)
-	test "$with_gnu_ld" != yes && break
+	test yes != "$with_gnu_ld" && break
 	;;
       esac
     fi
   done
-  IFS="$lt_save_ifs"
+  IFS=$lt_save_ifs
 else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD=$LD # Let the user override the test with a path.
 fi
 fi
 
-LD="$lt_cv_path_LD"
+LD=$lt_cv_path_LD
 if test -n "$LD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
 $as_echo "$LD" >&6; }
@@ -5374,33 +5402,38 @@ if ${lt_cv_path_NM+:} false; then :
 else
   if test -n "$NM"; then
   # Let the user override the test.
-  lt_cv_path_NM="$NM"
+  lt_cv_path_NM=$NM
 else
-  lt_nm_to_check="${ac_tool_prefix}nm"
+  lt_nm_to_check=${ac_tool_prefix}nm
   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
     lt_nm_to_check="$lt_nm_to_check nm"
   fi
   for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+      tmp_nm=$ac_dir/$lt_tmp_nm
+      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
 	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
+	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
 	#   nm: unknown option "B" ignored
 	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
+	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+	case $build_os in
+	mingw*) lt_bad_file=conftest.nm/nofile ;;
+	*) lt_bad_file=/dev/null ;;
+	esac
+	case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+	*$lt_bad_file* | *'Invalid file or object type'*)
 	  lt_cv_path_NM="$tmp_nm -B"
-	  break
+	  break 2
 	  ;;
 	*)
 	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
 	  */dev/null*)
 	    lt_cv_path_NM="$tmp_nm -p"
-	    break
+	    break 2
 	    ;;
 	  *)
 	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
@@ -5411,15 +5444,15 @@ else
 	esac
       fi
     done
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
   done
   : ${lt_cv_path_NM=no}
 fi
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
 $as_echo "$lt_cv_path_NM" >&6; }
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
+if test no != "$lt_cv_path_NM"; then
+  NM=$lt_cv_path_NM
 else
   # Didn't find any BSD compatible name lister, look for dumpbin.
   if test -n "$DUMPBIN"; then :
@@ -5525,9 +5558,9 @@ esac
   fi
 fi
 
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
     *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
+      DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
     *)
       DUMPBIN=:
@@ -5535,8 +5568,8 @@ fi
     esac
   fi
 
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
+  if test : != "$DUMPBIN"; then
+    NM=$DUMPBIN
   fi
 fi
 test -z "$NM" && NM=nm
@@ -5587,7 +5620,7 @@ if ${lt_cv_sys_max_cmd_len+:} false; then :
   $as_echo_n "(cached) " >&6
 else
     i=0
-  teststring="ABCD"
+  teststring=ABCD
 
   case $build_os in
   msdosdjgpp*)
@@ -5627,7 +5660,7 @@ else
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -5678,22 +5711,22 @@ else
   *)
     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
     if test -n "$lt_cv_sys_max_cmd_len" && \
-	test undefined != "$lt_cv_sys_max_cmd_len"; then
+       test undefined != "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
       # Make teststring a little bigger before we do anything with it.
       # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
+      for i in 1 2 3 4 5 6 7 8; do
         teststring=$teststring$teststring
       done
       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
       # If test is not a shell built-in, we'll probably end up computing a
       # maximum length that is only half of the actual maximum length, but
       # we can't tell.
-      while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
+      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
 	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
+	      test 17 != "$i" # 1/2 MB should be enough
       do
         i=`expr $i + 1`
         teststring=$teststring$teststring
@@ -5711,7 +5744,7 @@ else
 
 fi
 
-if test -n $lt_cv_sys_max_cmd_len ; then
+if test -n "$lt_cv_sys_max_cmd_len"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }
 else
@@ -5729,30 +5762,6 @@ max_cmd_len=$lt_cv_sys_max_cmd_len
 : ${MV="mv -f"}
 : ${RM="rm -f"}
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5
-$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; }
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5
-$as_echo "$xsi_shell" >&6; }
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5
-$as_echo_n "checking whether the shell understands \"+=\"... " >&6; }
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5
-$as_echo "$lt_shell_append" >&6; }
-
-
 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
   lt_unset=unset
 else
@@ -5875,13 +5884,13 @@ esac
 reload_cmds='$LD$reload_flag -o $output$reload_objs'
 case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       reload_cmds=false
     fi
     ;;
   darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+    if test yes = "$GCC"; then
+      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
     else
       reload_cmds='$LD$reload_flag -o $output$reload_objs'
     fi
@@ -6009,13 +6018,13 @@ lt_cv_deplibs_check_method='unknown'
 # Need to set the preceding variable on all platforms that support
 # interlibrary dependencies.
 # 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
+# 'unknown' -- same as none, but documents that we really don't know.
 # 'pass_all' -- all dependencies passed with no checks.
 # 'test_compile' -- check by making test program.
 # 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
+# that responds to the $file_magic_cmd with a given extended regex.
+# If you have 'file' or equivalent on your system and you're not sure
+# whether 'pass_all' will *always* work, you probably want this one.
 
 case $host_os in
 aix[4-9]*)
@@ -6042,8 +6051,7 @@ mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
   # func_win32_libid shell function, so use a weaker test based on 'objdump',
   # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
+  if ( file / ) >/dev/null 2>&1; then
     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
     lt_cv_file_magic_cmd='func_win32_libid'
   else
@@ -6139,8 +6147,8 @@ newos6*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+openbsd* | bitrig*)
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
   else
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
@@ -6193,6 +6201,9 @@ sysv4 | sysv4.3*)
 tpf*)
   lt_cv_deplibs_check_method=pass_all
   ;;
+os2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 esac
 
 fi
@@ -6350,8 +6361,8 @@ else
 
 case $host_os in
 cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
+  # two different shell functions defined in ltmain.sh;
+  # decide which one to use based on capabilities of $DLLTOOL
   case `$DLLTOOL --help 2>&1` in
   *--identify-strict*)
     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
@@ -6363,7 +6374,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   ;;
 *)
   # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
+  lt_cv_sharedlib_from_linklib_cmd=$ECHO
   ;;
 esac
 
@@ -6517,7 +6528,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
-      if test "$ac_status" -eq 0; then
+      if test 0 -eq "$ac_status"; then
 	# Ensure the archiver fails upon bogus file names.
 	rm -f conftest.$ac_objext libconftest.a
 	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
@@ -6525,7 +6536,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
-	if test "$ac_status" -ne 0; then
+	if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
         fi
       fi
@@ -6538,7 +6549,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
 $as_echo "$lt_cv_ar_at_file" >&6; }
 
-if test "x$lt_cv_ar_at_file" = xno; then
+if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
 else
   archiver_list_spec=$lt_cv_ar_at_file
@@ -6755,7 +6766,7 @@ old_postuninstall_cmds=
 
 if test -n "$RANLIB"; then
   case $host_os in
-  openbsd*)
+  bitrig* | openbsd*)
     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
     ;;
   *)
@@ -6845,7 +6856,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   symcode='[ABCDGISTW]'
   ;;
 hpux*)
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     symcode='[ABCDEGRST]'
   fi
   ;;
@@ -6878,14 +6889,44 @@ case `$NM -V 2>&1` in
   symcode='[ABCDGIRSTW]' ;;
 esac
 
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+  # Gets list of data symbols to import.
+  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  # Adjust the below global symbol transforms to fixup imported variables.
+  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
+  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
+  lt_c_name_lib_hook="\
+  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
+  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
+else
+  # Disable hooks by default.
+  lt_cv_sys_global_symbol_to_import=
+  lt_cdecl_hook=
+  lt_c_name_hook=
+  lt_c_name_lib_hook=
+fi
+
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+$lt_cdecl_hook\
+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+$lt_c_name_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
+
+# Transform an extracted symbol line into symbol name with lib prefix and
+# symbol address.
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+$lt_c_name_lib_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -6903,21 +6944,24 @@ for ac_symprfx in "" "_"; do
 
   # Write the raw and C identifiers.
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
+    # Fake it for dumpbin and say T for any non-static function,
+    # D for any global variable and I for any imported variable.
     # Also find C++ and __fastcall symbols from MSVC++,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK '"\
 "     {last_section=section; section=\$ 3};"\
 "     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
 "     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
+"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
+"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
 "     \$ 0!~/External *\|/{next};"\
 "     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
 "     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
+"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
+"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
+"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx"
   else
     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[	 ]\($symcode$symcode*\)[	 ][	 ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
@@ -6965,11 +7009,11 @@ _LT_EOF
 	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
 	  cat <<_LT_EOF > conftest.$ac_ext
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT_DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT_DLSYM_CONST
 #else
@@ -6995,7 +7039,7 @@ lt__PROGRAM__LTX_preloaded_symbols[] =
 {
   { "@PROGRAM@", (void *) 0 },
 _LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
 	  cat <<\_LT_EOF >> conftest.$ac_ext
   {0, (void *) 0}
 };
@@ -7015,13 +7059,13 @@ _LT_EOF
 	  mv conftest.$ac_objext conftstm.$ac_objext
 	  lt_globsym_save_LIBS=$LIBS
 	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
+	  LIBS=conftstm.$ac_objext
 	  CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext}; then
+  test $ac_status = 0; } && test -s conftest$ac_exeext; then
 	    pipe_works=yes
 	  fi
 	  LIBS=$lt_globsym_save_LIBS
@@ -7042,7 +7086,7 @@ _LT_EOF
   rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
+  if test yes = "$pipe_works"; then
     break
   else
     lt_cv_sys_global_symbol_pipe=
@@ -7095,6 +7139,16 @@ fi
 
 
 
+
+
+
+
+
+
+
+
+
+
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
 $as_echo_n "checking for sysroot... " >&6; }
 
@@ -7107,9 +7161,9 @@ fi
 
 
 lt_sysroot=
-case ${with_sysroot} in #(
+case $with_sysroot in #(
  yes)
-   if test "$GCC" = yes; then
+   if test yes = "$GCC"; then
      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
    fi
    ;; #(
@@ -7119,8 +7173,8 @@ case ${with_sysroot} in #(
  no|'')
    ;; #(
  *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5
-$as_echo "${with_sysroot}" >&6; }
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+$as_echo "$with_sysroot" >&6; }
    as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
    ;;
 esac
@@ -7132,18 +7186,99 @@ $as_echo "${lt_sysroot:-no}" >&6; }
 
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+$as_echo_n "checking for a working dd... " >&6; }
+if ${ac_cv_path_lt_DD+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+: ${lt_DD:=$DD}
+if test -z "$lt_DD"; then
+  ac_path_lt_DD_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_prog in dd; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_lt_DD" || continue
+if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
+fi
+      $ac_path_lt_DD_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_lt_DD"; then
+    :
+  fi
+else
+  ac_cv_path_lt_DD=$lt_DD
+fi
+
+rm -f conftest.i conftest2.i conftest.out
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+$as_echo "$ac_cv_path_lt_DD" >&6; }
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+$as_echo_n "checking how to truncate binary pipes... " >&6; }
+if ${lt_cv_truncate_bin+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+lt_cv_truncate_bin=
+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
+fi
+rm -f conftest.i conftest2.i conftest.out
+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+$as_echo "$lt_cv_truncate_bin" >&6; }
+
+
+
+
+
+
+
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in $*""; do
+      case $cc_temp in
+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+
 # Check whether --enable-libtool-lock was given.
 if test "${enable_libtool_lock+set}" = set; then :
   enableval=$enable_libtool_lock;
 fi
 
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+test no = "$enable_libtool_lock" || enable_libtool_lock=yes
 
 # Some flags need to be propagated to the compiler or linker for good
 # libtool support.
 case $host in
 ia64-*-hpux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set mode
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -7152,24 +7287,25 @@ ia64-*-hpux*)
   test $ac_status = 0; }; then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
-	HPUX_IA64_MODE="32"
+	HPUX_IA64_MODE=32
 	;;
       *ELF-64*)
-	HPUX_IA64_MODE="64"
+	HPUX_IA64_MODE=64
 	;;
     esac
   fi
   rm -rf conftest*
   ;;
 *-*-irix6*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo '#line '$LINENO' "configure"' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
+    if test yes = "$lt_cv_prog_gnu_ld"; then
       case `/usr/bin/file conftest.$ac_objext` in
 	*32-bit*)
 	  LD="${LD-ld} -melf32bsmip"
@@ -7198,9 +7334,50 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
+mips64*-*linux*)
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
+  echo '#line '$LINENO' "configure"' > conftest.$ac_ext
+  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then
+    emul=elf
+    case `/usr/bin/file conftest.$ac_objext` in
+      *32-bit*)
+	emul="${emul}32"
+	;;
+      *64-bit*)
+	emul="${emul}64"
+	;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *MSB*)
+	emul="${emul}btsmip"
+	;;
+      *LSB*)
+	emul="${emul}ltsmip"
+	;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *N32*)
+	emul="${emul}n32"
+	;;
+    esac
+    LD="${LD-ld} -m $emul"
+  fi
+  rm -rf conftest*
+  ;;
+
 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.  Note that the listed cases only cover the
+  # situations where additional linker options are needed (such as when
+  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
+  # vice versa); the common cases where no linker options are needed do
+  # not appear in the list.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -7223,10 +7400,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 		;;
 	    esac
 	    ;;
-	  powerpc64le-*)
+	  powerpc64le-*linux*)
 	    LD="${LD-ld} -m elf32lppclinux"
 	    ;;
-	  powerpc64-*)
+	  powerpc64-*linux*)
 	    LD="${LD-ld} -m elf32ppclinux"
 	    ;;
 	  s390x-*linux*)
@@ -7245,10 +7422,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 	  x86_64-*linux*)
 	    LD="${LD-ld} -m elf_x86_64"
 	    ;;
-	  powerpcle-*)
+	  powerpcle-*linux*)
 	    LD="${LD-ld} -m elf64lppc"
 	    ;;
-	  powerpc-*)
+	  powerpc-*linux*)
 	    LD="${LD-ld} -m elf64ppc"
 	    ;;
 	  s390*-*linux*|s390*-*tpf*)
@@ -7266,7 +7443,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 
 *-*-sco3.2v5*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
+  SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }
@@ -7306,13 +7483,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
 $as_echo "$lt_cv_cc_needs_belf" >&6; }
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+  if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
+    CFLAGS=$SAVE_CFLAGS
   fi
   ;;
 *-*solaris*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
@@ -7324,7 +7502,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
       case $lt_cv_prog_gnu_ld in
       yes*)
         case $host in
-        i?86-*-solaris*)
+        i?86-*-solaris*|x86_64-*-solaris*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
         sparc*-*-solaris*)
@@ -7333,7 +7511,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
         esac
         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
-          LD="${LD-ld}_sol2"
+          LD=${LD-ld}_sol2
         fi
         ;;
       *)
@@ -7349,7 +7527,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; }
   ;;
 esac
 
-need_locks="$enable_libtool_lock"
+need_locks=$enable_libtool_lock
 
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
@@ -7460,7 +7638,7 @@ else
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
 $as_echo "$lt_cv_path_mainfest_tool" >&6; }
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
+if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
 
@@ -7963,7 +8141,7 @@ if ${lt_cv_apple_cc_single_mod+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
+      if test -z "$LT_MULTI_MODULE"; then
 	# By default we will add the -single_module flag. You can override
 	# by either setting the environment variable LT_MULTI_MODULE
 	# non-empty at configure time, or by adding -multi_module to the
@@ -7981,7 +8159,7 @@ else
 	  cat conftest.err >&5
 	# Otherwise, if the output was created with a 0 exit code from
 	# the compiler, it worked.
-	elif test -f libconftest.dylib && test $_lt_result -eq 0; then
+	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
 	  lt_cv_apple_cc_single_mod=yes
 	else
 	  cat conftest.err >&5
@@ -8020,7 +8198,7 @@ else
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-	LDFLAGS="$save_LDFLAGS"
+	LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
@@ -8049,7 +8227,7 @@ _LT_EOF
       _lt_result=$?
       if test -s conftest.err && $GREP force_load conftest.err; then
 	cat conftest.err >&5
-      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
+      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
 	lt_cv_ld_force_load=yes
       else
 	cat conftest.err >&5
@@ -8062,32 +8240,32 @@ fi
 $as_echo "$lt_cv_ld_force_load" >&6; }
     case $host_os in
     rhapsody* | darwin1.[012])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
     darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
     darwin*) # darwin 5.x on
       # if running on 10.5 or later, the deployment target defaults
       # to the OS version, if on x86, and 10.4, the deployment
       # target defaults to 10.4. Don't you love it?
       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[012]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+	10.[012][,.]*)
+	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
 	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+    if test yes = "$lt_cv_apple_cc_single_mod"; then
       _lt_dar_single_mod='$single_module'
     fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    if test yes = "$lt_cv_ld_exported_symbols_list"; then
+      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
     else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
     fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
+    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
       _lt_dsymutil='~$DSYMUTIL $lib || :'
     else
       _lt_dsymutil=
@@ -8095,6 +8273,41 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
     ;;
   esac
 
+# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x$2 in
+    x)
+        ;;
+    *:)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
+        ;;
+    x:*)
+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
+        ;;
+    *)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+
 # On IRIX 5.3, sys/types and inttypes.h are conflicting.
 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
 		  inttypes.h stdint.h unistd.h
@@ -8148,14 +8361,14 @@ if test "${enable_shared+set}" = set; then :
     *)
       enable_shared=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_shared=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8179,14 +8392,14 @@ if test "${enable_static+set}" = set; then :
     *)
      enable_static=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_static=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8210,14 +8423,14 @@ if test "${with_pic+set}" = set; then :
     *)
       pic_mode=default
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for lt_pkg in $withval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$lt_pkg" = "X$lt_p"; then
 	  pic_mode=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8225,8 +8438,6 @@ else
 fi
 
 
-test -z "$pic_mode" && pic_mode=default
-
 
 
 
@@ -8242,14 +8453,14 @@ if test "${enable_fast_install+set}" = set; then :
     *)
       enable_fast_install=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_fast_install=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac
 else
@@ -8263,11 +8474,63 @@ fi
 
 
 
+  shared_archive_member_spec=
+case $host,$enable_shared in
+power*-*-aix[5-9]*,yes)
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+
+# Check whether --with-aix-soname was given.
+if test "${with_aix_soname+set}" = set; then :
+  withval=$with_aix_soname; case $withval in
+    aix|svr4|both)
+      ;;
+    *)
+      as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5
+      ;;
+    esac
+    lt_cv_with_aix_soname=$with_aix_soname
+else
+  if ${lt_cv_with_aix_soname+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  lt_cv_with_aix_soname=aix
+fi
+
+    with_aix_soname=$lt_cv_with_aix_soname
+fi
+
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+$as_echo "$with_aix_soname" >&6; }
+  if test aix != "$with_aix_soname"; then
+    # For the AIX way of multilib, we name the shared archive member
+    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
+    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
+    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
+    # the AIX toolchain works better with OBJECT_MODE set (default 32).
+    if test 64 = "${OBJECT_MODE-32}"; then
+      shared_archive_member_spec=shr_64
+    else
+      shared_archive_member_spec=shr
+    fi
+  fi
+  ;;
+*)
+  with_aix_soname=aix
+  ;;
+esac
+
+
+
+
+
+
+
 
 
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
+LIBTOOL_DEPS=$ltmain
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
@@ -8316,7 +8579,7 @@ test -z "$LN_S" && LN_S="ln -s"
 
 
 
-if test -n "${ZSH_VERSION+set}" ; then
+if test -n "${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
@@ -8355,7 +8618,7 @@ aix3*)
   # AIX sometimes has problems with the GCC collect2 program.  For some
   # reason, if we set the COLLECT_NAMES environment variable, the problems
   # vanish in a puff of smoke.
-  if test "X${COLLECT_NAMES+set}" != Xset; then
+  if test set != "${COLLECT_NAMES+set}"; then
     COLLECT_NAMES=
     export COLLECT_NAMES
   fi
@@ -8366,14 +8629,14 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a `.a' archive for static linking (except MSVC,
+# All known linkers require a '.a' archive for static linking (except MSVC,
 # which needs '.lib').
 libext=a
 
-with_gnu_ld="$lt_cv_prog_gnu_ld"
+with_gnu_ld=$lt_cv_prog_gnu_ld
 
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
+old_CC=$CC
+old_CFLAGS=$CFLAGS
 
 # Set sane defaults for various variables
 test -z "$CC" && CC=cc
@@ -8382,15 +8645,8 @@ test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
 test -z "$LD" && LD=ld
 test -z "$ac_objext" && ac_objext=o
 
-for cc_temp in $compiler""; do
-  case $cc_temp in
-    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
-    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+func_cc_basename $compiler
+cc_basename=$func_cc_basename_result
 
 
 # Only perform the check for file, if the check method requires it
@@ -8405,22 +8661,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then :
 else
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/${ac_tool_prefix}file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
+    if test -f "$ac_dir/${ac_tool_prefix}file"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"
       if test -n "$file_magic_test_file"; then
 	case $deplibs_check_method in
 	"file_magic "*)
 	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
 	    $EGREP "$file_magic_regex" > /dev/null; then
 	    :
@@ -8443,13 +8699,13 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac
 fi
 
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
@@ -8471,22 +8727,22 @@ if ${lt_cv_path_MAGIC_CMD+:} false; then :
 else
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/file; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/file"
+    if test -f "$ac_dir/file"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"file"
       if test -n "$file_magic_test_file"; then
 	case $deplibs_check_method in
 	"file_magic "*)
 	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
 	    $EGREP "$file_magic_regex" > /dev/null; then
 	    :
@@ -8509,13 +8765,13 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac
 fi
 
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
 $as_echo "$MAGIC_CMD" >&6; }
@@ -8536,7 +8792,7 @@ esac
 
 # Use C for the default configuration in the libtool script
 
-lt_save_CC="$CC"
+lt_save_CC=$CC
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -8598,7 +8854,7 @@ if test -n "$compiler"; then
 
 lt_prog_compiler_no_builtin_flag=
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $cc_basename in
   nvcc*)
     lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
@@ -8614,7 +8870,7 @@ else
   lt_cv_prog_compiler_rtti_exceptions=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="-fno-rtti -fno-exceptions"
+   lt_compiler_flag="-fno-rtti -fno-exceptions"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -8644,7 +8900,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
-if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then
+if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
     lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
 else
     :
@@ -8662,17 +8918,18 @@ lt_prog_compiler_pic=
 lt_prog_compiler_static=
 
 
-  if test "$GCC" = yes; then
+  if test yes = "$GCC"; then
     lt_prog_compiler_wl='-Wl,'
     lt_prog_compiler_static='-static'
 
     case $host_os in
       aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# AIX 5 now supports IA64 processor
 	lt_prog_compiler_static='-Bstatic'
       fi
+      lt_prog_compiler_pic='-fPIC'
       ;;
 
     amigaos*)
@@ -8683,8 +8940,8 @@ lt_prog_compiler_static=
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -8700,6 +8957,11 @@ lt_prog_compiler_static=
       # Although the cygwin gcc ignores -fPIC, still need this for old-style
       # (--disable-auto-import) libraries
       lt_prog_compiler_pic='-DDLL_EXPORT'
+      case $host_os in
+      os2*)
+	lt_prog_compiler_static='$wl-static'
+	;;
+      esac
       ;;
 
     darwin* | rhapsody*)
@@ -8770,7 +9032,7 @@ lt_prog_compiler_static=
     case $host_os in
     aix*)
       lt_prog_compiler_wl='-Wl,'
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# AIX 5 now supports IA64 processor
 	lt_prog_compiler_static='-Bstatic'
       else
@@ -8778,10 +9040,29 @@ lt_prog_compiler_static=
       fi
       ;;
 
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      lt_prog_compiler_pic='-fno-common'
+      case $cc_basename in
+      nagfor*)
+        # NAG Fortran compiler
+        lt_prog_compiler_wl='-Wl,-Wl,,'
+        lt_prog_compiler_pic='-PIC'
+        lt_prog_compiler_static='-Bstatic'
+        ;;
+      esac
+      ;;
+
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
+      case $host_os in
+      os2*)
+	lt_prog_compiler_static='$wl-static'
+	;;
+      esac
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -8797,7 +9078,7 @@ lt_prog_compiler_static=
 	;;
       esac
       # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      lt_prog_compiler_static='${wl}-a ${wl}archive'
+      lt_prog_compiler_static='$wl-a ${wl}archive'
       ;;
 
     irix5* | irix6* | nonstopux*)
@@ -8808,7 +9089,7 @@ lt_prog_compiler_static=
 
     linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
       case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
+      # old Intel for x86_64, which still supported -KPIC.
       ecc*)
 	lt_prog_compiler_wl='-Wl,'
 	lt_prog_compiler_pic='-KPIC'
@@ -8833,6 +9114,12 @@ lt_prog_compiler_static=
 	lt_prog_compiler_pic='-PIC'
 	lt_prog_compiler_static='-Bstatic'
 	;;
+      tcc*)
+	# Fabrice Bellard et al's Tiny C Compiler
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -8930,7 +9217,7 @@ lt_prog_compiler_static=
       ;;
 
     sysv4*MP*)
-      if test -d /usr/nec ;then
+      if test -d /usr/nec; then
 	lt_prog_compiler_pic='-Kconform_pic'
 	lt_prog_compiler_static='-Bstatic'
       fi
@@ -8959,7 +9246,7 @@ lt_prog_compiler_static=
   fi
 
 case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
+  # For platforms that do not support PIC, -DPIC is meaningless:
   *djgpp*)
     lt_prog_compiler_pic=
     ;;
@@ -8991,7 +9278,7 @@ else
   lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
+   lt_compiler_flag="$lt_prog_compiler_pic -DPIC"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -9021,7 +9308,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
 
-if test x"$lt_cv_prog_compiler_pic_works" = xyes; then
+if test yes = "$lt_cv_prog_compiler_pic_works"; then
     case $lt_prog_compiler_pic in
      "" | " "*) ;;
      *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
@@ -9053,7 +9340,7 @@ if ${lt_cv_prog_compiler_static_works+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler_static_works=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -9072,13 +9359,13 @@ else
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }
 
-if test x"$lt_cv_prog_compiler_static_works" = xyes; then
+if test yes = "$lt_cv_prog_compiler_static_works"; then
     :
 else
     lt_prog_compiler_static=
@@ -9198,8 +9485,8 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
-hard_links="nottested"
-if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then
+hard_links=nottested
+if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
 $as_echo_n "checking if we can lock with hard links... " >&6; }
@@ -9211,9 +9498,9 @@ $as_echo_n "checking if we can lock with hard links... " >&6; }
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
 $as_echo "$hard_links" >&6; }
-  if test "$hard_links" = no; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
+  if test no = "$hard_links"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -9256,9 +9543,9 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
   # included in the symbol list
   include_expsyms=
   # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
+  # it will be wrapped by ' (' and ')$', so one must not match beginning or
+  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
+  # as well as any symbol that contains 'd'.
   exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
@@ -9273,7 +9560,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
@@ -9281,7 +9568,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     # we just hope/assume this is gcc and not c89 (= MSVC++)
     with_gnu_ld=yes
     ;;
-  openbsd*)
+  openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
   linux* | k*bsd*-gnu | gnu*)
@@ -9294,7 +9581,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
   # On some targets, GNU ld is compatible enough with the native linker
   # that we're better off using the native interface for both.
   lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     case $host_os in
       aix*)
 	# The AIX port of GNU ld has always aspired to compatibility
@@ -9316,24 +9603,24 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     esac
   fi
 
-  if test "$lt_use_gnu_ld_interface" = yes; then
+  if test yes = "$lt_use_gnu_ld_interface"; then
     # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
+    wlarc='$wl'
 
     # Set some defaults for GNU ld with shared library support. These
     # are reset later if shared libraries are not supported. Putting them
     # here allows them to be overridden if necessary.
     runpath_var=LD_RUN_PATH
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    export_dynamic_flag_spec='${wl}--export-dynamic'
+    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
+    export_dynamic_flag_spec='$wl--export-dynamic'
     # ancient GNU ld didn't support --whole-archive et. al.
     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
     else
       whole_archive_flag_spec=
     fi
     supports_anon_versioning=no
-    case `$LD -v 2>&1` in
+    case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -9346,7 +9633,7 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie
     case $host_os in
     aix[3-9]*)
       # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
+      if test ia64 != "$host_cpu"; then
 	ld_shlibs=no
 	cat <<_LT_EOF 1>&2
 
@@ -9365,7 +9652,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             archive_expsym_cmds=''
         ;;
       m68k)
@@ -9381,7 +9668,7 @@ _LT_EOF
 	allow_undefined_flag=unsupported
 	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
 	# support --undefined.  This deserves some investigation.  FIXME
-	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       else
 	ld_shlibs=no
       fi
@@ -9391,7 +9678,7 @@ _LT_EOF
       # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
       # as there is no search path for DLLs.
       hardcode_libdir_flag_spec='-L$libdir'
-      export_dynamic_flag_spec='${wl}--export-all-symbols'
+      export_dynamic_flag_spec='$wl--export-all-symbols'
       allow_undefined_flag=unsupported
       always_export_symbols=no
       enable_shared_with_static_runtimes=yes
@@ -9399,61 +9686,89 @@ _LT_EOF
       exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
 
       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+        archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+	# If the export-symbols file already is a .def file, use it as
+	# is; otherwise, prepend EXPORTS...
+	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then
+          cp $export_symbols $output_objdir/$soname.def;
+        else
+          echo EXPORTS > $output_objdir/$soname.def;
+          cat $export_symbols >> $output_objdir/$soname.def;
+        fi~
+        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
       else
 	ld_shlibs=no
       fi
       ;;
 
     haiku*)
-      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       link_all_deplibs=yes
       ;;
 
+    os2*)
+      hardcode_libdir_flag_spec='-L$libdir'
+      hardcode_minus_L=yes
+      allow_undefined_flag=unsupported
+      shrext_cmds=.dll
+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	prefix_cmds="$SED"~
+	if test EXPORTS = "`$SED 1q $export_symbols`"; then
+	  prefix_cmds="$prefix_cmds -e 1d";
+	fi~
+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      enable_shared_with_static_runtimes=yes
+      ;;
+
     interix[3-9]*)
       hardcode_direct=no
       hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-      export_dynamic_flag_spec='${wl}-E'
+      hardcode_libdir_flag_spec='$wl-rpath,$libdir'
+      export_dynamic_flag_spec='$wl-E'
       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
       # Instead, shared libraries are loaded at an image base (0x10000000 by
       # default) and relocated if they conflict, which is a slow very memory
       # consuming and fragmenting process.  To avoid this, we pick a random,
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
+      if test linux-dietlibc = "$host_os"; then
 	case $cc_basename in
 	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
 	esac
       fi
       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
+	 && test no = "$tmp_diet"
       then
 	tmp_addflag=' $pic_flag'
 	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  tmp_addflag=' $pic_flag'
 	  ;;
 	pgf77* | pgf90* | pgf95* | pgfortran*)
 					# Portland Group f77 and f90 compilers
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  tmp_addflag=' $pic_flag -Mnomain' ;;
 	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
 	  tmp_addflag=' -i_dynamic' ;;
@@ -9464,42 +9779,47 @@ _LT_EOF
 	lf95*)				# Lahey Fortran 8.1
 	  whole_archive_flag_spec=
 	  tmp_sharedflag='--shared' ;;
+        nagfor*)                        # NAGFOR 5.3
+          tmp_sharedflag='-Wl,-shared' ;;
 	xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
 	  tmp_sharedflag='-qmkshrobj'
 	  tmp_addflag= ;;
 	nvcc*)	# Cuda Compiler Driver 2.2
-	  whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  compiler_needs_object=yes
 	  ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
-	  whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  compiler_needs_object=yes
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
 	esac
-	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 
-        if test "x$supports_anon_versioning" = xyes; then
+        if test yes = "$supports_anon_versioning"; then
           archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            echo "local: *; };" >> $output_objdir/$libname.ver~
+            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
 
 	case $cc_basename in
+	tcc*)
+	  export_dynamic_flag_spec='-rdynamic'
+	  ;;
 	xlf* | bgf* | bgxlf* | mpixlf*)
 	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
 	  whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
-	  hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+	  hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
 	  archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
+	  if test yes = "$supports_anon_versioning"; then
 	    archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              echo "local: *; };" >> $output_objdir/$libname.ver~
+              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
 	  fi
 	  ;;
 	esac
@@ -9513,8 +9833,8 @@ _LT_EOF
 	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
       else
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       fi
       ;;
 
@@ -9532,8 +9852,8 @@ _LT_EOF
 
 _LT_EOF
       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
 	ld_shlibs=no
       fi
@@ -9545,7 +9865,7 @@ _LT_EOF
 	ld_shlibs=no
 	cat <<_LT_EOF 1>&2
 
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
 *** reliably create shared libraries on SCO systems.  Therefore, libtool
 *** is disabling shared libraries support.  We urge you to upgrade GNU
 *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
@@ -9560,9 +9880,9 @@ _LT_EOF
 	  # DT_RUNPATH tag from executables and libraries.  But doing so
 	  # requires that you compile everything twice, which is a pain.
 	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	    hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
+	    archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	    archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 	  else
 	    ld_shlibs=no
 	  fi
@@ -9579,15 +9899,15 @@ _LT_EOF
 
     *)
       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
 	ld_shlibs=no
       fi
       ;;
     esac
 
-    if test "$ld_shlibs" = no; then
+    if test no = "$ld_shlibs"; then
       runpath_var=
       hardcode_libdir_flag_spec=
       export_dynamic_flag_spec=
@@ -9603,7 +9923,7 @@ _LT_EOF
       # Note: this linker hardcodes the directories in LIBPATH if there
       # are no directories specified by -L.
       hardcode_minus_L=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
 	# Neither direct hardcoding nor static linking is supported with a
 	# broken collect2.
 	hardcode_direct=unsupported
@@ -9611,34 +9931,57 @@ _LT_EOF
       ;;
 
     aix[4-9]*)
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
 	aix_use_runtimelinking=no
 	exp_sym_flag='-Bexport'
-	no_entry_flag=""
+	no_entry_flag=
       else
 	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
+	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
+	# Without the "-l" option, or with the "-B" option, AIX nm treats
+	# weak defined symbols like other global defined symbols, whereas
+	# GNU nm marks them as "W".
+	# While the 'weak' keyword is ignored in the Export File, we need
+	# it in the Import File for the 'aix-soname' feature, so we have
+	# to replace the "-B" option with "-P" for AIX nm.
 	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+	  export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
 	else
-	  export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+	  export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
 	fi
 	aix_use_runtimelinking=no
 
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
+	# have runtime linking enabled, and use it for executables.
+	# For shared libraries, we enable/disable runtime linking
+	# depending on the kind of the shared library created -
+	# when "with_aix_soname,aix_use_runtimelinking" is:
+	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+	# "aix,yes"  lib.so          shared, rtl:yes, for executables
+	#            lib.a           static archive
+	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
+	#            lib.a(lib.so.V) shared, rtl:no,  for executables
+	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+	#            lib.a(lib.so.V) shared, rtl:no
+	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+	#            lib.a           static archive
 	case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
 	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
 	    aix_use_runtimelinking=yes
 	    break
 	  fi
 	  done
+	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
+	    # so we don't have lib.a shared libs to link our executables.
+	    # We have to force runtime linking in this case.
+	    aix_use_runtimelinking=yes
+	    LDFLAGS="$LDFLAGS -Wl,-brtl"
+	  fi
 	  ;;
 	esac
 
@@ -9657,13 +10000,21 @@ _LT_EOF
       hardcode_direct_absolute=yes
       hardcode_libdir_separator=':'
       link_all_deplibs=yes
-      file_list_spec='${wl}-f,'
+      file_list_spec='$wl-f,'
+      case $with_aix_soname,$aix_use_runtimelinking in
+      aix,*) ;; # traditional, no import file
+      svr4,* | *,yes) # use import file
+	# The Import File defines what to hardcode.
+	hardcode_direct=no
+	hardcode_direct_absolute=no
+	;;
+      esac
 
-      if test "$GCC" = yes; then
+      if test yes = "$GCC"; then
 	case $host_os in aix4.[012]|aix4.[012].*)
 	# We only want to do this on AIX 4.2 and lower, the check
 	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
+	  collect2name=`$CC -print-prog-name=collect2`
 	  if test -f "$collect2name" &&
 	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
 	  then
@@ -9682,36 +10033,42 @@ _LT_EOF
 	  ;;
 	esac
 	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
+	if test yes = "$aix_use_runtimelinking"; then
+	  shared_flag="$shared_flag "'$wl-G'
 	fi
-	link_all_deplibs=no
+	# Need to ensure runtime linking is disabled for the traditional
+	# shared library, or the linker may eventually find shared libraries
+	# /with/ Import File - we do not want to mix them.
+	shared_flag_aix='-shared'
+	shared_flag_svr4='-shared $wl-G'
       else
 	# not using gcc
-	if test "$host_cpu" = ia64; then
+	if test ia64 = "$host_cpu"; then
 	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
 	# chokes on -Wl,-G. The following line is correct:
 	  shared_flag='-G'
 	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
+	  if test yes = "$aix_use_runtimelinking"; then
+	    shared_flag='$wl-G'
 	  else
-	    shared_flag='${wl}-bM:SRE'
+	    shared_flag='$wl-bM:SRE'
 	  fi
+	  shared_flag_aix='$wl-bM:SRE'
+	  shared_flag_svr4='$wl-G'
 	fi
       fi
 
-      export_dynamic_flag_spec='${wl}-bexpall'
+      export_dynamic_flag_spec='$wl-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       always_export_symbols=yes
-      if test "$aix_use_runtimelinking" = yes; then
+      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
 	# Warning - without using the other runtime loading flags (-brtl),
 	# -berok will link without error, but may produce a broken library.
 	allow_undefined_flag='-berok'
         # Determine the default libpath from the value encoded in an
         # empty executable.
-        if test "${lt_cv_aix_libpath+set}" = set; then
+        if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   if ${lt_cv_aix_libpath_+:} false; then :
@@ -9746,7 +10103,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
+    lt_cv_aix_libpath_=/usr/lib:/lib
   fi
 
 fi
@@ -9754,17 +10111,17 @@ fi
   aix_libpath=$lt_cv_aix_libpath_
 fi
 
-        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
-        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+        hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
+        archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
       else
-	if test "$host_cpu" = ia64; then
-	  hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+	if test ia64 = "$host_cpu"; then
+	  hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'
 	  allow_undefined_flag="-z nodefs"
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
 	else
 	 # Determine the default libpath from the value encoded in an
 	 # empty executable.
-	 if test "${lt_cv_aix_libpath+set}" = set; then
+	 if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   if ${lt_cv_aix_libpath_+:} false; then :
@@ -9799,7 +10156,7 @@ fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
-    lt_cv_aix_libpath_="/usr/lib:/lib"
+    lt_cv_aix_libpath_=/usr/lib:/lib
   fi
 
 fi
@@ -9807,21 +10164,33 @@ fi
   aix_libpath=$lt_cv_aix_libpath_
 fi
 
-	 hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
+	 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
 	  # Warning - without using the other run time loading flags,
 	  # -berok will link without error, but may produce a broken library.
-	  no_undefined_flag=' ${wl}-bernotok'
-	  allow_undefined_flag=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
+	  no_undefined_flag=' $wl-bernotok'
+	  allow_undefined_flag=' $wl-berok'
+	  if test yes = "$with_gnu_ld"; then
 	    # We only use this code for GNU lds that support --whole-archive.
-	    whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+	    whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'
 	  else
 	    # Exported symbols can be pulled into shared objects from archives
 	    whole_archive_flag_spec='$convenience'
 	  fi
 	  archive_cmds_need_lc=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+	  archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+	  # -brtl affects multiple linker settings, -berok does not and is overridden later
+	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
+	  if test svr4 != "$with_aix_soname"; then
+	    # This is similar to how AIX traditionally builds its shared libraries.
+	    archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+	  fi
+	  if test aix != "$with_aix_soname"; then
+	    archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) >  [...]
+	  else
+	    # used by -dlpreopen to get the symbols
+	    archive_expsym_cmds="$archive_expsym_cmds"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+	  fi
+	  archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'
 	fi
       fi
       ;;
@@ -9830,7 +10199,7 @@ fi
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             archive_expsym_cmds=''
         ;;
       m68k)
@@ -9860,16 +10229,17 @@ fi
 	# Tell ltmain to make .lib files, not .a files.
 	libext=lib
 	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
+	shrext_cmds=.dll
 	# FIXME: Setting linknames here is a bad hack.
-	archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
+	archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+	archive_expsym_cmds='if   test DEF = "`$SED -n     -e '\''s/^[	 ]*//'\''     -e '\''/^\(;.*\)*$/d'\''     -e '\''s/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p'\''     -e q     $export_symbols`" ; then
+            cp "$export_symbols" "$output_objdir/$soname.def";
+            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+          else
+            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+          fi~
+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+          linknames='
 	# The linker will not automatically build a static lib if we build a DLL.
 	# _LT_TAGVAR(old_archive_from_new_cmds, )='true'
 	enable_shared_with_static_runtimes=yes
@@ -9878,18 +10248,18 @@ fi
 	# Don't use ranlib
 	old_postinstall_cmds='chmod 644 $oldlib'
 	postlink_cmds='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
+          lt_tool_outputfile="@TOOL_OUTPUT@"~
+          case $lt_outputfile in
+            *.exe|*.EXE) ;;
+            *)
+              lt_outputfile=$lt_outputfile.exe
+              lt_tool_outputfile=$lt_tool_outputfile.exe
+              ;;
+          esac~
+          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+            $RM "$lt_outputfile.manifest";
+          fi'
 	;;
       *)
 	# Assume MSVC wrapper
@@ -9898,7 +10268,7 @@ fi
 	# Tell ltmain to make .lib files, not .a files.
 	libext=lib
 	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
+	shrext_cmds=.dll
 	# FIXME: Setting linknames here is a bad hack.
 	archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
 	# The linker will automatically build a .lib file if we build a DLL.
@@ -9917,24 +10287,24 @@ fi
   hardcode_direct=no
   hardcode_automatic=yes
   hardcode_shlibpath_var=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
+  if test yes = "$lt_cv_ld_force_load"; then
+    whole_archive_flag_spec='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
 
   else
     whole_archive_flag_spec=''
   fi
   link_all_deplibs=yes
-  allow_undefined_flag="$_lt_dar_allow_undefined"
+  allow_undefined_flag=$_lt_dar_allow_undefined
   case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
      *) _lt_dar_can_shared=$GCC ;;
   esac
-  if test "$_lt_dar_can_shared" = "yes"; then
+  if test yes = "$_lt_dar_can_shared"; then
     output_verbose_link_cmd=func_echo_all
-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
+    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+    archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
 
   else
   ld_shlibs=no
@@ -9976,33 +10346,33 @@ fi
       ;;
 
     hpux9*)
-      if test "$GCC" = yes; then
-	archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+      if test yes = "$GCC"; then
+	archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       else
-	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+	archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       fi
-      hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl+b $wl$libdir'
       hardcode_libdir_separator=:
       hardcode_direct=yes
 
       # hardcode_minus_L: Not really in the search PATH,
       # but as the default location of the library.
       hardcode_minus_L=yes
-      export_dynamic_flag_spec='${wl}-E'
+      export_dynamic_flag_spec='$wl-E'
       ;;
 
     hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes,no = "$GCC,$with_gnu_ld"; then
+	archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
       else
 	archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
       fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+	hardcode_libdir_flag_spec='$wl+b $wl$libdir'
 	hardcode_libdir_separator=:
 	hardcode_direct=yes
 	hardcode_direct_absolute=yes
-	export_dynamic_flag_spec='${wl}-E'
+	export_dynamic_flag_spec='$wl-E'
 	# hardcode_minus_L: Not really in the search PATH,
 	# but as the default location of the library.
 	hardcode_minus_L=yes
@@ -10010,25 +10380,25 @@ fi
       ;;
 
     hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
+      if test yes,no = "$GCC,$with_gnu_ld"; then
 	case $host_cpu in
 	hppa*64*)
-	  archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
-	  archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	esac
       else
 	case $host_cpu in
 	hppa*64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 
@@ -10040,7 +10410,7 @@ if ${lt_cv_prog_compiler__b+:} false; then :
   $as_echo_n "(cached) " >&6
 else
   lt_cv_prog_compiler__b=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS -b"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -10059,14 +10429,14 @@ else
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
 $as_echo "$lt_cv_prog_compiler__b" >&6; }
 
-if test x"$lt_cv_prog_compiler__b" = xyes; then
-    archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+if test yes = "$lt_cv_prog_compiler__b"; then
+    archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
 else
     archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
 fi
@@ -10074,8 +10444,8 @@ fi
 	  ;;
 	esac
       fi
-      if test "$with_gnu_ld" = no; then
-	hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+	hardcode_libdir_flag_spec='$wl+b $wl$libdir'
 	hardcode_libdir_separator=:
 
 	case $host_cpu in
@@ -10086,7 +10456,7 @@ fi
 	*)
 	  hardcode_direct=yes
 	  hardcode_direct_absolute=yes
-	  export_dynamic_flag_spec='${wl}-E'
+	  export_dynamic_flag_spec='$wl-E'
 
 	  # hardcode_minus_L: Not really in the search PATH,
 	  # but as the default location of the library.
@@ -10097,8 +10467,8 @@ fi
       ;;
 
     irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+	archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
 	# Try to use the -exported_symbol ld option, if it does not
 	# work, assume that -exports_file does not work either and
 	# implicitly export all symbols.
@@ -10108,8 +10478,8 @@ $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >
 if ${lt_cv_irix_exported_symbol+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+  save_LDFLAGS=$LDFLAGS
+	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
 	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo (void) { return 0; }
@@ -10121,24 +10491,35 @@ else
 fi
 rm -f core conftest.err conftest.$ac_objext \
     conftest$ac_exeext conftest.$ac_ext
-           LDFLAGS="$save_LDFLAGS"
+           LDFLAGS=$save_LDFLAGS
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
 $as_echo "$lt_cv_irix_exported_symbol" >&6; }
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+	if test yes = "$lt_cv_irix_exported_symbol"; then
+          archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
 	fi
+	link_all_deplibs=no
       else
-	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+	archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+	archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
       fi
       archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       inherit_rpath=yes
       link_all_deplibs=yes
       ;;
 
+    linux*)
+      case $cc_basename in
+      tcc*)
+	# Fabrice Bellard et al's Tiny C Compiler
+	ld_shlibs=yes
+	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	;;
+      esac
+      ;;
+
     netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
@@ -10153,7 +10534,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
     newsos6)
       archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
       hardcode_direct=yes
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       hardcode_shlibpath_var=no
       ;;
@@ -10161,27 +10542,19 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
     *nto* | *qnx*)
       ;;
 
-    openbsd*)
+    openbsd* | bitrig*)
       if test -f /usr/libexec/ld.so; then
 	hardcode_direct=yes
 	hardcode_shlibpath_var=no
 	hardcode_direct_absolute=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
 	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	  export_dynamic_flag_spec='${wl}-E'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
+	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'
+	  export_dynamic_flag_spec='$wl-E'
 	else
-	  case $host_os in
-	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     hardcode_libdir_flag_spec='-R$libdir'
-	     ;;
-	   *)
-	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	     ;;
-	  esac
+	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  hardcode_libdir_flag_spec='$wl-rpath,$libdir'
 	fi
       else
 	ld_shlibs=no
@@ -10192,33 +10565,53 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       hardcode_libdir_flag_spec='-L$libdir'
       hardcode_minus_L=yes
       allow_undefined_flag=unsupported
-      archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+      shrext_cmds=.dll
+      archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	prefix_cmds="$SED"~
+	if test EXPORTS = "`$SED 1q $export_symbols`"; then
+	  prefix_cmds="$prefix_cmds -e 1d";
+	fi~
+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      enable_shared_with_static_runtimes=yes
       ;;
 
     osf3*)
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+	allow_undefined_flag=' $wl-expect_unresolved $wl\*'
+	archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
       else
 	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
       fi
       archive_cmds_need_lc='no'
-      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       hardcode_libdir_separator=:
       ;;
 
     osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+      if test yes = "$GCC"; then
+	allow_undefined_flag=' $wl-expect_unresolved $wl\*'
+	archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+	hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
       else
 	allow_undefined_flag=' -expect_unresolved \*'
-	archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
 	archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+          $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
 
 	# Both c and cxx compiler support -rpath directly
 	hardcode_libdir_flag_spec='-rpath $libdir'
@@ -10229,24 +10622,24 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
 
     solaris*)
       no_undefined_flag=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	wlarc='$wl'
+	archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+          $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
       else
 	case `$CC -V 2>&1` in
 	*"Compilers 5.0"*)
 	  wlarc=''
-	  archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+	  archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
 	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
 	  ;;
 	*)
-	  wlarc='${wl}'
-	  archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+	  wlarc='$wl'
+	  archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
 	  archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
 	  ;;
 	esac
       fi
@@ -10256,11 +10649,11 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       solaris2.[0-5] | solaris2.[0-5].*) ;;
       *)
 	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but understands '-z linker_flag'.  GCC discards it without '$wl',
 	# but is careful enough not to reorder.
 	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	if test yes = "$GCC"; then
+	  whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
 	else
 	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
 	fi
@@ -10270,10 +10663,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
 
     sunos4*)
-      if test "x$host_vendor" = xsequent; then
+      if test sequent = "$host_vendor"; then
 	# Use $CC to link under sequent, because it throws in some extra .o
 	# files that make .init and .fini sections work.
-	archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
       else
 	archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
       fi
@@ -10322,43 +10715,43 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
-      no_undefined_flag='${wl}-z,text'
+      no_undefined_flag='$wl-z,text'
       archive_cmds_need_lc=no
       hardcode_shlibpath_var=no
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
     sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
+      # Note: We CANNOT use -z defs as we might desire, because we do not
       # link with -lc, and that would cause any symbols used from libc to
       # always be unresolved, which means just about no library would
       # ever link correctly.  If we're not using GNU ld we use -z text
       # though, which does catch some bad symbols but isn't as heavy-handed
       # as -z defs.
-      no_undefined_flag='${wl}-z,text'
-      allow_undefined_flag='${wl}-z,nodefs'
+      no_undefined_flag='$wl-z,text'
+      allow_undefined_flag='$wl-z,nodefs'
       archive_cmds_need_lc=no
       hardcode_shlibpath_var=no
-      hardcode_libdir_flag_spec='${wl}-R,$libdir'
+      hardcode_libdir_flag_spec='$wl-R,$libdir'
       hardcode_libdir_separator=':'
       link_all_deplibs=yes
-      export_dynamic_flag_spec='${wl}-Bexport'
+      export_dynamic_flag_spec='$wl-Bexport'
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-	archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-	archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
@@ -10373,10 +10766,10 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
       ;;
     esac
 
-    if test x$host_vendor = xsni; then
+    if test sni = "$host_vendor"; then
       case $host in
       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	export_dynamic_flag_spec='${wl}-Blargedynsym'
+	export_dynamic_flag_spec='$wl-Blargedynsym'
 	;;
       esac
     fi
@@ -10384,7 +10777,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; }
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
 $as_echo "$ld_shlibs" >&6; }
-test "$ld_shlibs" = no && can_build_shared=no
+test no = "$ld_shlibs" && can_build_shared=no
 
 with_gnu_ld=$with_gnu_ld
 
@@ -10410,7 +10803,7 @@ x|xyes)
   # Assume -lc should be added
   archive_cmds_need_lc=yes
 
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+  if test yes,yes = "$GCC,$enable_shared"; then
     case $archive_cmds in
     *'~'*)
       # FIXME: we may have to deal with multi-command sequences.
@@ -10625,14 +11018,14 @@ esac
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
 $as_echo_n "checking dynamic linker characteristics... " >&6; }
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
+    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
+    *) lt_awk_arg='/^libraries:/' ;;
   esac
   case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;
+    *) lt_sed_strip_eq='s|=/|/|g' ;;
   esac
   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
   case $lt_search_path_spec in
@@ -10648,28 +11041,35 @@ if test "$GCC" = yes; then
     ;;
   esac
   # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
+  # and add multilib dir if necessary...
   lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  # ...but if some path component already ends with the multilib dir we assume
+  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
+  case "$lt_multi_os_dir; $lt_search_path_spec " in
+  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
+    lt_multi_os_dir=
+    ;;
+  esac
   for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
+    if test -d "$lt_sys_path$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
+    elif test -n "$lt_multi_os_dir"; then
       test -d "$lt_sys_path" && \
 	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
     fi
   done
   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
+BEGIN {RS = " "; FS = "/|\n";} {
+  lt_foo = "";
+  lt_count = 0;
   for (lt_i = NF; lt_i > 0; lt_i--) {
     if ($lt_i != "" && $lt_i != ".") {
       if ($lt_i == "..") {
         lt_count++;
       } else {
         if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
+          lt_foo = "/" $lt_i lt_foo;
         } else {
           lt_count--;
         }
@@ -10683,7 +11083,7 @@ BEGIN {RS=" "; FS="/|\n";} {
   # for these hosts.
   case $host_os in
     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([A-Za-z]:\),\1,g'` ;;
+      $SED 's|/\([A-Za-z]:\)|\1|g'` ;;
   esac
   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
 else
@@ -10692,7 +11092,7 @@ fi
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
-shrext_cmds=".so"
+shrext_cmds=.so
 postinstall_cmds=
 postuninstall_cmds=
 finish_cmds=
@@ -10709,14 +11109,16 @@ hardcode_into_libs=no
 # flags to be left without arguments
 need_version=unknown
 
+
+
 case $host_os in
 aix3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
   shlibpath_var=LIBPATH
 
   # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
+  soname_spec='$libname$release$shared_ext$major'
   ;;
 
 aix[4-9]*)
@@ -10724,41 +11126,91 @@ aix[4-9]*)
   need_lib_prefix=no
   need_version=no
   hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
     shlibpath_var=LD_LIBRARY_PATH
   else
     # With GCC up to 2.95.x, collect2 would create an import file
     # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
+    # the line '#! .'.  This would cause the generated library to
+    # depend on '.', always an invalid library.  This was fixed in
     # development snapshots of GCC prior to 3.0.
     case $host_os in
       aix4 | aix4.[01] | aix4.[01].*)
       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
 	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
 	:
       else
 	can_build_shared=no
       fi
       ;;
     esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+    # Using Import Files as archive members, it is possible to support
+    # filename-based versioning of shared library archives on AIX. While
+    # this would work for both with and without runtime linking, it will
+    # prevent static linking of such archives. So we do filename-based
+    # shared library versioning with .so extension only, which is used
+    # when both runtime linking and shared linking is enabled.
+    # Unfortunately, runtime linking may impact performance, so we do
+    # not want this to be the default eventually. Also, we use the
+    # versioned .so libs for executables only if there is the -brtl
+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
+    # To allow for filename-based versioning support, we need to create
+    # libNAME.so.V as an archive file, containing:
+    # *) an Import File, referring to the versioned filename of the
+    #    archive as well as the shared archive member, telling the
+    #    bitwidth (32 or 64) of that shared object, and providing the
+    #    list of exported symbols of that shared object, eventually
+    #    decorated with the 'weak' keyword
+    # *) the shared object with the F_LOADONLY flag set, to really avoid
+    #    it being seen by the linker.
+    # At run time we better use the real file rather than another symlink,
+    # but for link time we create the symlink libNAME.so -> libNAME.so.V
+
+    case $with_aix_soname,$aix_use_runtimelinking in
+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
     # soname into executable. Probably we can add versioning support to
     # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
+    aix,yes) # traditional libtool
+      dynamic_linker='AIX unversionable lib.so'
       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
       # instead of lib<name>.a to let people know that these are not
       # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      ;;
+    aix,no) # traditional AIX only
+      dynamic_linker='AIX lib.a(lib.so.V)'
       # We preserve .a as extension for shared libraries through AIX4.2
       # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      ;;
+    svr4,*) # full svr4 only
+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,yes) # both, prefer svr4
+      dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # unpreferred sharedlib libNAME.a needs extra handling
+      postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
+      postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,no) # both, prefer aix
+      dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
+      postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
+      postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
+      ;;
+    esac
     shlibpath_var=LIBPATH
   fi
   ;;
@@ -10768,18 +11220,18 @@ amigaos*)
   powerpc)
     # Since July 2007 AmigaOS4 officially supports .so libraries.
     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
     ;;
   m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
     ;;
   esac
   ;;
 
 beos*)
-  library_names_spec='${libname}${shared_ext}'
+  library_names_spec='$libname$shared_ext'
   dynamic_linker="$host_os ld.so"
   shlibpath_var=LIBRARY_PATH
   ;;
@@ -10787,8 +11239,8 @@ beos*)
 bsdi[45]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
@@ -10800,7 +11252,7 @@ bsdi[45]*)
 
 cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
-  shrext_cmds=".dll"
+  shrext_cmds=.dll
   need_version=no
   need_lib_prefix=no
 
@@ -10809,8 +11261,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     # gcc
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname~
@@ -10826,17 +11278,17 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
 
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
       ;;
     mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
+      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
@@ -10845,8 +11297,8 @@ cygwin* | mingw* | pw32* | cegcc*)
   *,cl*)
     # Native MSVC
     libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
+    soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
+    library_names_spec='$libname.dll.lib'
 
     case $build_os in
     mingw*)
@@ -10873,7 +11325,7 @@ cygwin* | mingw* | pw32* | cegcc*)
       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
       ;;
     *)
-      sys_lib_search_path_spec="$LIB"
+      sys_lib_search_path_spec=$LIB
       if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
         # It is most probably a Windows format PATH.
         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
@@ -10886,8 +11338,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     esac
 
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname'
@@ -10900,7 +11352,7 @@ cygwin* | mingw* | pw32* | cegcc*)
 
   *)
     # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib'
+    library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
   esac
@@ -10913,8 +11365,8 @@ darwin* | rhapsody*)
   version_type=darwin
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$major$shared_ext'
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
@@ -10927,8 +11379,8 @@ dgux*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -10946,12 +11398,13 @@ freebsd* | dragonfly*)
   version_type=freebsd-$objformat
   case $version_type in
     freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      soname_spec='$libname$release$shared_ext$major'
       need_version=no
       need_lib_prefix=no
       ;;
     freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
       need_version=yes
       ;;
   esac
@@ -10981,10 +11434,10 @@ haiku*)
   need_lib_prefix=no
   need_version=no
   dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
+  shlibpath_overrides_runpath=no
   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
   hardcode_into_libs=yes
   ;;
@@ -11002,14 +11455,15 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.so"
     shlibpath_var=LD_LIBRARY_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
+    if test 32 = "$HPUX_IA64_MODE"; then
       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
     else
       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
     fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
   hppa*64*)
     shrext_cmds='.sl'
@@ -11017,8 +11471,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
@@ -11027,8 +11481,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=SHLIB_PATH
     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     ;;
   esac
   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
@@ -11041,8 +11495,8 @@ interix[3-9]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -11053,7 +11507,7 @@ irix5* | irix6* | nonstopux*)
   case $host_os in
     nonstopux*) version_type=nonstopux ;;
     *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
+	if test yes = "$lt_cv_prog_gnu_ld"; then
 		version_type=linux # correct to gnu/linux during the next big refactor
 	else
 		version_type=irix
@@ -11061,8 +11515,8 @@ irix5* | irix6* | nonstopux*)
   esac
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
   case $host_os in
   irix5* | nonstopux*)
     libsuff= shlibsuff=
@@ -11081,8 +11535,8 @@ irix5* | irix6* | nonstopux*)
   esac
   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
   shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
   hardcode_into_libs=yes
   ;;
 
@@ -11091,13 +11545,33 @@ linux*oldld* | linux*aout* | linux*coff*)
   dynamic_linker=no
   ;;
 
+linux*android*)
+  version_type=none # Android doesn't support versioned libraries.
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='$libname$release$shared_ext'
+  soname_spec='$libname$release$shared_ext'
+  finish_cmds=
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  dynamic_linker='Android linker'
+  # Don't embed -rpath directories since the linker doesn't support them.
+  hardcode_libdir_flag_spec='-L$libdir'
+  ;;
+
 # This must be glibc/ELF.
 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -11141,7 +11615,12 @@ fi
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Append ld.so.conf contents to the search path
+  # Ideally, we could use ldconfig to report *all* directores which are
+  # searched for libraries, however this is still not possible.  Aside from not
+  # being certain /sbin/ldconfig is available, command
+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
+  # even though it is searched at run-time.  Try to do the best guess by
+  # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
@@ -11173,12 +11652,12 @@ netbsd*)
   need_lib_prefix=no
   need_version=no
   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
     dynamic_linker='NetBSD (a.out) ld.so'
   else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     dynamic_linker='NetBSD ld.elf_so'
   fi
   shlibpath_var=LD_LIBRARY_PATH
@@ -11188,7 +11667,7 @@ netbsd*)
 
 newsos6)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   ;;
@@ -11197,58 +11676,68 @@ newsos6)
   version_type=qnx
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
   dynamic_linker='ldqnx.so'
   ;;
 
-openbsd*)
+openbsd* | bitrig*)
   version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
+  sys_lib_dlsearch_path_spec=/usr/lib
   need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[89] | openbsd2.[89].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+    need_version=no
   else
-    shlibpath_overrides_runpath=yes
+    need_version=yes
   fi
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
   ;;
 
 os2*)
   libname_spec='$name'
-  shrext_cmds=".dll"
+  version_type=windows
+  shrext_cmds=.dll
+  need_version=no
   need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
+  # OS/2 can only load a DLL with a base name of 8 characters or less.
+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
+    v=$($ECHO $release$versuffix | tr -d .-);
+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
+    $ECHO $n$v`$shared_ext'
+  library_names_spec='${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+  postinstall_cmds='base_file=`basename \$file`~
+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
+    dldir=$destdir/`dirname \$dlpath`~
+    test -d \$dldir || mkdir -p \$dldir~
+    $install_prog $dir/$dlname \$dldir/$dlname~
+    chmod a+x \$dldir/$dlname~
+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+    fi'
+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
+    dlpath=$dir/\$dldll~
+    $RM \$dlpath'
   ;;
 
 osf3* | osf4* | osf5*)
   version_type=osf
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
 rdos*)
@@ -11259,8 +11748,8 @@ solaris*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
@@ -11270,11 +11759,11 @@ solaris*)
 
 sunos4*)
   version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     need_lib_prefix=no
   fi
   need_version=yes
@@ -11282,8 +11771,8 @@ sunos4*)
 
 sysv4 | sysv4.3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   case $host_vendor in
     sni)
@@ -11304,24 +11793,24 @@ sysv4 | sysv4.3*)
   ;;
 
 sysv4*MP*)
-  if test -d /usr/nec ;then
+  if test -d /usr/nec; then
     version_type=linux # correct to gnu/linux during the next big refactor
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
+    soname_spec='$libname$shared_ext.$major'
     shlibpath_var=LD_LIBRARY_PATH
   fi
   ;;
 
 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
+  version_type=sco
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
   else
     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
@@ -11339,7 +11828,7 @@ tpf*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -11347,8 +11836,8 @@ tpf*)
 
 uts4*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -11358,20 +11847,35 @@ uts4*)
 esac
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
 $as_echo "$dynamic_linker" >&6; }
-test "$dynamic_linker" = no && can_build_shared=no
+test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
 fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
+if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
 fi
 
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
+
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
+
+
+
+
+
 
 
 
@@ -11468,15 +11972,15 @@ $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
    test -n "$runpath_var" ||
-   test "X$hardcode_automatic" = "Xyes" ; then
+   test yes = "$hardcode_automatic"; then
 
   # We can hardcode non-existent directories.
-  if test "$hardcode_direct" != no &&
+  if test no != "$hardcode_direct" &&
      # If the only mechanism to avoid hardcoding is shlibpath_var, we
      # have to relink, otherwise we might link with an installed library
      # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no &&
-     test "$hardcode_minus_L" != no; then
+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&
+     test no != "$hardcode_minus_L"; then
     # Linking always hardcodes the temporary library directory.
     hardcode_action=relink
   else
@@ -11491,12 +11995,12 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
 $as_echo "$hardcode_action" >&6; }
 
-if test "$hardcode_action" = relink ||
-   test "$inherit_rpath" = yes; then
+if test relink = "$hardcode_action" ||
+   test yes = "$inherit_rpath"; then
   # Fast installation is not supported
   enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
+elif test yes = "$shlibpath_overrides_runpath" ||
+     test no = "$enable_shared"; then
   # Fast installation is not necessary
   enable_fast_install=needless
 fi
@@ -11506,7 +12010,7 @@ fi
 
 
 
-  if test "x$enable_dlopen" != xyes; then
+  if test yes != "$enable_dlopen"; then
   enable_dlopen=unknown
   enable_dlopen_self=unknown
   enable_dlopen_self_static=unknown
@@ -11516,23 +12020,23 @@ else
 
   case $host_os in
   beos*)
-    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen=load_add_on
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ;;
 
   mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen=LoadLibrary
     lt_cv_dlopen_libs=
     ;;
 
   cygwin*)
-    lt_cv_dlopen="dlopen"
+    lt_cv_dlopen=dlopen
     lt_cv_dlopen_libs=
     ;;
 
   darwin*)
-  # if libdl is installed we need to link against it
+    # if libdl is installed we need to link against it
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
 if ${ac_cv_lib_dl_dlopen+:} false; then :
@@ -11570,10 +12074,10 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
 else
 
-    lt_cv_dlopen="dyld"
+    lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
 
@@ -11581,10 +12085,18 @@ fi
 
     ;;
 
+  tpf*)
+    # Don't try to run any link tests for TPF.  We know it's impossible
+    # because TPF is a cross-compiler, and we know how we open DSOs.
+    lt_cv_dlopen=dlopen
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=no
+    ;;
+
   *)
     ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
 if test "x$ac_cv_func_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load"
+  lt_cv_dlopen=shl_load
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
 $as_echo_n "checking for shl_load in -ldld... " >&6; }
@@ -11623,11 +12135,11 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }
 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
+  lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
 else
   ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
 if test "x$ac_cv_func_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen"
+  lt_cv_dlopen=dlopen
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
 $as_echo_n "checking for dlopen in -ldl... " >&6; }
@@ -11666,7 +12178,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
 $as_echo_n "checking for dlopen in -lsvld... " >&6; }
@@ -11705,7 +12217,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }
 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
+  lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
 $as_echo_n "checking for dld_link in -ldld... " >&6; }
@@ -11744,7 +12256,7 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }
 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
+  lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
 fi
 
 
@@ -11765,21 +12277,21 @@ fi
     ;;
   esac
 
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
+  if test no = "$lt_cv_dlopen"; then
     enable_dlopen=no
+  else
+    enable_dlopen=yes
   fi
 
   case $lt_cv_dlopen in
   dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+    save_CPPFLAGS=$CPPFLAGS
+    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
 
-    save_LDFLAGS="$LDFLAGS"
+    save_LDFLAGS=$LDFLAGS
     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
 
-    save_LIBS="$LIBS"
+    save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
@@ -11787,7 +12299,7 @@ $as_echo_n "checking whether a program can dlopen itself... " >&6; }
 if ${lt_cv_dlopen_self+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  	  if test "$cross_compiling" = yes; then :
+  	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self=cross
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -11834,9 +12346,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -11866,7 +12378,7 @@ _LT_EOF
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -11886,14 +12398,14 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
 $as_echo "$lt_cv_dlopen_self" >&6; }
 
-    if test "x$lt_cv_dlopen_self" = xyes; then
+    if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
 if ${lt_cv_dlopen_self_static+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  	  if test "$cross_compiling" = yes; then :
+  	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self_static=cross
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -11940,9 +12452,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -11972,7 +12484,7 @@ _LT_EOF
   (eval $ac_link) 2>&5
   ac_status=$?
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then
+  test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -11993,9 +12505,9 @@ fi
 $as_echo "$lt_cv_dlopen_self_static" >&6; }
     fi
 
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
+    CPPFLAGS=$save_CPPFLAGS
+    LDFLAGS=$save_LDFLAGS
+    LIBS=$save_LIBS
     ;;
   esac
 
@@ -12039,7 +12551,7 @@ else
 # FIXME - insert some real tests, host_os isn't really good enough
   case $host_os in
   darwin*)
-    if test -n "$STRIP" ; then
+    if test -n "$STRIP"; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
@@ -12067,7 +12579,7 @@ fi
 
 
 
-  # Report which library types will actually be built
+  # Report what library types will actually be built
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
 $as_echo_n "checking if libtool supports shared libraries... " >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
@@ -12075,13 +12587,13 @@ $as_echo "$can_build_shared" >&6; }
 
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
 $as_echo_n "checking whether to build shared libraries... " >&6; }
-  test "$can_build_shared" = "no" && enable_shared=no
+  test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
   # are all built from PIC.
   case $host_os in
   aix3*)
-    test "$enable_shared" = yes && enable_static=no
+    test yes = "$enable_shared" && enable_static=no
     if test -n "$RANLIB"; then
       archive_cmds="$archive_cmds~\$RANLIB \$lib"
       postinstall_cmds='$RANLIB $lib'
@@ -12089,8 +12601,12 @@ $as_echo_n "checking whether to build shared libraries... " >&6; }
     ;;
 
   aix[4-9]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
+    if test ia64 != "$host_cpu"; then
+      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+      yes,aix,yes) ;;			# shared object as lib.so file only
+      yes,svr4,*) ;;			# shared object as lib.so archive member only
+      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
+      esac
     fi
     ;;
   esac
@@ -12100,7 +12616,7 @@ $as_echo "$enable_shared" >&6; }
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
 $as_echo_n "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
+  test yes = "$enable_shared" || enable_static=yes
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
 $as_echo "$enable_static" >&6; }
 
@@ -12114,7 +12630,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-CC="$lt_save_CC"
+CC=$lt_save_CC
 
 
 
@@ -13105,7 +13621,6 @@ fi
 XMLSEC_EXTRA_LDFLAGS=
 XMLSEC_CRYPTO_EXTRA_LDFLAGS=
 
-xmlsec_sharedlib_hack="no"
 if test -n "$shrext"; then
   XMLSEC_SHLIBSFX="$shrext"
 else
@@ -13119,7 +13634,13 @@ case "${host}" in
 				XMLSEC_EXTRA_LDFLAGS="-no-undefined -avoid-version"
 	XMLSEC_CRYPTO_EXTRA_LDFLAGS="-no-undefined -avoid-version"
 	XMLSEC_SHLIBSFX=".dll.a"
-	xmlsec_sharedlib_hack="yes"
+        # To avoid problem with loading of a shared library (dlopen or
+        # equivalent) at run time on some platforms we need to link
+        # everything statically (it works without hack on 9x and under
+        # emulation; on nt 5.x (w2k,xp) the error is 998: "Invalid
+        # access to memory location").
+        enable_static_linking="yes"
+        enable_crypto_dl="no"
 	;;
  *-*-cygwin*)
 	XMLSEC_EXTRA_LDFLAGS="-no-undefined"
@@ -13130,19 +13651,6 @@ case "${host}" in
         ;;
 esac
 
-# To avoid problem with loading of a shared library (dlopen or equivalent)
-# at run time on some platforms we need to link crypto modules with extra
-# source. It's work without hack on 9x and under emulation.
-# On nt 5.x (w2k,xp) the error is 998("Invalid access to memory location").
- if test "z$xmlsec_sharedlib_hack" = "zyes"; then
-  SHAREDLIB_HACK_TRUE=
-  SHAREDLIB_HACK_FALSE='#'
-else
-  SHAREDLIB_HACK_TRUE='#'
-  SHAREDLIB_HACK_FALSE=
-fi
-
-
 if test "z$shrext" == "z" ; then
     shrext=$shrext_cmds
 fi
@@ -14208,7 +14716,7 @@ if test "z$OPENSSL_FOUND" = "zyes" -a "z$OPENSSL_VERSION" = "z" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openssl libraries >= $OPENSSL_MIN_VERSION" >&5
 $as_echo_n "checking for openssl libraries >= $OPENSSL_MIN_VERSION... " >&6; }
 
-        OLD_CPPFLAGS=$CPPFLAGS
+            OLD_CPPFLAGS=$CPPFLAGS
     CPPFLAGS="$OPENSSL_CFLAGS"
 
     if test "z$OPENSSL_VERSION" = "z" ; then
@@ -14216,7 +14724,31 @@ $as_echo_n "checking for openssl libraries >= $OPENSSL_MIN_VERSION... " >&6; }
 /* end confdefs.h.  */
 
             #include <openssl/opensslv.h>
-        #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+        #if OPENSSL_VERSION_NUMBER == 0x20000000L && defined(LIBRESSL_VERSION_NUMBER)
+        yes
+        #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "yes" >/dev/null 2>&1; then :
+
+        OPENSSL_VERSION="1.0.0 (libressl)"
+
+else
+
+        OPENSSL_VERSION=""
+
+fi
+rm -f conftest*
+
+    fi
+
+    if test "z$OPENSSL_VERSION" = "z" ; then
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+            #include <openssl/opensslv.h>
+        #if OPENSSL_VERSION_NUMBER >= 0x10100000L
         yes
         #endif
 
@@ -14295,40 +14827,7 @@ $as_echo "yes ('$OPENSSL_VERSION')" >&6; }
 fi
 
 if test "z$OPENSSL_FOUND" = "zyes" ; then
-        OLD_CPPFLAGS=$CPPFLAGS
-    CPPFLAGS="$OPENSSL_CFLAGS"
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-	#include <openssl/opensslconf.h>
-	#ifdef OPENSSL_NO_ECDSA
-	    yes
-	#endif
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes" >/dev/null 2>&1; then :
-
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_NO_ECDSA=1"
-
-fi
-rm -f conftest*
-
-    CPPFLAGS=$OLD_CPPFLAGS
-fi
-
-if test "z$OPENSSL_FOUND" = "zyes" ; then
     XMLSEC_NO_OPENSSL="0"
-    if test "z$OPENSSL_VERSION" = "z0.9.8" ; then
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_098=1 -DXMLSEC_NO_ECDSA=1 -DXMLSEC_NO_SHA256=1"
-    fi
-    if test "z$OPENSSL_VERSION" = "z1.0.0" ; then
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_100=1"
-    fi
-    if test "z$OPENSSL_VERSION" = "z1.1.0" ; then
-    	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_110=1"
-    fi
     OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_CRYPTO_OPENSSL=1"
     XMLSEC_CRYPTO_LIST="$XMLSEC_CRYPTO_LIST openssl"
 else
@@ -14352,7 +14851,7 @@ fi
 XMLSEC_NO_NSS="1"
 SEAMONKEY_MIN_VERSION="1.0"
 MOZILLA_MIN_VERSION="1.4"
-NSS_MIN_VERSION="3.9"
+NSS_MIN_VERSION="3.11.1"
 NSPR_MIN_VERSION="4.4.1"
 NSS_CFLAGS=""
 NSS_LIBS=""
@@ -16102,6 +16601,58 @@ fi
 
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for docs" >&5
+$as_echo_n "checking for docs... " >&6; }
+# Check whether --enable-docs was given.
+if test "${enable_docs+set}" = set; then :
+  enableval=$enable_docs;
+fi
+
+if test "z$enable_docs" = "zno" ; then
+    XMLSEC_DOCS="0"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+else
+    XMLSEC_DOCS="1"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+fi
+ if test "z$XMLSEC_DOCS" = "z1"; then
+  XMLSEC_DOCS_TRUE=
+  XMLSEC_DOCS_FALSE='#'
+else
+  XMLSEC_DOCS_TRUE='#'
+  XMLSEC_DOCS_FALSE=
+fi
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for apps" >&5
+$as_echo_n "checking for apps... " >&6; }
+# Check whether --enable-apps was given.
+if test "${enable_apps+set}" = set; then :
+  enableval=$enable_apps;
+fi
+
+if test "z$enable_apps" = "zno" ; then
+    XMLSEC_APPS="0"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+else
+    XMLSEC_APPS="1"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+fi
+ if test "z$XMLSEC_APPS" = "z1"; then
+  XMLSEC_APPS_TRUE=
+  XMLSEC_APPS_FALSE='#'
+else
+  XMLSEC_APPS_TRUE='#'
+  XMLSEC_APPS_FALSE=
+fi
+
+
+
 XMLSEC_DL_INCLUDES=""
 XMLSEC_DL_LIBS=""
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for xmlsec-crypto dynamic loading support" >&5
@@ -16599,10 +17150,6 @@ if test -z "${BUILD_API_DOCS_TRUE}" && test -z "${BUILD_API_DOCS_FALSE}"; then
   as_fn_error $? "conditional \"BUILD_API_DOCS\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-if test -z "${SHAREDLIB_HACK_TRUE}" && test -z "${SHAREDLIB_HACK_FALSE}"; then
-  as_fn_error $? "conditional \"SHAREDLIB_HACK\" was never defined.
-Usually this means the macro was only invoked conditionally." "$LINENO" 5
-fi
 if test -z "${XMLSEC_NO_OPENSSL_TRUE}" && test -z "${XMLSEC_NO_OPENSSL_FALSE}"; then
   as_fn_error $? "conditional \"XMLSEC_NO_OPENSSL\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -16691,6 +17238,14 @@ if test -z "${XMLSEC_NO_XMLENC_TRUE}" && test -z "${XMLSEC_NO_XMLENC_FALSE}"; th
   as_fn_error $? "conditional \"XMLSEC_NO_XMLENC\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${XMLSEC_DOCS_TRUE}" && test -z "${XMLSEC_DOCS_FALSE}"; then
+  as_fn_error $? "conditional \"XMLSEC_DOCS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${XMLSEC_APPS_TRUE}" && test -z "${XMLSEC_APPS_FALSE}"; then
+  as_fn_error $? "conditional \"XMLSEC_APPS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${XMLSEC_NO_CRYPTO_DYNAMIC_LOADING_TRUE}" && test -z "${XMLSEC_NO_CRYPTO_DYNAMIC_LOADING_FALSE}"; then
   as_fn_error $? "conditional \"XMLSEC_NO_CRYPTO_DYNAMIC_LOADING\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -17096,7 +17651,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by xmlsec1 $as_me 1.2.23, which was
+This file was extended by xmlsec1 $as_me 1.2.24, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -17162,7 +17717,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-xmlsec1 config.status 1.2.23
+xmlsec1 config.status 1.2.24
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -17297,6 +17852,7 @@ enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
+shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'
 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'
@@ -17346,10 +17902,13 @@ compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
+lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
+lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'
 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
+lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'
 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
@@ -17414,7 +17973,8 @@ finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
-sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`'
+configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'
+configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'
 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
@@ -17465,9 +18025,12 @@ CFLAGS \
 compiler \
 lt_cv_sys_global_symbol_pipe \
 lt_cv_sys_global_symbol_to_cdecl \
+lt_cv_sys_global_symbol_to_import \
 lt_cv_sys_global_symbol_to_c_name_address \
 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
+lt_cv_nm_interface \
 nm_file_list_spec \
+lt_cv_truncate_bin \
 lt_prog_compiler_no_builtin_flag \
 lt_prog_compiler_pic \
 lt_prog_compiler_wl \
@@ -17502,7 +18065,7 @@ old_striplib \
 striplib; do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -17529,10 +18092,11 @@ postinstall_cmds \
 postuninstall_cmds \
 finish_cmds \
 sys_lib_search_path_spec \
-sys_lib_dlsearch_path_spec; do
+configure_time_dlsearch_path \
+configure_time_lt_sys_library_path; do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[\\\\\\\`\\"\\\$]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -17541,19 +18105,16 @@ sys_lib_dlsearch_path_spec; do
 done
 
 ac_aux_dir='$ac_aux_dir'
-xsi_shell='$xsi_shell'
-lt_shell_append='$lt_shell_append'
 
-# See if we are running on zsh, and set the options which allow our
+# See if we are running on zsh, and set the options that allow our
 # commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
+if test -n "\${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
 
     PACKAGE='$PACKAGE'
     VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
     RM='$RM'
     ofile='$ofile'
 
@@ -18289,55 +18850,53 @@ $as_echo X"$file" |
  ;;
     "libtool":C)
 
-    # See if we are running on zsh, and set the options which allow our
+    # See if we are running on zsh, and set the options that allow our
     # commands through without removal of \ escapes.
-    if test -n "${ZSH_VERSION+set}" ; then
+    if test -n "${ZSH_VERSION+set}"; then
       setopt NO_GLOB_SUBST
     fi
 
-    cfgfile="${ofile}T"
+    cfgfile=${ofile}T
     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
     $RM "$cfgfile"
 
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
+
+# Provide generalized library-building support services.
+# Written by Gordon Matzigkeit, 1996
+
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of of the License, or
+# (at your option) any later version.
 #
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program or library that is built
+# using GNU Libtool, you may include this file under the  same
+# distribution terms that you use for the rest of that program.
 #
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
 # The names of the tagged configurations supported by this script.
-available_tags=""
+available_tags=''
+
+# Configured defaults for sys_lib_dlsearch_path munging.
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
 
 # ### BEGIN LIBTOOL CONFIG
 
@@ -18357,6 +18916,9 @@ pic_mode=$pic_mode
 # Whether or not to optimize for fast installation.
 fast_install=$enable_fast_install
 
+# Shared archive member basename,for filename based shared library versioning on AIX.
+shared_archive_member_spec=$shared_archive_member_spec
+
 # Shell to use when invoking shell scripts.
 SHELL=$lt_SHELL
 
@@ -18474,18 +19036,27 @@ global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
 # Transform the output of nm in a proper C declaration.
 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
 
+# Transform the output of nm into a list of symbols to manually relocate.
+global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import
+
 # Transform the output of nm in a C name address pair.
 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
 
 # Transform the output of nm in a C name address pair when lib prefix is needed.
 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
 
+# The name lister interface.
+nm_interface=$lt_lt_cv_nm_interface
+
 # Specify filename containing input files for \$NM.
 nm_file_list_spec=$lt_nm_file_list_spec
 
-# The root where to search for dependent libraries,and in which our libraries should be installed.
+# The root where to search for dependent libraries,and where our libraries should be installed.
 lt_sysroot=$lt_sysroot
 
+# Command to truncate a binary pipe.
+lt_truncate_bin=$lt_lt_cv_truncate_bin
+
 # The name of the directory that contains temporary libtool files.
 objdir=$objdir
 
@@ -18576,8 +19147,11 @@ hardcode_into_libs=$hardcode_into_libs
 # Compile-time system search path for libraries.
 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
 
-# Run-time system search path for libraries.
-sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+# Detected run-time system search path for libraries.
+sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path
+
+# Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
+configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path
 
 # Whether dlopen is supported.
 dlopen_support=$enable_dlopen
@@ -18670,13 +19244,13 @@ hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
 # Whether we need a single "-rpath" flag with a separated argument.
 hardcode_libdir_separator=$lt_hardcode_libdir_separator
 
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
 # DIR into the resulting binary.
 hardcode_direct=$hardcode_direct
 
-# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes
+# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
 # DIR into the resulting binary and the resulting library dependency is
-# "absolute",i.e impossible to change by setting \${shlibpath_var} if the
+# "absolute",i.e impossible to change by setting \$shlibpath_var if the
 # library is relocated.
 hardcode_direct_absolute=$hardcode_direct_absolute
 
@@ -18728,13 +19302,72 @@ hardcode_action=$hardcode_action
 
 _LT_EOF
 
+    cat <<'_LT_EOF' >> "$cfgfile"
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
+
+# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x$2 in
+    x)
+        ;;
+    *:)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
+        ;;
+    x:*)
+        eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
+        ;;
+    *)
+        eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+
+
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in $*""; do
+      case $cc_temp in
+        compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
+        distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+
+
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_EOF
+
   case $host_os in
   aix3*)
     cat <<\_LT_EOF >> "$cfgfile"
 # AIX sometimes has problems with the GCC collect2 program.  For some
 # reason, if we set the COLLECT_NAMES environment variable, the problems
 # vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
+if test set != "${COLLECT_NAMES+set}"; then
   COLLECT_NAMES=
   export COLLECT_NAMES
 fi
@@ -18743,7 +19376,7 @@ _LT_EOF
   esac
 
 
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 
 
   # We use sed instead of cat because bash on DJGPP gets confused if
@@ -18753,165 +19386,6 @@ ltmain="$ac_aux_dir/ltmain.sh"
   sed '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
-  if test x"$xsi_shell" = xyes; then
-  sed -e '/^func_dirname ()$/,/^} # func_dirname /c\
-func_dirname ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_basename ()$/,/^} # func_basename /c\
-func_basename ()\
-{\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\
-func_dirname_and_basename ()\
-{\
-\    case ${1} in\
-\      */*) func_dirname_result="${1%/*}${2}" ;;\
-\      *  ) func_dirname_result="${3}" ;;\
-\    esac\
-\    func_basename_result="${1##*/}"\
-} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_stripname ()$/,/^} # func_stripname /c\
-func_stripname ()\
-{\
-\    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\
-\    # positional parameters, so assign one to ordinary parameter first.\
-\    func_stripname_result=${3}\
-\    func_stripname_result=${func_stripname_result#"${1}"}\
-\    func_stripname_result=${func_stripname_result%"${2}"}\
-} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\
-func_split_long_opt ()\
-{\
-\    func_split_long_opt_name=${1%%=*}\
-\    func_split_long_opt_arg=${1#*=}\
-} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\
-func_split_short_opt ()\
-{\
-\    func_split_short_opt_arg=${1#??}\
-\    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\
-} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\
-func_lo2o ()\
-{\
-\    case ${1} in\
-\      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\
-\      *)    func_lo2o_result=${1} ;;\
-\    esac\
-} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_xform ()$/,/^} # func_xform /c\
-func_xform ()\
-{\
-    func_xform_result=${1%.*}.lo\
-} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_arith ()$/,/^} # func_arith /c\
-func_arith ()\
-{\
-    func_arith_result=$(( $* ))\
-} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_len ()$/,/^} # func_len /c\
-func_len ()\
-{\
-    func_len_result=${#1}\
-} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  sed -e '/^func_append ()$/,/^} # func_append /c\
-func_append ()\
-{\
-    eval "${1}+=\\${2}"\
-} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\
-func_append_quoted ()\
-{\
-\    func_quote_for_eval "${2}"\
-\    eval "${1}+=\\\\ \\$func_quote_for_eval_result"\
-} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5
-$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;}
-fi
-
-
    mv -f "$cfgfile" "$ofile" ||
     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
   chmod +x "$ofile"
diff --git a/configure.ac b/configure.ac
index b8770ad..c100f92 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,10 +1,10 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT([xmlsec1],[1.2.23],[http://www.aleksey.com/xmlsec])
+AC_INIT([xmlsec1],[1.2.24],[http://www.aleksey.com/xmlsec])
 
 XMLSEC_PACKAGE=xmlsec1
 XMLSEC_VERSION_MAJOR=1
 XMLSEC_VERSION_MINOR=2
-XMLSEC_VERSION_SUBMINOR=23
+XMLSEC_VERSION_SUBMINOR=24
 XMLSEC_VERSION="$XMLSEC_VERSION_MAJOR.$XMLSEC_VERSION_MINOR.$XMLSEC_VERSION_SUBMINOR"
 XMLSEC_VERSION_INFO=`echo $XMLSEC_VERSION | awk -F. '{ printf "%d:%d:%d", $1+$2, $3, $2 }'`
 XMLSEC_VERSION_SAFE=`echo $XMLSEC_VERSION | sed 's/\./_/g'`
@@ -136,7 +136,6 @@ XMLSEC_CRYPTO_EXTRA_LDFLAGS=
 dnl should separate extra LDFLAGS for xmlsec and crypto libs ?
 dnl should --enable-runtime-pseudo-reloc for mingw and cygwin ?
 
-xmlsec_sharedlib_hack="no"
 if test -n "$shrext"; then
   XMLSEC_SHLIBSFX="$shrext"
 else
@@ -154,7 +153,13 @@ case "${host}" in
 	XMLSEC_EXTRA_LDFLAGS="-no-undefined -avoid-version"
 	XMLSEC_CRYPTO_EXTRA_LDFLAGS="-no-undefined -avoid-version"
 	XMLSEC_SHLIBSFX=".dll.a"
-	xmlsec_sharedlib_hack="yes"
+        # To avoid problem with loading of a shared library (dlopen or
+        # equivalent) at run time on some platforms we need to link
+        # everything statically (it works without hack on 9x and under
+        # emulation; on nt 5.x (w2k,xp) the error is 998: "Invalid
+        # access to memory location").
+        enable_static_linking="yes"
+        enable_crypto_dl="no"
 	;;
  *-*-cygwin*)
 	XMLSEC_EXTRA_LDFLAGS="-no-undefined"
@@ -165,12 +170,6 @@ case "${host}" in
         ;;
 esac
 
-# To avoid problem with loading of a shared library (dlopen or equivalent)
-# at run time on some platforms we need to link crypto modules with extra
-# source. It's work without hack on 9x and under emulation.
-# On nt 5.x (w2k,xp) the error is 998("Invalid access to memory location").
-AM_CONDITIONAL(SHAREDLIB_HACK, [test "z$xmlsec_sharedlib_hack" = "zyes"])
-
 dnl ==========================================================================
 dnl Hack for autoconf version mismatch
 dnl ==========================================================================
@@ -485,14 +484,28 @@ fi
 if test "z$OPENSSL_FOUND" = "zyes" -a "z$OPENSSL_VERSION" = "z" ; then
     AC_MSG_CHECKING(for openssl libraries >= $OPENSSL_MIN_VERSION) 
 
-    dnl Check the OpenSSL version    
+    dnl Check the OpenSSL version; if you change this code then you probably
+    dnl want to change include/openssl/crypto.h as well.
     OLD_CPPFLAGS=$CPPFLAGS
     CPPFLAGS="$OPENSSL_CFLAGS"
 
     if test "z$OPENSSL_VERSION" = "z" ; then
         AC_EGREP_CPP(yes,[
             #include <openssl/opensslv.h>
-        #if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
+        #if OPENSSL_VERSION_NUMBER == 0x20000000L && defined(LIBRESSL_VERSION_NUMBER)
+        yes
+        #endif
+    ],[
+        OPENSSL_VERSION="1.0.0 (libressl)"
+    ],[
+        OPENSSL_VERSION=""
+    ])
+    fi
+
+    if test "z$OPENSSL_VERSION" = "z" ; then
+        AC_EGREP_CPP(yes,[
+            #include <openssl/opensslv.h>
+        #if OPENSSL_VERSION_NUMBER >= 0x10100000L
         yes
         #endif
     ],[
@@ -538,32 +551,7 @@ if test "z$OPENSSL_FOUND" = "zyes" -a "z$OPENSSL_VERSION" = "z" ; then
 fi    
 
 if test "z$OPENSSL_FOUND" = "zyes" ; then
-    dnl Check availability of ECDSA
-    OLD_CPPFLAGS=$CPPFLAGS
-    CPPFLAGS="$OPENSSL_CFLAGS"
-
-    AC_EGREP_CPP(yes,[
-	#include <openssl/opensslconf.h>
-	#ifdef OPENSSL_NO_ECDSA
-	    yes
-	#endif
-    ],[
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_NO_ECDSA=1"
-    ]) 
-    CPPFLAGS=$OLD_CPPFLAGS
-fi
-
-if test "z$OPENSSL_FOUND" = "zyes" ; then
     XMLSEC_NO_OPENSSL="0"
-    if test "z$OPENSSL_VERSION" = "z0.9.8" ; then
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_098=1 -DXMLSEC_NO_ECDSA=1 -DXMLSEC_NO_SHA256=1"
-    fi
-    if test "z$OPENSSL_VERSION" = "z1.0.0" ; then
-	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_100=1"
-    fi    
-    if test "z$OPENSSL_VERSION" = "z1.1.0" ; then
-    	OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_OPENSSL_110=1"
-    fi    
     OPENSSL_CFLAGS="$OPENSSL_CFLAGS -DXMLSEC_CRYPTO_OPENSSL=1"
     XMLSEC_CRYPTO_LIST="$XMLSEC_CRYPTO_LIST openssl"
 else
@@ -598,7 +586,7 @@ dnl ==========================================================================
 XMLSEC_NO_NSS="1"
 SEAMONKEY_MIN_VERSION="1.0"
 MOZILLA_MIN_VERSION="1.4"
-NSS_MIN_VERSION="3.9"
+NSS_MIN_VERSION="3.11.1"
 NSPR_MIN_VERSION="4.4.1"
 NSS_CFLAGS=""
 NSS_LIBS=""
@@ -1411,6 +1399,36 @@ AM_CONDITIONAL(XMLSEC_NO_XMLENC, test "z$XMLSEC_NO_XMLENC" = "z1")
 AC_SUBST(XMLSEC_NO_XMLENC)
 
 dnl ==========================================================================
+dnl See do we need docs
+dnl ==========================================================================
+AC_MSG_CHECKING(for docs)
+AC_ARG_ENABLE(docs,   [  --enable-docs         enable documentation (yes)])
+if test "z$enable_docs" = "zno" ; then
+    XMLSEC_DOCS="0"
+    AC_MSG_RESULT(no)
+else
+    XMLSEC_DOCS="1"
+    AC_MSG_RESULT(yes)
+fi
+AM_CONDITIONAL(XMLSEC_DOCS, test "z$XMLSEC_DOCS" = "z1")
+AC_SUBST(XMLSEC_DOCS)
+
+dnl ==========================================================================
+dnl See if we need apps
+dnl ==========================================================================
+AC_MSG_CHECKING(for apps)
+AC_ARG_ENABLE(apps,   [  --enable-apps         enable applications (yes)])
+if test "z$enable_apps" = "zno" ; then
+    XMLSEC_APPS="0"
+    AC_MSG_RESULT(no)
+else
+    XMLSEC_APPS="1"
+    AC_MSG_RESULT(yes)
+fi
+AM_CONDITIONAL(XMLSEC_APPS, test "z$XMLSEC_APPS" = "z1")
+AC_SUBST(XMLSEC_APPS)
+
+dnl ==========================================================================
 dnl check if we need dynamic loading support
 dnl ==========================================================================
 XMLSEC_DL_INCLUDES=""
diff --git a/docs/Makefile.in b/docs/Makefile.in
index cfecdb1..688e197 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -244,6 +244,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -291,6 +292,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -307,6 +309,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -396,6 +399,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/docs/api/Makefile.am b/docs/api/Makefile.am
index 2a3c329..6eb77ad 100644
--- a/docs/api/Makefile.am
+++ b/docs/api/Makefile.am
@@ -103,7 +103,7 @@ $(MAIN_SGML_FILE): $(MAIN_SGML_SRC_FILE)
 # We also fix a bunch of stupid errors from gtkdoc 
 #
 sgml: sgml-base
-	(for i in `find $(SGML_DIR) -name "*.sgml" -print` ; do \
+	(for i in `find $(SGML_DIR) -name "*.sgml" -or -name "*.xml" -print` ; do \
 			echo "Fixing up '$$i'" ; \
 	        cat $$i | \
 	          sed 's!\(<dsig:\)\([^/]*\)\(\/>\)!\<dsig:\2\/\>!g' | \
@@ -116,6 +116,7 @@ sgml: sgml-base
 	          sed 's!linkend=\"\(.*\)Ptr\"!linkend=\"\1\"!g' | \
 	          sed 's!<colspec [^/]*\/>!!g' | \
 	          sed 's!<programlisting language="C"!<programlisting!g' | \
+	          sed 's!\%gtkdocentities;!!g' | \
 	          $(PERL) -pe 's!title>\n!title>!g' | \
 	          $(PERL) -pe 's!title>\n!title>!g' | \
 	          $(PERL) -pe 's!<\/title><\/refsect1>\n!<\/title><para><\/para><\/refsect1>!g' | \
@@ -126,41 +127,47 @@ sgml: sgml-base
 
 sgml-base: templates $(SGML_DIR)/.sentinel
 	$(GTKDOC_MKDB) --module=xmlsec \
-			--main-sgml-file=$(SGML_DIR)/xmlsec-base.sgml \
-			--output-dir=$(SGML_DIR)/ \
-		    --tmpl-dir=$(TMPL_DIR)/base \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/base \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/base
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-base.sgml \
+		--output-dir=$(SGML_DIR)/ \
+		--tmpl-dir=$(TMPL_DIR)/base \
+		--source-dir=$(SOURCE_CODE_DIR)/src/base \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/base
 	$(GTKDOC_MKDB) --module=xmlsec-openssl \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-openssl.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/openssl \
-		    --output-dir=$(SGML_DIR)/openssl \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/openssl \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/openssl
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-openssl.sgml \
+		--tmpl-dir=$(TMPL_DIR)/openssl \
+		--output-dir=$(SGML_DIR)/openssl \
+		--source-dir=$(SOURCE_CODE_DIR)/src/openssl \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/openssl
 	$(GTKDOC_MKDB) --module=xmlsec-gnutls \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-gnutls.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/gnutls \
-		    --output-dir=$(SGML_DIR)/gnutls \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/gnutls \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gnutls
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-gnutls.sgml \
+		--tmpl-dir=$(TMPL_DIR)/gnutls \
+		--output-dir=$(SGML_DIR)/gnutls \
+		--source-dir=$(SOURCE_CODE_DIR)/src/gnutls \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gnutls
 	$(GTKDOC_MKDB) --module=xmlsec-gcrypt \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-gcrypt.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/gcrypt \
-		    --output-dir=$(SGML_DIR)/gcrypt \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/gcrypt \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gcrypt
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-gcrypt.sgml \
+		--tmpl-dir=$(TMPL_DIR)/gcrypt \
+		--output-dir=$(SGML_DIR)/gcrypt \
+		--source-dir=$(SOURCE_CODE_DIR)/src/gcrypt \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gcrypt
 	$(GTKDOC_MKDB) --module=xmlsec-nss \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-nss.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/nss \
-		    --output-dir=$(SGML_DIR)/nss \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/nss \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/nss
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-nss.sgml \
+		--tmpl-dir=$(TMPL_DIR)/nss \
+		--output-dir=$(SGML_DIR)/nss \
+		--source-dir=$(SOURCE_CODE_DIR)/src/nss \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/nss
 	$(GTKDOC_MKDB) --module=xmlsec-mscrypto \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-mscrypto.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/mscrypto \
-		    --output-dir=$(SGML_DIR)/mscrypto \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/mscrypto \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/mscrypto
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-mscrypto.sgml \
+		--tmpl-dir=$(TMPL_DIR)/mscrypto \
+		--output-dir=$(SGML_DIR)/mscrypto \
+		--source-dir=$(SOURCE_CODE_DIR)/src/mscrypto \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/mscrypto
 
 templates: scan templates-copy
 	$(GTKDOC_MKTMPL) --module=xmlsec \
diff --git a/docs/api/Makefile.in b/docs/api/Makefile.in
index a8a0639..b4d5f94 100644
--- a/docs/api/Makefile.in
+++ b/docs/api/Makefile.in
@@ -184,6 +184,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -231,6 +232,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -247,6 +249,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -336,6 +339,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -635,7 +639,7 @@ $(MAIN_SGML_FILE): $(MAIN_SGML_SRC_FILE)
 # We also fix a bunch of stupid errors from gtkdoc 
 #
 sgml: sgml-base
-	(for i in `find $(SGML_DIR) -name "*.sgml" -print` ; do \
+	(for i in `find $(SGML_DIR) -name "*.sgml" -or -name "*.xml" -print` ; do \
 			echo "Fixing up '$$i'" ; \
 	        cat $$i | \
 	          sed 's!\(<dsig:\)\([^/]*\)\(\/>\)!\<dsig:\2\/\>!g' | \
@@ -648,6 +652,7 @@ sgml: sgml-base
 	          sed 's!linkend=\"\(.*\)Ptr\"!linkend=\"\1\"!g' | \
 	          sed 's!<colspec [^/]*\/>!!g' | \
 	          sed 's!<programlisting language="C"!<programlisting!g' | \
+	          sed 's!\%gtkdocentities;!!g' | \
 	          $(PERL) -pe 's!title>\n!title>!g' | \
 	          $(PERL) -pe 's!title>\n!title>!g' | \
 	          $(PERL) -pe 's!<\/title><\/refsect1>\n!<\/title><para><\/para><\/refsect1>!g' | \
@@ -658,41 +663,47 @@ sgml: sgml-base
 
 sgml-base: templates $(SGML_DIR)/.sentinel
 	$(GTKDOC_MKDB) --module=xmlsec \
-			--main-sgml-file=$(SGML_DIR)/xmlsec-base.sgml \
-			--output-dir=$(SGML_DIR)/ \
-		    --tmpl-dir=$(TMPL_DIR)/base \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/base \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/base
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-base.sgml \
+		--output-dir=$(SGML_DIR)/ \
+		--tmpl-dir=$(TMPL_DIR)/base \
+		--source-dir=$(SOURCE_CODE_DIR)/src/base \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/base
 	$(GTKDOC_MKDB) --module=xmlsec-openssl \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-openssl.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/openssl \
-		    --output-dir=$(SGML_DIR)/openssl \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/openssl \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/openssl
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-openssl.sgml \
+		--tmpl-dir=$(TMPL_DIR)/openssl \
+		--output-dir=$(SGML_DIR)/openssl \
+		--source-dir=$(SOURCE_CODE_DIR)/src/openssl \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/openssl
 	$(GTKDOC_MKDB) --module=xmlsec-gnutls \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-gnutls.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/gnutls \
-		    --output-dir=$(SGML_DIR)/gnutls \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/gnutls \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gnutls
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-gnutls.sgml \
+		--tmpl-dir=$(TMPL_DIR)/gnutls \
+		--output-dir=$(SGML_DIR)/gnutls \
+		--source-dir=$(SOURCE_CODE_DIR)/src/gnutls \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gnutls
 	$(GTKDOC_MKDB) --module=xmlsec-gcrypt \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-gcrypt.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/gcrypt \
-		    --output-dir=$(SGML_DIR)/gcrypt \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/gcrypt \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gcrypt
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-gcrypt.sgml \
+		--tmpl-dir=$(TMPL_DIR)/gcrypt \
+		--output-dir=$(SGML_DIR)/gcrypt \
+		--source-dir=$(SOURCE_CODE_DIR)/src/gcrypt \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/gcrypt
 	$(GTKDOC_MKDB) --module=xmlsec-nss \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-nss.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/nss \
-		    --output-dir=$(SGML_DIR)/nss \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/nss \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/nss
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-nss.sgml \
+		--tmpl-dir=$(TMPL_DIR)/nss \
+		--output-dir=$(SGML_DIR)/nss \
+		--source-dir=$(SOURCE_CODE_DIR)/src/nss \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/nss
 	$(GTKDOC_MKDB) --module=xmlsec-mscrypto \
-		    --main-sgml-file=$(SGML_DIR)/xmlsec-mscrypto.sgml \
-		    --tmpl-dir=$(TMPL_DIR)/mscrypto \
-		    --output-dir=$(SGML_DIR)/mscrypto \
-		    --source-dir=$(SOURCE_CODE_DIR)/src/mscrypto \
-		    --source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/mscrypto
+		--xml-mode \
+		--main-sgml-file=$(SGML_DIR)/xmlsec-mscrypto.sgml \
+		--tmpl-dir=$(TMPL_DIR)/mscrypto \
+		--output-dir=$(SGML_DIR)/mscrypto \
+		--source-dir=$(SOURCE_CODE_DIR)/src/mscrypto \
+		--source-dir=$(SOURCE_CODE_DIR)/include/xmlsec/mscrypto
 
 templates: scan templates-copy
 	$(GTKDOC_MKTMPL) --module=xmlsec \
diff --git a/docs/api/index.html b/docs/api/index.html
index 6260bf1..32616bd 100644
--- a/docs/api/index.html
+++ b/docs/api/index.html
@@ -1,38 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library Reference Manual</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="NEXT" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library Reference Manual: XML Security Library Reference Manual</title>
+<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
+<meta name="description" content="This manual documents the interfaces of the xmlsec library and has some short notes to help get you up to speed with using the library.">
+<link rel="home" href="index.html" title="XML Security Library Reference Manual">
+<link rel="next" href="xmlsec-notes.html" title="Part I. XML Security Library Tutorial">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -97,24 +72,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<div class="BOOK">
-<div class="TITLEPAGE">
-<table class="navigation" width="100%" cellpadding="2" cellspacing="0"><tr><th align="center" valign="MIDDLE"><p class="TITLE">XML Security Library Reference Manual<a name="AEN2"></a></p></th></tr></table>
-<h3 class="AUTHOR">
-<a name="AEN5"></a>Aleksey Sanin</h3>
-<div class="AFFILIATION"><div class="ADDRESS"><p class="ADDRESS">	    <code class="EMAIL"><<a href="mailto:aleksey at aleksey.com">aleksey at aleksey.com</a>></code><br>
+<div class="book">
+<div class="titlepage">
+<div>
+<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">XML Security Library Reference Manual</p></th></tr></table></div>
+<div><div class="authorgroup"><div class="author">
+<h3 class="author">
+<span class="firstname">Aleksey</span> <span class="surname">Sanin</span>
+</h3>
+<div class="affiliation"><div class="address"><p><br>
+	    <code class="email"><<a class="email" href="mailto:aleksey at aleksey.com">aleksey at aleksey.com</a>></code><br>
 	  </p></div></div>
-<p class="COPYRIGHT">Copyright � 2002-2003 Aleksey Sanin</p>
-<div><div class="ABSTRACT">
-<p></p>
-<a name="AEN18"></a><p>This manual documents the interfaces of the xmlsec
-      library and has some short notes to help get you up to speed
-      with using the library.</p>
-<p></p>
-</div></div>
-<div class="LEGALNOTICE">
-<p></p>
-<a name="AEN14"></a><p>Permission is granted to make and distribute verbatim
+</div></div></div>
+<div><p class="copyright">Copyright � 2002-2017 Aleksey Sanin</p></div>
+<div><div class="legalnotice">
+<a name="id-1.1.4"></a><p>Permission is granted to make and distribute verbatim
       copies of this manual provided the copyright notice and this
       permission notice are preserved on all copies.</p>
 <p>Permission is granted to copy and distribute modified
@@ -125,206 +97,297 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 <p>Permission is granted to copy and distribute translations
       of this manual into another language, under the above conditions
       for modified versions.</p>
-<p></p>
+</div></div>
+<div><div class="abstract">
+<p class="title"><b>Abstract</b></p>
+<p>This manual documents the interfaces of the xmlsec
+      library and has some short notes to help get you up to speed
+      with using the library.</p>
+</div></div>
 </div>
+<hr>
 </div>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt>I. <a href="xmlsec-notes.html">XML Security Library Tutorial</a>
-</dt>
+<div class="toc"><dl class="toc">
+<dt><span class="part"><a href="xmlsec-notes.html">I. XML Security Library Tutorial</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-overview.html">Overview.</a></dt>
-<dt><a href="xmlsec-notes-structure.html">XML Security Library Structure.</a></dt>
-<dt><a href="xmlsec-notes-compiling.html">Building the application with XML Security Library.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-overview.html">Overview.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-structure.html">XML Security Library Structure.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-compiling.html">Building the application with XML Security Library.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-compiling.html#XMLSEC-NOTES-COMPILING-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-include-files.html">Include files.</a></dt>
-<dt><a href="xmlsec-notes-compiling-unix.html">Compiling and linking on Unix.</a></dt>
-<dt><a href="xmlsec-notes-compiling-windows.html">Compiling and linking on Windows.</a></dt>
-<dt><a href="xmlsec-notes-compiling-others.html">Compiling and linking on other systems.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling.html#xmlsec-notes-compiling-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-include-files.html">Include files.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-unix.html">Compiling and linking on Unix.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-windows.html">Compiling and linking on Windows.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-others.html">Compiling and linking on other systems.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-init-shutdown.html">Initialization and shutdown.</a></dt>
-<dt><a href="xmlsec-notes-sign-encrypt.html">Signing and encrypting documents.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-init-shutdown.html">Initialization and shutdown.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-sign-encrypt.html">Signing and encrypting documents.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-sign-encrypt.html#XMLSEC-NOTES-SIGN-ENCRYPT-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-sign.html">Signing a document.</a></dt>
-<dt><a href="xmlsec-notes-encrypt.html">Encrypting data.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign-encrypt.html#xmlsec-notes-sign-encrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign.html">Signing a document.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-encrypt.html">Encrypting data.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-templates.html">Creating dynamic templates.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-templates.html">Creating dynamic templates.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-templates.html#XMLSEC-NOTES-TEMPLATES-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-dynamic-signature-templates.html">Creating dynamic signature templates.</a></dt>
-<dt><a href="xmlsec-notes-dynamic-encryption-templates.html">Creating dynamic encryption templates.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-templates.html#xmlsec-notes-templates-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-signature-templates.html">Creating dynamic signature templates.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-encryption-templates.html">Creating dynamic encryption templates.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-verify-decrypt.html">Verifing and decrypting documents.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-verify-decrypt.html">Verifing and decrypting documents.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-verify-decrypt.html#XMLSEC-NOTES-VERIFY-DECRYPT-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-verify.html">Verifying a signed document</a></dt>
-<dt><a href="xmlsec-notes-decrypt.html">Decrypting an encrypted document</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify-decrypt.html#xmlsec-notes-verify-decrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify.html">Verifying a signed document</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-decrypt.html">Decrypting an encrypted document</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-keys.html">Keys.</a></dt>
-<dt><a href="xmlsec-notes-keysmngr.html">Keys manager.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-keys.html">Keys.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-keysmngr.html">Keys manager.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-keysmngr.html#XMLSEC-NOTES-KEYSMNGR-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-simple-keys-store.html">Simple keys store.</a></dt>
-<dt><a href="xmlsec-notes-keys-manager-sign-enc.html">Using keys manager for signatures/encryption.</a></dt>
-<dt><a href="xmlsec-notes-keys-mngr-verify-decrypt.html">Using keys manager for verification/decryption.</a></dt>
-<dt><a href="xmlsec-notes-custom-keys-store.html">Implementing a custom keys store.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keysmngr.html#xmlsec-notes-keysmngr-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-simple-keys-store.html">Simple keys store.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-manager-sign-enc.html">Using keys manager for signatures/encryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-mngr-verify-decrypt.html">Using keys manager for verification/decryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-custom-keys-store.html">Implementing a custom keys store.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-x509.html">Using X509 Certificates.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-x509.html">Using X509 Certificates.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-x509.html#XMLSEC-NOTES-X509-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-sign-x509.html">Signing data with X509 certificate.</a></dt>
-<dt><a href="xmlsec-notes-verify-x509.html">Verifing document signed with X509 certificates.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-x509.html#xmlsec-notes-x509-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign-x509.html">Signing data with X509 certificate.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify-x509.html">Verifing document signed with X509 certificates.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-notes-transforms.html">Transforms and transforms chain.</a></dt>
-<dt><a href="xmlsec-notes-contexts.html">Using context objects.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto.html">Adding support for new cryptographic library.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-transforms.html">Transforms and transforms chain.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-contexts.html">Using context objects.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-new-crypto.html">Adding support for new cryptographic library.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-notes-new-crypto.html#XMLSEC-NOTES-NEW-CRYPTO-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-skeleton.html">Creating a framework from the skeleton.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-functions.html">xmlSecCryptoApp* functions.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-klasses.html">Klasses and objects.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-transforms.html">Cryptographic transforms.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-keys.html">Keys data and keys data stores.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-simple-keys-mngr.html">Default keys manager.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-sharing-results.html">Sharing the results.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto.html#xmlsec-notes-new-crypto-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-skeleton.html">Creating a framework from the skeleton.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-functions.html">xmlSecCryptoApp* functions.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-klasses.html">Klasses and objects.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-transforms.html">Cryptographic transforms.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-keys.html">Keys data and keys data stores.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-simple-keys-mngr.html">Default keys manager.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-sharing-results.html">Sharing the results.</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-examples.html">Examples.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-examples.html">Examples.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-examples.html#XMLSEC-EXAMPLES-OVERVIEW">XML Security Library Examples.</a></dt>
-<dt><a href="xmlsec-examples-sign-template-file.html">Signing a template file.</a></dt>
-<dt><a href="xmlsec-examples-sign-dynamimc-template.html">Signing a dynamicaly created template.</a></dt>
-<dt><a href="xmlsec-examples-sign-x509.html">Signing with X509 certificate.</a></dt>
-<dt><a href="xmlsec-verify-with-key.html">Verifying a signature with a single key.</a></dt>
-<dt><a href="xmlsec-verify-with-keys-mngr.html">Verifying a signature with keys manager.</a></dt>
-<dt><a href="xmlsec-verify-with-x509.html">Verifying a signature with X509 certificates.</a></dt>
-<dt><a href="xmlsec-verify-with-restrictions.html">Verifying a signature with additional restrictions.</a></dt>
-<dt><a href="xmlsec-encrypt-template-file.html">Encrypting data with a template file.</a></dt>
-<dt><a href="xmlsec-encrypt-dynamic-template.html">Encrypting data with a dynamicaly created template.</a></dt>
-<dt><a href="xmlsec-encrypt-with-session-key.html">Encrypting data with a session key.</a></dt>
-<dt><a href="xmlsec-decrypt-with-signle-key.html">Decrypting data with a single key.</a></dt>
-<dt><a href="xmlsec-decrypt-with-keys-mngr.html">Decrypting data with keys manager.</a></dt>
-<dt><a href="xmlsec-custom-keys-manager.html">Writing a custom keys manager.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-examples.html#xmlsec-examples-overview">XML Security Library Examples.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-template-file.html">Signing a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1">sign1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-tmpl">sign1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-res">sign1-res.xml</a></span></dt>
 </dl></dd>
-<dt><a href="xmlsec-signature-klasses.html">APPENDIX A. XML Security Library Signature Klasses.</a></dt>
-<dt><a href="xmlsec-encryption-klasses.html">APPENDIX B. XML Security Library Encryption Klasses.</a></dt>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-dynamimc-template.html">Signing a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2">sign2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-doc">sign2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-res">sign2-res.xml</a></span></dt>
 </dl></dd>
-<dt>II. <a href="xmlsec-reference.html">XML Security Library API Reference.</a>
-</dt>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-x509.html">Signing with X509 certificate.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3">sign3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-doc">sign3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-res">sign3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-key.html">Verifying a signature with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-key.html#xmlsec-example-verify1">verify1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-keys-mngr.html">Verifying a signature with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-keys-mngr.html#xmlsec-example-verify2">verify2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-x509.html">Verifying a signature with X509 certificates.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-x509.html#xmlsec-example-verify3">verify3.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-restrictions.html">Verifying a signature with additional restrictions.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4">verify4.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-tmpl">verify4-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-res">verify4-res.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-tmpl">verify4-bad-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-res">verify4-bad-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-template-file.html">Encrypting data with a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1">encrypt1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-tmpl">encrypt1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-res">encrypt1-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-dynamic-template.html">Encrypting data with a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2">encrypt2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-doc">encrypt2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-res">encrypt2-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-with-session-key.html">Encrypting data with a session key.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3">encrypt3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-doc">encrypt3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-res">encrypt3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-signle-key.html">Decrypting data with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-signle-key.html#xmlsec-example-decrypt1">decrypt1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-keys-mngr.html">Decrypting data with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-keys-mngr.html#xmlsec-example-decrypt2">decrypt2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-custom-keys-manager.html">Writing a custom keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-custom-keys-manager.html#xmlsec-example-decrypt3">decrypt3.c</a></span></dt></dl></dd>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-signature-klasses.html">APPENDIX A. XML Security Library Signature Klasses.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-encryption-klasses.html">APPENDIX B. XML Security Library Encryption Klasses.</a></span></dt>
+</dl></dd>
+<dt><span class="part"><a href="xmlsec-reference.html">II. XML Security Library API Reference.</a></span></dt>
 <dd><dl>
-<dt><a href="xmlsec-ref.html">XML Security Core Library API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-ref.html">XML Security Core Library API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-app.html">app</a> -- Crypto-engine independent application support function.</dt>
+<span class="refentrytitle"><a href="xmlsec-app.html">app</a></span><span class="refpurpose"> — Crypto-engine independent application support function.</span>
+</dt>
 <dt>
-<a href="xmlsec-base64.html">base64</a> -- Base64 encoding/decoding functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-base64.html">base64</a></span><span class="refpurpose"> — Base64 encoding/decoding functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-bn.html">bn</a> -- Big numbers support functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-bn.html">bn</a></span><span class="refpurpose"> — Big numbers support functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-buffer.html">buffer</a> -- Binary buffer implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-buffer.html">buffer</a></span><span class="refpurpose"> — Binary buffer implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-dl.html">dl</a> -- Dynamic crypto-engine library loading support.</dt>
+<span class="refentrytitle"><a href="xmlsec-dl.html">dl</a></span><span class="refpurpose"> — Dynamic crypto-engine library loading support.</span>
+</dt>
 <dt>
-<a href="xmlsec-errors.html">errors</a> -- Error/log messages support.</dt>
+<span class="refentrytitle"><a href="xmlsec-errors.html">errors</a></span><span class="refpurpose"> — Error/log messages support.</span>
+</dt>
 <dt>
-<a href="xmlsec-io.html">io</a> -- Input/output support.</dt>
+<span class="refentrytitle"><a href="xmlsec-io.html">io</a></span><span class="refpurpose"> — Input/output support.</span>
+</dt>
 <dt>
-<a href="xmlsec-keyinfo.html">keyinfo</a> -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> node parser.</dt>
+<span class="refentrytitle"><a href="xmlsec-keyinfo.html">keyinfo</a></span><span class="refpurpose"> — <dsig:KeyInfo/> node parser.</span>
+</dt>
 <dt>
-<a href="xmlsec-keysdata.html">keysdata</a> -- Crypto key data object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-keysdata.html">keysdata</a></span><span class="refpurpose"> — Crypto key data object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-keys.html">keys</a> -- Crypto key object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-keys.html">keys</a></span><span class="refpurpose"> — Crypto key object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-keysmngr.html">keysmngr</a> -- Keys manager object support.</dt>
+<span class="refentrytitle"><a href="xmlsec-keysmngr.html">keysmngr</a></span><span class="refpurpose"> — Keys manager object support.</span>
+</dt>
 <dt>
-<a href="xmlsec-list.html">list</a> -- Generic list structure implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-list.html">list</a></span><span class="refpurpose"> — Generic list structure implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-membuf.html">membuf</a> -- Memory buffer transform implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-membuf.html">membuf</a></span><span class="refpurpose"> — Memory buffer transform implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-nodeset.html">nodeset</a> -- Nodeset object implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-nodeset.html">nodeset</a></span><span class="refpurpose"> — Nodeset object implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-parser.html">parser</a> -- Parser transform implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-parser.html">parser</a></span><span class="refpurpose"> — Parser transform implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-templates.html">templates</a> -- Dynamic templates creation functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-templates.html">templates</a></span><span class="refpurpose"> — Dynamic templates creation functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-transforms.html">transforms</a> -- Transform object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-transforms.html">transforms</a></span><span class="refpurpose"> — Transform object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-version.html">version</a> -- Version macros.</dt>
+<span class="refentrytitle"><a href="xmlsec-version.html">version</a></span><span class="refpurpose"> — Version macros.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmldsig.html">xmldsig</a> -- XML Digital Signature support.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmldsig.html">xmldsig</a></span><span class="refpurpose"> — XML Digital Signature support.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmlenc.html">xmlenc</a> -- XML Encryption support.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmlenc.html">xmlenc</a></span><span class="refpurpose"> — XML Encryption support.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmlsec.html">xmlsec</a> -- Utility functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmlsec.html">xmlsec</a></span><span class="refpurpose"> — Utility functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmltree.html">xmltree</a> -- XML tree operations.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmltree.html">xmltree</a></span><span class="refpurpose"> — XML tree operations.</span>
+</dt>
 <dt>
-<a href="xmlsec-x509.html">x509</a> -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Certificate" target="_top"><dsig:X509Certificate/></a> node parser.</dt>
+<span class="refentrytitle"><a href="xmlsec-x509.html">x509</a></span><span class="refpurpose"> — <dsig:X509Certificate/> node parser.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-openssl-ref.html">XML Security Library for OpenSLL API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-openssl-ref.html">XML Security Library for OpenSLL API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-openssl-app.html">app</a> -- Application functions implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for OpenSSL.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-bn.html">bn</a> -- Big numbers helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-bn.html">bn</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-crypto.html">crypto</a> -- Crypto transforms implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for OpenSSL.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-evp.html">evp</a> -- EVP keys data implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-evp.html">evp</a></span><span class="refpurpose"> — EVP keys data implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-x509.html">x509</a> -- X509 certificates support implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for OpenSSL.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-gnutls-ref.html">XML Security Library for GnuTLS API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-gnutls-ref.html">XML Security Library for GnuTLS API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-gnutls-app.html">app</a> -- Application functions implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GnuTLS.</span>
+</dt>
 <dt>
-<a href="xmlsec-gnutls-crypto.html">crypto</a> -- Crypto transforms implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for GnuTLS.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-gcrypt-ref.html">XML Security Library for GCrypt API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-gcrypt-ref.html">XML Security Library for GCrypt API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-gcrypt-app.html">app</a> -- Application functions implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
 <dt>
-<a href="xmlsec-gcrypt-crypto.html">crypto</a> -- Crypto transforms implementation for GCrypt.</dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GCrypt.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-nss-ref.html">XML Security Library for NSS API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-nss-ref.html">XML Security Library for NSS API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-nss-app.html">app</a> -- Application functions implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-bignum.html">bignum</a> -- Big numbers helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-bignum.html">bignum</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-crypto.html">crypto</a> -- Crypto transforms implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-keysstore.html">keysstore</a> -- Keys store implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-pkikeys.html">pkikeys</a> -- PKI keys data implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-pkikeys.html">pkikeys</a></span><span class="refpurpose"> — PKI keys data implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-x509.html">x509</a> -- X509 certificates support implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for NSS.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-mscrypto-ref.html">XML Security Library for MSCrypto API Reference.</a></dt>
+<dt><span class="chapter"><a href="xmlsec-mscrypto-ref.html">XML Security Library for MSCrypto API Reference.</a></span></dt>
 <dd><dl>
 <dt>
-<a href="xmlsec-mscrypto-app.html">app</a> -- Application functions implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-certkeys.html">certkeys</a> -- MS Crypto certificates helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-certkeys.html">certkeys</a></span><span class="refpurpose"> — MS Crypto certificates helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-crypto.html">crypto</a> -- Crypto transforms implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-keysstore.html">keysstore</a> -- Keys store implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-x509.html">x509</a> -- X509 certificates support implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for MS Crypto.</span>
+</dt>
 </dl></dd>
-<dt><a href="xmlsec-index.html">XML Security Library Reference Index</a></dt>
+<dt><span class="chapter"><a href="xmlsec-index.html">XML Security Library Reference Index</a></span></dt>
 </dl></dd>
 </dl></div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes.html"><b>XML Security Library Tutorial >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/left-insensitive.png b/docs/api/left-insensitive.png
new file mode 100644
index 0000000..38ffe3e
Binary files /dev/null and b/docs/api/left-insensitive.png differ
diff --git a/docs/api/left.png b/docs/api/left.png
index c518641..1b204ab 100644
Binary files a/docs/api/left.png and b/docs/api/left.png differ
diff --git a/docs/api/right-insensitive.png b/docs/api/right-insensitive.png
new file mode 100644
index 0000000..f999f00
Binary files /dev/null and b/docs/api/right-insensitive.png differ
diff --git a/docs/api/right.png b/docs/api/right.png
index 78f5875..4653997 100644
Binary files a/docs/api/right.png and b/docs/api/right.png differ
diff --git a/docs/api/src/chapters/using-x509-certs.sgml b/docs/api/src/chapters/using-x509-certs.sgml
index 8ff029d..ef17d79 100644
--- a/docs/api/src/chapters/using-x509-certs.sgml
+++ b/docs/api/src/chapters/using-x509-certs.sgml
@@ -119,7 +119,7 @@
 	<figure>
 	    <title>Certificates chain.</title>
 	    <programlisting>
-Certificate A (signed with B) <- Certificate B (signed with C) <- ... <- Root Certificate (signed by itself)
+Certificate A (signed with B) <- Certificate B (signed with C) <- ... <- Root Certificate (signed by itself)
 	    </programlisting>
 	</figure>
 	At the end of the chain there is a "Root Certificate" which
diff --git a/docs/api/src/xmlsec.sgml b/docs/api/src/xmlsec.sgml
index fdb3ac1..2a84790 100644
--- a/docs/api/src/xmlsec.sgml
+++ b/docs/api/src/xmlsec.sgml
@@ -1,7 +1,9 @@
-<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "
+http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
 <!ENTITY chapter-compiling-and-linking 	SYSTEM "chapters/compiling-and-linking.sgml">
-<!ENTITY chapter-init-and-shutdown 	    SYSTEM "chapters/init-and-shutdown.sgml">
-<!ENTITY chapter-sign-and-encrypt 	    SYSTEM "chapters/sign-and-encrypt.sgml">
+<!ENTITY chapter-init-and-shutdown 	SYSTEM "chapters/init-and-shutdown.sgml">
+<!ENTITY chapter-sign-and-encrypt 	SYSTEM "chapters/sign-and-encrypt.sgml">
 <!ENTITY chapter-verify-and-decrypt 	SYSTEM "chapters/verify-and-decrypt.sgml">
 <!ENTITY chapter-creating-templates 	SYSTEM "chapters/creating-templates.sgml">
 <!ENTITY chapter-using-keys		SYSTEM "chapters/using-keys.sgml">
@@ -14,55 +16,55 @@
 
 <!ENTITY xmlsec-index 			SYSTEM "xmlsec-index.sgml">
 
-<!ENTITY xmlsec-app 			SYSTEM "app.sgml">
-<!ENTITY xmlsec-base64 			SYSTEM "base64.sgml">
-<!ENTITY xmlsec-bn 			    SYSTEM "bn.sgml">
-<!ENTITY xmlsec-buffer 			SYSTEM "buffer.sgml">
-<!ENTITY xmlsec-dl 			    SYSTEM "dl.sgml">
-<!ENTITY xmlsec-errors 			SYSTEM "errors.sgml">
-<!ENTITY xmlsec-io 			    SYSTEM "io.sgml">
-<!ENTITY xmlsec-keyinfo 		SYSTEM "keyinfo.sgml">
-<!ENTITY xmlsec-keysdata 		SYSTEM "keysdata.sgml">
-<!ENTITY xmlsec-keys 			SYSTEM "keys.sgml">
-<!ENTITY xmlsec-keysmngr 		SYSTEM "keysmngr.sgml">
-<!ENTITY xmlsec-list 			SYSTEM "list.sgml">
-<!ENTITY xmlsec-membuf 			SYSTEM "membuf.sgml">
-<!ENTITY xmlsec-nodeset 		SYSTEM "nodeset.sgml">
-<!ENTITY xmlsec-parser 			SYSTEM "parser.sgml">
-<!ENTITY xmlsec-templates 		SYSTEM "templates.sgml">
-<!ENTITY xmlsec-transforms 		SYSTEM "transforms.sgml">
-<!ENTITY xmlsec-version 		SYSTEM "version.sgml">
-<!ENTITY xmlsec-xmldsig 		SYSTEM "xmldsig.sgml">
-<!ENTITY xmlsec-xmlenc 			SYSTEM "xmlenc.sgml">
-<!ENTITY xmlsec-xmlsec 			SYSTEM "xmlsec.sgml">
-<!ENTITY xmlsec-xmltree 		SYSTEM "xmltree.sgml">
-<!ENTITY xmlsec-x509 			SYSTEM "x509.sgml">
+<!ENTITY xmlsec-app 			"app.xml">
+<!ENTITY xmlsec-base64 			"base64.xml">
+<!ENTITY xmlsec-bn 			"bn.xml">
+<!ENTITY xmlsec-buffer 			"buffer.xml">
+<!ENTITY xmlsec-dl 			"dl.xml">
+<!ENTITY xmlsec-errors 			"errors.xml">
+<!ENTITY xmlsec-io 			"io.xml">
+<!ENTITY xmlsec-keyinfo 		"keyinfo.xml">
+<!ENTITY xmlsec-keysdata 		"keysdata.xml">
+<!ENTITY xmlsec-keys 			"keys.xml">
+<!ENTITY xmlsec-keysmngr 		"keysmngr.xml">
+<!ENTITY xmlsec-list 			"list.xml">
+<!ENTITY xmlsec-membuf 			"membuf.xml">
+<!ENTITY xmlsec-nodeset 		"nodeset.xml">
+<!ENTITY xmlsec-parser 			"parser.xml">
+<!ENTITY xmlsec-templates 		"templates.xml">
+<!ENTITY xmlsec-transforms 		"transforms.xml">
+<!ENTITY xmlsec-version 		"version.xml">
+<!ENTITY xmlsec-x509                    "x509.xml">
+<!ENTITY xmlsec-xmldsig 		"xmldsig.xml">
+<!ENTITY xmlsec-xmlenc 			"xmlenc.xml">
+<!ENTITY xmlsec-xmlsec 			"xmlsec.xml">
+<!ENTITY xmlsec-xmltree 		"xmltree.xml">
 
-<!ENTITY xmlsec-openssl-app 		SYSTEM "openssl/app.sgml">
-<!ENTITY xmlsec-openssl-bn 		    SYSTEM "openssl/bn.sgml">
-<!ENTITY xmlsec-openssl-ciphers		SYSTEM "openssl/ciphers.sgml">
-<!ENTITY xmlsec-openssl-crypto		SYSTEM "openssl/crypto.sgml">
-<!ENTITY xmlsec-openssl-evp 		SYSTEM "openssl/evp.sgml">
-<!ENTITY xmlsec-openssl-x509 		SYSTEM "openssl/x509.sgml">
+<!ENTITY xmlsec-openssl-app 		"openssl/app.xml">
+<!ENTITY xmlsec-openssl-bn 		"openssl/bn.xml">
+<!ENTITY xmlsec-openssl-crypto		"openssl/crypto.xml">
+<!ENTITY xmlsec-openssl-evp 		"openssl/evp.xml">
+<!ENTITY xmlsec-openssl-x509 		"openssl/x509.xml">
 
-<!ENTITY xmlsec-gnutls-app 		    SYSTEM "gnutls/app.sgml">
-<!ENTITY xmlsec-gnutls-crypto 		SYSTEM "gnutls/crypto.sgml">
+<!ENTITY xmlsec-gnutls-app 		"gnutls/app.xml">
+<!ENTITY xmlsec-gnutls-crypto 		"gnutls/crypto.xml">
+<!ENTITY xmlsec-gnutls-x509 		"gnutls/x509.xml">
 
-<!ENTITY xmlsec-gcrypt-app 		    SYSTEM "gcrypt/app.sgml">
-<!ENTITY xmlsec-gcrypt-crypto 		SYSTEM "gcrypt/crypto.sgml">
+<!ENTITY xmlsec-gcrypt-app 		"gcrypt/app.xml">
+<!ENTITY xmlsec-gcrypt-crypto 		"gcrypt/crypto.xml">
 
-<!ENTITY xmlsec-nss-app 		SYSTEM "nss/app.sgml">
-<!ENTITY xmlsec-nss-bignum		SYSTEM "nss/bignum.sgml">
-<!ENTITY xmlsec-nss-crypto 		SYSTEM "nss/crypto.sgml">
-<!ENTITY xmlsec-nss-keysstore		SYSTEM "nss/keysstore.sgml">
-<!ENTITY xmlsec-nss-pkikeys		SYSTEM "nss/pkikeys.sgml">
-<!ENTITY xmlsec-nss-x509		SYSTEM "nss/x509.sgml">
+<!ENTITY xmlsec-nss-app 		"nss/app.xml">
+<!ENTITY xmlsec-nss-bignum		"nss/bignum.xml">
+<!ENTITY xmlsec-nss-crypto 		"nss/crypto.xml">
+<!ENTITY xmlsec-nss-keysstore		"nss/keysstore.xml">
+<!ENTITY xmlsec-nss-pkikeys		"nss/pkikeys.xml">
+<!ENTITY xmlsec-nss-x509		"nss/x509.xml">
 
-<!ENTITY xmlsec-mscrypto-app 		SYSTEM "mscrypto/app.sgml">
-<!ENTITY xmlsec-mscrypto-certkeys	SYSTEM "mscrypto/certkeys.sgml">
-<!ENTITY xmlsec-mscrypto-crypto 	SYSTEM "mscrypto/crypto.sgml">
-<!ENTITY xmlsec-mscrypto-keysstore	SYSTEM "mscrypto/keysstore.sgml">
-<!ENTITY xmlsec-mscrypto-x509		SYSTEM "mscrypto/x509.sgml">
+<!ENTITY xmlsec-mscrypto-app 		"mscrypto/app.xml">
+<!ENTITY xmlsec-mscrypto-certkeys	"mscrypto/certkeys.xml">
+<!ENTITY xmlsec-mscrypto-crypto 	"mscrypto/crypto.xml">
+<!ENTITY xmlsec-mscrypto-keysstore	"mscrypto/keysstore.xml">
+<!ENTITY xmlsec-mscrypto-x509		"mscrypto/x509.xml">
 
 <!ENTITY xmlsec-example-sign1 		SYSTEM "examples/sign1.sgml">
 <!ENTITY xmlsec-example-sign2 		SYSTEM "examples/sign2.sgml">
@@ -114,7 +116,7 @@
       </author>
     </authorgroup>
     <copyright>
-      <year>2002-2003</year>
+      <year>2002-2017</year>
       <holder>Aleksey Sanin</holder>
     </copyright>	
     <legalnotice>
@@ -210,29 +212,29 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-app;
-    &xmlsec-base64;
-    &xmlsec-bn;
-    &xmlsec-buffer;
-    &xmlsec-dl;
-    &xmlsec-errors;
-    &xmlsec-io;
-    &xmlsec-keyinfo;
-    &xmlsec-keysdata;
-    &xmlsec-keys;
-    &xmlsec-keysmngr;
-    &xmlsec-list;
-    &xmlsec-membuf;
-    &xmlsec-nodeset;
-    &xmlsec-parser;
-    &xmlsec-templates;
-    &xmlsec-transforms;
-    &xmlsec-version;
-    &xmlsec-xmldsig;
-    &xmlsec-xmlenc;
-    &xmlsec-xmlsec;
-    &xmlsec-xmltree;
-    &xmlsec-x509;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-base64;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-bn;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-buffer;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-dl;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-errors;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-io;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-keyinfo;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-keysdata;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-keys;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-keysmngr;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-list;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-membuf;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nodeset;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-parser;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-templates;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-transforms;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-version;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-xmldsig;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-xmlenc;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-xmlsec;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-xmltree;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-x509;"/>
     </chapter>
 
     <chapter id="xmlsec-openssl-ref">
@@ -241,11 +243,11 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-openssl-app;
-    &xmlsec-openssl-bn;
-    &xmlsec-openssl-crypto;
-    &xmlsec-openssl-evp;
-    &xmlsec-openssl-x509;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-openssl-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-openssl-bn;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-openssl-crypto;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-openssl-evp;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-openssl-x509;"/>
     </chapter>
 
     <chapter id="xmlsec-gnutls-ref">
@@ -254,8 +256,9 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-gnutls-app;
-    &xmlsec-gnutls-crypto;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-gnutls-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-gnutls-crypto;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-gnutls-x509;"/>
     </chapter>
 
     <chapter id="xmlsec-gcrypt-ref">
@@ -264,8 +267,8 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-gcrypt-app;
-    &xmlsec-gcrypt-crypto;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-gcrypt-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-gcrypt-crypto;"/>
     </chapter>
 
     <chapter id="xmlsec-nss-ref">
@@ -274,12 +277,12 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-nss-app;
-    &xmlsec-nss-bignum;
-    &xmlsec-nss-crypto;
-    &xmlsec-nss-keysstore;
-    &xmlsec-nss-pkikeys;
-    &xmlsec-nss-x509;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-bignum;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-crypto;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-keysstore;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-pkikeys;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-nss-x509;"/>
     </chapter>
 
     <chapter id="xmlsec-mscrypto-ref">
@@ -288,18 +291,18 @@
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </para>
 
-    &xmlsec-mscrypto-app;
-    &xmlsec-mscrypto-certkeys;
-    &xmlsec-mscrypto-crypto;
-    &xmlsec-mscrypto-keysstore;
-    &xmlsec-mscrypto-x509;
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-mscrypto-app;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-mscrypto-certkeys;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-mscrypto-crypto;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-mscrypto-keysstore;"/>
+    <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="&xmlsec-mscrypto-x509;"/>
     </chapter>
     
     <chapter id="xmlsec-index">
     <title>XML Security Library Reference Index</title>
     <para>
 	<itemizedlist>
-	&xmlsec-index;
+        &xmlsec-index;
 	</itemizedlist>
     </para>	
     </chapter>
diff --git a/docs/api/tmpl/base/errors.sgml b/docs/api/tmpl/base/errors.sgml
index 185ae22..7dea2cb 100644
--- a/docs/api/tmpl/base/errors.sgml
+++ b/docs/api/tmpl/base/errors.sgml
@@ -83,6 +83,13 @@ Error/log messages support.
 
 
 
+<!-- ##### MACRO XMLSEC_ERRORS_R_INVALID_CONFIG ##### -->
+<para>
+
+</para>
+
+
+
 <!-- ##### MACRO XMLSEC_ERRORS_R_INVALID_SIZE ##### -->
 <para>
 
@@ -139,6 +146,13 @@ Error/log messages support.
 
 
 
+<!-- ##### MACRO XMLSEC_ERRORS_R_INVALID_VERSION ##### -->
+<para>
+
+</para>
+
+
+
 <!-- ##### MACRO XMLSEC_ERRORS_R_INVALID_NODE ##### -->
 <para>
 
diff --git a/docs/api/tmpl/base/private.sgml b/docs/api/tmpl/base/private.sgml
index 3ffde0a..7ae072b 100644
--- a/docs/api/tmpl/base/private.sgml
+++ b/docs/api/tmpl/base/private.sgml
@@ -272,17 +272,44 @@ Private header for building xmlsec-crypto-engine libraries.
 @cryptoAppKeyCertLoadMemory: 
 @cryptoAppDefaultPwdCallback: 
 
-<!-- ##### MACRO xmlSecStrPrintf ##### -->
+<!-- ##### MACRO ATTRIBUTE_UNUSED ##### -->
 <para>
 
 </para>
 
 
 
-<!-- ##### MACRO xmlSecStrVPrintf ##### -->
+<!-- ##### MACRO XMLSEC_PTR_TO_FUNC_IMPL ##### -->
 <para>
 
 </para>
 
+ at func_type: 
+
+
+<!-- ##### MACRO XMLSEC_PTR_TO_FUNC ##### -->
+<para>
+
+</para>
+
+ at func_type: 
+ at ptr: 
+
+
+<!-- ##### MACRO XMLSEC_FUNC_TO_PTR_IMPL ##### -->
+<para>
+
+</para>
+
+ at func_type: 
+
+
+<!-- ##### MACRO XMLSEC_FUNC_TO_PTR ##### -->
+<para>
+
+</para>
+
+ at func_type: 
+ at func: 
 
 
diff --git a/docs/api/tmpl/base/xmlsec-unused.sgml b/docs/api/tmpl/base/xmlsec-unused.sgml
index e35eac2..178a1c9 100644
--- a/docs/api/tmpl/base/xmlsec-unused.sgml
+++ b/docs/api/tmpl/base/xmlsec-unused.sgml
@@ -92,6 +92,240 @@ xkms
 </para>
 
 
+<!-- ##### FUNCTION xmlSecGenerateAndAddID ##### -->
+<para>
+
+</para>
+
+ at node: 
+ at attrName: 
+ at prefix: 
+ at len: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecGenerateID ##### -->
+<para>
+
+</para>
+
+ at prefix: 
+ at len: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11AddBodyEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at entryNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11AddFaultEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at faultCodeHref: 
+ at faultCodeLocalPart: 
+ at faultString: 
+ at faultActor: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11CheckEnvelope ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11CreateEnvelope ##### -->
+<para>
+
+</para>
+
+ at doc: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11EnsureHeader ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11GetBody ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11GetBodyEntriesNumber ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11GetBodyEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at pos: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11GetFaultEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap11GetHeader ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12AddBodyEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at entryNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12AddFaultDetailEntry ##### -->
+<para>
+
+</para>
+
+ at faultNode: 
+ at detailEntryNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12AddFaultEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at faultCode: 
+ at faultReasonText: 
+ at faultReasonLang: 
+ at faultNodeURI: 
+ at faultRole: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12AddFaultReasonText ##### -->
+<para>
+
+</para>
+
+ at faultNode: 
+ at faultReasonText: 
+ at faultReasonLang: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12AddFaultSubcode ##### -->
+<para>
+
+</para>
+
+ at faultNode: 
+ at subCodeHref: 
+ at subCodeName: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12CheckEnvelope ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12CreateEnvelope ##### -->
+<para>
+
+</para>
+
+ at doc: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12EnsureHeader ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12GetBody ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12GetBodyEntriesNumber ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12GetBodyEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at pos: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12GetFaultEntry ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### FUNCTION xmlSecSoap12GetHeader ##### -->
+<para>
+
+</para>
+
+ at envNode: 
+ at Returns: 
+
+<!-- ##### MACRO xmlSecStrPrintf ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### MACRO xmlSecStrVPrintf ##### -->
+<para>
+
+</para>
+
+
 <!-- ##### MACRO xmlSecTransformCheckType ##### -->
 <para>
 
diff --git a/docs/api/tmpl/base/xmlsec.sgml b/docs/api/tmpl/base/xmlsec.sgml
index 0bc6d17..21e40f7 100644
--- a/docs/api/tmpl/base/xmlsec.sgml
+++ b/docs/api/tmpl/base/xmlsec.sgml
@@ -75,77 +75,59 @@ Utility functions.
 @Returns: 
 
 
-<!-- ##### MACRO XMLSEC_CRYPTO ##### -->
+<!-- ##### FUNCTION xmlSecSetExternalEntityLoader ##### -->
 <para>
 
 </para>
 
+ at Param1: 
 
 
-<!-- ##### MACRO xmlSecCheckVersionExact ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO xmlSecCheckVersion ##### -->
+<!-- ##### MACRO XMLSEC_CRYPTO ##### -->
 <para>
 
 </para>
 
 
 
-<!-- ##### ENUM xmlSecCheckVersionMode ##### -->
-<para>
-
-</para>
-
- at xmlSecCheckVersionExactMatch: 
- at xmlSecCheckVersionABICompatible: 
-
-<!-- ##### FUNCTION xmlSecCheckVersionExt ##### -->
+<!-- ##### MACRO XMLSEC_DEPRECATED ##### -->
 <para>
 
 </para>
 
- at major: 
- at minor: 
- at subminor: 
- at mode: 
- at Returns: 
 
 
-<!-- ##### MACRO ATTRIBUTE_UNUSED ##### -->
+<!-- ##### MACRO xmlSecCheckVersionExact ##### -->
 <para>
 
 </para>
 
 
 
-<!-- ##### MACRO XMLSEC_PTR_TO_FUNC_IMPL ##### -->
+<!-- ##### MACRO xmlSecCheckVersion ##### -->
 <para>
 
 </para>
 
- at func_type: 
 
 
-<!-- ##### MACRO XMLSEC_PTR_TO_FUNC ##### -->
+<!-- ##### ENUM xmlSecCheckVersionMode ##### -->
 <para>
 
 </para>
 
- at func_type: 
- at ptr: 
-
+ at xmlSecCheckVersionExactMatch: 
+ at xmlSecCheckVersionABICompatible: 
 
-<!-- ##### MACRO XMLSEC_FUNC_TO_PTR ##### -->
+<!-- ##### FUNCTION xmlSecCheckVersionExt ##### -->
 <para>
 
 </para>
 
- at func_type: 
- at func: 
+ at major: 
+ at minor: 
+ at subminor: 
+ at mode: 
+ at Returns: 
 
 
diff --git a/docs/api/tmpl/base/xmltree.sgml b/docs/api/tmpl/base/xmltree.sgml
index 4a7764e..3f58897 100644
--- a/docs/api/tmpl/base/xmltree.sgml
+++ b/docs/api/tmpl/base/xmltree.sgml
@@ -240,28 +240,6 @@ XML tree operations.
 @ids: 
 
 
-<!-- ##### FUNCTION xmlSecGenerateAndAddID ##### -->
-<para>
-
-</para>
-
- at node: 
- at attrName: 
- at prefix: 
- at len: 
- at Returns: 
-
-
-<!-- ##### FUNCTION xmlSecGenerateID ##### -->
-<para>
-
-</para>
-
- at prefix: 
- at len: 
- at Returns: 
-
-
 <!-- ##### FUNCTION xmlSecCreateTree ##### -->
 <para>
 
diff --git a/docs/api/tmpl/nss/crypto.sgml b/docs/api/tmpl/nss/crypto.sgml
index 6e625db..47141ca 100644
--- a/docs/api/tmpl/nss/crypto.sgml
+++ b/docs/api/tmpl/nss/crypto.sgml
@@ -303,6 +303,70 @@ Crypto transforms implementation for NSS.
 @Returns: 
 
 
+<!-- ##### MACRO xmlSecNssKeyDataEcdsaId ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION xmlSecNssKeyDataEcdsaGetKlass ##### -->
+<para>
+
+</para>
+
+ at void: 
+ at Returns: 
+
+
+<!-- ##### MACRO xmlSecNssTransformEcdsaSha1Id ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION xmlSecNssTransformEcdsaSha1GetKlass ##### -->
+<para>
+
+</para>
+
+ at void: 
+ at Returns: 
+
+
+<!-- ##### MACRO xmlSecNssTransformEcdsaSha256Id ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION xmlSecNssTransformEcdsaSha256GetKlass ##### -->
+<para>
+
+</para>
+
+ at void: 
+ at Returns: 
+
+
+<!-- ##### MACRO xmlSecNssTransformEcdsaSha512Id ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### FUNCTION xmlSecNssTransformEcdsaSha512GetKlass ##### -->
+<para>
+
+</para>
+
+ at void: 
+ at Returns: 
+
+
 <!-- ##### FUNCTION xmlSecNssHmacGetMinOutputLength ##### -->
 <para>
 
diff --git a/docs/api/tmpl/openssl/app.sgml b/docs/api/tmpl/openssl/app.sgml
index 1bb1425..71548c4 100644
--- a/docs/api/tmpl/openssl/app.sgml
+++ b/docs/api/tmpl/openssl/app.sgml
@@ -131,7 +131,7 @@ Application functions implementation for OpenSSL.
 </para>
 
 @mngr: 
- at file: 
+ at filename: 
 @Returns: 
 
 
diff --git a/docs/api/tmpl/openssl/crypto.sgml b/docs/api/tmpl/openssl/crypto.sgml
index 594630a..fee6dcc 100644
--- a/docs/api/tmpl/openssl/crypto.sgml
+++ b/docs/api/tmpl/openssl/crypto.sgml
@@ -84,6 +84,139 @@ Crypto transforms implementation for OpenSSL.
 @Returns: 
 
 
+<!-- ##### MACRO XMLSEC_OPENSSL_API_100 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_OPENSSL_API_110 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_OPENSSL_API_098 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_ECDSA ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_SHA224 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_SHA256 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_SHA384 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_SHA512 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_AES ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_DES ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_DSA ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_GOST ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_GOST2012 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_HMAC ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_MD5 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_RIPEMD160 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_RSA ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_SHA1 ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO XMLSEC_NO_X509 ##### -->
+<para>
+
+</para>
+
+
+
 <!-- ##### MACRO xmlSecOpenSSLKeyDataAesId ##### -->
 <para>
 
@@ -1096,20 +1229,6 @@ Crypto transforms implementation for OpenSSL.
 @Returns: 
 
 
-<!-- ##### MACRO XMLSEC_OPENSSL_ERRORS_LIB ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO XMLSEC_OPENSSL_ERRORS_FUNCTION ##### -->
-<para>
-
-</para>
-
-
-
 <!-- ##### FUNCTION xmlSecOpenSSLErrorsDefaultCallback ##### -->
 <para>
 
diff --git a/docs/api/tmpl/openssl/x509.sgml b/docs/api/tmpl/openssl/x509.sgml
index bc79480..b575acd 100644
--- a/docs/api/tmpl/openssl/x509.sgml
+++ b/docs/api/tmpl/openssl/x509.sgml
@@ -231,7 +231,7 @@ X509 certificates support implementation for OpenSSL.
 </para>
 
 @store: 
- at file: 
+ at filename: 
 @Returns: 
 
 
diff --git a/docs/api/tmpl/openssl/xmlsec-openssl-unused.sgml b/docs/api/tmpl/openssl/xmlsec-openssl-unused.sgml
index 6f6b3c6..84ec761 100644
--- a/docs/api/tmpl/openssl/xmlsec-openssl-unused.sgml
+++ b/docs/api/tmpl/openssl/xmlsec-openssl-unused.sgml
@@ -22,31 +22,13 @@ app
 
 
 
-<!-- ##### MACRO XMLSEC_NO_AES ##### -->
+<!-- ##### MACRO XMLSEC_OPENSSL_ERRORS_FUNCTION ##### -->
 <para>
 
 </para>
 
 
-<!-- ##### MACRO XMLSEC_NO_SHA224 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO XMLSEC_NO_SHA256 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO XMLSEC_NO_SHA384 ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO XMLSEC_NO_SHA512 ##### -->
+<!-- ##### MACRO XMLSEC_OPENSSL_ERRORS_LIB ##### -->
 <para>
 
 </para>
diff --git a/docs/api/up-insensitive.png b/docs/api/up-insensitive.png
new file mode 100644
index 0000000..9c8bec1
Binary files /dev/null and b/docs/api/up-insensitive.png differ
diff --git a/docs/api/xmlsec-app.html b/docs/api/xmlsec-app.html
index b4f0c3c..c72b30f 100644
--- a/docs/api/xmlsec-app.html
+++ b/docs/api/xmlsec-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="NEXT" title="base64" href="xmlsec-base64.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-ref.html" title="XML Security Core Library API Reference.">
+<link rel="next" href="xmlsec-base64.html" title="base64">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,2473 +73,2653 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-base64.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN857"></a><h2>Name</h2>app -- Crypto-engine independent application support function.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN862"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-app.top_of_page"></a>app</span></h2>
+<p>app — Crypto-engine independent application support function.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOINIT">xmlSecCryptoInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoInit" title="xmlSecCryptoInit ()">xmlSecCryptoInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOSHUTDOWN">xmlSecCryptoShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoShutdown" title="xmlSecCryptoShutdown ()">xmlSecCryptoShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOKEYSMNGRINIT">xmlSecCryptoKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoKeysMngrInit" title="xmlSecCryptoKeysMngrInit ()">xmlSecCryptoKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAAESGETKLASS">xmlSecKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataAesGetKlass" title="xmlSecKeyDataAesGetKlass ()">xmlSecKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATADESGETKLASS">xmlSecKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataDesGetKlass" title="xmlSecKeyDataDesGetKlass ()">xmlSecKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATADSAGETKLASS">xmlSecKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataDsaGetKlass" title="xmlSecKeyDataDsaGetKlass ()">xmlSecKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAECDSAGETKLASS">xmlSecKeyDataEcdsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataEcdsaGetKlass" title="xmlSecKeyDataEcdsaGetKlass ()">xmlSecKeyDataEcdsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAGOST2001GETKLASS">xmlSecKeyDataGost2001GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataGost2001GetKlass" title="xmlSecKeyDataGost2001GetKlass ()">xmlSecKeyDataGost2001GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAGOSTR3410-2012-256GETKLASS">xmlSecKeyDataGostR3410_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataGostR3410-2012-256GetKlass" title="xmlSecKeyDataGostR3410_2012_256GetKlass ()">xmlSecKeyDataGostR3410_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAGOSTR3410-2012-512GETKLASS">xmlSecKeyDataGostR3410_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataGostR3410-2012-512GetKlass" title="xmlSecKeyDataGostR3410_2012_512GetKlass ()">xmlSecKeyDataGostR3410_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAHMACGETKLASS">xmlSecKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataHmacGetKlass" title="xmlSecKeyDataHmacGetKlass ()">xmlSecKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATARSAGETKLASS">xmlSecKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataRsaGetKlass" title="xmlSecKeyDataRsaGetKlass ()">xmlSecKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATAX509GETKLASS">xmlSecKeyDataX509GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataX509GetKlass" title="xmlSecKeyDataX509GetKlass ()">xmlSecKeyDataX509GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECKEYDATARAWX509CERTGETKLASS">xmlSecKeyDataRawX509CertGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecKeyDataRawX509CertGetKlass" title="xmlSecKeyDataRawX509CertGetKlass ()">xmlSecKeyDataRawX509CertGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECX509STOREGETKLASS">xmlSecX509StoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecX509StoreGetKlass" title="xmlSecX509StoreGetKlass ()">xmlSecX509StoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMAES128CBCGETKLASS">xmlSecTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformAes128CbcGetKlass" title="xmlSecTransformAes128CbcGetKlass ()">xmlSecTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMAES192CBCGETKLASS">xmlSecTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformAes192CbcGetKlass" title="xmlSecTransformAes192CbcGetKlass ()">xmlSecTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMAES256CBCGETKLASS">xmlSecTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformAes256CbcGetKlass" title="xmlSecTransformAes256CbcGetKlass ()">xmlSecTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMKWAES128GETKLASS">xmlSecTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformKWAes128GetKlass" title="xmlSecTransformKWAes128GetKlass ()">xmlSecTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMKWAES192GETKLASS">xmlSecTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformKWAes192GetKlass" title="xmlSecTransformKWAes192GetKlass ()">xmlSecTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMKWAES256GETKLASS">xmlSecTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformKWAes256GetKlass" title="xmlSecTransformKWAes256GetKlass ()">xmlSecTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMDES3CBCGETKLASS">xmlSecTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformDes3CbcGetKlass" title="xmlSecTransformDes3CbcGetKlass ()">xmlSecTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMKWDES3GETKLASS">xmlSecTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformKWDes3GetKlass" title="xmlSecTransformKWDes3GetKlass ()">xmlSecTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA1GETKLASS">xmlSecTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha1GetKlass" title="xmlSecTransformDsaSha1GetKlass ()">xmlSecTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA256GETKLASS">xmlSecTransformDsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha256GetKlass" title="xmlSecTransformDsaSha256GetKlass ()">xmlSecTransformDsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA1GETKLASS">xmlSecTransformEcdsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha1GetKlass" title="xmlSecTransformEcdsaSha1GetKlass ()">xmlSecTransformEcdsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA224GETKLASS">xmlSecTransformEcdsaSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha224GetKlass" title="xmlSecTransformEcdsaSha224GetKlass ()">xmlSecTransformEcdsaSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA256GETKLASS">xmlSecTransformEcdsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha256GetKlass" title="xmlSecTransformEcdsaSha256GetKlass ()">xmlSecTransformEcdsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA384GETKLASS">xmlSecTransformEcdsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha384GetKlass" title="xmlSecTransformEcdsaSha384GetKlass ()">xmlSecTransformEcdsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA512GETKLASS">xmlSecTransformEcdsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha512GetKlass" title="xmlSecTransformEcdsaSha512GetKlass ()">xmlSecTransformEcdsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOST2001GOSTR3411-94GETKLASS">xmlSecTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGost2001GostR3411-94GetKlass" title="xmlSecTransformGost2001GostR3411_94GetKlass ()">xmlSecTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-256GETKLASS">xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGostR3410-2012GostR3411-2012-256GetKlass" title="xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass ()">xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-512GETKLASS">xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGostR3410-2012GostR3411-2012-512GetKlass" title="xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass ()">xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACMD5GETKLASS">xmlSecTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacMd5GetKlass" title="xmlSecTransformHmacMd5GetKlass ()">xmlSecTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACRIPEMD160GETKLASS">xmlSecTransformHmacRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacRipemd160GetKlass" title="xmlSecTransformHmacRipemd160GetKlass ()">xmlSecTransformHmacRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA1GETKLASS">xmlSecTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha1GetKlass" title="xmlSecTransformHmacSha1GetKlass ()">xmlSecTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA224GETKLASS">xmlSecTransformHmacSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha224GetKlass" title="xmlSecTransformHmacSha224GetKlass ()">xmlSecTransformHmacSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA256GETKLASS">xmlSecTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha256GetKlass" title="xmlSecTransformHmacSha256GetKlass ()">xmlSecTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA384GETKLASS">xmlSecTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha384GetKlass" title="xmlSecTransformHmacSha384GetKlass ()">xmlSecTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA512GETKLASS">xmlSecTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha512GetKlass" title="xmlSecTransformHmacSha512GetKlass ()">xmlSecTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMMD5GETKLASS">xmlSecTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformMd5GetKlass" title="xmlSecTransformMd5GetKlass ()">xmlSecTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRIPEMD160GETKLASS">xmlSecTransformRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRipemd160GetKlass" title="xmlSecTransformRipemd160GetKlass ()">xmlSecTransformRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSAMD5GETKLASS">xmlSecTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaMd5GetKlass" title="xmlSecTransformRsaMd5GetKlass ()">xmlSecTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSARIPEMD160GETKLASS">xmlSecTransformRsaRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaRipemd160GetKlass" title="xmlSecTransformRsaRipemd160GetKlass ()">xmlSecTransformRsaRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA1GETKLASS">xmlSecTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha1GetKlass" title="xmlSecTransformRsaSha1GetKlass ()">xmlSecTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA224GETKLASS">xmlSecTransformRsaSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha224GetKlass" title="xmlSecTransformRsaSha224GetKlass ()">xmlSecTransformRsaSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA256GETKLASS">xmlSecTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha256GetKlass" title="xmlSecTransformRsaSha256GetKlass ()">xmlSecTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA384GETKLASS">xmlSecTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha384GetKlass" title="xmlSecTransformRsaSha384GetKlass ()">xmlSecTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA512GETKLASS">xmlSecTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha512GetKlass" title="xmlSecTransformRsaSha512GetKlass ()">xmlSecTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSAPKCS1GETKLASS">xmlSecTransformRsaPkcs1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaPkcs1GetKlass" title="xmlSecTransformRsaPkcs1GetKlass ()">xmlSecTransformRsaPkcs1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMRSAOAEPGETKLASS">xmlSecTransformRsaOaepGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformRsaOaepGetKlass" title="xmlSecTransformRsaOaepGetKlass ()">xmlSecTransformRsaOaepGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-94GETKLASS">xmlSecTransformGostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-94GetKlass" title="xmlSecTransformGostR3411_94GetKlass ()">xmlSecTransformGostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-2012-256GETKLASS">xmlSecTransformGostR3411_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-2012-256GetKlass" title="xmlSecTransformGostR3411_2012_256GetKlass ()">xmlSecTransformGostR3411_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-2012-512GETKLASS">xmlSecTransformGostR3411_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-2012-512GetKlass" title="xmlSecTransformGostR3411_2012_512GetKlass ()">xmlSecTransformGostR3411_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMSHA1GETKLASS">xmlSecTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformSha1GetKlass" title="xmlSecTransformSha1GetKlass ()">xmlSecTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMSHA224GETKLASS">xmlSecTransformSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformSha224GetKlass" title="xmlSecTransformSha224GetKlass ()">xmlSecTransformSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMSHA256GETKLASS">xmlSecTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformSha256GetKlass" title="xmlSecTransformSha256GetKlass ()">xmlSecTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMSHA384GETKLASS">xmlSecTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformSha384GetKlass" title="xmlSecTransformSha384GetKlass ()">xmlSecTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECTRANSFORMSHA512GETKLASS">xmlSecTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecTransformSha512GetKlass" title="xmlSecTransformSha512GetKlass ()">xmlSecTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPINIT">xmlSecCryptoAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppInit" title="xmlSecCryptoAppInit ()">xmlSecCryptoAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPSHUTDOWN">xmlSecCryptoAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppShutdown" title="xmlSecCryptoAppShutdown ()">xmlSecCryptoAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRINIT">xmlSecCryptoAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrInit" title="xmlSecCryptoAppDefaultKeysMngrInit ()">xmlSecCryptoAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecCryptoAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrAdoptKey" title="xmlSecCryptoAppDefaultKeysMngrAdoptKey ()">xmlSecCryptoAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRLOAD">xmlSecCryptoAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrLoad" title="xmlSecCryptoAppDefaultKeysMngrLoad ()">xmlSecCryptoAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRSAVE">xmlSecCryptoAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrSave" title="xmlSecCryptoAppDefaultKeysMngrSave ()">xmlSecCryptoAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYSMNGRCERTLOAD">xmlSecCryptoAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeysMngrCertLoad" title="xmlSecCryptoAppKeysMngrCertLoad ()">xmlSecCryptoAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYSMNGRCERTLOADMEMORY">xmlSecCryptoAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeysMngrCertLoadMemory" title="xmlSecCryptoAppKeysMngrCertLoadMemory ()">xmlSecCryptoAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYLOAD">xmlSecCryptoAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyLoad" title="xmlSecCryptoAppKeyLoad ()">xmlSecCryptoAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYLOADMEMORY">xmlSecCryptoAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyLoadMemory" title="xmlSecCryptoAppKeyLoadMemory ()">xmlSecCryptoAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPPKCS12LOAD">xmlSecCryptoAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppPkcs12Load" title="xmlSecCryptoAppPkcs12Load ()">xmlSecCryptoAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPPKCS12LOADMEMORY">xmlSecCryptoAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppPkcs12LoadMemory" title="xmlSecCryptoAppPkcs12LoadMemory ()">xmlSecCryptoAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYCERTLOAD">xmlSecCryptoAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyCertLoad" title="xmlSecCryptoAppKeyCertLoad ()">xmlSecCryptoAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYCERTLOADMEMORY">xmlSecCryptoAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyCertLoadMemory" title="xmlSecCryptoAppKeyCertLoadMemory ()">xmlSecCryptoAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-app.html#XMLSECCRYPTOAPPGETDEFAULTPWDCALLBACK">xmlSecCryptoAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-app.html#xmlSecCryptoAppGetDefaultPwdCallback" title="xmlSecCryptoAppGetDefaultPwdCallback ()">xmlSecCryptoAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-APP.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN1385"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-app.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAAESID">xmlSecKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataAesId" title="xmlSecKeyDataAesId">xmlSecKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATADESID">xmlSecKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataDesId" title="xmlSecKeyDataDesId">xmlSecKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATADSAID">xmlSecKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataDsaId" title="xmlSecKeyDataDsaId">xmlSecKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAECDSAID">xmlSecKeyDataEcdsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataEcdsaId" title="xmlSecKeyDataEcdsaId">xmlSecKeyDataEcdsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAGOST2001ID">xmlSecKeyDataGost2001Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataGost2001Id" title="xmlSecKeyDataGost2001Id">xmlSecKeyDataGost2001Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAGOSTR3410-2012-256ID">xmlSecKeyDataGostR3410_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataGostR3410-2012-256Id" title="xmlSecKeyDataGostR3410_2012_256Id">xmlSecKeyDataGostR3410_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAGOSTR3410-2012-512ID">xmlSecKeyDataGostR3410_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataGostR3410-2012-512Id" title="xmlSecKeyDataGostR3410_2012_512Id">xmlSecKeyDataGostR3410_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAHMACID">xmlSecKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataHmacId" title="xmlSecKeyDataHmacId">xmlSecKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATARSAID">xmlSecKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataRsaId" title="xmlSecKeyDataRsaId">xmlSecKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATAX509ID">xmlSecKeyDataX509Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataX509Id" title="xmlSecKeyDataX509Id">xmlSecKeyDataX509Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECKEYDATARAWX509CERTID">xmlSecKeyDataRawX509CertId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecKeyDataRawX509CertId" title="xmlSecKeyDataRawX509CertId">xmlSecKeyDataRawX509CertId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECX509STOREID">xmlSecX509StoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecX509StoreId" title="xmlSecX509StoreId">xmlSecX509StoreId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMAES128CBCID">xmlSecTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformAes128CbcId" title="xmlSecTransformAes128CbcId">xmlSecTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMAES192CBCID">xmlSecTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformAes192CbcId" title="xmlSecTransformAes192CbcId">xmlSecTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMAES256CBCID">xmlSecTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformAes256CbcId" title="xmlSecTransformAes256CbcId">xmlSecTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES128ID">xmlSecTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes128Id" title="xmlSecTransformKWAes128Id">xmlSecTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES192ID">xmlSecTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes192Id" title="xmlSecTransformKWAes192Id">xmlSecTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES256ID">xmlSecTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes256Id" title="xmlSecTransformKWAes256Id">xmlSecTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMDES3CBCID">xmlSecTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformDes3CbcId" title="xmlSecTransformDes3CbcId">xmlSecTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMKWDES3ID">xmlSecTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformKWDes3Id" title="xmlSecTransformKWDes3Id">xmlSecTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA1ID">xmlSecTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha1Id" title="xmlSecTransformDsaSha1Id">xmlSecTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA256ID">xmlSecTransformDsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha256Id" title="xmlSecTransformDsaSha256Id">xmlSecTransformDsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA1ID">xmlSecTransformEcdsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha1Id" title="xmlSecTransformEcdsaSha1Id">xmlSecTransformEcdsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA224ID">xmlSecTransformEcdsaSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha224Id" title="xmlSecTransformEcdsaSha224Id">xmlSecTransformEcdsaSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA256ID">xmlSecTransformEcdsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha256Id" title="xmlSecTransformEcdsaSha256Id">xmlSecTransformEcdsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA384ID">xmlSecTransformEcdsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha384Id" title="xmlSecTransformEcdsaSha384Id">xmlSecTransformEcdsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA512ID">xmlSecTransformEcdsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha512Id" title="xmlSecTransformEcdsaSha512Id">xmlSecTransformEcdsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOST2001GOSTR3411-94ID">xmlSecTransformGost2001GostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGost2001GostR3411-94Id" title="xmlSecTransformGost2001GostR3411_94Id">xmlSecTransformGost2001GostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-256ID">xmlSecTransformGostR3410_2012GostR3411_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGostR3410-2012GostR3411-2012-256Id" title="xmlSecTransformGostR3410_2012GostR3411_2012_256Id">xmlSecTransformGostR3410_2012GostR3411_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-512ID">xmlSecTransformGostR3410_2012GostR3411_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGostR3410-2012GostR3411-2012-512Id" title="xmlSecTransformGostR3410_2012GostR3411_2012_512Id">xmlSecTransformGostR3410_2012GostR3411_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACMD5ID">xmlSecTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacMd5Id" title="xmlSecTransformHmacMd5Id">xmlSecTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACRIPEMD160ID">xmlSecTransformHmacRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacRipemd160Id" title="xmlSecTransformHmacRipemd160Id">xmlSecTransformHmacRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA1ID">xmlSecTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha1Id" title="xmlSecTransformHmacSha1Id">xmlSecTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA224ID">xmlSecTransformHmacSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha224Id" title="xmlSecTransformHmacSha224Id">xmlSecTransformHmacSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA256ID">xmlSecTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha256Id" title="xmlSecTransformHmacSha256Id">xmlSecTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA384ID">xmlSecTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha384Id" title="xmlSecTransformHmacSha384Id">xmlSecTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA512ID">xmlSecTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha512Id" title="xmlSecTransformHmacSha512Id">xmlSecTransformHmacSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMMD5ID">xmlSecTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformMd5Id" title="xmlSecTransformMd5Id">xmlSecTransformMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRIPEMD160ID">xmlSecTransformRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRipemd160Id" title="xmlSecTransformRipemd160Id">xmlSecTransformRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSAMD5ID">xmlSecTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaMd5Id" title="xmlSecTransformRsaMd5Id">xmlSecTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSARIPEMD160ID">xmlSecTransformRsaRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaRipemd160Id" title="xmlSecTransformRsaRipemd160Id">xmlSecTransformRsaRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA1ID">xmlSecTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha1Id" title="xmlSecTransformRsaSha1Id">xmlSecTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA224ID">xmlSecTransformRsaSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha224Id" title="xmlSecTransformRsaSha224Id">xmlSecTransformRsaSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA256ID">xmlSecTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha256Id" title="xmlSecTransformRsaSha256Id">xmlSecTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA384ID">xmlSecTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha384Id" title="xmlSecTransformRsaSha384Id">xmlSecTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA512ID">xmlSecTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha512Id" title="xmlSecTransformRsaSha512Id">xmlSecTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSAPKCS1ID">xmlSecTransformRsaPkcs1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaPkcs1Id" title="xmlSecTransformRsaPkcs1Id">xmlSecTransformRsaPkcs1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMRSAOAEPID">xmlSecTransformRsaOaepId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformRsaOaepId" title="xmlSecTransformRsaOaepId">xmlSecTransformRsaOaepId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-94ID">xmlSecTransformGostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-94Id" title="xmlSecTransformGostR3411_94Id">xmlSecTransformGostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-2012-256ID">xmlSecTransformGostR3411_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-2012-256Id" title="xmlSecTransformGostR3411_2012_256Id">xmlSecTransformGostR3411_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMGOSTR3411-2012-512ID">xmlSecTransformGostR3411_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformGostR3411-2012-512Id" title="xmlSecTransformGostR3411_2012_512Id">xmlSecTransformGostR3411_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMSHA1ID">xmlSecTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformSha1Id" title="xmlSecTransformSha1Id">xmlSecTransformSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMSHA224ID">xmlSecTransformSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformSha224Id" title="xmlSecTransformSha224Id">xmlSecTransformSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMSHA256ID">xmlSecTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformSha256Id" title="xmlSecTransformSha256Id">xmlSecTransformSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMSHA384ID">xmlSecTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformSha384Id" title="xmlSecTransformSha384Id">xmlSecTransformSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-app.html#XMLSECTRANSFORMSHA512ID">xmlSecTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-app.html#xmlSecTransformSha512Id" title="xmlSecTransformSha512Id">xmlSecTransformSha512Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto-engine application support function used by xmlsec command line utility.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOINIT"></a><h3>xmlSecCryptoInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-app.description"></a><h2>Description</h2>
+<p>
+Crypto-engine application support function used by xmlsec command line utility.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoInit"></a><h3>xmlSecCryptoInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN1627"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOSHUTDOWN"></a><h3>xmlSecCryptoShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoShutdown"></a><h3>xmlSecCryptoShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN1640"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOKEYSMNGRINIT"></a><h3>xmlSecCryptoKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoKeysMngrInit"></a><h3>xmlSecCryptoKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds crypto specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN1654"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN1656"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN1665"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAAESGETKLASS"></a><h3>xmlSecKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataAesGetKlass"></a><h3>xmlSecKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1678"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the AES key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADESGETKLASS"></a><h3>xmlSecKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDesGetKlass"></a><h3>xmlSecKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1691"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the DES key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADSAGETKLASS"></a><h3>xmlSecKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDsaGetKlass"></a><h3>xmlSecKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1704"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> DSA key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the DSA key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAECDSAGETKLASS"></a><h3>xmlSecKeyDataEcdsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataEcdsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataEcdsaGetKlass"></a><h3>xmlSecKeyDataEcdsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataEcdsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1717"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataEcdsaGetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the ECDSA key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOST2001GETKLASS"></a><h3>xmlSecKeyDataGost2001GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataGost2001GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGost2001GetKlass"></a><h3>xmlSecKeyDataGost2001GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataGost2001GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001 key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1730"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGost2001GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST2001 key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the GOST2001 key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOSTR3410-2012-256GETKLASS"></a><h3>xmlSecKeyDataGostR3410_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecKeyDataGostR3410-2012-256GetKlass"></a><h3>xmlSecKeyDataGostR3410_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecKeyDataGostR3410_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 256 bit key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1743"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGostR3410-2012-256GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST R 34.10-2012 256 bit key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the GOST R 34.10-2012 key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOSTR3410-2012-512GETKLASS"></a><h3>xmlSecKeyDataGostR3410_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecKeyDataGostR3410-2012-512GetKlass"></a><h3>xmlSecKeyDataGostR3410_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecKeyDataGostR3410_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 512 bit key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1756"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGostR3410-2012-512GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST R 34.10-2012 512 bit key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the GOST R 34.10-2012 key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAHMACGETKLASS"></a><h3>xmlSecKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataHmacGetKlass"></a><h3>xmlSecKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1769"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the HMAC key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARSAGETKLASS"></a><h3>xmlSecKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRsaGetKlass"></a><h3>xmlSecKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1782"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> RSA key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the RSA key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAX509GETKLASS"></a><h3>xmlSecKeyDataX509GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataX509GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataX509GetKlass"></a><h3>xmlSecKeyDataX509GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataX509GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The X509 key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1795"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataX509GetKlass.returns"></a><h4>Returns</h4>
 <p> X509 key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the X509 key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARAWX509CERTGETKLASS"></a><h3>xmlSecKeyDataRawX509CertGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataRawX509CertGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRawX509CertGetKlass"></a><h3>xmlSecKeyDataRawX509CertGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataRawX509CertGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The raw X509 cert key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN1808"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataRawX509CertGetKlass.returns"></a><h4>Returns</h4>
 <p> raw x509 cert key data klass or NULL if an error occurs
 (xmlsec-crypto library is not loaded or the raw X509 cert key data
 klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECX509STOREGETKLASS"></a><h3>xmlSecX509StoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font>
-xmlSecX509StoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecX509StoreGetKlass"></a><h3>xmlSecX509StoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+xmlSecX509StoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The X509 certificates key data store klass.</p>
-<div class="REFSECT3">
-<a name="AEN1821"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecX509StoreGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to X509 certificates key data store klass or NULL if
 an error occurs (xmlsec-crypto library is not loaded or the raw X509
 cert key data klass is not implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformAes128CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes128CbcGetKlass"></a><h3>xmlSecTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformAes128CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1834"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformAes192CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes192CbcGetKlass"></a><h3>xmlSecTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformAes192CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1847"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformAes256CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes256CbcGetKlass"></a><h3>xmlSecTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformAes256CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1860"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformKWAes128GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes128GetKlass"></a><h3>xmlSecTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformKWAes128GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1873"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 kew wrapper transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformKWAes192GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes192GetKlass"></a><h3>xmlSecTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformKWAes192GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1886"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 kew wrapper transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformKWAes256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes256GetKlass"></a><h3>xmlSecTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformKWAes256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1899"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 kew wrapper transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformDes3CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDes3CbcGetKlass"></a><h3>xmlSecTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformDes3CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1912"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWDes3GetKlass"></a><h3>xmlSecTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1925"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformDsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDsaSha1GetKlass"></a><h3>xmlSecTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformDsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1938"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDSASHA256GETKLASS"></a><h3>xmlSecTransformDsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformDsaSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDsaSha256GetKlass"></a><h3>xmlSecTransformDsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformDsaSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1951"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA256 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA1GETKLASS"></a><h3>xmlSecTransformEcdsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEcdsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha1GetKlass"></a><h3>xmlSecTransformEcdsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEcdsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1964"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEcdsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA1 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA224GETKLASS"></a><h3>xmlSecTransformEcdsaSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEcdsaSha224GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha224GetKlass"></a><h3>xmlSecTransformEcdsaSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEcdsaSha224GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA224 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1977"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEcdsaSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA224 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA256GETKLASS"></a><h3>xmlSecTransformEcdsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEcdsaSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha256GetKlass"></a><h3>xmlSecTransformEcdsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEcdsaSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN1990"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEcdsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA256 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA384GETKLASS"></a><h3>xmlSecTransformEcdsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEcdsaSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha384GetKlass"></a><h3>xmlSecTransformEcdsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEcdsaSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2003"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEcdsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA384 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA512GETKLASS"></a><h3>xmlSecTransformEcdsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEcdsaSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha512GetKlass"></a><h3>xmlSecTransformEcdsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEcdsaSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2016"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEcdsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA512 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOST2001GOSTR3411-94GETKLASS"></a><h3>xmlSecTransformGost2001GostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformGost2001GostR3411-94GetKlass"></a><h3>xmlSecTransformGost2001GostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformGost2001GostR3411_94GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001-GOSTR3411_94 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2029"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGost2001GostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST2001-GOSTR3411_94 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-256GETKLASS"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-256GetKlass"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 - GOST R 34.11-2012 256 bit signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2042"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-256GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST R 34.10-2012 - GOST R 34.11-2012 256 bit signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-512GETKLASS"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-512GetKlass"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 - GOST R 34.11-2012 512 bit signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2055"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-512GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST R 34.10-2012 - GOST R 34.11-2012 512 bit signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacMd5GetKlass"></a><h3>xmlSecTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2068"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACRIPEMD160GETKLASS"></a><h3>xmlSecTransformHmacRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacRipemd160GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacRipemd160GetKlass"></a><h3>xmlSecTransformHmacRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacRipemd160GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-RIPEMD160 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2081"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-RIPEMD160 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha1GetKlass"></a><h3>xmlSecTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2094"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA224GETKLASS"></a><h3>xmlSecTransformHmacSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacSha224GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha224GetKlass"></a><h3>xmlSecTransformHmacSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacSha224GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA224 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2107"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA224 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha256GetKlass"></a><h3>xmlSecTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2120"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha384GetKlass"></a><h3>xmlSecTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2133"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformHmacSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha512GetKlass"></a><h3>xmlSecTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformHmacSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2146"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMD5GETKLASS"></a><h3>xmlSecTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformMd5GetKlass"></a><h3>xmlSecTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>MD5 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2159"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MD5 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRIPEMD160GETKLASS"></a><h3>xmlSecTransformRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRipemd160GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRipemd160GetKlass"></a><h3>xmlSecTransformRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRipemd160GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>RIPEMD-160 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2172"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to RIPEMD-160 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaMd5GetKlass"></a><h3>xmlSecTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2185"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSARIPEMD160GETKLASS"></a><h3>xmlSecTransformRsaRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaRipemd160GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaRipemd160GetKlass"></a><h3>xmlSecTransformRsaRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaRipemd160GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2198"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-RIPEMD160 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha1GetKlass"></a><h3>xmlSecTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2211"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA224GETKLASS"></a><h3>xmlSecTransformRsaSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaSha224GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha224GetKlass"></a><h3>xmlSecTransformRsaSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaSha224GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA224 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2224"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA224 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha256GetKlass"></a><h3>xmlSecTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2237"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha384GetKlass"></a><h3>xmlSecTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2250"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha512GetKlass"></a><h3>xmlSecTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2263"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAPKCS1GETKLASS"></a><h3>xmlSecTransformRsaPkcs1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaPkcs1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaPkcs1GetKlass"></a><h3>xmlSecTransformRsaPkcs1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaPkcs1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-PKCS1 key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2276"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaPkcs1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-PKCS1 key transport transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAOAEPGETKLASS"></a><h3>xmlSecTransformRsaOaepGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRsaOaepGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaOaepGetKlass"></a><h3>xmlSecTransformRsaOaepGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRsaOaepGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-OAEP key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2289"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRsaOaepGetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-OAEP key transport transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-94GETKLASS"></a><h3>xmlSecTransformGostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformGostR3411_94GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-94GetKlass"></a><h3>xmlSecTransformGostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformGostR3411_94GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOSTR3411_94 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2302"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOSTR3411_94 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-2012-256GETKLASS"></a><h3>xmlSecTransformGostR3411_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-2012-256GetKlass"></a><h3>xmlSecTransformGostR3411_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformGostR3411_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOST R 34.11-2012 256 bit digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2315"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGostR3411-2012-256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.11-2012 256 bit digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-2012-512GETKLASS"></a><h3>xmlSecTransformGostR3411_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-2012-512GetKlass"></a><h3>xmlSecTransformGostR3411_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformGostR3411_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOST R 34.11-2012 512 bit digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2328"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGostR3411-2012-512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.11-2012 512 bit digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA1GETKLASS"></a><h3>xmlSecTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha1GetKlass"></a><h3>xmlSecTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2341"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA224GETKLASS"></a><h3>xmlSecTransformSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformSha224GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha224GetKlass"></a><h3>xmlSecTransformSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformSha224GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA224 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2354"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA224 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA256GETKLASS"></a><h3>xmlSecTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha256GetKlass"></a><h3>xmlSecTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2367"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA256 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA384GETKLASS"></a><h3>xmlSecTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha384GetKlass"></a><h3>xmlSecTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2380"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA384 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA512GETKLASS"></a><h3>xmlSecTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha512GetKlass"></a><h3>xmlSecTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN2393"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA512 digest transform klass or NULL if an error
 occurs (the xmlsec-crypto library is not loaded or this transform is not
 implemented).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPINIT"></a><h3>xmlSecCryptoAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppInit"></a><h3>xmlSecCryptoAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN2408"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2410"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the path to crypto library configuration.</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the path to crypto library configuration.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2419"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPSHUTDOWN"></a><h3>xmlSecCryptoAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppShutdown"></a><h3>xmlSecCryptoAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN2433"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecCryptoAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with simple keys store <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID"><span class="TYPE">xmlSecSimpleKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecCryptoAppDefaultKeysMngrInit"></a><h3>xmlSecCryptoAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with simple keys store <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId"><span class="type">xmlSecSimpleKeysStoreId</span></a>
 and a default crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN2450"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2452"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2461"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecCryptoAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecCryptoAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecCryptoAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecCryptoAppDefaultKeysMngrAdoptKey
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecCryptoAppDefaultKeysMngrInit</span></a>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrInit" title="xmlSecCryptoAppDefaultKeysMngrInit ()"><span class="type">xmlSecCryptoAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN2482"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2484"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2499"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecCryptoAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecCryptoAppDefaultKeysMngrLoad"></a><h3>xmlSecCryptoAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecCryptoAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN2520"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2522"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrInit" title="xmlSecCryptoAppDefaultKeysMngrInit ()"><span class="type">xmlSecCryptoAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2537"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecCryptoAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecCryptoAppDefaultKeysMngrSave"></a><h3>xmlSecCryptoAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN2558"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2560"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2581"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecCryptoAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeysMngrCertLoad"></a><h3>xmlSecCryptoAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN2606"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2608"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2636"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecCryptoAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppKeysMngrCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                       <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from binary buffer <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeysMngrCertLoadMemory"></a><h3>xmlSecCryptoAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppKeysMngrCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from binary buffer <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN2664"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2666"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate trusted or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate trusted or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2699"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYLOAD"></a><h3>xmlSecCryptoAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecCryptoAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeyLoad"></a><h3>xmlSecCryptoAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecCryptoAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN2725"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2727"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2760"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYLOADMEMORY"></a><h3>xmlSecCryptoAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecCryptoAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeyLoadMemory"></a><h3>xmlSecCryptoAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecCryptoAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the memory buffer.</p>
-<div class="REFSECT3">
-<a name="AEN2789"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2791"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of binary key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of binary key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2830"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPPKCS12LOAD"></a><h3>xmlSecCryptoAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecCryptoAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppPkcs12Load"></a><h3>xmlSecCryptoAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecCryptoAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file.
 For uniformity, call xmlSecCryptoAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN2853"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2855"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2882"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPPKCS12LOADMEMORY"></a><h3>xmlSecCryptoAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecCryptoAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppPkcs12LoadMemory"></a><h3>xmlSecCryptoAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecCryptoAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 data in memory buffer.
 For uniformity, call xmlSecCryptoAppKeyLoadMemory instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN2908"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2910"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the PKCS12 binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the PKCS12 binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2943"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYCERTLOAD"></a><h3>xmlSecCryptoAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeyCertLoad"></a><h3>xmlSecCryptoAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN2964"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN2966"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN2987"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPKEYCERTLOADMEMORY"></a><h3>xmlSecCryptoAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                  <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppKeyCertLoadMemory"></a><h3>xmlSecCryptoAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Reads the certificate from memory buffer and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN3010"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3012"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN3039"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecCryptoAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
-xmlSecCryptoAppGetDefaultPwdCallback (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoAppGetDefaultPwdCallback"></a><h3>xmlSecCryptoAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
+xmlSecCryptoAppGetDefaultPwdCallback (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN3052"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAAESID"></a><h3>xmlSecKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataAesId                      xmlSecKeyDataAesGetKlass()</pre>
+<div class="refsect1">
+<a name="xmlsec-app.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecKeyDataAesId"></a><h3>xmlSecKeyDataAesId</h3>
+<pre class="programlisting">#define xmlSecKeyDataAesId                      xmlSecKeyDataAesGetKlass()
+</pre>
 <p>The AES key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADESID"></a><h3>xmlSecKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataDesId                      xmlSecKeyDataDesGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDesId"></a><h3>xmlSecKeyDataDesId</h3>
+<pre class="programlisting">#define xmlSecKeyDataDesId                      xmlSecKeyDataDesGetKlass()
+</pre>
 <p>The DES key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADSAID"></a><h3>xmlSecKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataDsaId                      xmlSecKeyDataDsaGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDsaId"></a><h3>xmlSecKeyDataDsaId</h3>
+<pre class="programlisting">#define xmlSecKeyDataDsaId                      xmlSecKeyDataDsaGetKlass()
+</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAECDSAID"></a><h3>xmlSecKeyDataEcdsaId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataEcdsaId                    xmlSecKeyDataEcdsaGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataEcdsaId"></a><h3>xmlSecKeyDataEcdsaId</h3>
+<pre class="programlisting">#define xmlSecKeyDataEcdsaId                    xmlSecKeyDataEcdsaGetKlass()
+</pre>
 <p>The ECDSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOST2001ID"></a><h3>xmlSecKeyDataGost2001Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataGost2001Id                 xmlSecKeyDataGost2001GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGost2001Id"></a><h3>xmlSecKeyDataGost2001Id</h3>
+<pre class="programlisting">#define xmlSecKeyDataGost2001Id                 xmlSecKeyDataGost2001GetKlass()
+</pre>
 <p>The GOST2001 key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOSTR3410-2012-256ID"></a><h3>xmlSecKeyDataGostR3410_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataGostR3410_2012_256Id       xmlSecKeyDataGostR3410_2012_256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGostR3410-2012-256Id"></a><h3>xmlSecKeyDataGostR3410_2012_256Id</h3>
+<pre class="programlisting">#define xmlSecKeyDataGostR3410_2012_256Id       xmlSecKeyDataGostR3410_2012_256GetKlass()
+</pre>
 <p>The GOST R 34.10-2012 256 bit key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGOSTR3410-2012-512ID"></a><h3>xmlSecKeyDataGostR3410_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataGostR3410_2012_512Id       xmlSecKeyDataGostR3410_2012_512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGostR3410-2012-512Id"></a><h3>xmlSecKeyDataGostR3410_2012_512Id</h3>
+<pre class="programlisting">#define xmlSecKeyDataGostR3410_2012_512Id       xmlSecKeyDataGostR3410_2012_512GetKlass()
+</pre>
 <p>The GOST R 34.10-2012 512 bit key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAHMACID"></a><h3>xmlSecKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataHmacId                     xmlSecKeyDataHmacGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataHmacId"></a><h3>xmlSecKeyDataHmacId</h3>
+<pre class="programlisting">#define xmlSecKeyDataHmacId                     xmlSecKeyDataHmacGetKlass()
+</pre>
 <p>The DHMAC key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARSAID"></a><h3>xmlSecKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataRsaId                      xmlSecKeyDataRsaGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRsaId"></a><h3>xmlSecKeyDataRsaId</h3>
+<pre class="programlisting">#define xmlSecKeyDataRsaId                      xmlSecKeyDataRsaGetKlass()
+</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAX509ID"></a><h3>xmlSecKeyDataX509Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataX509Id                     xmlSecKeyDataX509GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataX509Id"></a><h3>xmlSecKeyDataX509Id</h3>
+<pre class="programlisting">#define xmlSecKeyDataX509Id                     xmlSecKeyDataX509GetKlass()
+</pre>
 <p>The X509 data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARAWX509CERTID"></a><h3>xmlSecKeyDataRawX509CertId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataRawX509CertId              xmlSecKeyDataRawX509CertGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRawX509CertId"></a><h3>xmlSecKeyDataRawX509CertId</h3>
+<pre class="programlisting">#define xmlSecKeyDataRawX509CertId              xmlSecKeyDataRawX509CertGetKlass()
+</pre>
 <p>The  raw X509 certificate klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECX509STOREID"></a><h3>xmlSecX509StoreId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecX509StoreId                       xmlSecX509StoreGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecX509StoreId"></a><h3>xmlSecX509StoreId</h3>
+<pre class="programlisting">#define xmlSecX509StoreId                       xmlSecX509StoreGetKlass()
+</pre>
 <p>The  X509 store klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES128CBCID"></a><h3>xmlSecTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformAes128CbcId              xmlSecTransformAes128CbcGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes128CbcId"></a><h3>xmlSecTransformAes128CbcId</h3>
+<pre class="programlisting">#define xmlSecTransformAes128CbcId              xmlSecTransformAes128CbcGetKlass()
+</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES192CBCID"></a><h3>xmlSecTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformAes192CbcId              xmlSecTransformAes192CbcGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes192CbcId"></a><h3>xmlSecTransformAes192CbcId</h3>
+<pre class="programlisting">#define xmlSecTransformAes192CbcId              xmlSecTransformAes192CbcGetKlass()
+</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMAES256CBCID"></a><h3>xmlSecTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformAes256CbcId              xmlSecTransformAes256CbcGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformAes256CbcId"></a><h3>xmlSecTransformAes256CbcId</h3>
+<pre class="programlisting">#define xmlSecTransformAes256CbcId              xmlSecTransformAes256CbcGetKlass()
+</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES128ID"></a><h3>xmlSecTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformKWAes128Id               xmlSecTransformKWAes128GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes128Id"></a><h3>xmlSecTransformKWAes128Id</h3>
+<pre class="programlisting">#define xmlSecTransformKWAes128Id               xmlSecTransformKWAes128GetKlass()
+</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES192ID"></a><h3>xmlSecTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformKWAes192Id               xmlSecTransformKWAes192GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes192Id"></a><h3>xmlSecTransformKWAes192Id</h3>
+<pre class="programlisting">#define xmlSecTransformKWAes192Id               xmlSecTransformKWAes192GetKlass()
+</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWAES256ID"></a><h3>xmlSecTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformKWAes256Id               xmlSecTransformKWAes256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWAes256Id"></a><h3>xmlSecTransformKWAes256Id</h3>
+<pre class="programlisting">#define xmlSecTransformKWAes256Id               xmlSecTransformKWAes256GetKlass()
+</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDES3CBCID"></a><h3>xmlSecTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDes3CbcId                xmlSecTransformDes3CbcGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDes3CbcId"></a><h3>xmlSecTransformDes3CbcId</h3>
+<pre class="programlisting">#define xmlSecTransformDes3CbcId                xmlSecTransformDes3CbcGetKlass()
+</pre>
 <p>The Triple DES encryption transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKWDES3ID"></a><h3>xmlSecTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformKWDes3Id                 xmlSecTransformKWDes3GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKWDes3Id"></a><h3>xmlSecTransformKWDes3Id</h3>
+<pre class="programlisting">#define xmlSecTransformKWDes3Id                 xmlSecTransformKWDes3GetKlass()
+</pre>
 <p>The DES3 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDSASHA1ID"></a><h3>xmlSecTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDsaSha1Id                xmlSecTransformDsaSha1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDsaSha1Id"></a><h3>xmlSecTransformDsaSha1Id</h3>
+<pre class="programlisting">#define xmlSecTransformDsaSha1Id                xmlSecTransformDsaSha1GetKlass()
+</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDSASHA256ID"></a><h3>xmlSecTransformDsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDsaSha256Id              xmlSecTransformDsaSha256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDsaSha256Id"></a><h3>xmlSecTransformDsaSha256Id</h3>
+<pre class="programlisting">#define xmlSecTransformDsaSha256Id              xmlSecTransformDsaSha256GetKlass()
+</pre>
 <p>The DSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA1ID"></a><h3>xmlSecTransformEcdsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformEcdsaSha1Id              xmlSecTransformEcdsaSha1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha1Id"></a><h3>xmlSecTransformEcdsaSha1Id</h3>
+<pre class="programlisting">#define xmlSecTransformEcdsaSha1Id              xmlSecTransformEcdsaSha1GetKlass()
+</pre>
 <p>The ECDSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA224ID"></a><h3>xmlSecTransformEcdsaSha224Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformEcdsaSha224Id            xmlSecTransformEcdsaSha224GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha224Id"></a><h3>xmlSecTransformEcdsaSha224Id</h3>
+<pre class="programlisting">#define xmlSecTransformEcdsaSha224Id            xmlSecTransformEcdsaSha224GetKlass()
+</pre>
 <p>The ECDSA-SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA256ID"></a><h3>xmlSecTransformEcdsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformEcdsaSha256Id            xmlSecTransformEcdsaSha256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha256Id"></a><h3>xmlSecTransformEcdsaSha256Id</h3>
+<pre class="programlisting">#define xmlSecTransformEcdsaSha256Id            xmlSecTransformEcdsaSha256GetKlass()
+</pre>
 <p>The ECDSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA384ID"></a><h3>xmlSecTransformEcdsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformEcdsaSha384Id            xmlSecTransformEcdsaSha384GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha384Id"></a><h3>xmlSecTransformEcdsaSha384Id</h3>
+<pre class="programlisting">#define xmlSecTransformEcdsaSha384Id            xmlSecTransformEcdsaSha384GetKlass()
+</pre>
 <p>The ECDS-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMECDSASHA512ID"></a><h3>xmlSecTransformEcdsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformEcdsaSha512Id            xmlSecTransformEcdsaSha512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEcdsaSha512Id"></a><h3>xmlSecTransformEcdsaSha512Id</h3>
+<pre class="programlisting">#define xmlSecTransformEcdsaSha512Id            xmlSecTransformEcdsaSha512GetKlass()
+</pre>
 <p>The ECDSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOST2001GOSTR3411-94ID"></a><h3>xmlSecTransformGost2001GostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGost2001GostR3411_94Id           xmlSecTransformGost2001GostR3411_94GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGost2001GostR3411-94Id"></a><h3>xmlSecTransformGost2001GostR3411_94Id</h3>
+<pre class="programlisting">#define xmlSecTransformGost2001GostR3411_94Id           xmlSecTransformGost2001GostR3411_94GetKlass()
+</pre>
 <p>The GOST2001-GOSTR3411_94 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-256ID"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGostR3410_2012GostR3411_2012_256Id   xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-256Id"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_256Id</h3>
+<pre class="programlisting">#define xmlSecTransformGostR3410_2012GostR3411_2012_256Id   xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass()
+</pre>
 <p>The GOST R 34.10-2012 - GOST R 34.11-2012 256 bit signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3410-2012GOSTR3411-2012-512ID"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGostR3410_2012GostR3411_2012_512Id   xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3410-2012GostR3411-2012-512Id"></a><h3>xmlSecTransformGostR3410_2012GostR3411_2012_512Id</h3>
+<pre class="programlisting">#define xmlSecTransformGostR3410_2012GostR3411_2012_512Id   xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass()
+</pre>
 <p>The GOST R 34.10-2012 - GOST R 34.11-2012 512 bit signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACMD5ID"></a><h3>xmlSecTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacMd5Id                xmlSecTransformHmacMd5GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacMd5Id"></a><h3>xmlSecTransformHmacMd5Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacMd5Id                xmlSecTransformHmacMd5GetKlass()
+</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACRIPEMD160ID"></a><h3>xmlSecTransformHmacRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacRipemd160Id          xmlSecTransformHmacRipemd160GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacRipemd160Id"></a><h3>xmlSecTransformHmacRipemd160Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacRipemd160Id          xmlSecTransformHmacRipemd160GetKlass()
+</pre>
 <p>The HMAC with RipeMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA1ID"></a><h3>xmlSecTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacSha1Id               xmlSecTransformHmacSha1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha1Id"></a><h3>xmlSecTransformHmacSha1Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacSha1Id               xmlSecTransformHmacSha1GetKlass()
+</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA224ID"></a><h3>xmlSecTransformHmacSha224Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacSha224Id             xmlSecTransformHmacSha224GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha224Id"></a><h3>xmlSecTransformHmacSha224Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacSha224Id             xmlSecTransformHmacSha224GetKlass()
+</pre>
 <p>The HMAC with SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA256ID"></a><h3>xmlSecTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacSha256Id             xmlSecTransformHmacSha256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha256Id"></a><h3>xmlSecTransformHmacSha256Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacSha256Id             xmlSecTransformHmacSha256GetKlass()
+</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA384ID"></a><h3>xmlSecTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacSha384Id             xmlSecTransformHmacSha384GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha384Id"></a><h3>xmlSecTransformHmacSha384Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacSha384Id             xmlSecTransformHmacSha384GetKlass()
+</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMHMACSHA512ID"></a><h3>xmlSecTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformHmacSha512Id             xmlSecTransformHmacSha512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformHmacSha512Id"></a><h3>xmlSecTransformHmacSha512Id</h3>
+<pre class="programlisting">#define xmlSecTransformHmacSha512Id             xmlSecTransformHmacSha512GetKlass()
+</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMD5ID"></a><h3>xmlSecTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformMd5Id                    xmlSecTransformMd5GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformMd5Id"></a><h3>xmlSecTransformMd5Id</h3>
+<pre class="programlisting">#define xmlSecTransformMd5Id                    xmlSecTransformMd5GetKlass()
+</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRIPEMD160ID"></a><h3>xmlSecTransformRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRipemd160Id              xmlSecTransformRipemd160GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRipemd160Id"></a><h3>xmlSecTransformRipemd160Id</h3>
+<pre class="programlisting">#define xmlSecTransformRipemd160Id              xmlSecTransformRipemd160GetKlass()
+</pre>
 <p>The RIPEMD160 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAMD5ID"></a><h3>xmlSecTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaMd5Id                 xmlSecTransformRsaMd5GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaMd5Id"></a><h3>xmlSecTransformRsaMd5Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaMd5Id                 xmlSecTransformRsaMd5GetKlass()
+</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSARIPEMD160ID"></a><h3>xmlSecTransformRsaRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaRipemd160Id           xmlSecTransformRsaRipemd160GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaRipemd160Id"></a><h3>xmlSecTransformRsaRipemd160Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaRipemd160Id           xmlSecTransformRsaRipemd160GetKlass()
+</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA1ID"></a><h3>xmlSecTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaSha1Id                xmlSecTransformRsaSha1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha1Id"></a><h3>xmlSecTransformRsaSha1Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaSha1Id                xmlSecTransformRsaSha1GetKlass()
+</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA224ID"></a><h3>xmlSecTransformRsaSha224Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaSha224Id              xmlSecTransformRsaSha224GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha224Id"></a><h3>xmlSecTransformRsaSha224Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaSha224Id              xmlSecTransformRsaSha224GetKlass()
+</pre>
 <p>The RSA-SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA256ID"></a><h3>xmlSecTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaSha256Id              xmlSecTransformRsaSha256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha256Id"></a><h3>xmlSecTransformRsaSha256Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaSha256Id              xmlSecTransformRsaSha256GetKlass()
+</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA384ID"></a><h3>xmlSecTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaSha384Id              xmlSecTransformRsaSha384GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha384Id"></a><h3>xmlSecTransformRsaSha384Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaSha384Id              xmlSecTransformRsaSha384GetKlass()
+</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSASHA512ID"></a><h3>xmlSecTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaSha512Id              xmlSecTransformRsaSha512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaSha512Id"></a><h3>xmlSecTransformRsaSha512Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaSha512Id              xmlSecTransformRsaSha512GetKlass()
+</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAPKCS1ID"></a><h3>xmlSecTransformRsaPkcs1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaPkcs1Id               xmlSecTransformRsaPkcs1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaPkcs1Id"></a><h3>xmlSecTransformRsaPkcs1Id</h3>
+<pre class="programlisting">#define xmlSecTransformRsaPkcs1Id               xmlSecTransformRsaPkcs1GetKlass()
+</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRSAOAEPID"></a><h3>xmlSecTransformRsaOaepId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformRsaOaepId                xmlSecTransformRsaOaepGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRsaOaepId"></a><h3>xmlSecTransformRsaOaepId</h3>
+<pre class="programlisting">#define xmlSecTransformRsaOaepId                xmlSecTransformRsaOaepGetKlass()
+</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-94ID"></a><h3>xmlSecTransformGostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGostR3411_94Id                   xmlSecTransformGostR3411_94GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-94Id"></a><h3>xmlSecTransformGostR3411_94Id</h3>
+<pre class="programlisting">#define xmlSecTransformGostR3411_94Id                   xmlSecTransformGostR3411_94GetKlass()
+</pre>
 <p>The GOSTR3411_94 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-2012-256ID"></a><h3>xmlSecTransformGostR3411_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGostR3411_2012_256Id     xmlSecTransformGostR3411_2012_256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-2012-256Id"></a><h3>xmlSecTransformGostR3411_2012_256Id</h3>
+<pre class="programlisting">#define xmlSecTransformGostR3411_2012_256Id     xmlSecTransformGostR3411_2012_256GetKlass()
+</pre>
 <p>The GOST R 34.11-2012 256 bit digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGOSTR3411-2012-512ID"></a><h3>xmlSecTransformGostR3411_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformGostR3411_2012_512Id     xmlSecTransformGostR3411_2012_512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGostR3411-2012-512Id"></a><h3>xmlSecTransformGostR3411_2012_512Id</h3>
+<pre class="programlisting">#define xmlSecTransformGostR3411_2012_512Id     xmlSecTransformGostR3411_2012_512GetKlass()
+</pre>
 <p>The GOST R 34.11-2012 512 bit digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA1ID"></a><h3>xmlSecTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformSha1Id                   xmlSecTransformSha1GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha1Id"></a><h3>xmlSecTransformSha1Id</h3>
+<pre class="programlisting">#define xmlSecTransformSha1Id                   xmlSecTransformSha1GetKlass()
+</pre>
 <p>The SHA1 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA224ID"></a><h3>xmlSecTransformSha224Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformSha224Id                 xmlSecTransformSha224GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha224Id"></a><h3>xmlSecTransformSha224Id</h3>
+<pre class="programlisting">#define xmlSecTransformSha224Id                 xmlSecTransformSha224GetKlass()
+</pre>
 <p>The SHA224 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA256ID"></a><h3>xmlSecTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformSha256Id                 xmlSecTransformSha256GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha256Id"></a><h3>xmlSecTransformSha256Id</h3>
+<pre class="programlisting">#define xmlSecTransformSha256Id                 xmlSecTransformSha256GetKlass()
+</pre>
 <p>The SHA256 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA384ID"></a><h3>xmlSecTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformSha384Id                 xmlSecTransformSha384GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha384Id"></a><h3>xmlSecTransformSha384Id</h3>
+<pre class="programlisting">#define xmlSecTransformSha384Id                 xmlSecTransformSha384GetKlass()
+</pre>
 <p>The SHA384 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSHA512ID"></a><h3>xmlSecTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformSha512Id                 xmlSecTransformSha512GetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSha512Id"></a><h3>xmlSecTransformSha512Id</h3>
+<pre class="programlisting">#define xmlSecTransformSha512Id                 xmlSecTransformSha512GetKlass()
+</pre>
 <p>The SHA512 digest transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-ref.html"><b><<< XML Security Core Library API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-base64.html"><b>base64 >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-base64.html b/docs/api/xmlsec-base64.html
index 485f2e4..690eb4b 100644
--- a/docs/api/xmlsec-base64.html
+++ b/docs/api/xmlsec-base64.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>base64</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-app.html">
-<link rel="NEXT" title="bn" href="xmlsec-bn.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>base64: 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-app.html" title="app">
+<link rel="next" href="xmlsec-bn.html" title="bn">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,476 +73,483 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-base64.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-bn.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-BASE64"></a>base64</h1>
-<div class="REFNAMEDIV">
-<a name="AEN3398"></a><h2>Name</h2>base64 -- Base64 encoding/decoding functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BASE64.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3403"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-base64"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-base64.top_of_page"></a>base64</span></h2>
+<p>base64 — Base64 encoding/decoding functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-base64.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64GETDEFAULTLINESIZE">xmlSecBase64GetDefaultLineSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64GetDefaultLineSize" title="xmlSecBase64GetDefaultLineSize ()">xmlSecBase64GetDefaultLineSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64SETDEFAULTLINESIZE">xmlSecBase64SetDefaultLineSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64SetDefaultLineSize" title="xmlSecBase64SetDefaultLineSize ()">xmlSecBase64SetDefaultLineSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecBase64CtxPtr</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXCREATE">xmlSecBase64CtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBase64CtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxCreate" title="xmlSecBase64CtxCreate ()">xmlSecBase64CtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXDESTROY">xmlSecBase64CtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxDestroy" title="xmlSecBase64CtxDestroy ()">xmlSecBase64CtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXINITIALIZE">xmlSecBase64CtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxInitialize" title="xmlSecBase64CtxInitialize ()">xmlSecBase64CtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXFINALIZE">xmlSecBase64CtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxFinalize" title="xmlSecBase64CtxFinalize ()">xmlSecBase64CtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXUPDATE">xmlSecBase64CtxUpdate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxUpdate" title="xmlSecBase64CtxUpdate ()">xmlSecBase64CtxUpdate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64CTXFINAL">xmlSecBase64CtxFinal</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64CtxFinal" title="xmlSecBase64CtxFinal ()">xmlSecBase64CtxFinal</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64ENCODE">xmlSecBase64Encode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64Encode" title="xmlSecBase64Encode ()">xmlSecBase64Encode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-base64.html#XMLSECBASE64DECODE">xmlSecBase64Decode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-base64.html#xmlSecBase64Decode" title="xmlSecBase64Decode ()">xmlSecBase64Decode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BASE64.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3478"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-base64.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-base64.html#XMLSEC-BASE64-LINESIZE:CAPS">XMLSEC_BASE64_LINESIZE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-base64.html#XMLSEC-BASE64-LINESIZE:CAPS" title="XMLSEC_BASE64_LINESIZE">XMLSEC_BASE64_LINESIZE</a></td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BASE64.DESCRIPTION"></a><h2>Description</h2>
-<p>Base64 encoding/decoding functions.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BASE64.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECBASE64GETDEFAULTLINESIZE"></a><h3>xmlSecBase64GetDefaultLineSize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBase64GetDefaultLineSize (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-base64.description"></a><h2>Description</h2>
+<p>
+Base64 encoding/decoding functions.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-base64.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecBase64GetDefaultLineSize"></a><h3>xmlSecBase64GetDefaultLineSize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBase64GetDefaultLineSize (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the current default line size.</p>
-<div class="REFSECT3">
-<a name="AEN3500"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64GetDefaultLineSize.returns"></a><h4>Returns</h4>
 <p> the current default line size.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64SETDEFAULTLINESIZE"></a><h3>xmlSecBase64SetDefaultLineSize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBase64SetDefaultLineSize (<code class="PARAMETER"><font><span class="TYPE">int</span></font> columns</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64SetDefaultLineSize"></a><h3>xmlSecBase64SetDefaultLineSize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBase64SetDefaultLineSize (<em class="parameter"><code><font><span class="type">int</span></font> columns</code></em>);</pre>
 <p>Sets the current default line size.</p>
-<div class="REFSECT3">
-<a name="AEN3514"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3516"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64SetDefaultLineSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>columns</p></td>
-<td><p>number of columns</p></td>
-<td> </td>
+<td class="parameter_name"><p>columns</p></td>
+<td class="parameter_description"><p>number of columns</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXCREATE"></a><h3>xmlSecBase64CtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecBase64CtxPtr</span></font>
-xmlSecBase64CtxCreate (<code class="PARAMETER"><font><span class="TYPE">int</span></font> encode</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">int</span></font> columns</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64CtxCreate"></a><h3>xmlSecBase64CtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBase64CtxPtr</span></font>
+xmlSecBase64CtxCreate (<em class="parameter"><code><font><span class="type">int</span></font> encode</code></em>,
+                       <em class="parameter"><code><font><span class="type">int</span></font> columns</code></em>);</pre>
 <p>Allocates and initializes new base64 context.</p>
-<div class="REFSECT3">
-<a name="AEN3539"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3541"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encode</p></td>
-<td><p>the encode/decode flag (1 - encode, 0 - decode)</p></td>
-<td> </td>
+<td class="parameter_name"><p>encode</p></td>
+<td class="parameter_description"><p>the encode/decode flag (1 - encode, 0 - decode)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>columns</p></td>
-<td><p>the max line length.</p></td>
-<td> </td>
+<td class="parameter_name"><p>columns</p></td>
+<td class="parameter_description"><p>the max line length.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN3556"></a><h4>Returns</h4>
-<p> a pointer to newly created <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure
+<div class="refsect3">
+<a name="xmlSecBase64CtxCreate.returns"></a><h4>Returns</h4>
+<p> a pointer to newly created <font><span class="type">xmlSecBase64Ctx</span></font> structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXDESTROY"></a><h3>xmlSecBase64CtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBase64CtxDestroy (<code class="PARAMETER"><font><span class="TYPE">xmlSecBase64CtxPtr</span></font> ctx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64CtxDestroy"></a><h3>xmlSecBase64CtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBase64CtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecBase64CtxPtr</span></font> ctx</code></em>);</pre>
 <p>Destroys base64 context.</p>
-<div class="REFSECT3">
-<a name="AEN3572"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3574"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to <font><span class="type">xmlSecBase64Ctx</span></font> structure.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXINITIALIZE"></a><h3>xmlSecBase64CtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBase64CtxInitialize (<code class="PARAMETER"><font><span class="TYPE">xmlSecBase64CtxPtr</span></font> ctx</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">int</span></font> encode</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">int</span></font> columns</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64CtxInitialize"></a><h3>xmlSecBase64CtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBase64CtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecBase64CtxPtr</span></font> ctx</code></em>,
+                           <em class="parameter"><code><font><span class="type">int</span></font> encode</code></em>,
+                           <em class="parameter"><code><font><span class="type">int</span></font> columns</code></em>);</pre>
 <p>Initializes new base64 context.</p>
-<div class="REFSECT3">
-<a name="AEN3602"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3604"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure,</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to <font><span class="type">xmlSecBase64Ctx</span></font> structure,</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>encode</p></td>
-<td><p>the encode/decode flag (1 - encode, 0 - decode)</p></td>
-<td> </td>
+<td class="parameter_name"><p>encode</p></td>
+<td class="parameter_description"><p>the encode/decode flag (1 - encode, 0 - decode)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>columns</p></td>
-<td><p>the max line length.</p></td>
-<td> </td>
+<td class="parameter_name"><p>columns</p></td>
+<td class="parameter_description"><p>the max line length.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN3627"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64CtxInitialize.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXFINALIZE"></a><h3>xmlSecBase64CtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBase64CtxFinalize (<code class="PARAMETER"><font><span class="TYPE">xmlSecBase64CtxPtr</span></font> ctx</code>);</pre>
-<p>Frees all the resources allocated by <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecBase64CtxFinalize"></a><h3>xmlSecBase64CtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBase64CtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecBase64CtxPtr</span></font> ctx</code></em>);</pre>
+<p>Frees all the resources allocated by <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN3642"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3644"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure,</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to <font><span class="type">xmlSecBase64Ctx</span></font> structure,</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXUPDATE"></a><h3>xmlSecBase64CtxUpdate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBase64CtxUpdate (<code class="PARAMETER"><font><span class="TYPE">xmlSecBase64CtxPtr</span></font> ctx</code>,
-                       <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *in</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> inSize</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *out</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> outSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64CtxUpdate"></a><h3>xmlSecBase64CtxUpdate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBase64CtxUpdate (<em class="parameter"><code><font><span class="type">xmlSecBase64CtxPtr</span></font> ctx</code></em>,
+                       <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *in</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> inSize</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *out</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> outSize</code></em>);</pre>
 <p>Encodes or decodes the next piece of data from input buffer.</p>
-<div class="REFSECT3">
-<a name="AEN3678"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3680"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxUpdate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to <font><span class="type">xmlSecBase64Ctx</span></font> structure</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>in</p></td>
-<td><p>the input buffer</p></td>
-<td> </td>
+<td class="parameter_name"><p>in</p></td>
+<td class="parameter_description"><p>the input buffer</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>inSize</p></td>
-<td><p>the input buffer size</p></td>
-<td> </td>
+<td class="parameter_name"><p>inSize</p></td>
+<td class="parameter_description"><p>the input buffer size</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>out</p></td>
-<td><p>the output buffer</p></td>
-<td> </td>
+<td class="parameter_name"><p>out</p></td>
+<td class="parameter_description"><p>the output buffer</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>outSize</p></td>
-<td><p>the output buffer size</p></td>
-<td> </td>
+<td class="parameter_name"><p>outSize</p></td>
+<td class="parameter_description"><p>the output buffer size</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN3715"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64CtxUpdate.returns"></a><h4>Returns</h4>
 <p> the number of bytes written to output buffer or
 -1 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64CTXFINAL"></a><h3>xmlSecBase64CtxFinal ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBase64CtxFinal (<code class="PARAMETER"><font><span class="TYPE">xmlSecBase64CtxPtr</span></font> ctx</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *out</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> outSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64CtxFinal"></a><h3>xmlSecBase64CtxFinal ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBase64CtxFinal (<em class="parameter"><code><font><span class="type">xmlSecBase64CtxPtr</span></font> ctx</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *out</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> outSize</code></em>);</pre>
 <p>Encodes or decodes the last piece of data stored in the context
 and finalizes the result.</p>
-<div class="REFSECT3">
-<a name="AEN3735"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3737"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64CtxFinal.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to <font><span class="TYPE">xmlSecBase64Ctx</span></font> structure</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to <font><span class="type">xmlSecBase64Ctx</span></font> structure</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>out</p></td>
-<td><p>the output buffer</p></td>
-<td> </td>
+<td class="parameter_name"><p>out</p></td>
+<td class="parameter_description"><p>the output buffer</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>outSize</p></td>
-<td><p>the output buffer size</p></td>
-<td> </td>
+<td class="parameter_name"><p>outSize</p></td>
+<td class="parameter_description"><p>the output buffer size</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN3760"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64CtxFinal.returns"></a><h4>Returns</h4>
 <p> the number of bytes written to output buffer or
 -1 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64ENCODE"></a><h3>xmlSecBase64Encode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecBase64Encode (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> len</code>,
-                    <code class="PARAMETER"><font><span class="TYPE">int</span></font> columns</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64Encode"></a><h3>xmlSecBase64Encode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
+xmlSecBase64Encode (<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                    <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> len</code></em>,
+                    <em class="parameter"><code><font><span class="type">int</span></font> columns</code></em>);</pre>
 <p>Encodes the data from input buffer and allocates the string for the result.
 The caller is responsible for freeing returned buffer using
-<font><code class="FUNCTION">xmlFree()</code></font> function.</p>
-<div class="REFSECT3">
-<a name="AEN3782"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3784"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<font><code class="function">xmlFree()</code></font> function.</p>
+<div class="refsect3">
+<a name="xmlSecBase64Encode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the input buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the input buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>len</p></td>
-<td><p>the input buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>the input buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>columns</p></td>
-<td><p>the output max line length (if 0 then no line breaks
+<td class="parameter_name"><p>columns</p></td>
+<td class="parameter_description"><p>the output max line length (if 0 then no line breaks
 would be inserted)</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN3805"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64Encode.returns"></a><h4>Returns</h4>
 <p> newly allocated string with base64 encoded data
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBASE64DECODE"></a><h3>xmlSecBase64Decode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBase64Decode (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> len</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBase64Decode"></a><h3>xmlSecBase64Decode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBase64Decode (<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#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                    <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> len</code></em>);</pre>
 <p>Decodes input base64 encoded string and puts result into
 the output buffer.</p>
-<div class="REFSECT3">
-<a name="AEN3825"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3827"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBase64Decode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>str</p></td>
-<td><p>the input buffer with base64 encoded string</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the input buffer with base64 encoded string</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the output buffer</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the output buffer</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>len</p></td>
-<td><p>the output buffer size</p></td>
-<td> </td>
+<td class="parameter_name"><p>len</p></td>
+<td class="parameter_description"><p>the output buffer size</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN3848"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBase64Decode.returns"></a><h4>Returns</h4>
 <p> the number of bytes written to the output buffer or
 a negative value if an error occurs</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-BASE64.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-base64.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-BASE64-LINESIZE:CAPS"></a><h3>XMLSEC_BASE64_LINESIZE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_BASE64_LINESIZE                          64</pre>
+<pre class="programlisting">#define XMLSEC_BASE64_LINESIZE                          64
+</pre>
 <p>The default maximum base64 encoded line size.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-bn.html"><b>bn >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-bn.html b/docs/api/xmlsec-bn.html
index ddc5c9c..a935f72 100644
--- a/docs/api/xmlsec-bn.html
+++ b/docs/api/xmlsec-bn.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>bn</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="base64" href="xmlsec-base64.html">
-<link rel="NEXT" title="buffer" href="xmlsec-buffer.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<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.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1118 +73,1123 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<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="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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>
-<h1>
-<a name="XMLSEC-BN"></a>bn</h1>
-<div class="REFNAMEDIV">
-<a name="AEN3864"></a><h2>Name</h2>bn -- Big numbers support functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BN.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN3869"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<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.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecBnPtr</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNCREATE">xmlSecBnCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNDESTROY">xmlSecBnDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNINITIALIZE">xmlSecBnInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNFINALIZE">xmlSecBnFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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>
-<a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="RETURNVALUE">xmlSecByte</span></a> *</td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNGETDATA">xmlSecBnGetData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNSETDATA">xmlSecBnSetData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNGETSIZE">xmlSecBnGetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNZERO">xmlSecBnZero</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNFROMSTRING">xmlSecBnFromString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNTOSTRING">xmlSecBnToString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNFROMHEXSTRING">xmlSecBnFromHexString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNTOHEXSTRING">xmlSecBnToHexString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNFROMDECSTRING">xmlSecBnFromDecString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNTODECSTRING">xmlSecBnToDecString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNMUL">xmlSecBnMul</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNDIV">xmlSecBnDiv</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNADD">xmlSecBnAdd</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNREVERSE">xmlSecBnReverse</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNCOMPARE">xmlSecBnCompare</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNCOMPAREREVERSE">xmlSecBnCompareReverse</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNGETNODEVALUE">xmlSecBnGetNodeValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNSETNODEVALUE">xmlSecBnSetNodeValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-bn.html#XMLSECBNBLOBSETNODEVALUE">xmlSecBnBlobSetNodeValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BN.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4035"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</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 width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>enum</td>
-<td><a href="xmlsec-bn.html#XMLSECBNFORMAT">xmlSecBnFormat</a></td>
+<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>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BN.DESCRIPTION"></a><h2>Description</h2>
-<p>Big numbers support functions.</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 (<code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-bn.description"></a><h2>Description</h2>
+<p>
+Big numbers support functions.
+</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 <code class="PARAMETER">xmlSecBnDestroy</code>
+by calling <em class="parameter"><code>xmlSecBnDestroy</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN4059"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4061"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>size</p></td>
-<td><p>the initial allocated BN size.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4070"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Destroys <code class="PARAMETER">bn</code>
- object created with <code class="PARAMETER">xmlSecBnCreate</code>
+<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="AEN4086"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4088"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
+<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 <code class="PARAMETER">xmlSecBnFinalize</code>
+by calling <em class="parameter"><code>xmlSecBnFinalize</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN4112"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4114"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>size</p></td>
-<td><p>the initial allocated BN size.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4129"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Destroys <code class="PARAMETER">bn</code>
- object created with <code class="PARAMETER">xmlSecBnInitialize</code>
+<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="AEN4145"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4147"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBNGETDATA"></a><h3>xmlSecBnGetData ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="RETURNVALUE">xmlSecByte</span></a> *
-xmlSecBnGetData (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Gets pointer to the binary <code class="PARAMETER">bn</code>
+<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="AEN4168"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4170"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnGetData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4179"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                 <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Sets the value of <code class="PARAMETER">bn</code>
- to <code class="PARAMETER">data</code>
+<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="AEN4201"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4203"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnSetData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>data</p></td>
-<td><p>the pointer to new BN binary data.</p></td>
-<td> </td>
+<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><p>size</p></td>
-<td><p>the size of new BN data.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4224"></a><h4>Returns</h4>
+<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 href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecBnGetSize (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Gets the size of binary data in <code class="PARAMETER">bn</code>
+<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="AEN4239"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4241"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnGetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4250"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Sets the value of <code class="PARAMETER">bn</code>
+<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="AEN4265"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4267"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnZero.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                    <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> base</code>);</pre>
-<p>Reads <code class="PARAMETER">bn</code>
- from string <code class="PARAMETER">str</code>
- assuming it has base <code class="PARAMETER">base</code>
+<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="AEN4296"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4298"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnFromString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>str</p></td>
-<td><p>the string with BN.</p></td>
-<td> </td>
+<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><p>base</p></td>
-<td><p>the base for <code class="PARAMETER">str</code>
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4320"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> base</code>);</pre>
-<p>Writes <code class="PARAMETER">bn</code>
- to string with base <code class="PARAMETER">base</code>
+<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 <code class="PARAMETER">xmlFree</code>
+freeing returned string with <em class="parameter"><code>xmlFree</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN4340"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4342"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnToString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>base</p></td>
-<td><p>the base for returned string.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4357"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                       <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
-<p>Reads <code class="PARAMETER">bn</code>
- from hex string <code class="PARAMETER">str</code>
+<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="AEN4376"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4378"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnFromHexString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>str</p></td>
-<td><p>the string with BN.</p></td>
-<td> </td>
+<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>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4393"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Writes <code class="PARAMETER">bn</code>
+<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 <code class="PARAMETER">xmlFree</code>
+freeing returned string with <em class="parameter"><code>xmlFree</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN4409"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4411"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnToHexString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4420"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                       <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
-<p>Reads <code class="PARAMETER">bn</code>
- from decimal string <code class="PARAMETER">str</code>
+<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="AEN4439"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4441"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnFromDecString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>str</p></td>
-<td><p>the string with BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4456"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Writes <code class="PARAMETER">bn</code>
+<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 <code class="PARAMETER">xmlFree</code>
+freeing returned string with <em class="parameter"><code>xmlFree</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN4472"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4474"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnToDecString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4483"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> multiplier</code>);</pre>
-<p>Multiplies <code class="PARAMETER">bn</code>
- with <code class="PARAMETER">multiplier</code>
+<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="AEN4502"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4504"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnMul.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>multiplier</p></td>
-<td><p>the multiplier.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4519"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> divider</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> *mod</code>);</pre>
-<p>Divides <code class="PARAMETER">bn</code>
- by <code class="PARAMETER">divider</code>
- and places modulus into <code class="PARAMETER">mod</code>
+<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="AEN4542"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4544"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnDiv.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>divider</p></td>
-<td><p>the divider</p></td>
-<td> </td>
+<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><p>mod</p></td>
-<td><p>the pointer for modulus result.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4565"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> delta</code>);</pre>
-<p>Adds <code class="PARAMETER">delta</code>
- to <code class="PARAMETER">bn</code>
+<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="AEN4584"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4586"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnAdd.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>delta</p></td>
-<td><p>the delta.</p></td>
-<td> </td>
+<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>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4601"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>);</pre>
-<p>Reverses bytes order in <code class="PARAMETER">bn</code>
+<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="AEN4616"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4618"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnReverse.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4627"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                 <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>);</pre>
-<p>Compares the <code class="PARAMETER">bn</code>
- with <code class="PARAMETER">data</code>
+<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="AEN4649"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4651"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnCompare.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>data</p></td>
-<td><p>the data to compare BN to.</p></td>
-<td> </td>
+<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><p>dataSize</p></td>
-<td><p>the <code class="PARAMETER">data</code>
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4673"></a><h4>Returns</h4>
-<p> 0 if data is equal, negative value if <code class="PARAMETER">bn</code>
-is less or positive value if <code class="PARAMETER">bn</code>
-is greater than <code class="PARAMETER">data</code>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                        <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>);</pre>
-<p>Compares the <code class="PARAMETER">bn</code>
- with reverse <code class="PARAMETER">data</code>
+<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="AEN4698"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4700"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnCompareReverse.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>data</p></td>
-<td><p>the data to compare BN to.</p></td>
-<td> </td>
+<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><p>dataSize</p></td>
-<td><p>the <code class="PARAMETER">data</code>
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4722"></a><h4>Returns</h4>
-<p> 0 if data is equal, negative value if <code class="PARAMETER">bn</code>
-is less or positive value if <code class="PARAMETER">bn</code>
-is greater than <code class="PARAMETER">data</code>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                      <code class="PARAMETER"><a href="xmlsec-bn.html#XMLSECBNFORMAT"><span class="TYPE">xmlSecBnFormat</span></a> format</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">int</span></font> reverse</code>);</pre>
-<p>Converts the node content from <code class="PARAMETER">format</code>
- to <code class="PARAMETER">bn</code>
+<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="AEN4750"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4752"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnGetNodeValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>cur</p></td>
-<td><p>the poitner to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the poitner to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the BN format.</p></td>
-<td> </td>
+<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><p>reverse</p></td>
-<td><p>if set then reverse read buffer after reading.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4779"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER"><font><span class="TYPE">xmlSecBnPtr</span></font> bn</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                      <code class="PARAMETER"><a href="xmlsec-bn.html#XMLSECBNFORMAT"><span class="TYPE">xmlSecBnFormat</span></a> format</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">int</span></font> reverse</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">int</span></font> addLineBreaks</code>);</pre>
-<p>Converts the <code class="PARAMETER">bn</code>
+<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="AEN4806"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4808"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnSetNodeValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bn</p></td>
-<td><p>the pointer to BN.</p></td>
-<td> </td>
+<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><p>cur</p></td>
-<td><p>the poitner to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the poitner to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the BN format.</p></td>
-<td> </td>
+<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><p>reverse</p></td>
-<td><p>the flag that indicates whether to reverse the buffer before writing.</p></td>
-<td> </td>
+<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><p>addLineBreaks</p></td>
-<td><p>the flag; it is equal to 1 then linebreaks will be added before and after new buffer content.</p></td>
-<td> </td>
+<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>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN4841"></a><h4>Returns</h4>
+<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 (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                          <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                          <code class="PARAMETER"><a href="xmlsec-bn.html#XMLSECBNFORMAT"><span class="TYPE">xmlSecBnFormat</span></a> format</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">int</span></font> reverse</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">int</span></font> addLineBreaks</code>);</pre>
-<p>Converts the <code class="PARAMETER">blob</code>
+<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="AEN4871"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4873"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnBlobSetNodeValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to BN blob.</p></td>
-<td> </td>
+<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><p>dataSize</p></td>
-<td><p>the size of BN blob.</p></td>
-<td> </td>
+<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><p>cur</p></td>
-<td><p>the poitner to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the poitner to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the BN format.</p></td>
-<td> </td>
+<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><p>reverse</p></td>
-<td><p>the flag that indicates whether to reverse the buffer before writing.</p></td>
-<td> </td>
+<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><p>addLineBreaks</p></td>
-<td><p>if the flag is equal to 1 then
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN4912"></a><h4>Returns</h4>
+<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>
+<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="AEN4922"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4924"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBnFormat.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecBnBase64</p></td>
-<td><p>the base64 decoded binary blob.</p></td>
-<td> </td>
+<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><p>xmlSecBnHex</p></td>
-<td><p>the hex number.</p></td>
-<td> </td>
+<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><p>xmlSecBnDec</p></td>
-<td><p>the decimal number.</p></td>
-<td> </td>
+<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>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-base64.html"><b><<< base64</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-buffer.html"><b>buffer >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-buffer.html b/docs/api/xmlsec-buffer.html
index c2425a3..99854a3 100644
--- a/docs/api/xmlsec-buffer.html
+++ b/docs/api/xmlsec-buffer.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>buffer</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="bn" href="xmlsec-bn.html">
-<link rel="NEXT" title="dl" href="xmlsec-dl.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>buffer: 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-bn.html" title="bn">
+<link rel="next" href="xmlsec-dl.html" title="dl">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,948 +73,953 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-bn.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-buffer.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-bn.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-dl.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-BUFFER"></a>buffer</h1>
-<div class="REFNAMEDIV">
-<a name="AEN4950"></a><h2>Name</h2>buffer -- Binary buffer implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BUFFER.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN4955"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-buffer"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-buffer.top_of_page"></a>buffer</span></h2>
+<p>buffer — Binary buffer implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-buffer.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERSETDEFAULTALLOCMODE">xmlSecBufferSetDefaultAllocMode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferSetDefaultAllocMode" title="xmlSecBufferSetDefaultAllocMode ()">xmlSecBufferSetDefaultAllocMode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERCREATE">xmlSecBufferCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferCreate" title="xmlSecBufferCreate ()">xmlSecBufferCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERDESTROY">xmlSecBufferDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferDestroy" title="xmlSecBufferDestroy ()">xmlSecBufferDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERINITIALIZE">xmlSecBufferInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferInitialize" title="xmlSecBufferInitialize ()">xmlSecBufferInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERFINALIZE">xmlSecBufferFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferFinalize" title="xmlSecBufferFinalize ()">xmlSecBufferFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="RETURNVALUE">xmlSecByte</span></a> *</td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERGETDATA">xmlSecBufferGetData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-buffer.html#xmlSecBufferGetData" title="xmlSecBufferGetData ()">xmlSecBufferGetData</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERSETDATA">xmlSecBufferSetData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferSetData" title="xmlSecBufferSetData ()">xmlSecBufferSetData</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERGETSIZE">xmlSecBufferGetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-buffer.html#xmlSecBufferGetSize" title="xmlSecBufferGetSize ()">xmlSecBufferGetSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERSETSIZE">xmlSecBufferSetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferSetSize" title="xmlSecBufferSetSize ()">xmlSecBufferSetSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERGETMAXSIZE">xmlSecBufferGetMaxSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-buffer.html#xmlSecBufferGetMaxSize" title="xmlSecBufferGetMaxSize ()">xmlSecBufferGetMaxSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERSETMAXSIZE">xmlSecBufferSetMaxSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferSetMaxSize" title="xmlSecBufferSetMaxSize ()">xmlSecBufferSetMaxSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFEREMPTY">xmlSecBufferEmpty</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferEmpty" title="xmlSecBufferEmpty ()">xmlSecBufferEmpty</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERAPPEND">xmlSecBufferAppend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferAppend" title="xmlSecBufferAppend ()">xmlSecBufferAppend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERPREPEND">xmlSecBufferPrepend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferPrepend" title="xmlSecBufferPrepend ()">xmlSecBufferPrepend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERREMOVEHEAD">xmlSecBufferRemoveHead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferRemoveHead" title="xmlSecBufferRemoveHead ()">xmlSecBufferRemoveHead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERREMOVETAIL">xmlSecBufferRemoveTail</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferRemoveTail" title="xmlSecBufferRemoveTail ()">xmlSecBufferRemoveTail</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERREADFILE">xmlSecBufferReadFile</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferReadFile" title="xmlSecBufferReadFile ()">xmlSecBufferReadFile</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERBASE64NODECONTENTREAD">xmlSecBufferBase64NodeContentRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferBase64NodeContentRead" title="xmlSecBufferBase64NodeContentRead ()">xmlSecBufferBase64NodeContentRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERBASE64NODECONTENTWRITE">xmlSecBufferBase64NodeContentWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferBase64NodeContentWrite" title="xmlSecBufferBase64NodeContentWrite ()">xmlSecBufferBase64NodeContentWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlOutputBufferPtr</span></font></td>
-<td>
-<a href="xmlsec-buffer.html#XMLSECBUFFERCREATEOUTPUTBUFFER">xmlSecBufferCreateOutputBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlOutputBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferCreateOutputBuffer" title="xmlSecBufferCreateOutputBuffer ()">xmlSecBufferCreateOutputBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BUFFER.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5100"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-buffer.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-buffer.html#XMLSECALLOCMODE">xmlSecAllocMode</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode">xmlSecAllocMode</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER">xmlSecBuffer</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer">xmlSecBuffer</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BUFFER.DESCRIPTION"></a><h2>Description</h2>
-<p>Binary buffer implementation.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-BUFFER.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERSETDEFAULTALLOCMODE"></a><h3>xmlSecBufferSetDefaultAllocMode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBufferSetDefaultAllocMode (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECALLOCMODE"><span class="TYPE">xmlSecAllocMode</span></a> defAllocMode</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> defInitialSize</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-buffer.description"></a><h2>Description</h2>
+<p>
+Binary buffer implementation.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-buffer.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecBufferSetDefaultAllocMode"></a><h3>xmlSecBufferSetDefaultAllocMode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBufferSetDefaultAllocMode (<em class="parameter"><code><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode"><span class="type">xmlSecAllocMode</span></a> defAllocMode</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> defInitialSize</code></em>);</pre>
 <p>Sets new global default allocation mode and minimal intial size.</p>
-<div class="REFSECT3">
-<a name="AEN5130"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5132"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferSetDefaultAllocMode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>defAllocMode</p></td>
-<td><p>the new default buffer allocation mode.</p></td>
-<td> </td>
+<td class="parameter_name"><p>defAllocMode</p></td>
+<td class="parameter_description"><p>the new default buffer allocation mode.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>defInitialSize</p></td>
-<td><p>the new default buffer minimal intial size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>defInitialSize</p></td>
+<td class="parameter_description"><p>the new default buffer minimal intial size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERCREATE"></a><h3>xmlSecBufferCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
-xmlSecBufferCreate (<code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferCreate"></a><h3>xmlSecBufferCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
+xmlSecBufferCreate (<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>Allocates and initalizes new memory buffer with given size.
-Caller is responsible for calling <a href="xmlsec-buffer.html#XMLSECBUFFERDESTROY"><span class="TYPE">xmlSecBufferDestroy</span></a> function
+Caller is responsible for calling <a class="link" href="xmlsec-buffer.html#xmlSecBufferDestroy" title="xmlSecBufferDestroy ()"><span class="type">xmlSecBufferDestroy</span></a> function
 to free the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5160"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5162"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>size</p></td>
-<td><p>the intial size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the intial size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5171"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated buffer or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERDESTROY"></a><h3>xmlSecBufferDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBufferDestroy (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
-<p>Desrtoys buffer object created with <a href="xmlsec-buffer.html#XMLSECBUFFERCREATE"><span class="TYPE">xmlSecBufferCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN5187"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5189"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecBufferDestroy"></a><h3>xmlSecBufferDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBufferDestroy (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
+<p>Desrtoys buffer object created with <a class="link" href="xmlsec-buffer.html#xmlSecBufferCreate" title="xmlSecBufferCreate ()"><span class="type">xmlSecBufferCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecBufferDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERINITIALIZE"></a><h3>xmlSecBufferInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferInitialize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Initializes buffer object <code class="PARAMETER">buf</code>
+<div class="refsect2">
+<a name="xmlSecBufferInitialize"></a><h3>xmlSecBufferInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferInitialize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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 buffer object <em class="parameter"><code>buf</code></em>
 . Caller is responsible for calling
-<a href="xmlsec-buffer.html#XMLSECBUFFERFINALIZE"><span class="TYPE">xmlSecBufferFinalize</span></a> function to free allocated resources.</p>
-<div class="REFSECT3">
-<a name="AEN5215"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5217"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-buffer.html#xmlSecBufferFinalize" title="xmlSecBufferFinalize ()"><span class="type">xmlSecBufferFinalize</span></a> function to free allocated resources.</p>
+<div class="refsect3">
+<a name="xmlSecBufferInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the initial buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the initial buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5232"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferInitialize.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="XMLSECBUFFERFINALIZE"></a><h3>xmlSecBufferFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBufferFinalize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
-<p>Frees allocated resource for a buffer intialized with <a href="xmlsec-buffer.html#XMLSECBUFFERINITIALIZE"><span class="TYPE">xmlSecBufferInitialize</span></a>
+<div class="refsect2">
+<a name="xmlSecBufferFinalize"></a><h3>xmlSecBufferFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBufferFinalize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
+<p>Frees allocated resource for a buffer intialized with <a class="link" href="xmlsec-buffer.html#xmlSecBufferInitialize" title="xmlSecBufferInitialize ()"><span class="type">xmlSecBufferInitialize</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN5248"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5250"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERGETDATA"></a><h3>xmlSecBufferGetData ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="RETURNVALUE">xmlSecByte</span></a> *
-xmlSecBufferGetData (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferGetData"></a><h3>xmlSecBufferGetData ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="returnvalue">xmlSecByte</span></a> *
+xmlSecBufferGetData (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
 <p>Gets pointer to buffer's data.</p>
-<div class="REFSECT3">
-<a name="AEN5270"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5272"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferGetData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5281"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferGetData.returns"></a><h4>Returns</h4>
 <p> pointer to buffer's data.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERSETDATA"></a><h3>xmlSecBufferSetData ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferSetData (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                     <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                     <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Sets the value of the buffer to <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecBufferSetData"></a><h3>xmlSecBufferSetData ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferSetData (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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 the buffer to <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN5302"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5304"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferSetData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5325"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferSetData.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="XMLSECBUFFERGETSIZE"></a><h3>xmlSecBufferGetSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecBufferGetSize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferGetSize"></a><h3>xmlSecBufferGetSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecBufferGetSize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
 <p>Gets the current buffer data size.</p>
-<div class="REFSECT3">
-<a name="AEN5339"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5341"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferGetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5350"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferGetSize.returns"></a><h4>Returns</h4>
 <p> the current data size.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERSETSIZE"></a><h3>xmlSecBufferSetSize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferSetSize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                     <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferSetSize"></a><h3>xmlSecBufferSetSize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferSetSize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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 new buffer data size. If necessary, buffer grows to
-have at least <code class="PARAMETER">size</code>
+have at least <em class="parameter"><code>size</code></em>
  bytes.</p>
-<div class="REFSECT3">
-<a name="AEN5368"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5370"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferSetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the new data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the new data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5385"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferSetSize.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="XMLSECBUFFERGETMAXSIZE"></a><h3>xmlSecBufferGetMaxSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecBufferGetMaxSize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferGetMaxSize"></a><h3>xmlSecBufferGetMaxSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecBufferGetMaxSize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
 <p>Gets the maximum (allocated) buffer size.</p>
-<div class="REFSECT3">
-<a name="AEN5399"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5401"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferGetMaxSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5410"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferGetMaxSize.returns"></a><h4>Returns</h4>
 <p> the maximum (allocated) buffer size.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERSETMAXSIZE"></a><h3>xmlSecBufferSetMaxSize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferSetMaxSize (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferSetMaxSize"></a><h3>xmlSecBufferSetMaxSize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferSetMaxSize (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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 new buffer maximum size. If necessary, buffer grows to
-have at least <code class="PARAMETER">size</code>
+have at least <em class="parameter"><code>size</code></em>
  bytes.</p>
-<div class="REFSECT3">
-<a name="AEN5428"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5430"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferSetMaxSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the new maximum size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the new maximum size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5445"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferSetMaxSize.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="XMLSECBUFFEREMPTY"></a><h3>xmlSecBufferEmpty ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecBufferEmpty (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecBufferEmpty"></a><h3>xmlSecBufferEmpty ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecBufferEmpty (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
 <p>Empties the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5459"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5461"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferEmpty.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFERAPPEND"></a><h3>xmlSecBufferAppend ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferAppend (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                    <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Appends the <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecBufferAppend"></a><h3>xmlSecBufferAppend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferAppend (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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>Appends the <em class="parameter"><code>data</code></em>
  after the current data stored in the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5488"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5490"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferAppend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5511"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferAppend.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="XMLSECBUFFERPREPEND"></a><h3>xmlSecBufferPrepend ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferPrepend (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                     <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                     <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Prepends the <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecBufferPrepend"></a><h3>xmlSecBufferPrepend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferPrepend (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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>Prepends the <em class="parameter"><code>data</code></em>
  before the current data stored in the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5532"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5534"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferPrepend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5555"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferPrepend.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="XMLSECBUFFERREMOVEHEAD"></a><h3>xmlSecBufferRemoveHead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferRemoveHead (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Removes <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecBufferRemoveHead"></a><h3>xmlSecBufferRemoveHead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferRemoveHead (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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>Removes <em class="parameter"><code>size</code></em>
  bytes from the beginning of the current buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5573"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5575"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferRemoveHead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the number of bytes to be removed.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the number of bytes to be removed.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5590"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferRemoveHead.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="XMLSECBUFFERREMOVETAIL"></a><h3>xmlSecBufferRemoveTail ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferRemoveTail (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Removes <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecBufferRemoveTail"></a><h3>xmlSecBufferRemoveTail ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferRemoveTail (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</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>Removes <em class="parameter"><code>size</code></em>
  bytes from the end of current buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5608"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5610"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferRemoveTail.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the number of bytes to be removed.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the number of bytes to be removed.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5625"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferRemoveTail.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="XMLSECBUFFERREADFILE"></a><h3>xmlSecBufferReadFile ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferReadFile (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>);</pre>
-<p>Reads the content of the file <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecBufferReadFile"></a><h3>xmlSecBufferReadFile ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferReadFile (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>);</pre>
+<p>Reads the content of the file <em class="parameter"><code>filename</code></em>
  in the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5643"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5645"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferReadFile.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5660"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferReadFile.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="XMLSECBUFFERBASE64NODECONTENTREAD"></a><h3>xmlSecBufferBase64NodeContentRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferBase64NodeContentRead (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Reads the content of the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecBufferBase64NodeContentRead"></a><h3>xmlSecBufferBase64NodeContentRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferBase64NodeContentRead (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Reads the content of the <em class="parameter"><code>node</code></em>
 , base64 decodes it and stores the
 result in the buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5678"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5680"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferBase64NodeContentRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN5695"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferBase64NodeContentRead.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="XMLSECBUFFERBASE64NODECONTENTWRITE"></a><h3>xmlSecBufferBase64NodeContentWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecBufferBase64NodeContentWrite (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">int</span></font> columns</code>);</pre>
-<p>Sets the content of the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecBufferBase64NodeContentWrite"></a><h3>xmlSecBufferBase64NodeContentWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecBufferBase64NodeContentWrite (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>,
+                                    <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                    <em class="parameter"><code><font><span class="type">int</span></font> columns</code></em>);</pre>
+<p>Sets the content of the <em class="parameter"><code>node</code></em>
  to the base64 encoded buffer data.</p>
-<div class="REFSECT3">
-<a name="AEN5716"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5718"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferBase64NodeContentWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to a node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to a node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>columns</p></td>
-<td><p>the max line size fro base64 encoded data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>columns</p></td>
+<td class="parameter_description"><p>the max line size fro base64 encoded data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5739"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferBase64NodeContentWrite.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="XMLSECBUFFERCREATEOUTPUTBUFFER"></a><h3>xmlSecBufferCreateOutputBuffer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlOutputBufferPtr</span></font>
-xmlSecBufferCreateOutputBuffer (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buf</code>);</pre>
-<p>Creates new LibXML output buffer to store data in the <code class="PARAMETER">buf</code>
+<div class="refsect2">
+<a name="xmlSecBufferCreateOutputBuffer"></a><h3>xmlSecBufferCreateOutputBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlOutputBufferPtr</span></font>
+xmlSecBufferCreateOutputBuffer (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buf</code></em>);</pre>
+<p>Creates new LibXML output buffer to store data in the <em class="parameter"><code>buf</code></em>
 . Caller is
-responsible for destroying <code class="PARAMETER">buf</code>
+responsible for destroying <em class="parameter"><code>buf</code></em>
  when processing is done.</p>
-<div class="REFSECT3">
-<a name="AEN5755"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5757"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBufferCreateOutputBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>buf</p></td>
-<td><p>the pointer to buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5766"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecBufferCreateOutputBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated output buffer or NULL if an error
 occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-BUFFER.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECALLOCMODE"></a><h3>enum xmlSecAllocMode</h3>
-<p>The memory allocation mode (used by <code class="PARAMETER">xmlSecBuffer</code>
- and <code class="PARAMETER">xmlSecList</code>
+<div class="refsect1">
+<a name="xmlsec-buffer.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecAllocMode"></a><h3>enum xmlSecAllocMode</h3>
+<p>The memory allocation mode (used by <em class="parameter"><code>xmlSecBuffer</code></em>
+ and <em class="parameter"><code>xmlSecList</code></em>
 ).</p>
-<div class="REFSECT3">
-<a name="AEN5778"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5780"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAllocMode.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecAllocModeExact</p></td>
-<td><p>the memory allocation mode that minimizes total
-                             allocated memory size.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecAllocModeExact"></a>xmlSecAllocModeExact</p></td>
+<td class="enum_member_description">
+<p>the memory allocation mode that minimizes total
+                             allocated memory size.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecAllocModeDouble</p></td>
-<td><p>the memory allocation mode that tries to minimize
-                             the number of malloc calls.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecAllocModeDouble"></a>xmlSecAllocModeDouble</p></td>
+<td class="enum_member_description">
+<p>the memory allocation mode that tries to minimize
+                             the number of malloc calls.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBUFFER"></a><h3>struct xmlSecBuffer</h3>
-<pre class="PROGRAMLISTING">struct xmlSecBuffer {
+<div class="refsect2">
+<a name="xmlSecBuffer"></a><h3>struct xmlSecBuffer</h3>
+<pre class="programlisting">struct xmlSecBuffer {
     xmlSecByte*         data;
     xmlSecSize          size;
     xmlSecSize          maxSize;
     xmlSecAllocMode     allocMode;
-};</pre>
+};
+</pre>
 <p>Binary data buffer.</p>
-<div class="REFSECT3">
-<a name="AEN5801"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5803"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecBuffer.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *<code class="STRUCTFIELD">data</code>;</p></td>
-<td><p>the pointer to buffer data.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *<em class="structfield"><code><a name="xmlSecBuffer.data"></a>data</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to buffer data.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">size</code>;</p></td>
-<td><p>the current data size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecBuffer.size"></a>size</code></em>;</p></td>
+<td class="struct_member_description"><p>the current data size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">maxSize</code>;</p></td>
-<td><p>the max data size (allocated buffer size).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecBuffer.maxSize"></a>maxSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the max data size (allocated buffer size).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECALLOCMODE"><span class="TYPE">xmlSecAllocMode</span></a> <code class="STRUCTFIELD">allocMode</code>;</p></td>
-<td><p>the buffer memory allocation mode.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode"><span class="type">xmlSecAllocMode</span></a> <em class="structfield"><code><a name="xmlSecBuffer.allocMode"></a>allocMode</code></em>;</p></td>
+<td class="struct_member_description"><p>the buffer memory allocation mode.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-bn.html"><b><<< bn</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-dl.html"><b>dl >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-custom-keys-manager.html b/docs/api/xmlsec-custom-keys-manager.html
index ce7c373..035712a 100644
--- a/docs/api/xmlsec-custom-keys-manager.html
+++ b/docs/api/xmlsec-custom-keys-manager.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Writing a custom keys manager.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Decrypting data with keys manager." href="xmlsec-decrypt-with-keys-mngr.html">
-<link rel="NEXT" title="APPENDIX A. XML Security Library Signature Klasses." href="xmlsec-signature-klasses.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Writing a custom keys manager.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-decrypt-with-keys-mngr.html" title="Decrypting data with keys manager.">
+<link rel="next" href="xmlsec-signature-klasses.html" title="APPENDIX A. XML Security Library Signature Klasses.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,25 +73,25 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-decrypt-with-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-decrypt-with-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-signature-klasses.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-CUSTOM-KEYS-MANAGER">Writing a custom keys manager.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-DECRYPT3">decrypt3.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN832"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-custom-keys-manager"></a>Writing a custom keys manager.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-decrypt3"></a>decrypt3.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Decrypting an encrypted file using a custom keys manager.
  * 
  * Decrypts encrypted XML file using a custom files based keys manager.
- * We assume that key's name in <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> element is just 
+ * We assume that key's name in <a class="ulink" href="" target="_top"><dsig:KeyName/></a> element is just 
  * key's file name in the current folder.
  * 
  * Usage: 
@@ -391,7 +364,7 @@ create_files_keys_mngr(void) {
 /****************************************************************************
  *
  * Files Keys Store: we assume that key's name (content of the 
- * <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> element is a name of the file with a key (in the 
+ * <a class="ulink" href="" target="_top"><dsig:KeyName/></a> element is a name of the file with a key (in the 
  * current folder).
  * Attention: this probably not a good solution for high traffic systems.
  * 
@@ -429,7 +402,7 @@ files_keys_store_get_klass(void) {
  * files_keys_store_find_key:
  * @store:              the pointer to simple keys store.
  * @name:               the desired key name.
- * @keyInfoCtx:         the pointer to <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> node processing context.
+ * @keyInfoCtx:         the pointer to <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> node processing context.
  *  
  * Lookups key in the @store. The caller is responsible for destroying
  * returned key with #xmlSecKeyDestroy function.
@@ -484,15 +457,13 @@ files_keys_store_find_key(xmlSecKeyStorePtr store, const xmlChar* name, xmlSecKe
     }
 
     return(key);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-decrypt-with-keys-mngr.html"><b><<< Decrypting data with keys manager.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-signature-klasses.html"><b>APPENDIX A. XML Security Library Signature Klasses. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-decrypt-with-keys-mngr.html b/docs/api/xmlsec-decrypt-with-keys-mngr.html
index b7b16ff..a718baf 100644
--- a/docs/api/xmlsec-decrypt-with-keys-mngr.html
+++ b/docs/api/xmlsec-decrypt-with-keys-mngr.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Decrypting data with keys manager.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Decrypting data with a single key." href="xmlsec-decrypt-with-signle-key.html">
-<link rel="NEXT" title="Writing a custom keys manager." href="xmlsec-custom-keys-manager.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Decrypting data with keys manager.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-decrypt-with-signle-key.html" title="Decrypting data with a single key.">
+<link rel="next" href="xmlsec-custom-keys-manager.html" title="Writing a custom keys manager.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-decrypt-with-signle-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-decrypt-with-signle-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-custom-keys-manager.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-DECRYPT-WITH-KEYS-MNGR">Decrypting data with keys manager.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-DECRYPT2">decrypt2.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN825"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-decrypt-with-keys-mngr"></a>Decrypting data with keys manager.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-decrypt2"></a>decrypt2.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Decrypting an encrypted file using keys manager.
  * 
  * Decrypts encrypted XML file using keys manager and a list of 
@@ -405,15 +378,13 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-decrypt-with-signle-key.html"><b><<< Decrypting data with a single key.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-custom-keys-manager.html"><b>Writing a custom keys manager. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-decrypt-with-signle-key.html b/docs/api/xmlsec-decrypt-with-signle-key.html
index d98f905..ecd0139 100644
--- a/docs/api/xmlsec-decrypt-with-signle-key.html
+++ b/docs/api/xmlsec-decrypt-with-signle-key.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Decrypting data with a single key.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Encrypting data with a session key." href="xmlsec-encrypt-with-session-key.html">
-<link rel="NEXT" title="Decrypting data with keys manager." href="xmlsec-decrypt-with-keys-mngr.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Decrypting data with a single key.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-encrypt-with-session-key.html" title="Encrypting data with a session key.">
+<link rel="next" href="xmlsec-decrypt-with-keys-mngr.html" title="Decrypting data with keys manager.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-encrypt-with-session-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-encrypt-with-session-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-decrypt-with-keys-mngr.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-DECRYPT-WITH-SIGNLE-KEY">Decrypting data with a single key.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-DECRYPT1">decrypt1.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN818"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-decrypt-with-signle-key"></a>Decrypting data with a single key.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-decrypt1"></a>decrypt1.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Decrypting an encrypted file using a single key.
  * 
  * Decrypts encrypted XML file using a single DES key from a binary file
@@ -335,15 +308,13 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-encrypt-with-session-key.html"><b><<< Encrypting data with a session key.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-decrypt-with-keys-mngr.html"><b>Decrypting data with keys manager. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-dl.html b/docs/api/xmlsec-dl.html
index 43af7b1..9b6d468 100644
--- a/docs/api/xmlsec-dl.html
+++ b/docs/api/xmlsec-dl.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>dl</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="buffer" href="xmlsec-buffer.html">
-<link rel="NEXT" title="errors" href="xmlsec-errors.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>dl: 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-buffer.html" title="buffer">
+<link rel="next" href="xmlsec-errors.html" title="errors">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,277 +73,289 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-buffer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-dl.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-buffer.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-errors.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-DL"></a>dl</h1>
-<div class="REFNAMEDIV">
-<a name="AEN5847"></a><h2>Name</h2>dl -- Dynamic crypto-engine library loading support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-DL.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5852"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-dl"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-dl.top_of_page"></a>dl</span></h2>
+<p>dl — Dynamic crypto-engine library loading support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-dl.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLFUNCTIONSREGISTERKEYDATAANDTRANSFORMS">xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms" title="xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms ()">xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLINIT">xmlSecCryptoDLInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLInit" title="xmlSecCryptoDLInit ()">xmlSecCryptoDLInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLSHUTDOWN">xmlSecCryptoDLShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLShutdown" title="xmlSecCryptoDLShutdown ()">xmlSecCryptoDLShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY">xmlSecCryptoDLLoadLibrary</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()">xmlSecCryptoDLLoadLibrary</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLGETLIBRARYFUNCTIONS">xmlSecCryptoDLGetLibraryFunctions</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetLibraryFunctions" title="xmlSecCryptoDLGetLibraryFunctions ()">xmlSecCryptoDLGetLibraryFunctions</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLUNLOADLIBRARY">xmlSecCryptoDLUnloadLibrary</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLUnloadLibrary" title="xmlSecCryptoDLUnloadLibrary ()">xmlSecCryptoDLUnloadLibrary</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLSETFUNCTIONS">xmlSecCryptoDLSetFunctions</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLSetFunctions" title="xmlSecCryptoDLSetFunctions ()">xmlSecCryptoDLSetFunctions</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-dl.html#XMLSECCRYPTODLGETFUNCTIONS">xmlSecCryptoDLGetFunctions</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetFunctions" title="xmlSecCryptoDLGetFunctions ()">xmlSecCryptoDLGetFunctions</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-DL.DESCRIPTION"></a><h2>Description</h2>
-<p>Dynamic crypto-engine library loading support.</p>
+<div class="refsect1">
+<a name="xmlsec-dl.description"></a><h2>Description</h2>
+<p>
+Dynamic crypto-engine library loading support.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-DL.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTODLFUNCTIONSREGISTERKEYDATAANDTRANSFORMS"></a><h3>xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect1">
+<a name="xmlsec-dl.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms"></a><h3>xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlSecCryptoDLFunctionsPtr</span></font> functions</code>);</pre>
-<p>Registers the key data and transforms klasses from <code class="PARAMETER">functions</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecCryptoDLFunctionsPtr</span></font> functions</code></em>);</pre>
+<p>Registers the key data and transforms klasses from <em class="parameter"><code>functions</code></em>
  table in xmlsec.</p>
-<div class="REFSECT3">
-<a name="AEN5928"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5930"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>functions</p></td>
-<td><p>the functions table.</p></td>
-<td> </td>
+<td class="parameter_name"><p>functions</p></td>
+<td class="parameter_description"><p>the functions table.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5939"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms.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="XMLSECCRYPTODLINIT"></a><h3>xmlSecCryptoDLInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoDLInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLInit"></a><h3>xmlSecCryptoDLInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoDLInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Initializes dynamic loading engine. This is an internal function
 and should not be called by application directly.</p>
-<div class="REFSECT3">
-<a name="AEN5952"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLInit.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="XMLSECCRYPTODLSHUTDOWN"></a><h3>xmlSecCryptoDLShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoDLShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLShutdown"></a><h3>xmlSecCryptoDLShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoDLShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Shutdowns dynamic loading engine. This is an internal function
 and should not be called by application directly.</p>
-<div class="REFSECT3">
-<a name="AEN5965"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLShutdown.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="XMLSECCRYPTODLLOADLIBRARY"></a><h3>xmlSecCryptoDLLoadLibrary ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoDLLoadLibrary (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *crypto</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLLoadLibrary"></a><h3>xmlSecCryptoDLLoadLibrary ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoDLLoadLibrary (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *crypto</code></em>);</pre>
 <p>Loads the xmlsec-$crypto library. This function is NOT thread safe,
-application MUST NOT call <a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLLoadLibrary</span></a>, <a href="xmlsec-dl.html#XMLSECCRYPTODLGETLIBRARYFUNCTIONS"><span class="TYPE">xmlSecCryptoDLGetLibraryFunctions</span></a>,
-and <a href="xmlsec-dl.html#XMLSECCRYPTODLUNLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
-<div class="REFSECT3">
-<a name="AEN5985"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN5987"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+application MUST NOT call <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()"><span class="type">xmlSecCryptoDLLoadLibrary</span></a>, <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetLibraryFunctions" title="xmlSecCryptoDLGetLibraryFunctions ()"><span class="type">xmlSecCryptoDLGetLibraryFunctions</span></a>,
+and <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLUnloadLibrary" title="xmlSecCryptoDLUnloadLibrary ()"><span class="type">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
+<div class="refsect3">
+<a name="xmlSecCryptoDLLoadLibrary.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>crypto</p></td>
-<td><p>the desired crypto library name ("openssl", "nss", ...). If NULL
+<td class="parameter_name"><p>crypto</p></td>
+<td class="parameter_description"><p>the desired crypto library name ("openssl", "nss", ...). If NULL
 then the default crypto engine will be used.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN5996"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLLoadLibrary.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="XMLSECCRYPTODLGETLIBRARYFUNCTIONS"></a><h3>xmlSecCryptoDLGetLibraryFunctions ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoDLGetLibraryFunctions (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *crypto</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLGetLibraryFunctions"></a><h3>xmlSecCryptoDLGetLibraryFunctions ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoDLGetLibraryFunctions (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *crypto</code></em>);</pre>
 <p>Loads the xmlsec-$crypto library and gets global crypto functions/transforms/keys data/keys store
-table. This function is NOT thread safe, application MUST NOT call <a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLLoadLibrary</span></a>,
-<a href="xmlsec-dl.html#XMLSECCRYPTODLGETLIBRARYFUNCTIONS"><span class="TYPE">xmlSecCryptoDLGetLibraryFunctions</span></a>, and <a href="xmlsec-dl.html#XMLSECCRYPTODLUNLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
-<div class="REFSECT3">
-<a name="AEN6016"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6018"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+table. This function is NOT thread safe, application MUST NOT call <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()"><span class="type">xmlSecCryptoDLLoadLibrary</span></a>,
+<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetLibraryFunctions" title="xmlSecCryptoDLGetLibraryFunctions ()"><span class="type">xmlSecCryptoDLGetLibraryFunctions</span></a>, and <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLUnloadLibrary" title="xmlSecCryptoDLUnloadLibrary ()"><span class="type">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
+<div class="refsect3">
+<a name="xmlSecCryptoDLGetLibraryFunctions.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>crypto</p></td>
-<td><p>the desired crypto library name ("openssl", "nss", ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>crypto</p></td>
+<td class="parameter_description"><p>the desired crypto library name ("openssl", "nss", ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN6027"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLGetLibraryFunctions.returns"></a><h4>Returns</h4>
 <p> the table or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTODLUNLOADLIBRARY"></a><h3>xmlSecCryptoDLUnloadLibrary ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoDLUnloadLibrary (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *crypto</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLUnloadLibrary"></a><h3>xmlSecCryptoDLUnloadLibrary ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoDLUnloadLibrary (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *crypto</code></em>);</pre>
 <p>Unloads the xmlsec-$crypto library. All pointers to this library
 functions tables became invalid. This function is NOT thread safe,
-application MUST NOT call <a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLLoadLibrary</span></a>, <a href="xmlsec-dl.html#XMLSECCRYPTODLGETLIBRARYFUNCTIONS"><span class="TYPE">xmlSecCryptoDLGetLibraryFunctions</span></a>,
-and <a href="xmlsec-dl.html#XMLSECCRYPTODLUNLOADLIBRARY"><span class="TYPE">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
-<div class="REFSECT3">
-<a name="AEN6047"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6049"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+application MUST NOT call <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()"><span class="type">xmlSecCryptoDLLoadLibrary</span></a>, <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetLibraryFunctions" title="xmlSecCryptoDLGetLibraryFunctions ()"><span class="type">xmlSecCryptoDLGetLibraryFunctions</span></a>,
+and <a class="link" href="xmlsec-dl.html#xmlSecCryptoDLUnloadLibrary" title="xmlSecCryptoDLUnloadLibrary ()"><span class="type">xmlSecCryptoDLUnloadLibrary</span></a> functions from multiple threads.</p>
+<div class="refsect3">
+<a name="xmlSecCryptoDLUnloadLibrary.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>crypto</p></td>
-<td><p>the desired crypto library name ("openssl", "nss", ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>crypto</p></td>
+<td class="parameter_description"><p>the desired crypto library name ("openssl", "nss", ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN6058"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLUnloadLibrary.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="XMLSECCRYPTODLSETFUNCTIONS"></a><h3>xmlSecCryptoDLSetFunctions ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCryptoDLSetFunctions (<code class="PARAMETER"><font><span class="TYPE">xmlSecCryptoDLFunctionsPtr</span></font> functions</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLSetFunctions"></a><h3>xmlSecCryptoDLSetFunctions ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCryptoDLSetFunctions (<em class="parameter"><code><font><span class="type">xmlSecCryptoDLFunctionsPtr</span></font> functions</code></em>);</pre>
 <p>Sets global crypto functions/transforms/keys data/keys store table.</p>
-<div class="REFSECT3">
-<a name="AEN6072"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6074"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCryptoDLSetFunctions.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>functions</p></td>
-<td><p>the new table</p></td>
-<td> </td>
+<td class="parameter_name"><p>functions</p></td>
+<td class="parameter_description"><p>the new table</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN6083"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLSetFunctions.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="XMLSECCRYPTODLGETFUNCTIONS"></a><h3>xmlSecCryptoDLGetFunctions ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoDLGetFunctions (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCryptoDLGetFunctions"></a><h3>xmlSecCryptoDLGetFunctions ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoDLGetFunctions (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets global crypto functions/transforms/keys data/keys store table.</p>
-<div class="REFSECT3">
-<a name="AEN6096"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoDLGetFunctions.returns"></a><h4>Returns</h4>
 <p> the table.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-DL.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-dl.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-buffer.html"><b><<< buffer</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-errors.html"><b>errors >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-encrypt-dynamic-template.html b/docs/api/xmlsec-encrypt-dynamic-template.html
index 68ad9fb..649733c 100644
--- a/docs/api/xmlsec-encrypt-dynamic-template.html
+++ b/docs/api/xmlsec-encrypt-dynamic-template.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Encrypting data with a dynamicaly created template.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Encrypting data with a template file." href="xmlsec-encrypt-template-file.html">
-<link rel="NEXT" title="Encrypting data with a session key." href="xmlsec-encrypt-with-session-key.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Encrypting data with a dynamicaly created template.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-encrypt-template-file.html" title="Encrypting data with a template file.">
+<link rel="next" href="xmlsec-encrypt-with-session-key.html" title="Encrypting data with a session key.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-encrypt-template-file.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-encrypt-template-file.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-encrypt-with-session-key.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-ENCRYPT-DYNAMIC-TEMPLATE">Encrypting data with a dynamicaly created template.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT2">encrypt2.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN774"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-encrypt-dynamic-template"></a>Encrypting data with a dynamicaly created template.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt2"></a>encrypt2.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Encrypting XML file with a dynamicaly created template.
  * 
  * Encrypts XML file using a dynamicaly created template file and a DES key 
@@ -288,13 +261,13 @@ encrypt_file(const char* xml_file, const char* key_file) {
         goto done;   
     }
 
-    /* we want to put encrypted data in the <a href="http://www.w3.org/TR/xmlenc-core/#sec-CipherValue" target="_top"><enc:CipherValue/></a> node */
+    /* we want to put encrypted data in the <a class="ulink" href="" target="_top"><enc:CipherValue/></a> node */
     if(xmlSecTmplEncDataEnsureCipherValue(encDataNode) == NULL) {
         fprintf(stderr, "Error: failed to add CipherValue node\n");
         goto done;   
     }
 
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> and <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> nodes to put key name in the signed document */
+    /* add <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> and <a class="ulink" href="" target="_top"><dsig:KeyName/></a> nodes to put key name in the signed document */
     keyInfoNode = xmlSecTmplEncDataEnsureKeyInfo(encDataNode, NULL);
     if(keyInfoNode == NULL) {
         fprintf(stderr, "Error: failed to add key info\n");
@@ -356,16 +329,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT2-DOC">encrypt2-doc.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN782"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt2-doc"></a>encrypt2-doc.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file before encryption (encrypt2 example). 
 -->
@@ -373,16 +345,14 @@ XML Security Library example: Original XML doc file before encryption (encrypt2
   <Data>
 	Hello, World!
   </Data>
-</Envelope></pre>
-<p></p>
-</div>
+</Envelope>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT2-RES">encrypt2-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN787"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt2-res"></a>encrypt2-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Encrypted XML file (encrypt2 example). 
 -->
@@ -395,15 +365,12 @@ XML Security Library example: Encrypted XML file (encrypt2 example).
 <CipherValue>WXlDyktaADlUe+PywKwS3KdKlahCteEKxi/hRlHcXNQlGwNGrYKy8aQ6dLtX1bKg
 IgL/XoAQN3B27zD91b1ZLGh6QQ9CjnVD98+hYJ9TPp4piPnII4vGUA==</CipherValue>
 </CipherData>
-</EncryptedData></pre>
-<p></p>
+</EncryptedData>
+</pre></div>
 </div>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-encrypt-template-file.html"><b><<< Encrypting data with a template file.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-encrypt-with-session-key.html"><b>Encrypting data with a session key. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-encrypt-template-file.html b/docs/api/xmlsec-encrypt-template-file.html
index 4e1e46a..962ac4f 100644
--- a/docs/api/xmlsec-encrypt-template-file.html
+++ b/docs/api/xmlsec-encrypt-template-file.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Encrypting data with a template file.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Verifying a signature with additional restrictions." href="xmlsec-verify-with-restrictions.html">
-<link rel="NEXT" title="Encrypting data with a dynamicaly created template." href="xmlsec-encrypt-dynamic-template.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Encrypting data with a template file.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-verify-with-restrictions.html" title="Verifying a signature with additional restrictions.">
+<link rel="next" href="xmlsec-encrypt-dynamic-template.html" title="Encrypting data with a dynamicaly created template.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-verify-with-restrictions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-verify-with-restrictions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-encrypt-dynamic-template.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-ENCRYPT-TEMPLATE-FILE">Encrypting data with a template file.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT1">encrypt1.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN757"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-encrypt-template-file"></a>Encrypting data with a template file.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt1"></a>encrypt1.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Encrypting data using a template file.
  * 
  * Encrypts binary data using a template file and a DES key from a binary file
@@ -331,16 +304,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT1-TMPL">encrypt1-tmpl.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN762"></a><pre class="PROGRAMLISTING"><?xml version="1.0"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt1-tmpl"></a>encrypt1-tmpl.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0"?>
 <!-- 
 XML Security Library example: Simple encryption template file for encrypt1 example. 
 -->
@@ -352,16 +324,14 @@ XML Security Library example: Simple encryption template file for encrypt1 examp
     <CipherData>
 	<CipherValue></CipherValue>
     </CipherData>
-</EncryptedData></pre>
-<p></p>
-</div>
+</EncryptedData>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT1-RES">encrypt1-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN767"></a><pre class="PROGRAMLISTING"><?xml version="1.0"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt1-res"></a>encrypt1-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0"?>
 <!-- 
 XML Security Library example: Encrypted binary data (encrypt1 example).
 -->
@@ -373,15 +343,12 @@ XML Security Library example: Encrypted binary data (encrypt1 example).
     <CipherData>
 	<CipherValue>t6JVBMihIgRyiK8AS8AX5NcXTfkdXPTK</CipherValue>
     </CipherData>
-</EncryptedData></pre>
-<p></p>
+</EncryptedData>
+</pre></div>
 </div>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-verify-with-restrictions.html"><b><<< Verifying a signature with additional restrictions.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-encrypt-dynamic-template.html"><b>Encrypting data with a dynamicaly created template. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-encrypt-with-session-key.html b/docs/api/xmlsec-encrypt-with-session-key.html
index 9f44192..c73e125 100644
--- a/docs/api/xmlsec-encrypt-with-session-key.html
+++ b/docs/api/xmlsec-encrypt-with-session-key.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Encrypting data with a session key.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Encrypting data with a dynamicaly created template." href="xmlsec-encrypt-dynamic-template.html">
-<link rel="NEXT" title="Decrypting data with a single key." href="xmlsec-decrypt-with-signle-key.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Encrypting data with a session key.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-encrypt-dynamic-template.html" title="Encrypting data with a dynamicaly created template.">
+<link rel="next" href="xmlsec-decrypt-with-signle-key.html" title="Decrypting data with a single key.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-encrypt-dynamic-template.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-encrypt-dynamic-template.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-decrypt-with-signle-key.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-ENCRYPT-WITH-SESSION-KEY">Encrypting data with a session key.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT3">encrypt3.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN794"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-encrypt-with-session-key"></a>Encrypting data with a session key.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt3"></a>encrypt3.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Encrypting XML file with a session key and dynamicaly created template.
  * 
  * Encrypts XML file using a dynamicaly created template file and a session 
@@ -367,20 +340,20 @@ encrypt_file(xmlSecKeysMngrPtr mngr, const char* xml_file, const char* key_name)
         goto done;   
     }
 
-    /* we want to put encrypted data in the <a href="http://www.w3.org/TR/xmlenc-core/#sec-CipherValue" target="_top"><enc:CipherValue/></a> node */
+    /* we want to put encrypted data in the <a class="ulink" href="" target="_top"><enc:CipherValue/></a> node */
     if(xmlSecTmplEncDataEnsureCipherValue(encDataNode) == NULL) {
         fprintf(stderr, "Error: failed to add CipherValue node\n");
         goto done;   
     }
 
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> */
+    /* add <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> */
     keyInfoNode = xmlSecTmplEncDataEnsureKeyInfo(encDataNode, NULL);
     if(keyInfoNode == NULL) {
         fprintf(stderr, "Error: failed to add key info\n");
         goto done;              
     }
 
-    /* add <a href="http://www.w3.org/TR/xmlenc-core/#sec-EncryptedKey" target="_top"><enc:EncryptedKey/></a> to store the encrypted session key */
+    /* add <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> to store the encrypted session key */
     encKeyNode = xmlSecTmplKeyInfoAddEncryptedKey(keyInfoNode, 
                                     xmlSecTransformRsaPkcs1Id, 
                                     NULL, NULL, NULL);
@@ -389,13 +362,13 @@ encrypt_file(xmlSecKeysMngrPtr mngr, const char* xml_file, const char* key_name)
         goto done;              
     }
 
-    /* we want to put encrypted key in the <a href="http://www.w3.org/TR/xmlenc-core/#sec-CipherValue" target="_top"><enc:CipherValue/></a> node */
+    /* we want to put encrypted key in the <a class="ulink" href="" target="_top"><enc:CipherValue/></a> node */
     if(xmlSecTmplEncDataEnsureCipherValue(encKeyNode) == NULL) {
         fprintf(stderr, "Error: failed to add CipherValue node\n");
         goto done;   
     }
 
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> and <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> nodes to <a href="http://www.w3.org/TR/xmlenc-core/#sec-EncryptedKey" target="_top"><enc:EncryptedKey/></a> */
+    /* add <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> and <a class="ulink" href="" target="_top"><dsig:KeyName/></a> nodes to <a class="ulink" href="" target="_top"><enc:EncryptedKey/></a> */
     keyInfoNode2 = xmlSecTmplEncDataEnsureKeyInfo(encKeyNode, NULL);
     if(keyInfoNode2 == NULL) {
         fprintf(stderr, "Error: failed to add key info\n");
@@ -452,16 +425,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT3-DOC">encrypt3-doc.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN806"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt3-doc"></a>encrypt3-doc.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file before encryption (encrypt3 example). 
 -->
@@ -469,16 +441,14 @@ XML Security Library example: Original XML doc file before encryption (encrypt3
   <Data>
 	Hello, World!
   </Data>
-</Envelope></pre>
-<p></p>
-</div>
+</Envelope>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-ENCRYPT3-RES">encrypt3-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN811"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-encrypt3-res"></a>encrypt3-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file before encryption (encrypt3 example). 
 -->
@@ -500,15 +470,12 @@ MLOtSy26mWrQ+XqfPGuyaA==</CipherValue>
 <CipherValue>+UiDv73SE8K8KwXuOmHLHK7N2hNWDakTAEu6NprbCdULC1w/LXT9FLtNRJetmwwO
 XpBqTY56AAMeMgpxPWN3SPO0ETeQw7pR+bp0IjUvcGlFSXz6yE1qgQ==</CipherValue>
 </CipherData>
-</EncryptedData></pre>
-<p></p>
+</EncryptedData>
+</pre></div>
 </div>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-encrypt-dynamic-template.html"><b><<< Encrypting data with a dynamicaly created template.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-decrypt-with-signle-key.html"><b>Decrypting data with a single key. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-encryption-klasses.html b/docs/api/xmlsec-encryption-klasses.html
index 897ee5d..e97eab6 100644
--- a/docs/api/xmlsec-encryption-klasses.html
+++ b/docs/api/xmlsec-encryption-klasses.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>APPENDIX B. XML Security Library Encryption Klasses.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="APPENDIX A. XML Security Library Signature Klasses." href="xmlsec-signature-klasses.html">
-<link rel="NEXT" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>APPENDIX B. XML Security Library Encryption Klasses.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-signature-klasses.html" title="APPENDIX A. XML Security Library Signature Klasses.">
+<link rel="next" href="xmlsec-reference.html" title="Part II. XML Security Library API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,25 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-signature-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-signature-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-reference.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-ENCRYPTION-KLASSES"></a>APPENDIX B. XML Security Library Encryption Klasses.</h1>
-<div class="FIGURE">
-<a name="AEN844"></a><p><b>Figure 1. XML Security Library Encryption Klasses.</b></p>
-<p><img src="images/encryption-structure.png" align="CENTER"></p>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-encryption-klasses"></a>APPENDIX B. XML Security Library Encryption Klasses.</h2></div></div></div>
+<div class="figure">
+<a name="id-1.2.17.2"></a><p class="title"><b>Figure 12. XML Security Library Encryption Klasses.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/encryption-structure.png" align="middle" alt="XML Security Library Encryption Klasses."></div></div>
 </div>
+<br class="figure-break">
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-signature-klasses.html"><b><<< APPENDIX A. XML Security Library Signature Klasses.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-reference.html"><b>XML Security Library API Reference. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-errors.html b/docs/api/xmlsec-errors.html
index dfca890..092e625 100644
--- a/docs/api/xmlsec-errors.html
+++ b/docs/api/xmlsec-errors.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>errors</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="dl" href="xmlsec-dl.html">
-<link rel="NEXT" title="io" href="xmlsec-io.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>errors: 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-dl.html" title="dl">
+<link rel="next" href="xmlsec-io.html" title="io">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1037 +73,1111 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-dl.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-errors.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-dl.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-io.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-ERRORS"></a>errors</h1>
-<div class="REFNAMEDIV">
-<a name="AEN6107"></a><h2>Name</h2>errors -- Error/log messages support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-ERRORS.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6112"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-errors"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-errors.top_of_page"></a>errors</span></h2>
+<p>errors — Error/log messages support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-errors.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-errors.html#XMLSECERRORSCALLBACK">*xmlSecErrorsCallback</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-errors.html#xmlSecErrorsCallback" title="xmlSecErrorsCallback ()">*xmlSecErrorsCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSINIT">xmlSecErrorsInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsInit" title="xmlSecErrorsInit ()">xmlSecErrorsInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSSHUTDOWN">xmlSecErrorsShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsShutdown" title="xmlSecErrorsShutdown ()">xmlSecErrorsShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSSETCALLBACK">xmlSecErrorsSetCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsSetCallback" title="xmlSecErrorsSetCallback ()">xmlSecErrorsSetCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSDEFAULTCALLBACK">xmlSecErrorsDefaultCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsDefaultCallback" title="xmlSecErrorsDefaultCallback ()">xmlSecErrorsDefaultCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSDEFAULTCALLBACKENABLEOUTPUT">xmlSecErrorsDefaultCallbackEnableOutput</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsDefaultCallbackEnableOutput" title="xmlSecErrorsDefaultCallbackEnableOutput ()">xmlSecErrorsDefaultCallbackEnableOutput</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSGETCODE">xmlSecErrorsGetCode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsGetCode" title="xmlSecErrorsGetCode ()">xmlSecErrorsGetCode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">char</span></font> *</td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSGETMSG">xmlSecErrorsGetMsg</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">char</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsGetMsg" title="xmlSecErrorsGetMsg ()">xmlSecErrorsGetMsg</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERRORSSAFESTRING">xmlSecErrorsSafeString</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecErrorsSafeString" title="xmlSecErrorsSafeString()">xmlSecErrorsSafeString</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-errors.html#XMLSECERROR">xmlSecError</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecError" title="xmlSecError ()">xmlSecError</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-errors.html#XMLSECASSERT">xmlSecAssert</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecAssert" title="xmlSecAssert()">xmlSecAssert</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-errors.html#XMLSECASSERT2">xmlSecAssert2</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-errors.html#xmlSecAssert2" title="xmlSecAssert2()">xmlSecAssert2</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-ERRORS.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6197"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-errors.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-XMLSEC-FAILED:CAPS">XMLSEC_ERRORS_R_XMLSEC_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-XMLSEC-FAILED:CAPS" title="XMLSEC_ERRORS_R_XMLSEC_FAILED">XMLSEC_ERRORS_R_XMLSEC_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-MALLOC-FAILED:CAPS">XMLSEC_ERRORS_R_MALLOC_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-MALLOC-FAILED:CAPS" title="XMLSEC_ERRORS_R_MALLOC_FAILED">XMLSEC_ERRORS_R_MALLOC_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-STRDUP-FAILED:CAPS">XMLSEC_ERRORS_R_STRDUP_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-STRDUP-FAILED:CAPS" title="XMLSEC_ERRORS_R_STRDUP_FAILED">XMLSEC_ERRORS_R_STRDUP_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CRYPTO-FAILED:CAPS">XMLSEC_ERRORS_R_CRYPTO_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CRYPTO-FAILED:CAPS" title="XMLSEC_ERRORS_R_CRYPTO_FAILED">XMLSEC_ERRORS_R_CRYPTO_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-XML-FAILED:CAPS">XMLSEC_ERRORS_R_XML_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-XML-FAILED:CAPS" title="XMLSEC_ERRORS_R_XML_FAILED">XMLSEC_ERRORS_R_XML_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-XSLT-FAILED:CAPS">XMLSEC_ERRORS_R_XSLT_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-XSLT-FAILED:CAPS" title="XMLSEC_ERRORS_R_XSLT_FAILED">XMLSEC_ERRORS_R_XSLT_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-IO-FAILED:CAPS">XMLSEC_ERRORS_R_IO_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-IO-FAILED:CAPS" title="XMLSEC_ERRORS_R_IO_FAILED">XMLSEC_ERRORS_R_IO_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-DISABLED:CAPS">XMLSEC_ERRORS_R_DISABLED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-DISABLED:CAPS" title="XMLSEC_ERRORS_R_DISABLED">XMLSEC_ERRORS_R_DISABLED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-NOT-IMPLEMENTED:CAPS">XMLSEC_ERRORS_R_NOT_IMPLEMENTED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-NOT-IMPLEMENTED:CAPS" title="XMLSEC_ERRORS_R_NOT_IMPLEMENTED">XMLSEC_ERRORS_R_NOT_IMPLEMENTED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-SIZE:CAPS">XMLSEC_ERRORS_R_INVALID_SIZE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-CONFIG:CAPS" title="XMLSEC_ERRORS_R_INVALID_CONFIG">XMLSEC_ERRORS_R_INVALID_CONFIG</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-DATA:CAPS">XMLSEC_ERRORS_R_INVALID_DATA</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-SIZE:CAPS" title="XMLSEC_ERRORS_R_INVALID_SIZE">XMLSEC_ERRORS_R_INVALID_SIZE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-RESULT:CAPS">XMLSEC_ERRORS_R_INVALID_RESULT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-DATA:CAPS" title="XMLSEC_ERRORS_R_INVALID_DATA">XMLSEC_ERRORS_R_INVALID_DATA</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TYPE:CAPS">XMLSEC_ERRORS_R_INVALID_TYPE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-RESULT:CAPS" title="XMLSEC_ERRORS_R_INVALID_RESULT">XMLSEC_ERRORS_R_INVALID_RESULT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-OPERATION:CAPS">XMLSEC_ERRORS_R_INVALID_OPERATION</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TYPE:CAPS" title="XMLSEC_ERRORS_R_INVALID_TYPE">XMLSEC_ERRORS_R_INVALID_TYPE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-STATUS:CAPS">XMLSEC_ERRORS_R_INVALID_STATUS</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-OPERATION:CAPS" title="XMLSEC_ERRORS_R_INVALID_OPERATION">XMLSEC_ERRORS_R_INVALID_OPERATION</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-FORMAT:CAPS">XMLSEC_ERRORS_R_INVALID_FORMAT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-STATUS:CAPS" title="XMLSEC_ERRORS_R_INVALID_STATUS">XMLSEC_ERRORS_R_INVALID_STATUS</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-DATA-NOT-MATCH:CAPS">XMLSEC_ERRORS_R_DATA_NOT_MATCH</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-FORMAT:CAPS" title="XMLSEC_ERRORS_R_INVALID_FORMAT">XMLSEC_ERRORS_R_INVALID_FORMAT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE:CAPS">XMLSEC_ERRORS_R_INVALID_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-DATA-NOT-MATCH:CAPS" title="XMLSEC_ERRORS_R_DATA_NOT_MATCH">XMLSEC_ERRORS_R_DATA_NOT_MATCH</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE-CONTENT:CAPS">XMLSEC_ERRORS_R_INVALID_NODE_CONTENT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-VERSION:CAPS" title="XMLSEC_ERRORS_R_INVALID_VERSION">XMLSEC_ERRORS_R_INVALID_VERSION</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE-ATTRIBUTE:CAPS">XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE:CAPS" title="XMLSEC_ERRORS_R_INVALID_NODE">XMLSEC_ERRORS_R_INVALID_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-MISSING-NODE-ATTRIBUTE:CAPS">XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE-CONTENT:CAPS" title="XMLSEC_ERRORS_R_INVALID_NODE_CONTENT">XMLSEC_ERRORS_R_INVALID_NODE_CONTENT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-NODE-ALREADY-PRESENT:CAPS">XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-NODE-ATTRIBUTE:CAPS" title="XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE">XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-UNEXPECTED-NODE:CAPS">XMLSEC_ERRORS_R_UNEXPECTED_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-MISSING-NODE-ATTRIBUTE:CAPS" title="XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE">XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-NODE-NOT-FOUND:CAPS">XMLSEC_ERRORS_R_NODE_NOT_FOUND</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-NODE-ALREADY-PRESENT:CAPS" title="XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT">XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TRANSFORM:CAPS">XMLSEC_ERRORS_R_INVALID_TRANSFORM</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-UNEXPECTED-NODE:CAPS" title="XMLSEC_ERRORS_R_UNEXPECTED_NODE">XMLSEC_ERRORS_R_UNEXPECTED_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TRANSFORM-KEY:CAPS">XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-NODE-NOT-FOUND:CAPS" title="XMLSEC_ERRORS_R_NODE_NOT_FOUND">XMLSEC_ERRORS_R_NODE_NOT_FOUND</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-URI-TYPE:CAPS">XMLSEC_ERRORS_R_INVALID_URI_TYPE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TRANSFORM:CAPS" title="XMLSEC_ERRORS_R_INVALID_TRANSFORM">XMLSEC_ERRORS_R_INVALID_TRANSFORM</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-TRANSFORM-SAME-DOCUMENT-REQUIRED:CAPS">XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-TRANSFORM-KEY:CAPS" title="XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY">XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-TRANSFORM-DISABLED:CAPS">XMLSEC_ERRORS_R_TRANSFORM_DISABLED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-URI-TYPE:CAPS" title="XMLSEC_ERRORS_R_INVALID_URI_TYPE">XMLSEC_ERRORS_R_INVALID_URI_TYPE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-KEY-DATA:CAPS">XMLSEC_ERRORS_R_INVALID_KEY_DATA</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-TRANSFORM-SAME-DOCUMENT-REQUIRED:CAPS" title="XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED">XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-DATA-NOT-FOUND:CAPS">XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-TRANSFORM-DISABLED:CAPS" title="XMLSEC_ERRORS_R_TRANSFORM_DISABLED">XMLSEC_ERRORS_R_TRANSFORM_DISABLED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-DATA-ALREADY-EXIST:CAPS">XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-KEY-DATA:CAPS" title="XMLSEC_ERRORS_R_INVALID_KEY_DATA">XMLSEC_ERRORS_R_INVALID_KEY_DATA</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-KEY-DATA-SIZE:CAPS">XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-DATA-NOT-FOUND:CAPS" title="XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND">XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-NOT-FOUND:CAPS">XMLSEC_ERRORS_R_KEY_NOT_FOUND</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-DATA-ALREADY-EXIST:CAPS" title="XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST">XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEYDATA-DISABLED:CAPS">XMLSEC_ERRORS_R_KEYDATA_DISABLED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-INVALID-KEY-DATA-SIZE:CAPS" title="XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE">XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-RETRIEVALS-LEVEL:CAPS">XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEY-NOT-FOUND:CAPS" title="XMLSEC_ERRORS_R_KEY_NOT_FOUND">XMLSEC_ERRORS_R_KEY_NOT_FOUND</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-RETRIEVAL-TYPE-MISMATCH:CAPS">XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-KEYDATA-DISABLED:CAPS" title="XMLSEC_ERRORS_R_KEYDATA_DISABLED">XMLSEC_ERRORS_R_KEYDATA_DISABLED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-ENCKEY-LEVEL:CAPS">XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-RETRIEVALS-LEVEL:CAPS" title="XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL">XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-VERIFY-FAILED:CAPS">XMLSEC_ERRORS_R_CERT_VERIFY_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-RETRIEVAL-TYPE-MISMATCH:CAPS" title="XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH">XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-NOT-FOUND:CAPS">XMLSEC_ERRORS_R_CERT_NOT_FOUND</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-MAX-ENCKEY-LEVEL:CAPS" title="XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL">XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-REVOKED:CAPS">XMLSEC_ERRORS_R_CERT_REVOKED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-VERIFY-FAILED:CAPS" title="XMLSEC_ERRORS_R_CERT_VERIFY_FAILED">XMLSEC_ERRORS_R_CERT_VERIFY_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-ISSUER-FAILED:CAPS">XMLSEC_ERRORS_R_CERT_ISSUER_FAILED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-NOT-FOUND:CAPS" title="XMLSEC_ERRORS_R_CERT_NOT_FOUND">XMLSEC_ERRORS_R_CERT_NOT_FOUND</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-NOT-YET-VALID:CAPS">XMLSEC_ERRORS_R_CERT_NOT_YET_VALID</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-REVOKED:CAPS" title="XMLSEC_ERRORS_R_CERT_REVOKED">XMLSEC_ERRORS_R_CERT_REVOKED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-HAS-EXPIRED:CAPS">XMLSEC_ERRORS_R_CERT_HAS_EXPIRED</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-ISSUER-FAILED:CAPS" title="XMLSEC_ERRORS_R_CERT_ISSUER_FAILED">XMLSEC_ERRORS_R_CERT_ISSUER_FAILED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-DSIG-NO-REFERENCES:CAPS">XMLSEC_ERRORS_R_DSIG_NO_REFERENCES</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-NOT-YET-VALID:CAPS" title="XMLSEC_ERRORS_R_CERT_NOT_YET_VALID">XMLSEC_ERRORS_R_CERT_NOT_YET_VALID</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-DSIG-INVALID-REFERENCE:CAPS">XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-CERT-HAS-EXPIRED:CAPS" title="XMLSEC_ERRORS_R_CERT_HAS_EXPIRED">XMLSEC_ERRORS_R_CERT_HAS_EXPIRED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-R-ASSERTION:CAPS">XMLSEC_ERRORS_R_ASSERTION</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-DSIG-NO-REFERENCES:CAPS" title="XMLSEC_ERRORS_R_DSIG_NO_REFERENCES">XMLSEC_ERRORS_R_DSIG_NO_REFERENCES</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-MAX-NUMBER:CAPS">XMLSEC_ERRORS_MAX_NUMBER</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-DSIG-INVALID-REFERENCE:CAPS" title="XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE">XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-HERE:CAPS">XMLSEC_ERRORS_HERE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-R-ASSERTION:CAPS" title="XMLSEC_ERRORS_R_ASSERTION">XMLSEC_ERRORS_R_ASSERTION</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-errors.html#XMLSEC-ERRORS-NO-MESSAGE:CAPS">XMLSEC_ERRORS_NO_MESSAGE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-MAX-NUMBER:CAPS" title="XMLSEC_ERRORS_MAX_NUMBER">XMLSEC_ERRORS_MAX_NUMBER</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-HERE:CAPS" title="XMLSEC_ERRORS_HERE">XMLSEC_ERRORS_HERE</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-errors.html#XMLSEC-ERRORS-NO-MESSAGE:CAPS" title="XMLSEC_ERRORS_NO_MESSAGE">XMLSEC_ERRORS_NO_MESSAGE</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-ERRORS.DESCRIPTION"></a><h2>Description</h2>
-<p>Error/log messages support.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-ERRORS.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECERRORSCALLBACK"></a><h3>xmlSecErrorsCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecErrorsCallback<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-errors.description"></a><h2>Description</h2>
+<p>
+Error/log messages support.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-errors.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecErrorsCallback"></a><h3>xmlSecErrorsCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecErrorsCallback<span class="c_punctuation">)</span> (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+                         <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+                         <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>);</pre>
 <p>The errors reporting callback function.</p>
-<div class="REFSECT3">
-<a name="AEN6436"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6438"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location file name (__FILE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location file name (__FILE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function name (__func__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function name (__func__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the additional error message.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the additional error message.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSINIT"></a><h3>xmlSecErrorsInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecErrorsInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>Initializes the errors reporting. It is called from <a href="xmlsec-xmlsec.html#XMLSECINIT"><span class="TYPE">xmlSecInit</span></a> function.
+<div class="refsect2">
+<a name="xmlSecErrorsInit"></a><h3>xmlSecErrorsInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecErrorsInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Initializes the errors reporting. It is called from <a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()"><span class="type">xmlSecInit</span></a> function.
 and applications must not call this function directly.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSSHUTDOWN"></a><h3>xmlSecErrorsShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecErrorsShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>Cleanups the errors reporting. It is called from <a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN"><span class="TYPE">xmlSecShutdown</span></a> function.
+<div class="refsect2">
+<a name="xmlSecErrorsShutdown"></a><h3>xmlSecErrorsShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecErrorsShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Cleanups the errors reporting. It is called from <a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()"><span class="type">xmlSecShutdown</span></a> function.
 and applications must not call this function directly.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSSETCALLBACK"></a><h3>xmlSecErrorsSetCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecErrorsSetCallback (<code class="PARAMETER"><a href="xmlsec-errors.html#XMLSECERRORSCALLBACK"><span class="TYPE">xmlSecErrorsCallback</span></a> callback</code>);</pre>
-<p>Sets the errors callback function to <code class="PARAMETER">callback</code>
+<div class="refsect2">
+<a name="xmlSecErrorsSetCallback"></a><h3>xmlSecErrorsSetCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecErrorsSetCallback (<em class="parameter"><code><a class="link" href="xmlsec-errors.html#xmlSecErrorsCallback" title="xmlSecErrorsCallback ()"><span class="type">xmlSecErrorsCallback</span></a> callback</code></em>);</pre>
+<p>Sets the errors callback function to <em class="parameter"><code>callback</code></em>
  that will be called
 every time an error occurs.</p>
-<div class="REFSECT3">
-<a name="AEN6519"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6521"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsSetCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>callback</p></td>
-<td><p>the new errors callback function.</p></td>
-<td> </td>
+<td class="parameter_name"><p>callback</p></td>
+<td class="parameter_description"><p>the new errors callback function.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSDEFAULTCALLBACK"></a><h3>xmlSecErrorsDefaultCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecErrorsDefaultCallback (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecErrorsDefaultCallback"></a><h3>xmlSecErrorsDefaultCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecErrorsDefaultCallback (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+                             <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+                             <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>);</pre>
 <p>The default error reporting callback that utilizes LibXML
-error reporting <font><span class="TYPE">xmlGenericError</span></font> function.</p>
-<div class="REFSECT3">
-<a name="AEN6561"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6563"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+error reporting <font><span class="type">xmlGenericError</span></font> function.</p>
+<div class="refsect3">
+<a name="xmlSecErrorsDefaultCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location file name (__FILE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location file name (__FILE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function name (__FUNCTION__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function name (__FUNCTION__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the additional error message.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the additional error message.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSDEFAULTCALLBACKENABLEOUTPUT"></a><h3>xmlSecErrorsDefaultCallbackEnableOutput ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
+<div class="refsect2">
+<a name="xmlSecErrorsDefaultCallbackEnableOutput"></a><h3>xmlSecErrorsDefaultCallbackEnableOutput ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
 xmlSecErrorsDefaultCallbackEnableOutput
-                               (<code class="PARAMETER"><font><span class="TYPE">int</span></font> enabled</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">int</span></font> enabled</code></em>);</pre>
 <p>Enables or disables calling LibXML2 callback from the default
 errors callback.</p>
-<div class="REFSECT3">
-<a name="AEN6619"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6621"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsDefaultCallbackEnableOutput.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>enabled</p></td>
-<td><p>the flag.</p></td>
-<td> </td>
+<td class="parameter_name"><p>enabled</p></td>
+<td class="parameter_description"><p>the flag.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSGETCODE"></a><h3>xmlSecErrorsGetCode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecErrorsGetCode (<code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
-<p>Gets the known error code at position <code class="PARAMETER">pos</code>
+<div class="refsect2">
+<a name="xmlSecErrorsGetCode"></a><h3>xmlSecErrorsGetCode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecErrorsGetCode (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Gets the known error code at position <em class="parameter"><code>pos</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN6642"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6644"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsGetCode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>pos</p></td>
-<td><p>the error position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the error position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN6653"></a><h4>Returns</h4>
-<p> the known error code or 0 if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecErrorsGetCode.returns"></a><h4>Returns</h4>
+<p> the known error code or 0 if <em class="parameter"><code>pos</code></em>
 is greater than
 total number of known error codes.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSGETMSG"></a><h3>xmlSecErrorsGetMsg ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">char</span></font> *
-xmlSecErrorsGetMsg (<code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
-<p>Gets the known error message at position <code class="PARAMETER">pos</code>
+<div class="refsect2">
+<a name="xmlSecErrorsGetMsg"></a><h3>xmlSecErrorsGetMsg ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">char</span></font> *
+xmlSecErrorsGetMsg (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Gets the known error message at position <em class="parameter"><code>pos</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN6669"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6671"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsGetMsg.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>pos</p></td>
-<td><p>the error position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the error position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN6680"></a><h4>Returns</h4>
-<p> the known error message or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecErrorsGetMsg.returns"></a><h4>Returns</h4>
+<p> the known error message or NULL if <em class="parameter"><code>pos</code></em>
 is greater than
 total number of known error codes.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERRORSSAFESTRING"></a><h3>xmlSecErrorsSafeString()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecErrorsSafeString(str)</pre>
-<p>Macro. Returns <code class="PARAMETER">str</code>
+<div class="refsect2">
+<a name="xmlSecErrorsSafeString"></a><h3>xmlSecErrorsSafeString()</h3>
+<pre class="programlisting">#define             xmlSecErrorsSafeString(str)</pre>
+<p>Macro. Returns <em class="parameter"><code>str</code></em>
  if it is not NULL or pointer to "NULL" otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN6691"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6693"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecErrorsSafeString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECERROR"></a><h3>xmlSecError ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecError (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-             <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>,
-             <code class="PARAMETER">...</code>);</pre>
-<p>Reports an error to the default (<a href="xmlsec-errors.html#XMLSECERRORSDEFAULTCALLBACK"><span class="TYPE">xmlSecErrorsDefaultCallback</span></a>) or
-application specific callback installed using <a href="xmlsec-errors.html#XMLSECERRORSSETCALLBACK"><span class="TYPE">xmlSecErrorsSetCallback</span></a>
+<div class="refsect2">
+<a name="xmlSecError"></a><h3>xmlSecError ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecError (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+             <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+             <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+             <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+             <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+             <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+             <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>,
+             <em class="parameter"><code>...</code></em>);</pre>
+<p>Reports an error to the default (<a class="link" href="xmlsec-errors.html#xmlSecErrorsDefaultCallback" title="xmlSecErrorsDefaultCallback ()"><span class="type">xmlSecErrorsDefaultCallback</span></a>) or
+application specific callback installed using <a class="link" href="xmlsec-errors.html#xmlSecErrorsSetCallback" title="xmlSecErrorsSetCallback ()"><span class="type">xmlSecErrorsSetCallback</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN6736"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6738"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecError.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location filename (__FILE__).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location filename (__FILE__).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function (__FUNCTIION__).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function (__FUNCTIION__).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object (e.g. transform, key data, etc).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject (e.g. failed function name).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the error message in printf format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the error message in printf format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>...</p></td>
-<td><p>the parameters for the <code class="PARAMETER">msg</code>
+<td class="parameter_name"><p>...</p></td>
+<td class="parameter_description"><p>the parameters for the <em class="parameter"><code>msg</code></em>
 .</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECASSERT"></a><h3>xmlSecAssert()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecAssert( p )</pre>
-<p>Macro. Verifies that <code class="PARAMETER">p</code>
- is true and calls <font><code class="FUNCTION">return()</code></font> otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN6799"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6801"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecAssert"></a><h3>xmlSecAssert()</h3>
+<pre class="programlisting">#define             xmlSecAssert( p )</pre>
+<p>Macro. Verifies that <em class="parameter"><code>p</code></em>
+ is true and calls <font><code class="function">return()</code></font> otherwise.</p>
+<div class="refsect3">
+<a name="xmlSecAssert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>p</p></td>
-<td><p>the expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>p</p></td>
+<td class="parameter_description"><p>the expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECASSERT2"></a><h3>xmlSecAssert2()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecAssert2( p, ret )</pre>
-<p>Macro. Verifies that <code class="PARAMETER">p</code>
- is true and calls return(<code class="PARAMETER">ret</code>
+<div class="refsect2">
+<a name="xmlSecAssert2"></a><h3>xmlSecAssert2()</h3>
+<pre class="programlisting">#define             xmlSecAssert2( p, ret )</pre>
+<p>Macro. Verifies that <em class="parameter"><code>p</code></em>
+ is true and calls return(<em class="parameter"><code>ret</code></em>
 ) otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN6818"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN6820"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAssert2.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>p</p></td>
-<td><p>the expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>p</p></td>
+<td class="parameter_description"><p>the expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ret</p></td>
-<td><p>the return value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ret</p></td>
+<td class="parameter_description"><p>the return value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-ERRORS.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-errors.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-XMLSEC-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_XMLSEC_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1</pre>
-<p>An XMLSec function failed (error subject is the failed function).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
+</pre>
+<p>An XMLSec function failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-MALLOC-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_MALLOC_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_MALLOC_FAILED                   2
+</pre>
 <p>Failed to allocate memory error.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-STRDUP-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_STRDUP_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_STRDUP_FAILED                   3</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_STRDUP_FAILED                   3
+</pre>
 <p>Failed to duplicate string error.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CRYPTO-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_CRYPTO_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4</pre>
-<p>Crypto (OpenSSL) function failed (error subject is the failed function).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
+</pre>
+<p>Crypto (e.g. OpenSSL) function failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-XML-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_XML_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_XML_FAILED                      5</pre>
-<p>LibXML function failed (error subject is the failed function).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_XML_FAILED                      5
+</pre>
+<p>LibXML function failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-XSLT-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_XSLT_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_XSLT_FAILED                     6</pre>
-<p>LibXSLT function failed (error subject is the failed function).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_XSLT_FAILED                     6
+</pre>
+<p>LibXSLT function failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-IO-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_IO_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_IO_FAILED                       7</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_IO_FAILED                       7
+</pre>
 <p>IO operation failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-DISABLED:CAPS"></a><h3>XMLSEC_ERRORS_R_DISABLED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_DISABLED                        8</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_DISABLED                        8
+</pre>
 <p>The feature is disabled during compilation.
 Check './configure --help' for details on how to
 enable it.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-NOT-IMPLEMENTED:CAPS"></a><h3>XMLSEC_ERRORS_R_NOT_IMPLEMENTED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_NOT_IMPLEMENTED                 9</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_NOT_IMPLEMENTED                 9
+</pre>
 <p>Feature is not implemented.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
+<a name="XMLSEC-ERRORS-R-INVALID-CONFIG:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_CONFIG</h3>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_CONFIG                  10
+</pre>
+<p>The configuration is invalid.</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-SIZE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_SIZE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_SIZE                    11</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_SIZE                    11
+</pre>
 <p>Invalid size.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-DATA:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_DATA</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_DATA                    12</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_DATA                    12
+</pre>
 <p>Invalid data.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-RESULT:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_RESULT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_RESULT                  13</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_RESULT                  13
+</pre>
 <p>Invalid result.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-TYPE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_TYPE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_TYPE                    14</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_TYPE                    14
+</pre>
 <p>Invalid type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-OPERATION:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_OPERATION</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_OPERATION               15</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_OPERATION               15
+</pre>
 <p>Invalid operation.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-STATUS:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_STATUS</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_STATUS                  16</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_STATUS                  16
+</pre>
 <p>Invalid status.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-FORMAT:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_FORMAT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_FORMAT                  17</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_FORMAT                  17
+</pre>
 <p>Invalid format.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-DATA-NOT-MATCH:CAPS"></a><h3>XMLSEC_ERRORS_R_DATA_NOT_MATCH</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_DATA_NOT_MATCH                  18</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_DATA_NOT_MATCH                  18
+</pre>
 <p>The data do not match our expectation.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
+<a name="XMLSEC-ERRORS-R-INVALID-VERSION:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_VERSION</h3>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_VERSION                 19
+</pre>
+<p>Version mismatch.</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-NODE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_NODE                    21</pre>
-<p>Invalid node (error subject is the node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_NODE                    21
+</pre>
+<p>Invalid node.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-NODE-CONTENT:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_NODE_CONTENT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_NODE_CONTENT            22</pre>
-<p>Invalid node content (error subject is the node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_NODE_CONTENT            22
+</pre>
+<p>Invalid node content.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-NODE-ATTRIBUTE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE          23</pre>
-<p>Invalid node attribute (error subject is the node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE          23
+</pre>
+<p>Invalid node attribute.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-MISSING-NODE-ATTRIBUTE:CAPS"></a><h3>XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE          25</pre>
-<p>Missing node attribute (error subject is the node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE          25
+</pre>
+<p>Missing node attribute.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-NODE-ALREADY-PRESENT:CAPS"></a><h3>XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT            26</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT            26
+</pre>
 <p>Node already present,</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-UNEXPECTED-NODE:CAPS"></a><h3>XMLSEC_ERRORS_R_UNEXPECTED_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_UNEXPECTED_NODE                 27</pre>
-<p>Unexpected node (error subject is the node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_UNEXPECTED_NODE                 27
+</pre>
+<p>Unexpected node.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-NODE-NOT-FOUND:CAPS"></a><h3>XMLSEC_ERRORS_R_NODE_NOT_FOUND</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_NODE_NOT_FOUND                  28</pre>
-<p>Node not found (error subject is the required node name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_NODE_NOT_FOUND                  28
+</pre>
+<p>Node not found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-TRANSFORM:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_TRANSFORM</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_TRANSFORM               31</pre>
-<p>This transform is invlaid here.</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_TRANSFORM               31
+</pre>
+<p>This transform is invalid.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-TRANSFORM-KEY:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY           32</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_TRANSFORM_KEY           32
+</pre>
 <p>Key is invalid for this transform.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-URI-TYPE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_URI_TYPE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_URI_TYPE                33</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_URI_TYPE                33
+</pre>
 <p>Invalid URI type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-TRANSFORM-SAME-DOCUMENT-REQUIRED:CAPS"></a><h3>XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED        34</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED        34
+</pre>
 <p>The transform requires the input document to be the same as context.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-TRANSFORM-DISABLED:CAPS"></a><h3>XMLSEC_ERRORS_R_TRANSFORM_DISABLED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_TRANSFORM_DISABLED              35</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_TRANSFORM_DISABLED              35
+</pre>
 <p>The transform is disabled.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-KEY-DATA:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_KEY_DATA</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_KEY_DATA                41</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_KEY_DATA                41
+</pre>
 <p>Key data is invalid.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-KEY-DATA-NOT-FOUND:CAPS"></a><h3>XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND              42</pre>
-<p>Data is not found (error subject is the data name).</p>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND              42
+</pre>
+<p>Data is not found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-KEY-DATA-ALREADY-EXIST:CAPS"></a><h3>XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST          43</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST          43
+</pre>
 <p>The key data is already exist.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-INVALID-KEY-DATA-SIZE:CAPS"></a><h3>XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE           44</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE           44
+</pre>
 <p>Invalid key size.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-KEY-NOT-FOUND:CAPS"></a><h3>XMLSEC_ERRORS_R_KEY_NOT_FOUND</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_KEY_NOT_FOUND                   45</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_KEY_NOT_FOUND                   45
+</pre>
 <p>Key not found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-KEYDATA-DISABLED:CAPS"></a><h3>XMLSEC_ERRORS_R_KEYDATA_DISABLED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_KEYDATA_DISABLED                46</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_KEYDATA_DISABLED                46
+</pre>
 <p>The key data type disabled.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-MAX-RETRIEVALS-LEVEL:CAPS"></a><h3>XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL            51</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL            51
+</pre>
 <p>Max allowed retrievals level reached.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-MAX-RETRIEVAL-TYPE-MISMATCH:CAPS"></a><h3>XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH     52</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH     52
+</pre>
 <p>The retrieved key data type does not match the one specified
 in the <dsig:RetrievalMethod/> node.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-MAX-ENCKEY-LEVEL:CAPS"></a><h3>XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL                61</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL                61
+</pre>
 <p>Max EncryptedKey level reached.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-VERIFY-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_VERIFY_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_VERIFY_FAILED              71</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_VERIFY_FAILED              71
+</pre>
 <p>Certificate verification failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-NOT-FOUND:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_NOT_FOUND</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_NOT_FOUND                  72</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_NOT_FOUND                  72
+</pre>
 <p>Requested certificate is not found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-REVOKED:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_REVOKED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_REVOKED                    73</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_REVOKED                    73
+</pre>
 <p>The certificate is revoked.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-ISSUER-FAILED:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_ISSUER_FAILED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_ISSUER_FAILED              74</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_ISSUER_FAILED              74
+</pre>
 <p>Failed to get certificate issuer.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-NOT-YET-VALID:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_NOT_YET_VALID</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_NOT_YET_VALID              75</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_NOT_YET_VALID              75
+</pre>
 <p>"Not valid before" verification failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-CERT-HAS-EXPIRED:CAPS"></a><h3>XMLSEC_ERRORS_R_CERT_HAS_EXPIRED</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_CERT_HAS_EXPIRED                76</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_CERT_HAS_EXPIRED                76
+</pre>
 <p>"Not valid after" verification failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-DSIG-NO-REFERENCES:CAPS"></a><h3>XMLSEC_ERRORS_R_DSIG_NO_REFERENCES</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_DSIG_NO_REFERENCES              81</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_DSIG_NO_REFERENCES              81
+</pre>
 <p>The <dsig:Reference> nodes not found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-DSIG-INVALID-REFERENCE:CAPS"></a><h3>XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE          82</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_DSIG_INVALID_REFERENCE          82
+</pre>
 <p>The <dsig:Reference> validation failed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-R-ASSERTION:CAPS"></a><h3>XMLSEC_ERRORS_R_ASSERTION</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_R_ASSERTION                       100</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_R_ASSERTION                       100
+</pre>
 <p>Invalid assertion.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-MAX-NUMBER:CAPS"></a><h3>XMLSEC_ERRORS_MAX_NUMBER</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_MAX_NUMBER                        256</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_MAX_NUMBER                        256
+</pre>
 <p>The maximum xmlsec errors number.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-HERE:CAPS"></a><h3>XMLSEC_ERRORS_HERE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,__XMLSEC_FUNCTION__</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_HERE                      __FILE__,__LINE__,__XMLSEC_FUNCTION__
+</pre>
 <p>The macro that specifies the location (file, line and function)
-for the <a href="xmlsec-errors.html#XMLSECERROR"><code class="FUNCTION">xmlSecError()</code></a> function.</p>
+for the <a class="link" href="xmlsec-errors.html#xmlSecError" title="xmlSecError ()"><code class="function">xmlSecError()</code></a> function.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ERRORS-NO-MESSAGE:CAPS"></a><h3>XMLSEC_ERRORS_NO_MESSAGE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ERRORS_NO_MESSAGE                " "</pre>
+<pre class="programlisting">#define XMLSEC_ERRORS_NO_MESSAGE                " "
+</pre>
 <p>Empty error message " ".</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-dl.html"><b><<< dl</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-io.html"><b>io >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-examples-sign-dynamimc-template.html b/docs/api/xmlsec-examples-sign-dynamimc-template.html
index 774223c..478c435 100644
--- a/docs/api/xmlsec-examples-sign-dynamimc-template.html
+++ b/docs/api/xmlsec-examples-sign-dynamimc-template.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing a dynamicaly created template.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Signing a template file." href="xmlsec-examples-sign-template-file.html">
-<link rel="NEXT" title="Signing with X509 certificate." href="xmlsec-examples-sign-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing a dynamicaly created template.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-examples-sign-template-file.html" title="Signing a template file.">
+<link rel="next" href="xmlsec-examples-sign-x509.html" title="Signing with X509 certificate.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,26 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-examples-sign-template-file.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-examples-sign-template-file.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-examples-sign-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-EXAMPLES-SIGN-DYNAMIMC-TEMPLATE">Signing a dynamicaly created template.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN2">sign2.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN658"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-examples-sign-dynamimc-template"></a>Signing a dynamicaly created template.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign2"></a>sign2.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Signing a file with a dynamicaly created template.
  * 
  * Signs a file using a dynamicaly created template and key from PEM file.
  * The signature has one reference with one enveloped transform to sign
- * the whole document except the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node itself.
+ * the whole document except the <a class="ulink" href="" target="_top"><dsig:Signature/></a> node itself.
  * 
  * Usage: 
  *      sign2 <xml-doc> <pem-key> 
@@ -289,7 +262,7 @@ sign_file(const char* xml_file, const char* key_file) {
         goto done;              
     }
 
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node to the doc */
+    /* add <a class="ulink" href="" target="_top"><dsig:Signature/></a> node to the doc */
     xmlAddChild(xmlDocGetRootElement(doc), signNode);
     
     /* add reference */
@@ -306,7 +279,7 @@ sign_file(const char* xml_file, const char* key_file) {
         goto done;              
     }
     
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> and <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> nodes to put key name in the signed document */
+    /* add <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> and <a class="ulink" href="" target="_top"><dsig:KeyName/></a> nodes to put key name in the signed document */
     keyInfoNode = xmlSecTmplSignatureEnsureKeyInfo(signNode, NULL);
     if(keyInfoNode == NULL) {
         fprintf(stderr, "Error: failed to add key info\n");
@@ -360,16 +333,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN2-DOC">sign2-doc.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN667"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign2-doc"></a>sign2-doc.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file for sign2 example. 
 -->
@@ -377,16 +349,14 @@ XML Security Library example: Original XML doc file for sign2 example.
   <Data>
 	Hello, World!
   </Data>
-</Envelope></pre>
-<p></p>
-</div>
+</Envelope>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN2-RES">sign2-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN672"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign2-res"></a>sign2-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file for sign2 example. 
 -->
@@ -411,15 +381,12 @@ nIH/KUqvIvtk9nb2IjF5Uw==</SignatureValue>
 <KeyInfo>
 <KeyName>rsakey.pem</KeyName>
 </KeyInfo>
-</Signature></Envelope></pre>
-<p></p>
+</Signature></Envelope>
+</pre></div>
 </div>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-examples-sign-template-file.html"><b><<< Signing a template file.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-examples-sign-x509.html"><b>Signing with X509 certificate. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-examples-sign-template-file.html b/docs/api/xmlsec-examples-sign-template-file.html
index 087faab..c34958e 100644
--- a/docs/api/xmlsec-examples-sign-template-file.html
+++ b/docs/api/xmlsec-examples-sign-template-file.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing a template file.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Examples." href="xmlsec-examples.html">
-<link rel="NEXT" title="Signing a dynamicaly created template." href="xmlsec-examples-sign-dynamimc-template.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing a template file.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-examples.html" title="Examples.">
+<link rel="next" href="xmlsec-examples-sign-dynamimc-template.html" title="Signing a dynamicaly created template.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-examples.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-examples.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-examples-sign-dynamimc-template.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-EXAMPLES-SIGN-TEMPLATE-FILE">Signing a template file.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN1">sign1.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN641"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-examples-sign-template-file"></a>Signing a template file.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign1"></a>sign1.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Signing a template file.
  * 
  * Signs a template file using a key from PEM file
@@ -324,16 +297,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN1-TMPL">sign1-tmpl.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN646"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign1-tmpl"></a>sign1-tmpl.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Simple signature template file for sign1 example. 
 -->
@@ -358,16 +330,15 @@ XML Security Library example: Simple signature template file for sign1 example.
 	<KeyName/>
     </KeyInfo>
   </Signature>
-</Envelope>
</pre>
-<p></p>
-</div>
+</Envelope>
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN1-RES">sign1-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN651"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign1-res"></a>sign1-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Simple signature template file for sign1 example. 
 -->
@@ -393,15 +364,12 @@ elOnt4fo2gPK1a3IVEhMGg==</SignatureValue>
 	<KeyName>rsakey.pem</KeyName>
     </KeyInfo>
   </Signature>
-</Envelope></pre>
-<p></p>
-</div>
+</Envelope>
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-examples.html"><b><<< Examples.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-examples-sign-dynamimc-template.html"><b>Signing a dynamicaly created template. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-examples-sign-x509.html b/docs/api/xmlsec-examples-sign-x509.html
index 069b92d..d15fe78 100644
--- a/docs/api/xmlsec-examples-sign-x509.html
+++ b/docs/api/xmlsec-examples-sign-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing with X509 certificate.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Signing a dynamicaly created template." href="xmlsec-examples-sign-dynamimc-template.html">
-<link rel="NEXT" title="Verifying a signature with a single key." href="xmlsec-verify-with-key.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing with X509 certificate.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-examples-sign-dynamimc-template.html" title="Signing a dynamicaly created template.">
+<link rel="next" href="xmlsec-verify-with-key.html" title="Verifying a signature with a single key.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,27 +73,27 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-examples-sign-dynamimc-template.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-examples-sign-dynamimc-template.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-verify-with-key.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-EXAMPLES-SIGN-X509">Signing with X509 certificate.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN3">sign3.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN679"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-examples-sign-x509"></a>Signing with X509 certificate.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign3"></a>sign3.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Signing a file with a dynamicaly created template and an X509 certificate.
  * 
  * Signs a file using a dynamicaly created template, key from PEM file and
  * an X509 certificate. The signature has one reference with one enveloped 
- * transform to sign the whole document except the <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node 
- * itself. The key certificate is written in the <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Data" target="_top"><dsig:X509Data/></a> node.
+ * transform to sign the whole document except the <a class="ulink" href="" target="_top"><dsig:Signature/></a> node 
+ * itself. The key certificate is written in the <a class="ulink" href="" target="_top"><dsig:X509Data/></a> node.
  * 
  * This example was developed and tested with OpenSSL crypto library. The 
  * certificates management policies for another crypto library may break it.
@@ -264,7 +237,7 @@ main(int argc, char **argv) {
  *
  * Signs the @xml_file using private key from @key_file and dynamicaly
  * created enveloped signature template. The certificate from @cert_file
- * is placed in the <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Data" target="_top"><dsig:X509Data/></a> node.
+ * is placed in the <a class="ulink" href="" target="_top"><dsig:X509Data/></a> node.
  *
  * Returns 0 on success or a negative value if an error occurs.
  */
@@ -297,7 +270,7 @@ sign_file(const char* xml_file, const char* key_file, const char* cert_file) {
         goto done;              
     }
 
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a> node to the doc */
+    /* add <a class="ulink" href="" target="_top"><dsig:Signature/></a> node to the doc */
     xmlAddChild(xmlDocGetRootElement(doc), signNode);
     
     /* add reference */
@@ -314,7 +287,7 @@ sign_file(const char* xml_file, const char* key_file, const char* cert_file) {
         goto done;              
     }
     
-    /* add <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> and <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Data" target="_top"><dsig:X509Data/></a> */
+    /* add <a class="ulink" href="" target="_top"><dsig:KeyInfo/></a> and <a class="ulink" href="" target="_top"><dsig:X509Data/></a> */
     keyInfoNode = xmlSecTmplSignatureEnsureKeyInfo(signNode, NULL);
     if(keyInfoNode == NULL) {
         fprintf(stderr, "Error: failed to add key info\n");
@@ -385,16 +358,15 @@ done:
         xmlFreeDoc(doc); 
     }
     return(res);
-}
</pre>
-<p></p>
-</div>
+}
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN3-DOC">sign3-doc.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN690"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign3-doc"></a>sign3-doc.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file for sign3 example. 
 -->
@@ -402,16 +374,14 @@ XML Security Library example: Original XML doc file for sign3 example.
   <Data>
 	Hello, World!
   </Data>
-</Envelope></pre>
-<p></p>
-</div>
+</Envelope>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-SIGN3-RES">sign3-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN695"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-sign3-res"></a>sign3-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: Original XML doc file for sign3 example. 
 -->
@@ -457,15 +427,12 @@ hvcNAQEFBQADQQAOXBj0yICp1RmHXqnUlsppryLCW3pKBD1dkb4HWarO7RjA1yJJ
 fBjXssrERn05kpBcrRfzou4r3DCgQFPhjxga</X509Certificate>
 </X509Data>
 </KeyInfo>
-</Signature></Envelope></pre>
-<p></p>
+</Signature></Envelope>
+</pre></div>
 </div>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-examples-sign-dynamimc-template.html"><b><<< Signing a dynamicaly created template.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-verify-with-key.html"><b>Verifying a signature with a single key. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-examples.html b/docs/api/xmlsec-examples.html
index 2efb56d..bb8c6d0 100644
--- a/docs/api/xmlsec-examples.html
+++ b/docs/api/xmlsec-examples.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Examples.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Sharing the results." href="xmlsec-notes-new-crypto-sharing-results.html">
-<link rel="NEXT" title="Signing a template file." href="xmlsec-examples-sign-template-file.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Examples.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-new-crypto-sharing-results.html" title="Sharing the results.">
+<link rel="next" href="xmlsec-examples-sign-template-file.html" title="Signing a template file.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,43 +73,84 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-sharing-results.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-sharing-results.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-examples-sign-template-file.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-EXAMPLES"></a>Examples.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-examples.html#XMLSEC-EXAMPLES-OVERVIEW">XML Security Library Examples.</a></dt>
-<dt><a href="xmlsec-examples-sign-template-file.html">Signing a template file.</a></dt>
-<dt><a href="xmlsec-examples-sign-dynamimc-template.html">Signing a dynamicaly created template.</a></dt>
-<dt><a href="xmlsec-examples-sign-x509.html">Signing with X509 certificate.</a></dt>
-<dt><a href="xmlsec-verify-with-key.html">Verifying a signature with a single key.</a></dt>
-<dt><a href="xmlsec-verify-with-keys-mngr.html">Verifying a signature with keys manager.</a></dt>
-<dt><a href="xmlsec-verify-with-x509.html">Verifying a signature with X509 certificates.</a></dt>
-<dt><a href="xmlsec-verify-with-restrictions.html">Verifying a signature with additional restrictions.</a></dt>
-<dt><a href="xmlsec-encrypt-template-file.html">Encrypting data with a template file.</a></dt>
-<dt><a href="xmlsec-encrypt-dynamic-template.html">Encrypting data with a dynamicaly created template.</a></dt>
-<dt><a href="xmlsec-encrypt-with-session-key.html">Encrypting data with a session key.</a></dt>
-<dt><a href="xmlsec-decrypt-with-signle-key.html">Decrypting data with a single key.</a></dt>
-<dt><a href="xmlsec-decrypt-with-keys-mngr.html">Decrypting data with keys manager.</a></dt>
-<dt><a href="xmlsec-custom-keys-manager.html">Writing a custom keys manager.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-examples"></a>Examples.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-examples.html#xmlsec-examples-overview">XML Security Library Examples.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-template-file.html">Signing a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1">sign1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-tmpl">sign1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-res">sign1-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-dynamimc-template.html">Signing a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2">sign2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-doc">sign2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-res">sign2-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-x509.html">Signing with X509 certificate.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3">sign3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-doc">sign3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-res">sign3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-key.html">Verifying a signature with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-key.html#xmlsec-example-verify1">verify1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-keys-mngr.html">Verifying a signature with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-keys-mngr.html#xmlsec-example-verify2">verify2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-x509.html">Verifying a signature with X509 certificates.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-x509.html#xmlsec-example-verify3">verify3.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-restrictions.html">Verifying a signature with additional restrictions.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4">verify4.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-tmpl">verify4-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-res">verify4-res.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-tmpl">verify4-bad-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-res">verify4-bad-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-template-file.html">Encrypting data with a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1">encrypt1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-tmpl">encrypt1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-res">encrypt1-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-dynamic-template.html">Encrypting data with a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2">encrypt2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-doc">encrypt2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-res">encrypt2-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-with-session-key.html">Encrypting data with a session key.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3">encrypt3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-doc">encrypt3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-res">encrypt3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-signle-key.html">Decrypting data with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-signle-key.html#xmlsec-example-decrypt1">decrypt1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-keys-mngr.html">Decrypting data with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-keys-mngr.html#xmlsec-example-decrypt2">decrypt2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-custom-keys-manager.html">Writing a custom keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-custom-keys-manager.html#xmlsec-example-decrypt3">decrypt3.c</a></span></dt></dl></dd>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-EXAMPLES-OVERVIEW">XML Security Library Examples.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-examples-overview"></a>XML Security Library Examples.</h2></div></div></div>
 <p>This section contains several examples of using XML Security Library
 	to sign, veiryf, encrypt or decrypt XML documents.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-sharing-results.html"><b><<< Sharing the results.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-examples-sign-template-file.html"><b>Signing a template file. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gcrypt-app.html b/docs/api/xmlsec-gcrypt-app.html
index 11fb325..925e341 100644
--- a/docs/api/xmlsec-gcrypt-app.html
+++ b/docs/api/xmlsec-gcrypt-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for GCrypt API Reference." href="xmlsec-gcrypt-ref.html">
-<link rel="PREVIOUS" title="XML Security Library for GCrypt API Reference." href="xmlsec-gcrypt-ref.html">
-<link rel="NEXT" title="crypto" href="xmlsec-gcrypt-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-gcrypt-ref.html" title="XML Security Library for GCrypt API Reference.">
+<link rel="prev" href="xmlsec-gcrypt-ref.html" title="XML Security Library for GCrypt API Reference.">
+<link rel="next" href="xmlsec-gcrypt-crypto.html" title="crypto">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,765 +73,774 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gcrypt-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-gcrypt-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-gcrypt-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-gcrypt-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gcrypt-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-gcrypt-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-GCRYPT-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN35994"></a><h2>Name</h2>app -- Application functions implementation for GnuTLS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35999"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-gcrypt-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-gcrypt-app.top_of_page"></a>app</span></h2>
+<p>app — Application functions implementation for GnuTLS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPINIT">xmlSecGCryptAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppInit" title="xmlSecGCryptAppInit ()">xmlSecGCryptAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPSHUTDOWN">xmlSecGCryptAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppShutdown" title="xmlSecGCryptAppShutdown ()">xmlSecGCryptAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRINIT">xmlSecGCryptAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrInit" title="xmlSecGCryptAppDefaultKeysMngrInit ()">xmlSecGCryptAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecGCryptAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrAdoptKey" title="xmlSecGCryptAppDefaultKeysMngrAdoptKey ()">xmlSecGCryptAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRLOAD">xmlSecGCryptAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrLoad" title="xmlSecGCryptAppDefaultKeysMngrLoad ()">xmlSecGCryptAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRSAVE">xmlSecGCryptAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrSave" title="xmlSecGCryptAppDefaultKeysMngrSave ()">xmlSecGCryptAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYSMNGRCERTLOAD">xmlSecGCryptAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeysMngrCertLoad" title="xmlSecGCryptAppKeysMngrCertLoad ()">xmlSecGCryptAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYSMNGRCERTLOADMEMORY">xmlSecGCryptAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeysMngrCertLoadMemory" title="xmlSecGCryptAppKeysMngrCertLoadMemory ()">xmlSecGCryptAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYLOAD">xmlSecGCryptAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyLoad" title="xmlSecGCryptAppKeyLoad ()">xmlSecGCryptAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYLOADMEMORY">xmlSecGCryptAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyLoadMemory" title="xmlSecGCryptAppKeyLoadMemory ()">xmlSecGCryptAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPPKCS12LOAD">xmlSecGCryptAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppPkcs12Load" title="xmlSecGCryptAppPkcs12Load ()">xmlSecGCryptAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPPKCS12LOADMEMORY">xmlSecGCryptAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppPkcs12LoadMemory" title="xmlSecGCryptAppPkcs12LoadMemory ()">xmlSecGCryptAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYCERTLOAD">xmlSecGCryptAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyCertLoad" title="xmlSecGCryptAppKeyCertLoad ()">xmlSecGCryptAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYCERTLOADMEMORY">xmlSecGCryptAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyCertLoadMemory" title="xmlSecGCryptAppKeyCertLoadMemory ()">xmlSecGCryptAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPGETDEFAULTPWDCALLBACK">xmlSecGCryptAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppGetDefaultPwdCallback" title="xmlSecGCryptAppGetDefaultPwdCallback ()">xmlSecGCryptAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Application functions implementation for GCrypt.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPINIT"></a><h3>xmlSecGCryptAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-app.description"></a><h2>Description</h2>
+<p>
+Application functions implementation for GCrypt.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecGCryptAppInit"></a><h3>xmlSecGCryptAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN36124"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36126"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the path to GCrypt configuration (unused).</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the path to GCrypt configuration (unused).</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36135"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPSHUTDOWN"></a><h3>xmlSecGCryptAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppShutdown"></a><h3>xmlSecGCryptAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN36149"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecGCryptAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with simple keys store <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID"><span class="TYPE">xmlSecSimpleKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecGCryptAppDefaultKeysMngrInit"></a><h3>xmlSecGCryptAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with simple keys store <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId"><span class="type">xmlSecSimpleKeysStoreId</span></a>
 and a default GCrypt crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN36166"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36168"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36177"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecGCryptAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecGCryptAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecGCryptAppDefaultKeysMngrAdoptKey
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecGCryptAppDefaultKeysMngrInit</span></a>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrInit" title="xmlSecGCryptAppDefaultKeysMngrInit ()"><span class="type">xmlSecGCryptAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN36198"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36200"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36215"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecGCryptAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecGCryptAppDefaultKeysMngrLoad"></a><h3>xmlSecGCryptAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecGCryptAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN36236"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36238"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrInit" title="xmlSecGCryptAppDefaultKeysMngrInit ()"><span class="type">xmlSecGCryptAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36253"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecGCryptAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecGCryptAppDefaultKeysMngrSave"></a><h3>xmlSecGCryptAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN36274"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36276"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36297"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecGCryptAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeysMngrCertLoad"></a><h3>xmlSecGCryptAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
  (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN36322"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36324"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36352"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecGCryptAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppKeysMngrCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                       <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from binary buffer <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeysMngrCertLoadMemory"></a><h3>xmlSecGCryptAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppKeysMngrCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from binary buffer <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
  (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN36380"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36382"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate trusted or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate trusted or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36415"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYLOAD"></a><h3>xmlSecGCryptAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGCryptAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeyLoad"></a><h3>xmlSecGCryptAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGCryptAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN36441"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36443"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36476"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYLOADMEMORY"></a><h3>xmlSecGCryptAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGCryptAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeyLoadMemory"></a><h3>xmlSecGCryptAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGCryptAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the memory buffer.</p>
-<div class="REFSECT3">
-<a name="AEN36505"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36507"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of binary key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of binary key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36546"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPPKCS12LOAD"></a><h3>xmlSecGCryptAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGCryptAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppPkcs12Load"></a><h3>xmlSecGCryptAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGCryptAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file
 (not implemented yet).
 For uniformity, call xmlSecGCryptAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN36569"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36571"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36598"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPPKCS12LOADMEMORY"></a><h3>xmlSecGCryptAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGCryptAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppPkcs12LoadMemory"></a><h3>xmlSecGCryptAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGCryptAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 data in memory buffer.
 For uniformity, call xmlSecGCryptAppKeyLoadMemory instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12 (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN36624"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36626"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the PKCS12 binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the PKCS12 binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36659"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYCERTLOAD"></a><h3>xmlSecGCryptAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeyCertLoad"></a><h3>xmlSecGCryptAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key
 (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN36680"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36682"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36703"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPKEYCERTLOADMEMORY"></a><h3>xmlSecGCryptAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                  <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppKeyCertLoadMemory"></a><h3>xmlSecGCryptAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Reads the certificate from memory buffer and adds it to key (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN36726"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36728"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN36755"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecGCryptAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
-xmlSecGCryptAppGetDefaultPwdCallback (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptAppGetDefaultPwdCallback"></a><h3>xmlSecGCryptAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
+xmlSecGCryptAppGetDefaultPwdCallback (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN36768"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-app.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gcrypt-ref.html"><b><<< XML Security Library for GCrypt API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gcrypt-crypto.html"><b>crypto >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gcrypt-crypto.html b/docs/api/xmlsec-gcrypt-crypto.html
index 2870b2d..dce88fe 100644
--- a/docs/api/xmlsec-gcrypt-crypto.html
+++ b/docs/api/xmlsec-gcrypt-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>crypto</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for GCrypt API Reference." href="xmlsec-gcrypt-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-gcrypt-app.html">
-<link rel="NEXT" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>crypto: 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-gcrypt-ref.html" title="XML Security Library for GCrypt API Reference.">
+<link rel="prev" href="xmlsec-gcrypt-app.html" title="app">
+<link rel="next" href="xmlsec-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1567 +73,1644 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gcrypt-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-gcrypt-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-gcrypt-crypto.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-gcrypt-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gcrypt-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-GCRYPT-CRYPTO"></a>crypto</h1>
-<div class="REFNAMEDIV">
-<a name="AEN36779"></a><h2>Name</h2>crypto -- Crypto transforms implementation for GCrypt.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-CRYPTO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN36784"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-gcrypt-crypto"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-gcrypt-crypto.top_of_page"></a>crypto</span></h2>
+<p>crypto — Crypto transforms implementation for GCrypt.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-crypto.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECCRYPTOGETFUNCTIONS-GCRYPT">xmlSecCryptoGetFunctions_gcrypt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecCryptoGetFunctions-gcrypt" title="xmlSecCryptoGetFunctions_gcrypt ()">xmlSecCryptoGetFunctions_gcrypt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTINIT">xmlSecGCryptInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptInit" title="xmlSecGCryptInit ()">xmlSecGCryptInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTSHUTDOWN">xmlSecGCryptShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptShutdown" title="xmlSecGCryptShutdown ()">xmlSecGCryptShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYSMNGRINIT">xmlSecGCryptKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeysMngrInit" title="xmlSecGCryptKeysMngrInit ()">xmlSecGCryptKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTGENERATERANDOM">xmlSecGCryptGenerateRandom</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptGenerateRandom" title="xmlSecGCryptGenerateRandom ()">xmlSecGCryptGenerateRandom</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESGETKLASS">xmlSecGCryptKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesGetKlass" title="xmlSecGCryptKeyDataAesGetKlass ()">xmlSecGCryptKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESSET">xmlSecGCryptKeyDataAesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesSet" title="xmlSecGCryptKeyDataAesSet ()">xmlSecGCryptKeyDataAesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES128CBCGETKLASS">xmlSecGCryptTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes128CbcGetKlass" title="xmlSecGCryptTransformAes128CbcGetKlass ()">xmlSecGCryptTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES192CBCGETKLASS">xmlSecGCryptTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes192CbcGetKlass" title="xmlSecGCryptTransformAes192CbcGetKlass ()">xmlSecGCryptTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES256CBCGETKLASS">xmlSecGCryptTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes256CbcGetKlass" title="xmlSecGCryptTransformAes256CbcGetKlass ()">xmlSecGCryptTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES128GETKLASS">xmlSecGCryptTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes128GetKlass" title="xmlSecGCryptTransformKWAes128GetKlass ()">xmlSecGCryptTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES192GETKLASS">xmlSecGCryptTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes192GetKlass" title="xmlSecGCryptTransformKWAes192GetKlass ()">xmlSecGCryptTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES256GETKLASS">xmlSecGCryptTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes256GetKlass" title="xmlSecGCryptTransformKWAes256GetKlass ()">xmlSecGCryptTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESGETKLASS">xmlSecGCryptKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesGetKlass" title="xmlSecGCryptKeyDataDesGetKlass ()">xmlSecGCryptKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESSET">xmlSecGCryptKeyDataDesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesSet" title="xmlSecGCryptKeyDataDesSet ()">xmlSecGCryptKeyDataDesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDES3CBCGETKLASS">xmlSecGCryptTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDes3CbcGetKlass" title="xmlSecGCryptTransformDes3CbcGetKlass ()">xmlSecGCryptTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWDES3GETKLASS">xmlSecGCryptTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWDes3GetKlass" title="xmlSecGCryptTransformKWDes3GetKlass ()">xmlSecGCryptTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETKLASS">xmlSecGCryptKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetKlass" title="xmlSecGCryptKeyDataDsaGetKlass ()">xmlSecGCryptKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAADOPTKEY">xmlSecGCryptKeyDataDsaAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaAdoptKey" title="xmlSecGCryptKeyDataDsaAdoptKey ()">xmlSecGCryptKeyDataDsaAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAADOPTKEYPAIR">xmlSecGCryptKeyDataDsaAdoptKeyPair</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaAdoptKeyPair" title="xmlSecGCryptKeyDataDsaAdoptKeyPair ()">xmlSecGCryptKeyDataDsaAdoptKeyPair</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">gcry_sexp_t</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETPUBLICKEY">xmlSecGCryptKeyDataDsaGetPublicKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">gcry_sexp_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetPublicKey" title="xmlSecGCryptKeyDataDsaGetPublicKey ()">xmlSecGCryptKeyDataDsaGetPublicKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">gcry_sexp_t</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETPRIVATEKEY">xmlSecGCryptKeyDataDsaGetPrivateKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">gcry_sexp_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetPrivateKey" title="xmlSecGCryptKeyDataDsaGetPrivateKey ()">xmlSecGCryptKeyDataDsaGetPrivateKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDSASHA1GETKLASS">xmlSecGCryptTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDsaSha1GetKlass" title="xmlSecGCryptTransformDsaSha1GetKlass ()">xmlSecGCryptTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTHMACGETMINOUTPUTLENGTH">xmlSecGCryptHmacGetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptHmacGetMinOutputLength" title="xmlSecGCryptHmacGetMinOutputLength ()">xmlSecGCryptHmacGetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTHMACSETMINOUTPUTLENGTH">xmlSecGCryptHmacSetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptHmacSetMinOutputLength" title="xmlSecGCryptHmacSetMinOutputLength ()">xmlSecGCryptHmacSetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACGETKLASS">xmlSecGCryptKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacGetKlass" title="xmlSecGCryptKeyDataHmacGetKlass ()">xmlSecGCryptKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACSET">xmlSecGCryptKeyDataHmacSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacSet" title="xmlSecGCryptKeyDataHmacSet ()">xmlSecGCryptKeyDataHmacSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACMD5GETKLASS">xmlSecGCryptTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacMd5GetKlass" title="xmlSecGCryptTransformHmacMd5GetKlass ()">xmlSecGCryptTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACRIPEMD160GETKLASS">xmlSecGCryptTransformHmacRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacRipemd160GetKlass" title="xmlSecGCryptTransformHmacRipemd160GetKlass ()">xmlSecGCryptTransformHmacRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA1GETKLASS">xmlSecGCryptTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha1GetKlass" title="xmlSecGCryptTransformHmacSha1GetKlass ()">xmlSecGCryptTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA256GETKLASS">xmlSecGCryptTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha256GetKlass" title="xmlSecGCryptTransformHmacSha256GetKlass ()">xmlSecGCryptTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA384GETKLASS">xmlSecGCryptTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha384GetKlass" title="xmlSecGCryptTransformHmacSha384GetKlass ()">xmlSecGCryptTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA512GETKLASS">xmlSecGCryptTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha512GetKlass" title="xmlSecGCryptTransformHmacSha512GetKlass ()">xmlSecGCryptTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETKLASS">xmlSecGCryptKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetKlass" title="xmlSecGCryptKeyDataRsaGetKlass ()">xmlSecGCryptKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAADOPTKEY">xmlSecGCryptKeyDataRsaAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaAdoptKey" title="xmlSecGCryptKeyDataRsaAdoptKey ()">xmlSecGCryptKeyDataRsaAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAADOPTKEYPAIR">xmlSecGCryptKeyDataRsaAdoptKeyPair</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaAdoptKeyPair" title="xmlSecGCryptKeyDataRsaAdoptKeyPair ()">xmlSecGCryptKeyDataRsaAdoptKeyPair</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">gcry_sexp_t</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETPUBLICKEY">xmlSecGCryptKeyDataRsaGetPublicKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">gcry_sexp_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetPublicKey" title="xmlSecGCryptKeyDataRsaGetPublicKey ()">xmlSecGCryptKeyDataRsaGetPublicKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">gcry_sexp_t</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETPRIVATEKEY">xmlSecGCryptKeyDataRsaGetPrivateKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">gcry_sexp_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetPrivateKey" title="xmlSecGCryptKeyDataRsaGetPrivateKey ()">xmlSecGCryptKeyDataRsaGetPrivateKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSAMD5GETKLASS">xmlSecGCryptTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaMd5GetKlass" title="xmlSecGCryptTransformRsaMd5GetKlass ()">xmlSecGCryptTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSARIPEMD160GETKLASS">xmlSecGCryptTransformRsaRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaRipemd160GetKlass" title="xmlSecGCryptTransformRsaRipemd160GetKlass ()">xmlSecGCryptTransformRsaRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA1GETKLASS">xmlSecGCryptTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha1GetKlass" title="xmlSecGCryptTransformRsaSha1GetKlass ()">xmlSecGCryptTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA256GETKLASS">xmlSecGCryptTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha256GetKlass" title="xmlSecGCryptTransformRsaSha256GetKlass ()">xmlSecGCryptTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA384GETKLASS">xmlSecGCryptTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha384GetKlass" title="xmlSecGCryptTransformRsaSha384GetKlass ()">xmlSecGCryptTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA512GETKLASS">xmlSecGCryptTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha512GetKlass" title="xmlSecGCryptTransformRsaSha512GetKlass ()">xmlSecGCryptTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA1GETKLASS">xmlSecGCryptTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha1GetKlass" title="xmlSecGCryptTransformSha1GetKlass ()">xmlSecGCryptTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA256GETKLASS">xmlSecGCryptTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha256GetKlass" title="xmlSecGCryptTransformSha256GetKlass ()">xmlSecGCryptTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA384GETKLASS">xmlSecGCryptTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha384GetKlass" title="xmlSecGCryptTransformSha384GetKlass ()">xmlSecGCryptTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA512GETKLASS">xmlSecGCryptTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha512GetKlass" title="xmlSecGCryptTransformSha512GetKlass ()">xmlSecGCryptTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMMD5GETKLASS">xmlSecGCryptTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformMd5GetKlass" title="xmlSecGCryptTransformMd5GetKlass ()">xmlSecGCryptTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRIPEMD160GETKLASS">xmlSecGCryptTransformRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRipemd160GetKlass" title="xmlSecGCryptTransformRipemd160GetKlass ()">xmlSecGCryptTransformRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-CRYPTO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37139"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-crypto.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESID">xmlSecGCryptKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesId" title="xmlSecGCryptKeyDataAesId">xmlSecGCryptKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES128CBCID">xmlSecGCryptTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes128CbcId" title="xmlSecGCryptTransformAes128CbcId">xmlSecGCryptTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES192CBCID">xmlSecGCryptTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes192CbcId" title="xmlSecGCryptTransformAes192CbcId">xmlSecGCryptTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES256CBCID">xmlSecGCryptTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes256CbcId" title="xmlSecGCryptTransformAes256CbcId">xmlSecGCryptTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES128ID">xmlSecGCryptTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes128Id" title="xmlSecGCryptTransformKWAes128Id">xmlSecGCryptTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES192ID">xmlSecGCryptTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes192Id" title="xmlSecGCryptTransformKWAes192Id">xmlSecGCryptTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES256ID">xmlSecGCryptTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes256Id" title="xmlSecGCryptTransformKWAes256Id">xmlSecGCryptTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESID">xmlSecGCryptKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesId" title="xmlSecGCryptKeyDataDesId">xmlSecGCryptKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDES3CBCID">xmlSecGCryptTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDes3CbcId" title="xmlSecGCryptTransformDes3CbcId">xmlSecGCryptTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWDES3ID">xmlSecGCryptTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWDes3Id" title="xmlSecGCryptTransformKWDes3Id">xmlSecGCryptTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAID">xmlSecGCryptKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaId" title="xmlSecGCryptKeyDataDsaId">xmlSecGCryptKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDSASHA1ID">xmlSecGCryptTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDsaSha1Id" title="xmlSecGCryptTransformDsaSha1Id">xmlSecGCryptTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACID">xmlSecGCryptKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacId" title="xmlSecGCryptKeyDataHmacId">xmlSecGCryptKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACMD5ID">xmlSecGCryptTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacMd5Id" title="xmlSecGCryptTransformHmacMd5Id">xmlSecGCryptTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACRIPEMD160ID">xmlSecGCryptTransformHmacRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacRipemd160Id" title="xmlSecGCryptTransformHmacRipemd160Id">xmlSecGCryptTransformHmacRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA1ID">xmlSecGCryptTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha1Id" title="xmlSecGCryptTransformHmacSha1Id">xmlSecGCryptTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA256ID">xmlSecGCryptTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha256Id" title="xmlSecGCryptTransformHmacSha256Id">xmlSecGCryptTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA384ID">xmlSecGCryptTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha384Id" title="xmlSecGCryptTransformHmacSha384Id">xmlSecGCryptTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA512ID">xmlSecGCryptTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha512Id" title="xmlSecGCryptTransformHmacSha512Id">xmlSecGCryptTransformHmacSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAID">xmlSecGCryptKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaId" title="xmlSecGCryptKeyDataRsaId">xmlSecGCryptKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSAMD5ID">xmlSecGCryptTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaMd5Id" title="xmlSecGCryptTransformRsaMd5Id">xmlSecGCryptTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSARIPEMD160ID">xmlSecGCryptTransformRsaRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaRipemd160Id" title="xmlSecGCryptTransformRsaRipemd160Id">xmlSecGCryptTransformRsaRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA1ID">xmlSecGCryptTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha1Id" title="xmlSecGCryptTransformRsaSha1Id">xmlSecGCryptTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA256ID">xmlSecGCryptTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha256Id" title="xmlSecGCryptTransformRsaSha256Id">xmlSecGCryptTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA384ID">xmlSecGCryptTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha384Id" title="xmlSecGCryptTransformRsaSha384Id">xmlSecGCryptTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA512ID">xmlSecGCryptTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha512Id" title="xmlSecGCryptTransformRsaSha512Id">xmlSecGCryptTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA1ID">xmlSecGCryptTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha1Id" title="xmlSecGCryptTransformSha1Id">xmlSecGCryptTransformSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA256ID">xmlSecGCryptTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha256Id" title="xmlSecGCryptTransformSha256Id">xmlSecGCryptTransformSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA384ID">xmlSecGCryptTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha384Id" title="xmlSecGCryptTransformSha384Id">xmlSecGCryptTransformSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA512ID">xmlSecGCryptTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha512Id" title="xmlSecGCryptTransformSha512Id">xmlSecGCryptTransformSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMMD5ID">xmlSecGCryptTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformMd5Id" title="xmlSecGCryptTransformMd5Id">xmlSecGCryptTransformMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRIPEMD160ID">xmlSecGCryptTransformRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRipemd160Id" title="xmlSecGCryptTransformRipemd160Id">xmlSecGCryptTransformRipemd160Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-CRYPTO.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto transforms implementation for GCrypt.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-CRYPTO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOGETFUNCTIONS-GCRYPT"></a><h3>xmlSecCryptoGetFunctions_gcrypt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoGetFunctions_gcrypt (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-crypto.description"></a><h2>Description</h2>
+<p>
+Crypto transforms implementation for GCrypt.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-crypto.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoGetFunctions-gcrypt"></a><h3>xmlSecCryptoGetFunctions_gcrypt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoGetFunctions_gcrypt (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the pointer to xmlsec-gcrypt functions table.</p>
-<div class="REFSECT3">
-<a name="AEN37285"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoGetFunctions-gcrypt.returns"></a><h4>Returns</h4>
 <p> the xmlsec-gcrypt functions table or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTINIT"></a><h3>xmlSecGCryptInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptInit"></a><h3>xmlSecGCryptInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN37298"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTSHUTDOWN"></a><h3>xmlSecGCryptShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptShutdown"></a><h3>xmlSecGCryptShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN37311"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYSMNGRINIT"></a><h3>xmlSecGCryptKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeysMngrInit"></a><h3>xmlSecGCryptKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds GCrypt specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN37325"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37327"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN37336"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTGENERATERANDOM"></a><h3>xmlSecGCryptGenerateRandom ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptGenerateRandom (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buffer</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Generates <code class="PARAMETER">size</code>
- random bytes and puts result in <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecGCryptGenerateRandom"></a><h3>xmlSecGCryptGenerateRandom ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptGenerateRandom (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buffer</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>Generates <em class="parameter"><code>size</code></em>
+ random bytes and puts result in <em class="parameter"><code>buffer</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN37355"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37357"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptGenerateRandom.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the destination buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the destination buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the numer of bytes to generate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the numer of bytes to generate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37372"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptGenerateRandom.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAAESGETKLASS"></a><h3>xmlSecGCryptKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGCryptKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataAesGetKlass"></a><h3>xmlSecGCryptKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGCryptKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN37385"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAAESSET"></a><h3>xmlSecGCryptKeyDataAesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataAesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                           <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataAesSet"></a><h3>xmlSecGCryptKeyDataAesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataAesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                           <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of AES key data.</p>
-<div class="REFSECT3">
-<a name="AEN37405"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37407"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataAesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to AES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to AES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37428"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataAesSet.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="XMLSECGCRYPTTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecGCryptTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes128CbcGetKlass"></a><h3>xmlSecGCryptTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformAes128CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37441"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecGCryptTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes192CbcGetKlass"></a><h3>xmlSecGCryptTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformAes192CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37454"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecGCryptTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes256CbcGetKlass"></a><h3>xmlSecGCryptTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformAes256CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37467"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecGCryptTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformKWAes128GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes128GetKlass"></a><h3>xmlSecGCryptTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformKWAes128GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37480"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecGCryptTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformKWAes192GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes192GetKlass"></a><h3>xmlSecGCryptTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformKWAes192GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37493"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecGCryptTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformKWAes256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes256GetKlass"></a><h3>xmlSecGCryptTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformKWAes256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37506"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADESGETKLASS"></a><h3>xmlSecGCryptKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGCryptKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDesGetKlass"></a><h3>xmlSecGCryptKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGCryptKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN37519"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADESSET"></a><h3>xmlSecGCryptKeyDataDesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataDesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                           <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDesSet"></a><h3>xmlSecGCryptKeyDataDesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataDesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                           <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of DES key data.</p>
-<div class="REFSECT3">
-<a name="AEN37539"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37541"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37562"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDesSet.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="XMLSECGCRYPTTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecGCryptTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformDes3CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformDes3CbcGetKlass"></a><h3>xmlSecGCryptTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformDes3CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37575"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecGCryptTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWDes3GetKlass"></a><h3>xmlSecGCryptTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37588"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAGETKLASS"></a><h3>xmlSecGCryptKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGCryptKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaGetKlass"></a><h3>xmlSecGCryptKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGCryptKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN37601"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to DSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAADOPTKEY"></a><h3>xmlSecGCryptKeyDataDsaAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataDsaAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> dsa_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaAdoptKey"></a><h3>xmlSecGCryptKeyDataDsaAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataDsaAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> dsa_key</code></em>);</pre>
 <p>Sets the value of DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37618"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37620"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dsa_key</p></td>
-<td><p>the pointer to GCrypt DSA key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsa_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt DSA key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37635"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAADOPTKEYPAIR"></a><h3>xmlSecGCryptKeyDataDsaAdoptKeyPair ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataDsaAdoptKeyPair (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> pub_key</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> priv_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaAdoptKeyPair"></a><h3>xmlSecGCryptKeyDataDsaAdoptKeyPair ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataDsaAdoptKeyPair (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                    <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> pub_key</code></em>,
+                                    <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> priv_key</code></em>);</pre>
 <p>Sets the value of DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37655"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37657"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaAdoptKeyPair.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pub_key</p></td>
-<td><p>the pointer to GCrypt DSA pub key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pub_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt DSA pub key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>priv_key</p></td>
-<td><p>the pointer to GCrypt DSA priv key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>priv_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt DSA priv key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN37678"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaAdoptKeyPair.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAGETPUBLICKEY"></a><h3>xmlSecGCryptKeyDataDsaGetPublicKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">gcry_sexp_t</span></font>
-xmlSecGCryptKeyDataDsaGetPublicKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaGetPublicKey"></a><h3>xmlSecGCryptKeyDataDsaGetPublicKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gcry_sexp_t</span></font>
+xmlSecGCryptKeyDataDsaGetPublicKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the GCrypt DSA public key from DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37692"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37694"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaGetPublicKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37703"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaGetPublicKey.returns"></a><h4>Returns</h4>
 <p> pointer to GCrypt public DSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAGETPRIVATEKEY"></a><h3>xmlSecGCryptKeyDataDsaGetPrivateKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">gcry_sexp_t</span></font>
-xmlSecGCryptKeyDataDsaGetPrivateKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaGetPrivateKey"></a><h3>xmlSecGCryptKeyDataDsaGetPrivateKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gcry_sexp_t</span></font>
+xmlSecGCryptKeyDataDsaGetPrivateKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the GCrypt DSA private key from DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37717"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37719"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaGetPrivateKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN37728"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataDsaGetPrivateKey.returns"></a><h4>Returns</h4>
 <p> pointer to GCrypt private DSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecGCryptTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformDsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformDsaSha1GetKlass"></a><h3>xmlSecGCryptTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformDsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37741"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTHMACGETMINOUTPUTLENGTH"></a><h3>xmlSecGCryptHmacGetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptHmacGetMinOutputLength (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptHmacGetMinOutputLength"></a><h3>xmlSecGCryptHmacGetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptHmacGetMinOutputLength (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the value of min HMAC length.</p>
-<div class="REFSECT3">
-<a name="AEN37754"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptHmacGetMinOutputLength.returns"></a><h4>Returns</h4>
 <p> the min HMAC output length</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTHMACSETMINOUTPUTLENGTH"></a><h3>xmlSecGCryptHmacSetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecGCryptHmacSetMinOutputLength (<code class="PARAMETER"><font><span class="TYPE">int</span></font> min_length</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptHmacSetMinOutputLength"></a><h3>xmlSecGCryptHmacSetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecGCryptHmacSetMinOutputLength (<em class="parameter"><code><font><span class="type">int</span></font> min_length</code></em>);</pre>
 <p>Sets the min HMAC output length</p>
-<div class="REFSECT3">
-<a name="AEN37768"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37770"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptHmacSetMinOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>min_length</p></td>
-<td><p>the new min length</p></td>
-<td> </td>
+<td class="parameter_name"><p>min_length</p></td>
+<td class="parameter_description"><p>the new min length</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAHMACGETKLASS"></a><h3>xmlSecGCryptKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGCryptKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataHmacGetKlass"></a><h3>xmlSecGCryptKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGCryptKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN37789"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAHMACSET"></a><h3>xmlSecGCryptKeyDataHmacSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataHmacSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                            <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataHmacSet"></a><h3>xmlSecGCryptKeyDataHmacSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataHmacSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                            <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of HMAC key data.</p>
-<div class="REFSECT3">
-<a name="AEN37809"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37811"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataHmacSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to HMAC key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to HMAC key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN37832"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataHmacSet.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="XMLSECGCRYPTTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecGCryptTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformHmacMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacMd5GetKlass"></a><h3>xmlSecGCryptTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformHmacMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37845"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACRIPEMD160GETKLASS"></a><h3>xmlSecGCryptTransformHmacRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacRipemd160GetKlass"></a><h3>xmlSecGCryptTransformHmacRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformHmacRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-RIPEMD160 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37858"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-RIPEMD160 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecGCryptTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformHmacSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha1GetKlass"></a><h3>xmlSecGCryptTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformHmacSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37871"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecGCryptTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha256GetKlass"></a><h3>xmlSecGCryptTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformHmacSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37884"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecGCryptTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha384GetKlass"></a><h3>xmlSecGCryptTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformHmacSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37897"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecGCryptTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha512GetKlass"></a><h3>xmlSecGCryptTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformHmacSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN37910"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAGETKLASS"></a><h3>xmlSecGCryptKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGCryptKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaGetKlass"></a><h3>xmlSecGCryptKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGCryptKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GCrypt RSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN37923"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GCrypt RSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAADOPTKEY"></a><h3>xmlSecGCryptKeyDataRsaAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataRsaAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> rsa_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaAdoptKey"></a><h3>xmlSecGCryptKeyDataRsaAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataRsaAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> rsa_key</code></em>);</pre>
 <p>Sets the value of RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37940"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37942"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>rsa_key</p></td>
-<td><p>the pointer to GCrypt RSA key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>rsa_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt RSA key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN37957"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAADOPTKEYPAIR"></a><h3>xmlSecGCryptKeyDataRsaAdoptKeyPair ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGCryptKeyDataRsaAdoptKeyPair (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> pub_key</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">gcry_sexp_t</span></font> priv_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaAdoptKeyPair"></a><h3>xmlSecGCryptKeyDataRsaAdoptKeyPair ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGCryptKeyDataRsaAdoptKeyPair (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                    <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> pub_key</code></em>,
+                                    <em class="parameter"><code><font><span class="type">gcry_sexp_t</span></font> priv_key</code></em>);</pre>
 <p>Sets the value of RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN37977"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN37979"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaAdoptKeyPair.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pub_key</p></td>
-<td><p>the pointer to GCrypt RSA pub key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pub_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt RSA pub key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>priv_key</p></td>
-<td><p>the pointer to GCrypt RSA priv key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>priv_key</p></td>
+<td class="parameter_description"><p>the pointer to GCrypt RSA priv key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38000"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaAdoptKeyPair.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAGETPUBLICKEY"></a><h3>xmlSecGCryptKeyDataRsaGetPublicKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">gcry_sexp_t</span></font>
-xmlSecGCryptKeyDataRsaGetPublicKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaGetPublicKey"></a><h3>xmlSecGCryptKeyDataRsaGetPublicKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gcry_sexp_t</span></font>
+xmlSecGCryptKeyDataRsaGetPublicKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the GCrypt RSA public key from RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN38014"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38016"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaGetPublicKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38025"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaGetPublicKey.returns"></a><h4>Returns</h4>
 <p> pointer to GCrypt public RSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAGETPRIVATEKEY"></a><h3>xmlSecGCryptKeyDataRsaGetPrivateKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">gcry_sexp_t</span></font>
-xmlSecGCryptKeyDataRsaGetPrivateKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaGetPrivateKey"></a><h3>xmlSecGCryptKeyDataRsaGetPrivateKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gcry_sexp_t</span></font>
+xmlSecGCryptKeyDataRsaGetPrivateKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the GCrypt RSA private key from RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN38039"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38041"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaGetPrivateKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN38050"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptKeyDataRsaGetPrivateKey.returns"></a><h4>Returns</h4>
 <p> pointer to GCrypt private RSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecGCryptTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaMd5GetKlass"></a><h3>xmlSecGCryptTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38063"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSARIPEMD160GETKLASS"></a><h3>xmlSecGCryptTransformRsaRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaRipemd160GetKlass"></a><h3>xmlSecGCryptTransformRsaRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformRsaRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38076"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-RIPEMD160 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecGCryptTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformRsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha1GetKlass"></a><h3>xmlSecGCryptTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformRsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38089"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecGCryptTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha256GetKlass"></a><h3>xmlSecGCryptTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformRsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38102"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecGCryptTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha384GetKlass"></a><h3>xmlSecGCryptTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformRsaSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38115"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecGCryptTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha512GetKlass"></a><h3>xmlSecGCryptTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformRsaSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38128"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA1GETKLASS"></a><h3>xmlSecGCryptTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha1GetKlass"></a><h3>xmlSecGCryptTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38141"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA256GETKLASS"></a><h3>xmlSecGCryptTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha256GetKlass"></a><h3>xmlSecGCryptTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38154"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA256 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA384GETKLASS"></a><h3>xmlSecGCryptTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha384GetKlass"></a><h3>xmlSecGCryptTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38167"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA384 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA512GETKLASS"></a><h3>xmlSecGCryptTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha512GetKlass"></a><h3>xmlSecGCryptTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38180"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA512 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMMD5GETKLASS"></a><h3>xmlSecGCryptTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGCryptTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformMd5GetKlass"></a><h3>xmlSecGCryptTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGCryptTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>MD5 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38193"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MD5 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRIPEMD160GETKLASS"></a><h3>xmlSecGCryptTransformRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRipemd160GetKlass"></a><h3>xmlSecGCryptTransformRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGCryptTransformRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>RIPEMD160 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN38206"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGCryptTransformRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to RIPEMD160 digest transform klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-GCRYPT-CRYPTO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAAESID"></a><h3>xmlSecGCryptKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptKeyDataAesId</pre>
+<div class="refsect1">
+<a name="xmlsec-gcrypt-crypto.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataAesId"></a><h3>xmlSecGCryptKeyDataAesId</h3>
+<pre class="programlisting">#define             xmlSecGCryptKeyDataAesId</pre>
 <p>The AES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMAES128CBCID"></a><h3>xmlSecGCryptTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformAes128CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes128CbcId"></a><h3>xmlSecGCryptTransformAes128CbcId</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformAes128CbcId</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMAES192CBCID"></a><h3>xmlSecGCryptTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformAes192CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes192CbcId"></a><h3>xmlSecGCryptTransformAes192CbcId</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformAes192CbcId</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMAES256CBCID"></a><h3>xmlSecGCryptTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformAes256CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformAes256CbcId"></a><h3>xmlSecGCryptTransformAes256CbcId</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformAes256CbcId</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES128ID"></a><h3>xmlSecGCryptTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformKWAes128Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes128Id"></a><h3>xmlSecGCryptTransformKWAes128Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformKWAes128Id</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES192ID"></a><h3>xmlSecGCryptTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformKWAes192Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes192Id"></a><h3>xmlSecGCryptTransformKWAes192Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformKWAes192Id</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWAES256ID"></a><h3>xmlSecGCryptTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformKWAes256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWAes256Id"></a><h3>xmlSecGCryptTransformKWAes256Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformKWAes256Id</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADESID"></a><h3>xmlSecGCryptKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptKeyDataDesId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDesId"></a><h3>xmlSecGCryptKeyDataDesId</h3>
+<pre class="programlisting">#define             xmlSecGCryptKeyDataDesId</pre>
 <p>The DES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMDES3CBCID"></a><h3>xmlSecGCryptTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformDes3CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformDes3CbcId"></a><h3>xmlSecGCryptTransformDes3CbcId</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformDes3CbcId</pre>
 <p>The DES3 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMKWDES3ID"></a><h3>xmlSecGCryptTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformKWDes3Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformKWDes3Id"></a><h3>xmlSecGCryptTransformKWDes3Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformKWDes3Id</pre>
 <p>The DES3 KW transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATADSAID"></a><h3>xmlSecGCryptKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptKeyDataDsaId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataDsaId"></a><h3>xmlSecGCryptKeyDataDsaId</h3>
+<pre class="programlisting">#define             xmlSecGCryptKeyDataDsaId</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMDSASHA1ID"></a><h3>xmlSecGCryptTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformDsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformDsaSha1Id"></a><h3>xmlSecGCryptTransformDsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformDsaSha1Id</pre>
 <p>The DSA SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATAHMACID"></a><h3>xmlSecGCryptKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptKeyDataHmacId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataHmacId"></a><h3>xmlSecGCryptKeyDataHmacId</h3>
+<pre class="programlisting">#define             xmlSecGCryptKeyDataHmacId</pre>
 <p>The HMAC key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACMD5ID"></a><h3>xmlSecGCryptTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacMd5Id"></a><h3>xmlSecGCryptTransformHmacMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacMd5Id</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACRIPEMD160ID"></a><h3>xmlSecGCryptTransformHmacRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacRipemd160Id"></a><h3>xmlSecGCryptTransformHmacRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacRipemd160Id</pre>
 <p>The HMAC with RipeMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA1ID"></a><h3>xmlSecGCryptTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha1Id"></a><h3>xmlSecGCryptTransformHmacSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA256ID"></a><h3>xmlSecGCryptTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha256Id"></a><h3>xmlSecGCryptTransformHmacSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA384ID"></a><h3>xmlSecGCryptTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha384Id"></a><h3>xmlSecGCryptTransformHmacSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMHMACSHA512ID"></a><h3>xmlSecGCryptTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformHmacSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformHmacSha512Id"></a><h3>xmlSecGCryptTransformHmacSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformHmacSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTKEYDATARSAID"></a><h3>xmlSecGCryptKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptKeyDataRsaId</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptKeyDataRsaId"></a><h3>xmlSecGCryptKeyDataRsaId</h3>
+<pre class="programlisting">#define             xmlSecGCryptKeyDataRsaId</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSAMD5ID"></a><h3>xmlSecGCryptTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaMd5Id"></a><h3>xmlSecGCryptTransformRsaMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaMd5Id</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSARIPEMD160ID"></a><h3>xmlSecGCryptTransformRsaRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaRipemd160Id"></a><h3>xmlSecGCryptTransformRsaRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaRipemd160Id</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA1ID"></a><h3>xmlSecGCryptTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha1Id"></a><h3>xmlSecGCryptTransformRsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaSha1Id</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA256ID"></a><h3>xmlSecGCryptTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha256Id"></a><h3>xmlSecGCryptTransformRsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaSha256Id</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA384ID"></a><h3>xmlSecGCryptTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha384Id"></a><h3>xmlSecGCryptTransformRsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaSha384Id</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRSASHA512ID"></a><h3>xmlSecGCryptTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRsaSha512Id"></a><h3>xmlSecGCryptTransformRsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRsaSha512Id</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA1ID"></a><h3>xmlSecGCryptTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha1Id"></a><h3>xmlSecGCryptTransformSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA256ID"></a><h3>xmlSecGCryptTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha256Id"></a><h3>xmlSecGCryptTransformSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA384ID"></a><h3>xmlSecGCryptTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha384Id"></a><h3>xmlSecGCryptTransformSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMSHA512ID"></a><h3>xmlSecGCryptTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformSha512Id"></a><h3>xmlSecGCryptTransformSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMMD5ID"></a><h3>xmlSecGCryptTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformMd5Id"></a><h3>xmlSecGCryptTransformMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformMd5Id</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGCRYPTTRANSFORMRIPEMD160ID"></a><h3>xmlSecGCryptTransformRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGCryptTransformRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGCryptTransformRipemd160Id"></a><h3>xmlSecGCryptTransformRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGCryptTransformRipemd160Id</pre>
 <p>The RIPEMD160 digest transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gcrypt-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-ref.html"><b>XML Security Library for NSS API Reference. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gcrypt-ref.html b/docs/api/xmlsec-gcrypt-ref.html
index 4f0a122..efba273 100644
--- a/docs/api/xmlsec-gcrypt-ref.html
+++ b/docs/api/xmlsec-gcrypt-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library for GCrypt API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="crypto" href="xmlsec-gnutls-crypto.html">
-<link rel="NEXT" title="app" href="xmlsec-gcrypt-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library for GCrypt API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-gnutls-x509.html" title="x509">
+<link rel="next" href="xmlsec-gcrypt-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,31 +73,30 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gnutls-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gnutls-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-gcrypt-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-GCRYPT-REF"></a>XML Security Library for GCrypt API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-gcrypt-ref"></a>XML Security Library for GCrypt API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-gcrypt-app.html">app</a> -- Application functions implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
 <dt>
-<a href="xmlsec-gcrypt-crypto.html">crypto</a> -- Crypto transforms implementation for GCrypt.</dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GCrypt.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec-gcrypt. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gnutls-crypto.html"><b><<< crypto</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gcrypt-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gnutls-app.html b/docs/api/xmlsec-gnutls-app.html
index b22d30b..bd2d5f1 100644
--- a/docs/api/xmlsec-gnutls-app.html
+++ b/docs/api/xmlsec-gnutls-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for GnuTLS API Reference." href="xmlsec-gnutls-ref.html">
-<link rel="PREVIOUS" title="XML Security Library for GnuTLS API Reference." href="xmlsec-gnutls-ref.html">
-<link rel="NEXT" title="crypto" href="xmlsec-gnutls-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-gnutls-ref.html" title="XML Security Library for GnuTLS API Reference.">
+<link rel="prev" href="xmlsec-gnutls-ref.html" title="XML Security Library for GnuTLS API Reference.">
+<link rel="next" href="xmlsec-gnutls-crypto.html" title="crypto">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,763 +73,772 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gnutls-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-gnutls-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-gnutls-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-gnutls-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gnutls-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-gnutls-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-GNUTLS-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN33687"></a><h2>Name</h2>app -- Application functions implementation for GnuTLS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33692"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-gnutls-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-gnutls-app.top_of_page"></a>app</span></h2>
+<p>app — Application functions implementation for GnuTLS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPINIT">xmlSecGnuTLSAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppInit" title="xmlSecGnuTLSAppInit ()">xmlSecGnuTLSAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPSHUTDOWN">xmlSecGnuTLSAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppShutdown" title="xmlSecGnuTLSAppShutdown ()">xmlSecGnuTLSAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRINIT">xmlSecGnuTLSAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrInit" title="xmlSecGnuTLSAppDefaultKeysMngrInit ()">xmlSecGnuTLSAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecGnuTLSAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrAdoptKey" title="xmlSecGnuTLSAppDefaultKeysMngrAdoptKey ()">xmlSecGnuTLSAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRLOAD">xmlSecGnuTLSAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrLoad" title="xmlSecGnuTLSAppDefaultKeysMngrLoad ()">xmlSecGnuTLSAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRSAVE">xmlSecGnuTLSAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrSave" title="xmlSecGnuTLSAppDefaultKeysMngrSave ()">xmlSecGnuTLSAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYSMNGRCERTLOAD">xmlSecGnuTLSAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeysMngrCertLoad" title="xmlSecGnuTLSAppKeysMngrCertLoad ()">xmlSecGnuTLSAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYSMNGRCERTLOADMEMORY">xmlSecGnuTLSAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeysMngrCertLoadMemory" title="xmlSecGnuTLSAppKeysMngrCertLoadMemory ()">xmlSecGnuTLSAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYLOAD">xmlSecGnuTLSAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyLoad" title="xmlSecGnuTLSAppKeyLoad ()">xmlSecGnuTLSAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYLOADMEMORY">xmlSecGnuTLSAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyLoadMemory" title="xmlSecGnuTLSAppKeyLoadMemory ()">xmlSecGnuTLSAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPPKCS12LOAD">xmlSecGnuTLSAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppPkcs12Load" title="xmlSecGnuTLSAppPkcs12Load ()">xmlSecGnuTLSAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPPKCS12LOADMEMORY">xmlSecGnuTLSAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppPkcs12LoadMemory" title="xmlSecGnuTLSAppPkcs12LoadMemory ()">xmlSecGnuTLSAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYCERTLOAD">xmlSecGnuTLSAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyCertLoad" title="xmlSecGnuTLSAppKeyCertLoad ()">xmlSecGnuTLSAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYCERTLOADMEMORY">xmlSecGnuTLSAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyCertLoadMemory" title="xmlSecGnuTLSAppKeyCertLoadMemory ()">xmlSecGnuTLSAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPGETDEFAULTPWDCALLBACK">xmlSecGnuTLSAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppGetDefaultPwdCallback" title="xmlSecGnuTLSAppGetDefaultPwdCallback ()">xmlSecGnuTLSAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Application functions implementation for GnuTLS.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPINIT"></a><h3>xmlSecGnuTLSAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-app.description"></a><h2>Description</h2>
+<p>
+Application functions implementation for GnuTLS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppInit"></a><h3>xmlSecGnuTLSAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN33817"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33819"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the path to GnuTLS configuration (unused).</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the path to GnuTLS configuration (unused).</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33828"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPSHUTDOWN"></a><h3>xmlSecGnuTLSAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppShutdown"></a><h3>xmlSecGnuTLSAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN33842"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with simple keys store <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID"><span class="TYPE">xmlSecSimpleKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrInit"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with simple keys store <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId"><span class="type">xmlSecSimpleKeysStoreId</span></a>
 and a default GnuTLS crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN33859"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33861"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33870"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecGnuTLSAppDefaultKeysMngrAdoptKey
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecGnuTLSAppDefaultKeysMngrInit</span></a>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrInit" title="xmlSecGnuTLSAppDefaultKeysMngrInit ()"><span class="type">xmlSecGnuTLSAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN33891"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33893"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33908"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrLoad"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecGnuTLSAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN33929"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33931"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrInit" title="xmlSecGnuTLSAppDefaultKeysMngrInit ()"><span class="type">xmlSecGnuTLSAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33946"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrSave"></a><h3>xmlSecGnuTLSAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN33967"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33969"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33990"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecGnuTLSAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoad"></a><h3>xmlSecGnuTLSAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN34015"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34017"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34045"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecGnuTLSAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppKeysMngrCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                       <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from binary buffer <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoadMemory"></a><h3>xmlSecGnuTLSAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppKeysMngrCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from binary buffer <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN34073"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34075"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate trusted or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate trusted or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34108"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYLOAD"></a><h3>xmlSecGnuTLSAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGnuTLSAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeyLoad"></a><h3>xmlSecGnuTLSAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGnuTLSAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN34134"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34136"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34169"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYLOADMEMORY"></a><h3>xmlSecGnuTLSAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGnuTLSAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeyLoadMemory"></a><h3>xmlSecGnuTLSAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGnuTLSAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the memory buffer.</p>
-<div class="REFSECT3">
-<a name="AEN34198"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34200"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of binary key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of binary key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34239"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPPKCS12LOAD"></a><h3>xmlSecGnuTLSAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGnuTLSAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppPkcs12Load"></a><h3>xmlSecGnuTLSAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGnuTLSAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file.
 For uniformity, call xmlSecGnuTLSAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN34262"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34264"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34291"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPPKCS12LOADMEMORY"></a><h3>xmlSecGnuTLSAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecGnuTLSAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppPkcs12LoadMemory"></a><h3>xmlSecGnuTLSAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecGnuTLSAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                 <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 data in memory buffer.
 For uniformity, call xmlSecGnuTLSAppKeyLoadMemory instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN34317"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34319"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the PKCS12 binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the PKCS12 binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34352"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYCERTLOAD"></a><h3>xmlSecGnuTLSAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeyCertLoad"></a><h3>xmlSecGnuTLSAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN34373"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34375"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34396"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPKEYCERTLOADMEMORY"></a><h3>xmlSecGnuTLSAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                  <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppKeyCertLoadMemory"></a><h3>xmlSecGnuTLSAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Reads the certificate from memory buffer and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN34419"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34421"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN34448"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecGnuTLSAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
-xmlSecGnuTLSAppGetDefaultPwdCallback (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSAppGetDefaultPwdCallback"></a><h3>xmlSecGnuTLSAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
+xmlSecGnuTLSAppGetDefaultPwdCallback (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN34461"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-gnutls-app.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gnutls-ref.html"><b><<< XML Security Library for GnuTLS API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gnutls-crypto.html"><b>crypto >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gnutls-crypto.html b/docs/api/xmlsec-gnutls-crypto.html
index 4e0deb4..9f8991b 100644
--- a/docs/api/xmlsec-gnutls-crypto.html
+++ b/docs/api/xmlsec-gnutls-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>crypto</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for GnuTLS API Reference." href="xmlsec-gnutls-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-gnutls-app.html">
-<link rel="NEXT" title="XML Security Library for GCrypt API Reference." href="xmlsec-gcrypt-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>crypto: 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-gnutls-ref.html" title="XML Security Library for GnuTLS API Reference.">
+<link rel="prev" href="xmlsec-gnutls-app.html" title="app">
+<link rel="next" href="xmlsec-gnutls-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1443 +73,1520 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gnutls-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-gnutls-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-gnutls-crypto.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
-<td><a accesskey="n" href="xmlsec-gcrypt-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+<td><a accesskey="u" href="xmlsec-gnutls-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gnutls-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="xmlsec-gnutls-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-GNUTLS-CRYPTO"></a>crypto</h1>
-<div class="REFNAMEDIV">
-<a name="AEN34472"></a><h2>Name</h2>crypto -- Crypto transforms implementation for GnuTLS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-CRYPTO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34477"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-gnutls-crypto"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-gnutls-crypto.top_of_page"></a>crypto</span></h2>
+<p>crypto — Crypto transforms implementation for GnuTLS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-crypto.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECCRYPTOGETFUNCTIONS-GNUTLS">xmlSecCryptoGetFunctions_gnutls</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecCryptoGetFunctions-gnutls" title="xmlSecCryptoGetFunctions_gnutls ()">xmlSecCryptoGetFunctions_gnutls</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSINIT">xmlSecGnuTLSInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSInit" title="xmlSecGnuTLSInit ()">xmlSecGnuTLSInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSSHUTDOWN">xmlSecGnuTLSShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSShutdown" title="xmlSecGnuTLSShutdown ()">xmlSecGnuTLSShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYSMNGRINIT">xmlSecGnuTLSKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeysMngrInit" title="xmlSecGnuTLSKeysMngrInit ()">xmlSecGnuTLSKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSGENERATERANDOM">xmlSecGnuTLSGenerateRandom</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSGenerateRandom" title="xmlSecGnuTLSGenerateRandom ()">xmlSecGnuTLSGenerateRandom</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESGETKLASS">xmlSecGnuTLSKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesGetKlass" title="xmlSecGnuTLSKeyDataAesGetKlass ()">xmlSecGnuTLSKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESSET">xmlSecGnuTLSKeyDataAesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesSet" title="xmlSecGnuTLSKeyDataAesSet ()">xmlSecGnuTLSKeyDataAesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES128CBCGETKLASS">xmlSecGnuTLSTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes128CbcGetKlass" title="xmlSecGnuTLSTransformAes128CbcGetKlass ()">xmlSecGnuTLSTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES192CBCGETKLASS">xmlSecGnuTLSTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes192CbcGetKlass" title="xmlSecGnuTLSTransformAes192CbcGetKlass ()">xmlSecGnuTLSTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES256CBCGETKLASS">xmlSecGnuTLSTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes256CbcGetKlass" title="xmlSecGnuTLSTransformAes256CbcGetKlass ()">xmlSecGnuTLSTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES128GETKLASS">xmlSecGnuTLSTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes128GetKlass" title="xmlSecGnuTLSTransformKWAes128GetKlass ()">xmlSecGnuTLSTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES192GETKLASS">xmlSecGnuTLSTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes192GetKlass" title="xmlSecGnuTLSTransformKWAes192GetKlass ()">xmlSecGnuTLSTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES256GETKLASS">xmlSecGnuTLSTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes256GetKlass" title="xmlSecGnuTLSTransformKWAes256GetKlass ()">xmlSecGnuTLSTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESGETKLASS">xmlSecGnuTLSKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesGetKlass" title="xmlSecGnuTLSKeyDataDesGetKlass ()">xmlSecGnuTLSKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESSET">xmlSecGnuTLSKeyDataDesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesSet" title="xmlSecGnuTLSKeyDataDesSet ()">xmlSecGnuTLSKeyDataDesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDES3CBCGETKLASS">xmlSecGnuTLSTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDes3CbcGetKlass" title="xmlSecGnuTLSTransformDes3CbcGetKlass ()">xmlSecGnuTLSTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWDES3GETKLASS">xmlSecGnuTLSTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWDes3GetKlass" title="xmlSecGnuTLSTransformKWDes3GetKlass ()">xmlSecGnuTLSTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAGETKLASS">xmlSecGnuTLSKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaGetKlass" title="xmlSecGnuTLSKeyDataDsaGetKlass ()">xmlSecGnuTLSKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAADOPTPRIVATEKEY">xmlSecGnuTLSKeyDataDsaAdoptPrivateKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaAdoptPrivateKey" title="xmlSecGnuTLSKeyDataDsaAdoptPrivateKey ()">xmlSecGnuTLSKeyDataDsaAdoptPrivateKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAADOPTPUBLICKEY">xmlSecGnuTLSKeyDataDsaAdoptPublicKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaAdoptPublicKey" title="xmlSecGnuTLSKeyDataDsaAdoptPublicKey ()">xmlSecGnuTLSKeyDataDsaAdoptPublicKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDSASHA1GETKLASS">xmlSecGnuTLSTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDsaSha1GetKlass" title="xmlSecGnuTLSTransformDsaSha1GetKlass ()">xmlSecGnuTLSTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSHMACGETMINOUTPUTLENGTH">xmlSecGnuTLSHmacGetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSHmacGetMinOutputLength" title="xmlSecGnuTLSHmacGetMinOutputLength ()">xmlSecGnuTLSHmacGetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSHMACSETMINOUTPUTLENGTH">xmlSecGnuTLSHmacSetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSHmacSetMinOutputLength" title="xmlSecGnuTLSHmacSetMinOutputLength ()">xmlSecGnuTLSHmacSetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACGETKLASS">xmlSecGnuTLSKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacGetKlass" title="xmlSecGnuTLSKeyDataHmacGetKlass ()">xmlSecGnuTLSKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACSET">xmlSecGnuTLSKeyDataHmacSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacSet" title="xmlSecGnuTLSKeyDataHmacSet ()">xmlSecGnuTLSKeyDataHmacSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACMD5GETKLASS">xmlSecGnuTLSTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacMd5GetKlass" title="xmlSecGnuTLSTransformHmacMd5GetKlass ()">xmlSecGnuTLSTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACRIPEMD160GETKLASS">xmlSecGnuTLSTransformHmacRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacRipemd160GetKlass" title="xmlSecGnuTLSTransformHmacRipemd160GetKlass ()">xmlSecGnuTLSTransformHmacRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA1GETKLASS">xmlSecGnuTLSTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha1GetKlass" title="xmlSecGnuTLSTransformHmacSha1GetKlass ()">xmlSecGnuTLSTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA256GETKLASS">xmlSecGnuTLSTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha256GetKlass" title="xmlSecGnuTLSTransformHmacSha256GetKlass ()">xmlSecGnuTLSTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA384GETKLASS">xmlSecGnuTLSTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha384GetKlass" title="xmlSecGnuTLSTransformHmacSha384GetKlass ()">xmlSecGnuTLSTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA512GETKLASS">xmlSecGnuTLSTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha512GetKlass" title="xmlSecGnuTLSTransformHmacSha512GetKlass ()">xmlSecGnuTLSTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAGETKLASS">xmlSecGnuTLSKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaGetKlass" title="xmlSecGnuTLSKeyDataRsaGetKlass ()">xmlSecGnuTLSKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAADOPTPRIVATEKEY">xmlSecGnuTLSKeyDataRsaAdoptPrivateKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaAdoptPrivateKey" title="xmlSecGnuTLSKeyDataRsaAdoptPrivateKey ()">xmlSecGnuTLSKeyDataRsaAdoptPrivateKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAADOPTPUBLICKEY">xmlSecGnuTLSKeyDataRsaAdoptPublicKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaAdoptPublicKey" title="xmlSecGnuTLSKeyDataRsaAdoptPublicKey ()">xmlSecGnuTLSKeyDataRsaAdoptPublicKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSAMD5GETKLASS">xmlSecGnuTLSTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaMd5GetKlass" title="xmlSecGnuTLSTransformRsaMd5GetKlass ()">xmlSecGnuTLSTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSARIPEMD160GETKLASS">xmlSecGnuTLSTransformRsaRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaRipemd160GetKlass" title="xmlSecGnuTLSTransformRsaRipemd160GetKlass ()">xmlSecGnuTLSTransformRsaRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA1GETKLASS">xmlSecGnuTLSTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha1GetKlass" title="xmlSecGnuTLSTransformRsaSha1GetKlass ()">xmlSecGnuTLSTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA256GETKLASS">xmlSecGnuTLSTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha256GetKlass" title="xmlSecGnuTLSTransformRsaSha256GetKlass ()">xmlSecGnuTLSTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA384GETKLASS">xmlSecGnuTLSTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha384GetKlass" title="xmlSecGnuTLSTransformRsaSha384GetKlass ()">xmlSecGnuTLSTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA512GETKLASS">xmlSecGnuTLSTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha512GetKlass" title="xmlSecGnuTLSTransformRsaSha512GetKlass ()">xmlSecGnuTLSTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA1GETKLASS">xmlSecGnuTLSTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha1GetKlass" title="xmlSecGnuTLSTransformSha1GetKlass ()">xmlSecGnuTLSTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA256GETKLASS">xmlSecGnuTLSTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha256GetKlass" title="xmlSecGnuTLSTransformSha256GetKlass ()">xmlSecGnuTLSTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA384GETKLASS">xmlSecGnuTLSTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha384GetKlass" title="xmlSecGnuTLSTransformSha384GetKlass ()">xmlSecGnuTLSTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA512GETKLASS">xmlSecGnuTLSTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha512GetKlass" title="xmlSecGnuTLSTransformSha512GetKlass ()">xmlSecGnuTLSTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMMD5GETKLASS">xmlSecGnuTLSTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformMd5GetKlass" title="xmlSecGnuTLSTransformMd5GetKlass ()">xmlSecGnuTLSTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRIPEMD160GETKLASS">xmlSecGnuTLSTransformRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRipemd160GetKlass" title="xmlSecGnuTLSTransformRipemd160GetKlass ()">xmlSecGnuTLSTransformRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-CRYPTO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34804"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-crypto.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESID">xmlSecGnuTLSKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesId" title="xmlSecGnuTLSKeyDataAesId">xmlSecGnuTLSKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES128CBCID">xmlSecGnuTLSTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes128CbcId" title="xmlSecGnuTLSTransformAes128CbcId">xmlSecGnuTLSTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES192CBCID">xmlSecGnuTLSTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes192CbcId" title="xmlSecGnuTLSTransformAes192CbcId">xmlSecGnuTLSTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES256CBCID">xmlSecGnuTLSTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes256CbcId" title="xmlSecGnuTLSTransformAes256CbcId">xmlSecGnuTLSTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES128ID">xmlSecGnuTLSTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes128Id" title="xmlSecGnuTLSTransformKWAes128Id">xmlSecGnuTLSTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES192ID">xmlSecGnuTLSTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes192Id" title="xmlSecGnuTLSTransformKWAes192Id">xmlSecGnuTLSTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES256ID">xmlSecGnuTLSTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes256Id" title="xmlSecGnuTLSTransformKWAes256Id">xmlSecGnuTLSTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESID">xmlSecGnuTLSKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesId" title="xmlSecGnuTLSKeyDataDesId">xmlSecGnuTLSKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDES3CBCID">xmlSecGnuTLSTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDes3CbcId" title="xmlSecGnuTLSTransformDes3CbcId">xmlSecGnuTLSTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWDES3ID">xmlSecGnuTLSTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWDes3Id" title="xmlSecGnuTLSTransformKWDes3Id">xmlSecGnuTLSTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAID">xmlSecGnuTLSKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaId" title="xmlSecGnuTLSKeyDataDsaId">xmlSecGnuTLSKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDSASHA1ID">xmlSecGnuTLSTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDsaSha1Id" title="xmlSecGnuTLSTransformDsaSha1Id">xmlSecGnuTLSTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACID">xmlSecGnuTLSKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacId" title="xmlSecGnuTLSKeyDataHmacId">xmlSecGnuTLSKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACMD5ID">xmlSecGnuTLSTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacMd5Id" title="xmlSecGnuTLSTransformHmacMd5Id">xmlSecGnuTLSTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACRIPEMD160ID">xmlSecGnuTLSTransformHmacRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacRipemd160Id" title="xmlSecGnuTLSTransformHmacRipemd160Id">xmlSecGnuTLSTransformHmacRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA1ID">xmlSecGnuTLSTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha1Id" title="xmlSecGnuTLSTransformHmacSha1Id">xmlSecGnuTLSTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA256ID">xmlSecGnuTLSTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha256Id" title="xmlSecGnuTLSTransformHmacSha256Id">xmlSecGnuTLSTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA384ID">xmlSecGnuTLSTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha384Id" title="xmlSecGnuTLSTransformHmacSha384Id">xmlSecGnuTLSTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA512ID">xmlSecGnuTLSTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha512Id" title="xmlSecGnuTLSTransformHmacSha512Id">xmlSecGnuTLSTransformHmacSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAID">xmlSecGnuTLSKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaId" title="xmlSecGnuTLSKeyDataRsaId">xmlSecGnuTLSKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSAMD5ID">xmlSecGnuTLSTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaMd5Id" title="xmlSecGnuTLSTransformRsaMd5Id">xmlSecGnuTLSTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSARIPEMD160ID">xmlSecGnuTLSTransformRsaRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaRipemd160Id" title="xmlSecGnuTLSTransformRsaRipemd160Id">xmlSecGnuTLSTransformRsaRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA1ID">xmlSecGnuTLSTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha1Id" title="xmlSecGnuTLSTransformRsaSha1Id">xmlSecGnuTLSTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA256ID">xmlSecGnuTLSTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha256Id" title="xmlSecGnuTLSTransformRsaSha256Id">xmlSecGnuTLSTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA384ID">xmlSecGnuTLSTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha384Id" title="xmlSecGnuTLSTransformRsaSha384Id">xmlSecGnuTLSTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA512ID">xmlSecGnuTLSTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha512Id" title="xmlSecGnuTLSTransformRsaSha512Id">xmlSecGnuTLSTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA1ID">xmlSecGnuTLSTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha1Id" title="xmlSecGnuTLSTransformSha1Id">xmlSecGnuTLSTransformSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA256ID">xmlSecGnuTLSTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha256Id" title="xmlSecGnuTLSTransformSha256Id">xmlSecGnuTLSTransformSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA384ID">xmlSecGnuTLSTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha384Id" title="xmlSecGnuTLSTransformSha384Id">xmlSecGnuTLSTransformSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA512ID">xmlSecGnuTLSTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha512Id" title="xmlSecGnuTLSTransformSha512Id">xmlSecGnuTLSTransformSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMMD5ID">xmlSecGnuTLSTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformMd5Id" title="xmlSecGnuTLSTransformMd5Id">xmlSecGnuTLSTransformMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRIPEMD160ID">xmlSecGnuTLSTransformRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRipemd160Id" title="xmlSecGnuTLSTransformRipemd160Id">xmlSecGnuTLSTransformRipemd160Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-CRYPTO.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto transforms implementation for GnuTLS.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-CRYPTO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOGETFUNCTIONS-GNUTLS"></a><h3>xmlSecCryptoGetFunctions_gnutls ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoGetFunctions_gnutls (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-crypto.description"></a><h2>Description</h2>
+<p>
+Crypto transforms implementation for GnuTLS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-crypto.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoGetFunctions-gnutls"></a><h3>xmlSecCryptoGetFunctions_gnutls ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoGetFunctions_gnutls (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the pointer to xmlsec-gnutls functions table.</p>
-<div class="REFSECT3">
-<a name="AEN34950"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoGetFunctions-gnutls.returns"></a><h4>Returns</h4>
 <p> the xmlsec-gnutls functions table or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSINIT"></a><h3>xmlSecGnuTLSInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSInit"></a><h3>xmlSecGnuTLSInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN34963"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSSHUTDOWN"></a><h3>xmlSecGnuTLSShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSShutdown"></a><h3>xmlSecGnuTLSShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN34976"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYSMNGRINIT"></a><h3>xmlSecGnuTLSKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeysMngrInit"></a><h3>xmlSecGnuTLSKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds GnuTLS specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN34990"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN34992"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35001"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSGENERATERANDOM"></a><h3>xmlSecGnuTLSGenerateRandom ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSGenerateRandom (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buffer</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Generates <code class="PARAMETER">size</code>
- random bytes and puts result in <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecGnuTLSGenerateRandom"></a><h3>xmlSecGnuTLSGenerateRandom ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSGenerateRandom (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buffer</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>Generates <em class="parameter"><code>size</code></em>
+ random bytes and puts result in <em class="parameter"><code>buffer</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN35020"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35022"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSGenerateRandom.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the destination buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the destination buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the numer of bytes to generate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the numer of bytes to generate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35037"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSGenerateRandom.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAAESGETKLASS"></a><h3>xmlSecGnuTLSKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGnuTLSKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataAesGetKlass"></a><h3>xmlSecGnuTLSKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN35050"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAAESSET"></a><h3>xmlSecGnuTLSKeyDataAesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataAesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                           <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataAesSet"></a><h3>xmlSecGnuTLSKeyDataAesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataAesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                           <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of AES key data.</p>
-<div class="REFSECT3">
-<a name="AEN35070"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35072"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataAesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to AES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to AES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN35093"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataAesSet.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="XMLSECGNUTLSTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecGnuTLSTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes128CbcGetKlass"></a><h3>xmlSecGnuTLSTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformAes128CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35106"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecGnuTLSTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes192CbcGetKlass"></a><h3>xmlSecGnuTLSTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformAes192CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35119"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecGnuTLSTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes256CbcGetKlass"></a><h3>xmlSecGnuTLSTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformAes256CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35132"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecGnuTLSTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformKWAes128GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes128GetKlass"></a><h3>xmlSecGnuTLSTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformKWAes128GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35145"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecGnuTLSTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformKWAes192GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes192GetKlass"></a><h3>xmlSecGnuTLSTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformKWAes192GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35158"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecGnuTLSTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformKWAes256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes256GetKlass"></a><h3>xmlSecGnuTLSTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformKWAes256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35171"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADESGETKLASS"></a><h3>xmlSecGnuTLSKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGnuTLSKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDesGetKlass"></a><h3>xmlSecGnuTLSKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN35184"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADESSET"></a><h3>xmlSecGnuTLSKeyDataDesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataDesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                           <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDesSet"></a><h3>xmlSecGnuTLSKeyDataDesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataDesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                           <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of DES key data.</p>
-<div class="REFSECT3">
-<a name="AEN35204"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35206"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35227"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDesSet.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="XMLSECGNUTLSTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecGnuTLSTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformDes3CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformDes3CbcGetKlass"></a><h3>xmlSecGnuTLSTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformDes3CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35240"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecGnuTLSTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWDes3GetKlass"></a><h3>xmlSecGnuTLSTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35253"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADSAGETKLASS"></a><h3>xmlSecGnuTLSKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGnuTLSKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDsaGetKlass"></a><h3>xmlSecGnuTLSKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN35266"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to DSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADSAADOPTPRIVATEKEY"></a><h3>xmlSecGnuTLSKeyDataDsaAdoptPrivateKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataDsaAdoptPrivateKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">gnutls_x509_privkey_t</span></font> dsa_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPrivateKey"></a><h3>xmlSecGnuTLSKeyDataDsaAdoptPrivateKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataDsaAdoptPrivateKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                       <em class="parameter"><code><font><span class="type">gnutls_x509_privkey_t</span></font> dsa_key</code></em>);</pre>
 <p>Sets the value of DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN35283"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35285"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPrivateKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dsa_key</p></td>
-<td><p>the pointer to GnuTLS DSA private key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsa_key</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS DSA private key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35300"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPrivateKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADSAADOPTPUBLICKEY"></a><h3>xmlSecGnuTLSKeyDataDsaAdoptPublicKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataDsaAdoptPublicKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *p</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *q</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *g</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *y</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPublicKey"></a><h3>xmlSecGnuTLSKeyDataDsaAdoptPublicKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataDsaAdoptPublicKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *p</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *q</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *g</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *y</code></em>);</pre>
 <p>Sets the value of DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN35326"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35328"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPublicKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>p</p></td>
-<td><p>the pointer to p component of the DSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>p</p></td>
+<td class="parameter_description"><p>the pointer to p component of the DSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>q</p></td>
-<td><p>the pointer to q component of the DSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>q</p></td>
+<td class="parameter_description"><p>the pointer to q component of the DSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>g</p></td>
-<td><p>the pointer to g component of the DSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>g</p></td>
+<td class="parameter_description"><p>the pointer to g component of the DSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>y</p></td>
-<td><p>the pointer to y component of the DSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>y</p></td>
+<td class="parameter_description"><p>the pointer to y component of the DSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN35361"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataDsaAdoptPublicKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecGnuTLSTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformDsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformDsaSha1GetKlass"></a><h3>xmlSecGnuTLSTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformDsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35374"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSHMACGETMINOUTPUTLENGTH"></a><h3>xmlSecGnuTLSHmacGetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSHmacGetMinOutputLength (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSHmacGetMinOutputLength"></a><h3>xmlSecGnuTLSHmacGetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSHmacGetMinOutputLength (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the value of min HMAC length.</p>
-<div class="REFSECT3">
-<a name="AEN35387"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSHmacGetMinOutputLength.returns"></a><h4>Returns</h4>
 <p> the min HMAC output length</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSHMACSETMINOUTPUTLENGTH"></a><h3>xmlSecGnuTLSHmacSetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecGnuTLSHmacSetMinOutputLength (<code class="PARAMETER"><font><span class="TYPE">int</span></font> min_length</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSHmacSetMinOutputLength"></a><h3>xmlSecGnuTLSHmacSetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecGnuTLSHmacSetMinOutputLength (<em class="parameter"><code><font><span class="type">int</span></font> min_length</code></em>);</pre>
 <p>Sets the min HMAC output length</p>
-<div class="REFSECT3">
-<a name="AEN35401"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35403"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSHmacSetMinOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>min_length</p></td>
-<td><p>the new min length</p></td>
-<td> </td>
+<td class="parameter_name"><p>min_length</p></td>
+<td class="parameter_description"><p>the new min length</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAHMACGETKLASS"></a><h3>xmlSecGnuTLSKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGnuTLSKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataHmacGetKlass"></a><h3>xmlSecGnuTLSKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN35422"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAHMACSET"></a><h3>xmlSecGnuTLSKeyDataHmacSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataHmacSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                            <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataHmacSet"></a><h3>xmlSecGnuTLSKeyDataHmacSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataHmacSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                            <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of HMAC key data.</p>
-<div class="REFSECT3">
-<a name="AEN35442"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35444"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataHmacSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to HMAC key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to HMAC key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35465"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataHmacSet.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="XMLSECGNUTLSTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformHmacMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacMd5GetKlass"></a><h3>xmlSecGnuTLSTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformHmacMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35478"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACRIPEMD160GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacRipemd160GetKlass"></a><h3>xmlSecGnuTLSTransformHmacRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformHmacRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-RIPEMD160 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35491"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-RIPEMD160 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformHmacSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha1GetKlass"></a><h3>xmlSecGnuTLSTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformHmacSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35504"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha256GetKlass"></a><h3>xmlSecGnuTLSTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformHmacSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35517"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha384GetKlass"></a><h3>xmlSecGnuTLSTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformHmacSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35530"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecGnuTLSTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha512GetKlass"></a><h3>xmlSecGnuTLSTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformHmacSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35543"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATARSAGETKLASS"></a><h3>xmlSecGnuTLSKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecGnuTLSKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRsaGetKlass"></a><h3>xmlSecGnuTLSKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GnuTLS RSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN35556"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GnuTLS RSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATARSAADOPTPRIVATEKEY"></a><h3>xmlSecGnuTLSKeyDataRsaAdoptPrivateKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataRsaAdoptPrivateKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">gnutls_x509_privkey_t</span></font> rsa_key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPrivateKey"></a><h3>xmlSecGnuTLSKeyDataRsaAdoptPrivateKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataRsaAdoptPrivateKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                       <em class="parameter"><code><font><span class="type">gnutls_x509_privkey_t</span></font> rsa_key</code></em>);</pre>
 <p>Sets the value of RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN35573"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35575"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPrivateKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>rsa_key</p></td>
-<td><p>the pointer to GnuTLS RSA private key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>rsa_key</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS RSA private key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN35590"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPrivateKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATARSAADOPTPUBLICKEY"></a><h3>xmlSecGnuTLSKeyDataRsaAdoptPublicKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGnuTLSKeyDataRsaAdoptPublicKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *m</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">gnutls_datum_t</span></font> *e</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPublicKey"></a><h3>xmlSecGnuTLSKeyDataRsaAdoptPublicKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataRsaAdoptPublicKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *m</code></em>,
+                                      <em class="parameter"><code><font><span class="type">gnutls_datum_t</span></font> *e</code></em>);</pre>
 <p>Sets the value of RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN35610"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN35612"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPublicKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>m</p></td>
-<td><p>the pointer to m component of the RSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>m</p></td>
+<td class="parameter_description"><p>the pointer to m component of the RSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>e</p></td>
-<td><p>the pointer to e component of the RSA public key</p></td>
-<td> </td>
+<td class="parameter_name"><p>e</p></td>
+<td class="parameter_description"><p>the pointer to e component of the RSA public key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN35633"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRsaAdoptPublicKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaMd5GetKlass"></a><h3>xmlSecGnuTLSTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35646"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSARIPEMD160GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaRipemd160GetKlass"></a><h3>xmlSecGnuTLSTransformRsaRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformRsaRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35659"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-RIPEMD160 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformRsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha1GetKlass"></a><h3>xmlSecGnuTLSTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformRsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35672"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha256GetKlass"></a><h3>xmlSecGnuTLSTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformRsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35685"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha384GetKlass"></a><h3>xmlSecGnuTLSTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformRsaSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35698"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecGnuTLSTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha512GetKlass"></a><h3>xmlSecGnuTLSTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformRsaSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35711"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA1GETKLASS"></a><h3>xmlSecGnuTLSTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha1GetKlass"></a><h3>xmlSecGnuTLSTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35724"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA256GETKLASS"></a><h3>xmlSecGnuTLSTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha256GetKlass"></a><h3>xmlSecGnuTLSTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35737"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA256 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA384GETKLASS"></a><h3>xmlSecGnuTLSTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha384GetKlass"></a><h3>xmlSecGnuTLSTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35750"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA384 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA512GETKLASS"></a><h3>xmlSecGnuTLSTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha512GetKlass"></a><h3>xmlSecGnuTLSTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35763"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA512 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMMD5GETKLASS"></a><h3>xmlSecGnuTLSTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecGnuTLSTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformMd5GetKlass"></a><h3>xmlSecGnuTLSTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecGnuTLSTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>MD5 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35776"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MD5 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRIPEMD160GETKLASS"></a><h3>xmlSecGnuTLSTransformRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRipemd160GetKlass"></a><h3>xmlSecGnuTLSTransformRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecGnuTLSTransformRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>RIPEMD160 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN35789"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGnuTLSTransformRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to RIPEMD160 digest transform klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-GNUTLS-CRYPTO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAAESID"></a><h3>xmlSecGnuTLSKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSKeyDataAesId</pre>
+<div class="refsect1">
+<a name="xmlsec-gnutls-crypto.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataAesId"></a><h3>xmlSecGnuTLSKeyDataAesId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataAesId</pre>
 <p>The AES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMAES128CBCID"></a><h3>xmlSecGnuTLSTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformAes128CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes128CbcId"></a><h3>xmlSecGnuTLSTransformAes128CbcId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformAes128CbcId</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMAES192CBCID"></a><h3>xmlSecGnuTLSTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformAes192CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes192CbcId"></a><h3>xmlSecGnuTLSTransformAes192CbcId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformAes192CbcId</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMAES256CBCID"></a><h3>xmlSecGnuTLSTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformAes256CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformAes256CbcId"></a><h3>xmlSecGnuTLSTransformAes256CbcId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformAes256CbcId</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES128ID"></a><h3>xmlSecGnuTLSTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformKWAes128Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes128Id"></a><h3>xmlSecGnuTLSTransformKWAes128Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformKWAes128Id</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES192ID"></a><h3>xmlSecGnuTLSTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformKWAes192Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes192Id"></a><h3>xmlSecGnuTLSTransformKWAes192Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformKWAes192Id</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWAES256ID"></a><h3>xmlSecGnuTLSTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformKWAes256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWAes256Id"></a><h3>xmlSecGnuTLSTransformKWAes256Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformKWAes256Id</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADESID"></a><h3>xmlSecGnuTLSKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSKeyDataDesId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDesId"></a><h3>xmlSecGnuTLSKeyDataDesId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataDesId</pre>
 <p>The DES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMDES3CBCID"></a><h3>xmlSecGnuTLSTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformDes3CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformDes3CbcId"></a><h3>xmlSecGnuTLSTransformDes3CbcId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformDes3CbcId</pre>
 <p>The DES3 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMKWDES3ID"></a><h3>xmlSecGnuTLSTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformKWDes3Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformKWDes3Id"></a><h3>xmlSecGnuTLSTransformKWDes3Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformKWDes3Id</pre>
 <p>The DES3 KW transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATADSAID"></a><h3>xmlSecGnuTLSKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSKeyDataDsaId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataDsaId"></a><h3>xmlSecGnuTLSKeyDataDsaId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataDsaId</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMDSASHA1ID"></a><h3>xmlSecGnuTLSTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformDsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformDsaSha1Id"></a><h3>xmlSecGnuTLSTransformDsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformDsaSha1Id</pre>
 <p>The DSA SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATAHMACID"></a><h3>xmlSecGnuTLSKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSKeyDataHmacId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataHmacId"></a><h3>xmlSecGnuTLSKeyDataHmacId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataHmacId</pre>
 <p>The HMAC key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACMD5ID"></a><h3>xmlSecGnuTLSTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacMd5Id"></a><h3>xmlSecGnuTLSTransformHmacMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacMd5Id</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACRIPEMD160ID"></a><h3>xmlSecGnuTLSTransformHmacRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacRipemd160Id"></a><h3>xmlSecGnuTLSTransformHmacRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacRipemd160Id</pre>
 <p>The HMAC with RipeMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA1ID"></a><h3>xmlSecGnuTLSTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha1Id"></a><h3>xmlSecGnuTLSTransformHmacSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA256ID"></a><h3>xmlSecGnuTLSTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha256Id"></a><h3>xmlSecGnuTLSTransformHmacSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA384ID"></a><h3>xmlSecGnuTLSTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha384Id"></a><h3>xmlSecGnuTLSTransformHmacSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMHMACSHA512ID"></a><h3>xmlSecGnuTLSTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformHmacSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformHmacSha512Id"></a><h3>xmlSecGnuTLSTransformHmacSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformHmacSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSKEYDATARSAID"></a><h3>xmlSecGnuTLSKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSKeyDataRsaId</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRsaId"></a><h3>xmlSecGnuTLSKeyDataRsaId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataRsaId</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSAMD5ID"></a><h3>xmlSecGnuTLSTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaMd5Id"></a><h3>xmlSecGnuTLSTransformRsaMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaMd5Id</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSARIPEMD160ID"></a><h3>xmlSecGnuTLSTransformRsaRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaRipemd160Id"></a><h3>xmlSecGnuTLSTransformRsaRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaRipemd160Id</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA1ID"></a><h3>xmlSecGnuTLSTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha1Id"></a><h3>xmlSecGnuTLSTransformRsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaSha1Id</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA256ID"></a><h3>xmlSecGnuTLSTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha256Id"></a><h3>xmlSecGnuTLSTransformRsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaSha256Id</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA384ID"></a><h3>xmlSecGnuTLSTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha384Id"></a><h3>xmlSecGnuTLSTransformRsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaSha384Id</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRSASHA512ID"></a><h3>xmlSecGnuTLSTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRsaSha512Id"></a><h3>xmlSecGnuTLSTransformRsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRsaSha512Id</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA1ID"></a><h3>xmlSecGnuTLSTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha1Id"></a><h3>xmlSecGnuTLSTransformSha1Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA256ID"></a><h3>xmlSecGnuTLSTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha256Id"></a><h3>xmlSecGnuTLSTransformSha256Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA384ID"></a><h3>xmlSecGnuTLSTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha384Id"></a><h3>xmlSecGnuTLSTransformSha384Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMSHA512ID"></a><h3>xmlSecGnuTLSTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformSha512Id"></a><h3>xmlSecGnuTLSTransformSha512Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMMD5ID"></a><h3>xmlSecGnuTLSTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformMd5Id"></a><h3>xmlSecGnuTLSTransformMd5Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformMd5Id</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGNUTLSTRANSFORMRIPEMD160ID"></a><h3>xmlSecGnuTLSTransformRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGnuTLSTransformRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecGnuTLSTransformRipemd160Id"></a><h3>xmlSecGnuTLSTransformRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSTransformRipemd160Id</pre>
 <p>The RIPEMD160 digest transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gnutls-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gcrypt-ref.html"><b>XML Security Library for GCrypt API Reference. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gnutls-ref.html b/docs/api/xmlsec-gnutls-ref.html
index 828f96f..0a03a9c 100644
--- a/docs/api/xmlsec-gnutls-ref.html
+++ b/docs/api/xmlsec-gnutls-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library for GnuTLS API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="x509" href="xmlsec-openssl-x509.html">
-<link rel="NEXT" title="app" href="xmlsec-gnutls-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library for GnuTLS API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-openssl-x509.html" title="x509">
+<link rel="next" href="xmlsec-gnutls-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,31 +73,33 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-gnutls-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-GNUTLS-REF"></a>XML Security Library for GnuTLS API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-gnutls-ref"></a>XML Security Library for GnuTLS API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-gnutls-app.html">app</a> -- Application functions implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
 <dt>
-<a href="xmlsec-gnutls-crypto.html">crypto</a> -- Crypto transforms implementation for GnuTLS.</dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GnuTLS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for GnuTLS.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec-gnutls. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-x509.html"><b><<< x509</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gnutls-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-gnutls-x509.html b/docs/api/xmlsec-gnutls-x509.html
new file mode 100644
index 0000000..4d88860
--- /dev/null
+++ b/docs/api/xmlsec-gnutls-x509.html
@@ -0,0 +1,751 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>x509: 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-gnutls-ref.html" title="XML Security Library for GnuTLS API Reference.">
+<link rel="prev" href="xmlsec-gnutls-crypto.html" title="crypto">
+<link rel="next" href="xmlsec-gcrypt-ref.html" title="XML Security Library for GCrypt API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+</head>
+<body><table width="100%" valign="top"><tr valign="top">
+<td valign="top" align="left" width="210">
+<img src="../images/logo.gif" alt="XML Security Library" border="0"><p></p>
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../news.html">News</a></li>
+<li><a href="../documentation.html">Documentation</a></li>
+<ul>
+<li><a href="../faq.html">FAQ</a></li>
+<li><a href="../api/xmlsec-notes.html">Tutorial</a></li>
+<li><a href="../api/xmlsec-reference.html">API reference</a></li>
+<li><a href="../api/xmlsec-examples.html">Examples</a></li>
+</ul>
+<li><a href="../xmldsig.html">XML Digital Signature</a></li>
+<ul><li><a href="http://www.aleksey.com/xmlsec/xmldsig-verifier.html">Online Verifier</a></li></ul>
+<li><a href="../xmlenc.html">XML Encryption</a></li>
+<li><a href="../c14n.html">XML Canonicalization</a></li>
+<li><a href="../bugs.html">Reporting Bugs</a></li>
+<li><a href="http://www.aleksey.com/pipermail/xmlsec">Mailing list</a></li>
+<li><a href="../related.html">Related</a></li>
+<li><a href="../authors.html">Authors</a></li>
+</ul>
+<table width="100%">
+<tr>
+<td width="15"></td>
+<td><a href="http://xmlsoft.org/"><img src="../images/libxml2-logo.png" alt="LibXML2" border="0"></a></td>
+</tr>
+<tr>
+<td width="15"></td>
+<td><a href="http://xmlsoft.org/XSLT"><img src="../images/libxslt-logo.png" alt="LibXSLT" border="0"></a></td>
+</tr>
+<tr>
+<td width="15"></td>
+<td><a href="http://www.openssl.org/"><img src="../images/openssl-logo.png" alt="OpenSSL" border="0"></a></td>
+</tr>
+<!--Links - start--><!--Links - end-->
+</table>
+</td>
+<td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
+<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-gnutls-x509.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-gnutls-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gnutls-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><a accesskey="n" href="xmlsec-gcrypt-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
+</tr></table>
+<div class="refentry">
+<a name="xmlsec-gnutls-x509"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-gnutls-x509.top_of_page"></a>x509</span></h2>
+<p>x509 — X509 certificates support implementation for GnuTLS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-x509.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
+<tbody>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetKlass" title="xmlSecGnuTLSKeyDataX509GetKlass ()">xmlSecGnuTLSKeyDataX509GetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetKeyCert" title="xmlSecGnuTLSKeyDataX509GetKeyCert ()">xmlSecGnuTLSKeyDataX509GetKeyCert</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-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptKeyCert" title="xmlSecGnuTLSKeyDataX509AdoptKeyCert ()">xmlSecGnuTLSKeyDataX509AdoptKeyCert</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-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptCert" title="xmlSecGnuTLSKeyDataX509AdoptCert ()">xmlSecGnuTLSKeyDataX509AdoptCert</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCert" title="xmlSecGnuTLSKeyDataX509GetCert ()">xmlSecGnuTLSKeyDataX509GetCert</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-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCertsSize" title="xmlSecGnuTLSKeyDataX509GetCertsSize ()">xmlSecGnuTLSKeyDataX509GetCertsSize</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-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptCrl" title="xmlSecGnuTLSKeyDataX509AdoptCrl ()">xmlSecGnuTLSKeyDataX509AdoptCrl</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">gnutls_x509_crl_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCrl" title="xmlSecGnuTLSKeyDataX509GetCrl ()">xmlSecGnuTLSKeyDataX509GetCrl</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-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCrlsSize" title="xmlSecGnuTLSKeyDataX509GetCrlsSize ()">xmlSecGnuTLSKeyDataX509GetCrlsSize</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509CertGetKey" title="xmlSecGnuTLSX509CertGetKey ()">xmlSecGnuTLSX509CertGetKey</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataRawX509CertGetKlass" title="xmlSecGnuTLSKeyDataRawX509CertGetKlass ()">xmlSecGnuTLSKeyDataRawX509CertGetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreGetKlass" title="xmlSecGnuTLSX509StoreGetKlass ()">xmlSecGnuTLSX509StoreGetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreFindCert" title="xmlSecGnuTLSX509StoreFindCert ()">xmlSecGnuTLSX509StoreFindCert</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreVerify" title="xmlSecGnuTLSX509StoreVerify ()">xmlSecGnuTLSX509StoreVerify</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-gnutls-x509.html#xmlSecGnuTLSX509StoreAdoptCert" title="xmlSecGnuTLSX509StoreAdoptCert ()">xmlSecGnuTLSX509StoreAdoptCert</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-x509.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
+<tbody>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509Id" title="xmlSecGnuTLSKeyDataX509Id">xmlSecGnuTLSKeyDataX509Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataRawX509CertId" title="xmlSecGnuTLSKeyDataRawX509CertId">xmlSecGnuTLSKeyDataRawX509CertId</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreId" title="xmlSecGnuTLSX509StoreId">xmlSecGnuTLSX509StoreId</a></td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-x509.description"></a><h2>Description</h2>
+<p>
+X509 certificates support implementation for GnuTLS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-x509.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509GetKlass"></a><h3>xmlSecGnuTLSKeyDataX509GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataX509GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The GnuTLS X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-X509Data</span></font>).</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetKlass.returns"></a><h4>Returns</h4>
+<p> the X509 data klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509GetKeyCert"></a><h3>xmlSecGnuTLSKeyDataX509GetKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+xmlSecGnuTLSKeyDataX509GetKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the certificate from which the key was extracted.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetKeyCert.returns"></a><h4>Returns</h4>
+<p> the key's certificate or NULL if key data was not used for key
+extraction or an error occurs.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509AdoptKeyCert"></a><h3>xmlSecGnuTLSKeyDataX509AdoptKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataX509AdoptKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                     <em class="parameter"><code><font><span class="type">gnutls_x509_crt_t</span></font> cert</code></em>);</pre>
+<p>Sets the key's certificate in <em class="parameter"><code>data</code></em>
+.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptKeyCert.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="xmlSecGnuTLSKeyDataX509AdoptCert"></a><h3>xmlSecGnuTLSKeyDataX509AdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataX509AdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                  <em class="parameter"><code><font><span class="type">gnutls_x509_crt_t</span></font> cert</code></em>);</pre>
+<p>Adds certificate to the X509 key data.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptCert.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="xmlSecGnuTLSKeyDataX509GetCert"></a><h3>xmlSecGnuTLSKeyDataX509GetCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+xmlSecGnuTLSKeyDataX509GetCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Gets a certificate from X509 key data.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired certificate position.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCert.returns"></a><h4>Returns</h4>
+<p> the pointer to certificate or NULL if <em class="parameter"><code>pos</code></em>
+is larger than the
+number of certificates in <em class="parameter"><code>data</code></em>
+or an error occurs.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509GetCertsSize"></a><h3>xmlSecGnuTLSKeyDataX509GetCertsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecGnuTLSKeyDataX509GetCertsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of certificates in <em class="parameter"><code>data</code></em>
+.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCertsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCertsSize.returns"></a><h4>Returns</h4>
+<p> te number of certificates in <em class="parameter"><code>data</code></em>
+.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509AdoptCrl"></a><h3>xmlSecGnuTLSKeyDataX509AdoptCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSKeyDataX509AdoptCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">gnutls_x509_crl_t</span></font> crl</code></em>);</pre>
+<p>Adds crl to the X509 key data.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>crl</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS X509 crl.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509AdoptCrl.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="xmlSecGnuTLSKeyDataX509GetCrl"></a><h3>xmlSecGnuTLSKeyDataX509GetCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gnutls_x509_crl_t</span></font>
+xmlSecGnuTLSKeyDataX509GetCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Gets a crl from X509 key data.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired crl position.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCrl.returns"></a><h4>Returns</h4>
+<p> the pointer to crl or NULL if <em class="parameter"><code>pos</code></em>
+is larger than the
+number of crls in <em class="parameter"><code>data</code></em>
+or an error occurs.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509GetCrlsSize"></a><h3>xmlSecGnuTLSKeyDataX509GetCrlsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecGnuTLSKeyDataX509GetCrlsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of crls in <em class="parameter"><code>data</code></em>
+.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCrlsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataX509GetCrlsSize.returns"></a><h4>Returns</h4>
+<p> te number of crls in <em class="parameter"><code>data</code></em>
+.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509CertGetKey"></a><h3>xmlSecGnuTLSX509CertGetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecGnuTLSX509CertGetKey (<em class="parameter"><code><font><span class="type">gnutls_x509_crt_t</span></font> cert</code></em>);</pre>
+<p>Extracts public key from the <em class="parameter"><code>cert</code></em>
+.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509CertGetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the certificate.</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509CertGetKey.returns"></a><h4>Returns</h4>
+<p> public key value or NULL if an error occurs.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRawX509CertGetKlass"></a><h3>xmlSecGnuTLSKeyDataRawX509CertGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecGnuTLSKeyDataRawX509CertGetKlass
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The raw X509 certificates key data klass.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSKeyDataRawX509CertGetKlass.returns"></a><h4>Returns</h4>
+<p> raw X509 certificates key data klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509StoreGetKlass"></a><h3>xmlSecGnuTLSX509StoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+xmlSecGnuTLSX509StoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The GnuTLS X509 certificates key data store klass.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreGetKlass.returns"></a><h4>Returns</h4>
+<p> pointer to GnuTLS X509 certificates key data store klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509StoreFindCert"></a><h3>xmlSecGnuTLSX509StoreFindCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+xmlSecGnuTLSX509StoreFindCert (<em class="parameter"><code>const <font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *subjectName</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *issuerName</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *issuerSerial</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ski</code></em>,
+                               <em class="parameter"><code>const <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Searches <em class="parameter"><code>store</code></em>
+ for a certificate that matches given criteria.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreFindCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>subjectName</p></td>
+<td class="parameter_description"><p>the desired certificate name.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>issuerName</p></td>
+<td class="parameter_description"><p>the desired certificate issuer name.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>issuerSerial</p></td>
+<td class="parameter_description"><p>the desired certificate issuer serial number.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>ski</p></td>
+<td class="parameter_description"><p>the desired certificate SKI.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreFindCert.returns"></a><h4>Returns</h4>
+<p> pointer to found certificate or NULL if certificate is not found
+or an error occurs.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509StoreVerify"></a><h3>xmlSecGnuTLSX509StoreVerify ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">gnutls_x509_crt_t</span></font>
+xmlSecGnuTLSX509StoreVerify (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                             <em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> certs</code></em>,
+                             <em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> crls</code></em>,
+                             <em class="parameter"><code>const <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Verifies <em class="parameter"><code>certs</code></em>
+ list.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreVerify.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>certs</p></td>
+<td class="parameter_description"><p>the untrusted certificates.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>crls</p></td>
+<td class="parameter_description"><p>the crls.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreVerify.returns"></a><h4>Returns</h4>
+<p> pointer to the first verified certificate from <em class="parameter"><code>certs</code></em>
+.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509StoreAdoptCert"></a><h3>xmlSecGnuTLSX509StoreAdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecGnuTLSX509StoreAdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">gnutls_x509_crt_t</span></font> cert</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Adds trusted (root) or untrusted certificate to the store.</p>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreAdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody>
+<tr>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to GnuTLS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+<tr>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
+</tr>
+</tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="xmlSecGnuTLSX509StoreAdoptCert.returns"></a><h4>Returns</h4>
+<p> 0 on success or a negative value if an error occurs.</p>
+</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-gnutls-x509.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataX509Id"></a><h3>xmlSecGnuTLSKeyDataX509Id</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataX509Id</pre>
+<p>The GnuTLS X509 data klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSKeyDataRawX509CertId"></a><h3>xmlSecGnuTLSKeyDataRawX509CertId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSKeyDataRawX509CertId</pre>
+<p>The GnuTLS raw X509 certificate klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecGnuTLSX509StoreId"></a><h3>xmlSecGnuTLSX509StoreId</h3>
+<pre class="programlisting">#define             xmlSecGnuTLSX509StoreId</pre>
+<p>The GnuTLS X509 store klass.</p>
+</div>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
+</td></tr></table></td>
+</tr></table></body>
+</html>
diff --git a/docs/api/xmlsec-index.html b/docs/api/xmlsec-index.html
index a6f3d15..b37eff4 100644
--- a/docs/api/xmlsec-index.html
+++ b/docs/api/xmlsec-index.html
@@ -1,40 +1,13 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library Reference Index</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="x509" href="xmlsec-mscrypto-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library Reference Index: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -99,1565 +72,1569 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
-</tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-INDEX"></a>XML Security Library Reference Index</h1>
-<p>	</p>
-<p></p>
-<ul>
-<li><p><font>ATTRIBUTE-UNUSED</font></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLENCCTXMODE">xmlEncCtxMode</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECADDCHILD">xmlSecAddChild</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECADDCHILDNODE">xmlSecAddChildNode</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECADDIDS">xmlSecAddIDs</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECADDNEXTSIBLING">xmlSecAddNextSibling</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECADDPREVSIBLING">xmlSecAddPrevSibling</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECALLOCMODE">xmlSecAllocMode</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECASSERT2">xmlSecAssert2</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECASSERT">xmlSecAssert</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXCREATE">xmlSecBase64CtxCreate</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXDESTROY">xmlSecBase64CtxDestroy</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXFINALIZE">xmlSecBase64CtxFinalize</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXFINAL">xmlSecBase64CtxFinal</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXINITIALIZE">xmlSecBase64CtxInitialize</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64CTXUPDATE">xmlSecBase64CtxUpdate</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64DECODE">xmlSecBase64Decode</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64ENCODE">xmlSecBase64Encode</a></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64GETDEFAULTLINESIZE">xmlSecBase64GetDefaultLineSize</a></p></li>
-<li><p><font>XMLSEC-BASE64-LINESIZE</font></p></li>
-<li><p><a href="xmlsec-base64.html#XMLSECBASE64SETDEFAULTLINESIZE">xmlSecBase64SetDefaultLineSize</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECBITMASK">xmlSecBitMask</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNADD">xmlSecBnAdd</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNBLOBSETNODEVALUE">xmlSecBnBlobSetNodeValue</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNCOMPARE">xmlSecBnCompare</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNCOMPAREREVERSE">xmlSecBnCompareReverse</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNCREATE">xmlSecBnCreate</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNDESTROY">xmlSecBnDestroy</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNDIV">xmlSecBnDiv</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNFINALIZE">xmlSecBnFinalize</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNFORMAT">xmlSecBnFormat</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNFROMDECSTRING">xmlSecBnFromDecString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNFROMHEXSTRING">xmlSecBnFromHexString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNFROMSTRING">xmlSecBnFromString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNGETDATA">xmlSecBnGetData</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNGETNODEVALUE">xmlSecBnGetNodeValue</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNGETSIZE">xmlSecBnGetSize</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNINITIALIZE">xmlSecBnInitialize</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNMUL">xmlSecBnMul</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNREVERSE">xmlSecBnReverse</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNSETDATA">xmlSecBnSetData</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNSETNODEVALUE">xmlSecBnSetNodeValue</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNTODECSTRING">xmlSecBnToDecString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNTOHEXSTRING">xmlSecBnToHexString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNTOSTRING">xmlSecBnToString</a></p></li>
-<li><p><a href="xmlsec-bn.html#XMLSECBNZERO">xmlSecBnZero</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERAPPEND">xmlSecBufferAppend</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERBASE64NODECONTENTREAD">xmlSecBufferBase64NodeContentRead</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERBASE64NODECONTENTWRITE">xmlSecBufferBase64NodeContentWrite</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERCREATE">xmlSecBufferCreate</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERCREATEOUTPUTBUFFER">xmlSecBufferCreateOutputBuffer</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERDESTROY">xmlSecBufferDestroy</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFEREMPTY">xmlSecBufferEmpty</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERFINALIZE">xmlSecBufferFinalize</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERGETDATA">xmlSecBufferGetData</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERGETMAXSIZE">xmlSecBufferGetMaxSize</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERGETSIZE">xmlSecBufferGetSize</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERINITIALIZE">xmlSecBufferInitialize</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFER">xmlSecBuffer</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERPREPEND">xmlSecBufferPrepend</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERREADFILE">xmlSecBufferReadFile</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERREMOVEHEAD">xmlSecBufferRemoveHead</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERREMOVETAIL">xmlSecBufferRemoveTail</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERSETDATA">xmlSecBufferSetData</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERSETDEFAULTALLOCMODE">xmlSecBufferSetDefaultAllocMode</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERSETMAXSIZE">xmlSecBufferSetMaxSize</a></p></li>
-<li><p><a href="xmlsec-buffer.html#XMLSECBUFFERSETSIZE">xmlSecBufferSetSize</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECBYTE">xmlSecByte</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECCHECKNODENAME">xmlSecCheckNodeName</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONEXACT">xmlSecCheckVersionExact</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONEXT">xmlSecCheckVersionExt</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONMODE">xmlSecCheckVersionMode</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSION">xmlSecCheckVersion</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECCREATETREE">xmlSecCreateTree</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecCryptoAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRINIT">xmlSecCryptoAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRLOAD">xmlSecCryptoAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPDEFAULTKEYSMNGRSAVE">xmlSecCryptoAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPGETDEFAULTPWDCALLBACK">xmlSecCryptoAppGetDefaultPwdCallback</a></p></li>
-<li><p><font>xmlSecCryptoAppInitMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPINIT">xmlSecCryptoAppInit</a></p></li>
-<li><p><font>xmlSecCryptoAppKeyCertLoadMemoryMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYCERTLOADMEMORY">xmlSecCryptoAppKeyCertLoadMemory</a></p></li>
-<li><p><font>xmlSecCryptoAppKeyCertLoadMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYCERTLOAD">xmlSecCryptoAppKeyCertLoad</a></p></li>
-<li><p><font>xmlSecCryptoAppKeyLoadMemoryMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYLOADMEMORY">xmlSecCryptoAppKeyLoadMemory</a></p></li>
-<li><p><font>xmlSecCryptoAppKeyLoadMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYLOAD">xmlSecCryptoAppKeyLoad</a></p></li>
-<li><p><font>xmlSecCryptoAppKeysMngrCertLoadMemoryMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYSMNGRCERTLOADMEMORY">xmlSecCryptoAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><font>xmlSecCryptoAppKeysMngrCertLoadMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYSMNGRCERTLOAD">xmlSecCryptoAppKeysMngrCertLoad</a></p></li>
-<li><p><font>xmlSecCryptoAppPkcs12LoadMemoryMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPPKCS12LOADMEMORY">xmlSecCryptoAppPkcs12LoadMemory</a></p></li>
-<li><p><font>xmlSecCryptoAppPkcs12LoadMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPPKCS12LOAD">xmlSecCryptoAppPkcs12Load</a></p></li>
-<li><p><font>xmlSecCryptoAppShutdownMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOAPPSHUTDOWN">xmlSecCryptoAppShutdown</a></p></li>
-<li><p><font>xmlSecCryptoDLFunctions</font></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLFUNCTIONSREGISTERKEYDATAANDTRANSFORMS">xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLGETFUNCTIONS">xmlSecCryptoDLGetFunctions</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLGETLIBRARYFUNCTIONS">xmlSecCryptoDLGetLibraryFunctions</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLINIT">xmlSecCryptoDLInit</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY">xmlSecCryptoDLLoadLibrary</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLSETFUNCTIONS">xmlSecCryptoDLSetFunctions</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLSHUTDOWN">xmlSecCryptoDLShutdown</a></p></li>
-<li><p><a href="xmlsec-dl.html#XMLSECCRYPTODLUNLOADLIBRARY">xmlSecCryptoDLUnloadLibrary</a></p></li>
-<li><p><font>xmlSecCryptoGetFunctions-gcrypt</font></p></li>
-<li><p><font>xmlSecCryptoGetFunctions-gnutls</font></p></li>
-<li><p><font>xmlSecCryptoGetFunctions-mscrypto</font></p></li>
-<li><p><font>xmlSecCryptoGetFunctions-nss</font></p></li>
-<li><p><font>xmlSecCryptoGetFunctions-openssl</font></p></li>
-<li><p><font>xmlSecCryptoInitMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOINIT">xmlSecCryptoInit</a></p></li>
-<li><p><font>xmlSecCryptoKeyDataGetKlassMethod</font></p></li>
-<li><p><font>xmlSecCryptoKeyDataStoreGetKlassMethod</font></p></li>
-<li><p><font>xmlSecCryptoKeysMngrInitMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOKEYSMNGRINIT">xmlSecCryptoKeysMngrInit</a></p></li>
-<li><p><font>XMLSEC-CRYPTO</font></p></li>
-<li><p><font>xmlSecCryptoShutdownMethod</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECCRYPTOSHUTDOWN">xmlSecCryptoShutdown</a></p></li>
-<li><p><font>xmlSecCryptoTransformGetKlassMethod</font></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE">xmlSecDSigCtxCreate</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGDUMP">xmlSecDSigCtxDebugDump</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGXMLDUMP">xmlSecDSigCtxDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY">xmlSecDSigCtxDestroy</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLEREFERENCETRANSFORM">xmlSecDSigCtxEnableReferenceTransform</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLESIGNATURETRANSFORM">xmlSecDSigCtxEnableSignatureTransform</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE">xmlSecDSigCtxFinalize</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXGETPRESIGNBUFFER">xmlSecDSigCtxGetPreSignBuffer</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE">xmlSecDSigCtxInitialize</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN">xmlSecDSigCtxSign</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY">xmlSecDSigCtxVerify</a></p></li>
-<li><p><font>XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS</font></p></li>
-<li><p><font>XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES</font></p></li>
-<li><p><font>XMLSEC-DSIG-FLAGS-STORE-SIGNATURE</font></p></li>
-<li><p><font>XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES</font></p></li>
-<li><p><font>XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK</font></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXCREATE">xmlSecDSigReferenceCtxCreate</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGDUMP">xmlSecDSigReferenceCtxDebugDump</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGXMLDUMP">xmlSecDSigReferenceCtxDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDESTROY">xmlSecDSigReferenceCtxDestroy</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXFINALIZE">xmlSecDSigReferenceCtxFinalize</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXGETPREDIGESTBUFFER">xmlSecDSigReferenceCtxGetPreDigestBuffer</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXINITIALIZE">xmlSecDSigReferenceCtxInitialize</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTGETKLASS">xmlSecDSigReferenceCtxListGetKlass</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTID">xmlSecDSigReferenceCtxListId</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX">xmlSecDSigReferenceCtx</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXPROCESSNODE">xmlSecDSigReferenceCtxProcessNode</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN">xmlSecDSigReferenceOrigin</a></p></li>
-<li><p><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS">xmlSecDSigStatus</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXBINARYENCRYPT">xmlSecEncCtxBinaryEncrypt</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXCOPYUSERPREF">xmlSecEncCtxCopyUserPref</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXCREATE">xmlSecEncCtxCreate</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXDEBUGDUMP">xmlSecEncCtxDebugDump</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXDEBUGXMLDUMP">xmlSecEncCtxDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXDECRYPT">xmlSecEncCtxDecrypt</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXDECRYPTTOBUFFER">xmlSecEncCtxDecryptToBuffer</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXDESTROY">xmlSecEncCtxDestroy</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXFINALIZE">xmlSecEncCtxFinalize</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXINITIALIZE">xmlSecEncCtxInitialize</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXRESET">xmlSecEncCtxReset</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXURIENCRYPT">xmlSecEncCtxUriEncrypt</a></p></li>
-<li><p><a href="xmlsec-xmlenc.html#XMLSECENCCTXXMLENCRYPT">xmlSecEncCtxXmlEncrypt</a></p></li>
-<li><p><font>XMLSEC-ENC-RETURN-REPLACED-NODE</font></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECENSUREEMPTYCHILD">xmlSecEnsureEmptyChild</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERROR">xmlSecError</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSCALLBACK">xmlSecErrorsCallback</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSDEFAULTCALLBACKENABLEOUTPUT">xmlSecErrorsDefaultCallbackEnableOutput</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSDEFAULTCALLBACK">xmlSecErrorsDefaultCallback</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSGETCODE">xmlSecErrorsGetCode</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSGETMSG">xmlSecErrorsGetMsg</a></p></li>
-<li><p><font>XMLSEC-ERRORS-HERE</font></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSINIT">xmlSecErrorsInit</a></p></li>
-<li><p><font>XMLSEC-ERRORS-MAX-NUMBER</font></p></li>
-<li><p><font>XMLSEC-ERRORS-NO-MESSAGE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-ASSERTION</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-HAS-EXPIRED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-ISSUER-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-NOT-FOUND</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-NOT-YET-VALID</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-REVOKED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CERT-VERIFY-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-CRYPTO-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-DATA-NOT-MATCH</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-DISABLED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-DSIG-INVALID-REFERENCE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-DSIG-NO-REFERENCES</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-DATA</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-FORMAT</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-KEY-DATA</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-KEY-DATA-SIZE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-NODE-ATTRIBUTE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-NODE-CONTENT</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-NODE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-OPERATION</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-RESULT</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-SIZE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-STATUS</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-TRANSFORM-KEY</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-TRANSFORM</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-TYPE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-INVALID-URI-TYPE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-IO-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-KEY-DATA-ALREADY-EXIST</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-KEYDATA-DISABLED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-KEY-DATA-NOT-FOUND</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-KEY-NOT-FOUND</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-MALLOC-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-MAX-ENCKEY-LEVEL</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-MAX-RETRIEVALS-LEVEL</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-MAX-RETRIEVAL-TYPE-MISMATCH</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-MISSING-NODE-ATTRIBUTE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-NODE-ALREADY-PRESENT</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-NODE-NOT-FOUND</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-NOT-IMPLEMENTED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-STRDUP-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-TRANSFORM-DISABLED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-TRANSFORM-SAME-DOCUMENT-REQUIRED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-UNEXPECTED-NODE</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-XML-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-XMLSEC-FAILED</font></p></li>
-<li><p><font>XMLSEC-ERRORS-R-XSLT-FAILED</font></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSSAFESTRING">xmlSecErrorsSafeString</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSSETCALLBACK">xmlSecErrorsSetCallback</a></p></li>
-<li><p><a href="xmlsec-errors.html#XMLSECERRORSSHUTDOWN">xmlSecErrorsShutdown</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECFINDCHILD">xmlSecFindChild</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECFINDNODE">xmlSecFindNode</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECFINDPARENT">xmlSecFindParent</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECFINDSIBLING">xmlSecFindSibling</a></p></li>
-<li><p><font>XMLSEC-FUNC-TO-PTR</font></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecGCryptAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRINIT">xmlSecGCryptAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRLOAD">xmlSecGCryptAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPDEFAULTKEYSMNGRSAVE">xmlSecGCryptAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPGETDEFAULTPWDCALLBACK">xmlSecGCryptAppGetDefaultPwdCallback</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPINIT">xmlSecGCryptAppInit</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYCERTLOADMEMORY">xmlSecGCryptAppKeyCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYCERTLOAD">xmlSecGCryptAppKeyCertLoad</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYLOADMEMORY">xmlSecGCryptAppKeyLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYLOAD">xmlSecGCryptAppKeyLoad</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYSMNGRCERTLOADMEMORY">xmlSecGCryptAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPKEYSMNGRCERTLOAD">xmlSecGCryptAppKeysMngrCertLoad</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPPKCS12LOADMEMORY">xmlSecGCryptAppPkcs12LoadMemory</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPPKCS12LOAD">xmlSecGCryptAppPkcs12Load</a></p></li>
-<li><p><a href="xmlsec-gcrypt-app.html#XMLSECGCRYPTAPPSHUTDOWN">xmlSecGCryptAppShutdown</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTGENERATERANDOM">xmlSecGCryptGenerateRandom</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTHMACGETMINOUTPUTLENGTH">xmlSecGCryptHmacGetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTHMACSETMINOUTPUTLENGTH">xmlSecGCryptHmacSetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTINIT">xmlSecGCryptInit</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESGETKLASS">xmlSecGCryptKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESID">xmlSecGCryptKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAAESSET">xmlSecGCryptKeyDataAesSet</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESGETKLASS">xmlSecGCryptKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESID">xmlSecGCryptKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADESSET">xmlSecGCryptKeyDataDesSet</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAADOPTKEY">xmlSecGCryptKeyDataDsaAdoptKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAADOPTKEYPAIR">xmlSecGCryptKeyDataDsaAdoptKeyPair</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETKLASS">xmlSecGCryptKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETPRIVATEKEY">xmlSecGCryptKeyDataDsaGetPrivateKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAGETPUBLICKEY">xmlSecGCryptKeyDataDsaGetPublicKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATADSAID">xmlSecGCryptKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACGETKLASS">xmlSecGCryptKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACID">xmlSecGCryptKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATAHMACSET">xmlSecGCryptKeyDataHmacSet</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAADOPTKEY">xmlSecGCryptKeyDataRsaAdoptKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAADOPTKEYPAIR">xmlSecGCryptKeyDataRsaAdoptKeyPair</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETKLASS">xmlSecGCryptKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETPRIVATEKEY">xmlSecGCryptKeyDataRsaGetPrivateKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAGETPUBLICKEY">xmlSecGCryptKeyDataRsaGetPublicKey</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYDATARSAID">xmlSecGCryptKeyDataRsaId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTKEYSMNGRINIT">xmlSecGCryptKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTSHUTDOWN">xmlSecGCryptShutdown</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES128CBCGETKLASS">xmlSecGCryptTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES128CBCID">xmlSecGCryptTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES192CBCGETKLASS">xmlSecGCryptTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES192CBCID">xmlSecGCryptTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES256CBCGETKLASS">xmlSecGCryptTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMAES256CBCID">xmlSecGCryptTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDES3CBCGETKLASS">xmlSecGCryptTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDES3CBCID">xmlSecGCryptTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDSASHA1GETKLASS">xmlSecGCryptTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMDSASHA1ID">xmlSecGCryptTransformDsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACMD5GETKLASS">xmlSecGCryptTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACMD5ID">xmlSecGCryptTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACRIPEMD160GETKLASS">xmlSecGCryptTransformHmacRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACRIPEMD160ID">xmlSecGCryptTransformHmacRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA1GETKLASS">xmlSecGCryptTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA1ID">xmlSecGCryptTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA256GETKLASS">xmlSecGCryptTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA256ID">xmlSecGCryptTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA384GETKLASS">xmlSecGCryptTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA384ID">xmlSecGCryptTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA512GETKLASS">xmlSecGCryptTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMHMACSHA512ID">xmlSecGCryptTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES128GETKLASS">xmlSecGCryptTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES128ID">xmlSecGCryptTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES192GETKLASS">xmlSecGCryptTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES192ID">xmlSecGCryptTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES256GETKLASS">xmlSecGCryptTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWAES256ID">xmlSecGCryptTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWDES3GETKLASS">xmlSecGCryptTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMKWDES3ID">xmlSecGCryptTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMMD5GETKLASS">xmlSecGCryptTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMMD5ID">xmlSecGCryptTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRIPEMD160GETKLASS">xmlSecGCryptTransformRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRIPEMD160ID">xmlSecGCryptTransformRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSAMD5GETKLASS">xmlSecGCryptTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSAMD5ID">xmlSecGCryptTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSARIPEMD160GETKLASS">xmlSecGCryptTransformRsaRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSARIPEMD160ID">xmlSecGCryptTransformRsaRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA1GETKLASS">xmlSecGCryptTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA1ID">xmlSecGCryptTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA256GETKLASS">xmlSecGCryptTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA256ID">xmlSecGCryptTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA384GETKLASS">xmlSecGCryptTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA384ID">xmlSecGCryptTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA512GETKLASS">xmlSecGCryptTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMRSASHA512ID">xmlSecGCryptTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA1GETKLASS">xmlSecGCryptTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA1ID">xmlSecGCryptTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA256GETKLASS">xmlSecGCryptTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA256ID">xmlSecGCryptTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA384GETKLASS">xmlSecGCryptTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA384ID">xmlSecGCryptTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA512GETKLASS">xmlSecGCryptTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gcrypt-crypto.html#XMLSECGCRYPTTRANSFORMSHA512ID">xmlSecGCryptTransformSha512Id</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGENERATEANDADDID">xmlSecGenerateAndAddID</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGENERATEID">xmlSecGenerateID</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECGETDEFAULTCRYPTO">xmlSecGetDefaultCrypto</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGETHEX">xmlSecGetHex</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECGETKEYCALLBACK">xmlSecGetKeyCallback</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGETNEXTELEMENTNODE">xmlSecGetNextElementNode</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGETNODENSHREF">xmlSecGetNodeNsHref</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECGETQNAME">xmlSecGetQName</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecGnuTLSAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRINIT">xmlSecGnuTLSAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRLOAD">xmlSecGnuTLSAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPDEFAULTKEYSMNGRSAVE">xmlSecGnuTLSAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPGETDEFAULTPWDCALLBACK">xmlSecGnuTLSAppGetDefaultPwdCallback</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPINIT">xmlSecGnuTLSAppInit</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYCERTLOADMEMORY">xmlSecGnuTLSAppKeyCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYCERTLOAD">xmlSecGnuTLSAppKeyCertLoad</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYLOADMEMORY">xmlSecGnuTLSAppKeyLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYLOAD">xmlSecGnuTLSAppKeyLoad</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYSMNGRCERTLOADMEMORY">xmlSecGnuTLSAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPKEYSMNGRCERTLOAD">xmlSecGnuTLSAppKeysMngrCertLoad</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPPKCS12LOADMEMORY">xmlSecGnuTLSAppPkcs12LoadMemory</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPPKCS12LOAD">xmlSecGnuTLSAppPkcs12Load</a></p></li>
-<li><p><a href="xmlsec-gnutls-app.html#XMLSECGNUTLSAPPSHUTDOWN">xmlSecGnuTLSAppShutdown</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSGENERATERANDOM">xmlSecGnuTLSGenerateRandom</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSHMACGETMINOUTPUTLENGTH">xmlSecGnuTLSHmacGetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSHMACSETMINOUTPUTLENGTH">xmlSecGnuTLSHmacSetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSINIT">xmlSecGnuTLSInit</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESGETKLASS">xmlSecGnuTLSKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESID">xmlSecGnuTLSKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAAESSET">xmlSecGnuTLSKeyDataAesSet</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESGETKLASS">xmlSecGnuTLSKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESID">xmlSecGnuTLSKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADESSET">xmlSecGnuTLSKeyDataDesSet</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAADOPTPRIVATEKEY">xmlSecGnuTLSKeyDataDsaAdoptPrivateKey</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAADOPTPUBLICKEY">xmlSecGnuTLSKeyDataDsaAdoptPublicKey</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAGETKLASS">xmlSecGnuTLSKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATADSAID">xmlSecGnuTLSKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACGETKLASS">xmlSecGnuTLSKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACID">xmlSecGnuTLSKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATAHMACSET">xmlSecGnuTLSKeyDataHmacSet</a></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataRawX509CertGetKlass</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataRawX509CertId</font></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAADOPTPRIVATEKEY">xmlSecGnuTLSKeyDataRsaAdoptPrivateKey</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAADOPTPUBLICKEY">xmlSecGnuTLSKeyDataRsaAdoptPublicKey</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAGETKLASS">xmlSecGnuTLSKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYDATARSAID">xmlSecGnuTLSKeyDataRsaId</a></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509AdoptCert</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509AdoptCrl</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509AdoptKeyCert</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetCert</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetCertsSize</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetCrl</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetCrlsSize</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetKeyCert</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509GetKlass</font></p></li>
-<li><p><font>xmlSecGnuTLSKeyDataX509Id</font></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSKEYSMNGRINIT">xmlSecGnuTLSKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSSHUTDOWN">xmlSecGnuTLSShutdown</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES128CBCGETKLASS">xmlSecGnuTLSTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES128CBCID">xmlSecGnuTLSTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES192CBCGETKLASS">xmlSecGnuTLSTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES192CBCID">xmlSecGnuTLSTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES256CBCGETKLASS">xmlSecGnuTLSTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMAES256CBCID">xmlSecGnuTLSTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDES3CBCGETKLASS">xmlSecGnuTLSTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDES3CBCID">xmlSecGnuTLSTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDSASHA1GETKLASS">xmlSecGnuTLSTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMDSASHA1ID">xmlSecGnuTLSTransformDsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACMD5GETKLASS">xmlSecGnuTLSTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACMD5ID">xmlSecGnuTLSTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACRIPEMD160GETKLASS">xmlSecGnuTLSTransformHmacRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACRIPEMD160ID">xmlSecGnuTLSTransformHmacRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA1GETKLASS">xmlSecGnuTLSTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA1ID">xmlSecGnuTLSTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA256GETKLASS">xmlSecGnuTLSTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA256ID">xmlSecGnuTLSTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA384GETKLASS">xmlSecGnuTLSTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA384ID">xmlSecGnuTLSTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA512GETKLASS">xmlSecGnuTLSTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMHMACSHA512ID">xmlSecGnuTLSTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES128GETKLASS">xmlSecGnuTLSTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES128ID">xmlSecGnuTLSTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES192GETKLASS">xmlSecGnuTLSTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES192ID">xmlSecGnuTLSTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES256GETKLASS">xmlSecGnuTLSTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWAES256ID">xmlSecGnuTLSTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWDES3GETKLASS">xmlSecGnuTLSTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMKWDES3ID">xmlSecGnuTLSTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMMD5GETKLASS">xmlSecGnuTLSTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMMD5ID">xmlSecGnuTLSTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRIPEMD160GETKLASS">xmlSecGnuTLSTransformRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRIPEMD160ID">xmlSecGnuTLSTransformRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSAMD5GETKLASS">xmlSecGnuTLSTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSAMD5ID">xmlSecGnuTLSTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSARIPEMD160GETKLASS">xmlSecGnuTLSTransformRsaRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSARIPEMD160ID">xmlSecGnuTLSTransformRsaRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA1GETKLASS">xmlSecGnuTLSTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA1ID">xmlSecGnuTLSTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA256GETKLASS">xmlSecGnuTLSTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA256ID">xmlSecGnuTLSTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA384GETKLASS">xmlSecGnuTLSTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA384ID">xmlSecGnuTLSTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA512GETKLASS">xmlSecGnuTLSTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMRSASHA512ID">xmlSecGnuTLSTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA1GETKLASS">xmlSecGnuTLSTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA1ID">xmlSecGnuTLSTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA256GETKLASS">xmlSecGnuTLSTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA256ID">xmlSecGnuTLSTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA384GETKLASS">xmlSecGnuTLSTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA384ID">xmlSecGnuTLSTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA512GETKLASS">xmlSecGnuTLSTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-gnutls-crypto.html#XMLSECGNUTLSTRANSFORMSHA512ID">xmlSecGnuTLSTransformSha512Id</a></p></li>
-<li><p><font>xmlSecGnuTLSX509CertGetKey</font></p></li>
-<li><p><font>xmlSecGnuTLSX509StoreAdoptCert</font></p></li>
-<li><p><font>xmlSecGnuTLSX509StoreFindCert</font></p></li>
-<li><p><font>xmlSecGnuTLSX509StoreGetKlass</font></p></li>
-<li><p><font>xmlSecGnuTLSX509StoreId</font></p></li>
-<li><p><font>xmlSecGnuTLSX509StoreVerify</font></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECINIT">xmlSecInit</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECIOCLEANUPCALLBACKS">xmlSecIOCleanupCallbacks</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECIOINIT">xmlSecIOInit</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECIOREGISTERCALLBACKS">xmlSecIORegisterCallbacks</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECIOREGISTERDEFAULTCALLBACKS">xmlSecIORegisterDefaultCallbacks</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECIOSHUTDOWN">xmlSecIOShutdown</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECISEMPTYNODE">xmlSecIsEmptyNode</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECISEMPTYSTRING">xmlSecIsEmptyString</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECISHEX">xmlSecIsHex</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYADOPTDATA">xmlSecKeyAdoptData</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYCHECKID">xmlSecKeyCheckId</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYCOPY">xmlSecKeyCopy</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYCREATE">xmlSecKeyCreate</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAAESGETKLASS">xmlSecKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAAESID">xmlSecKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYSIZE">xmlSecKeyDataBinarySize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEBINREAD">xmlSecKeyDataBinaryValueBinRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEBINWRITE">xmlSecKeyDataBinaryValueBinWrite</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDEBUGDUMP">xmlSecKeyDataBinaryValueDebugDump</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDEBUGXMLDUMP">xmlSecKeyDataBinaryValueDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDUPLICATE">xmlSecKeyDataBinaryValueDuplicate</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEFINALIZE">xmlSecKeyDataBinaryValueFinalize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEGETBUFFER">xmlSecKeyDataBinaryValueGetBuffer</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEGETSIZE">xmlSecKeyDataBinaryValueGetSize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEINITIALIZE">xmlSecKeyDataBinaryValueInitialize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUESETBUFFER">xmlSecKeyDataBinaryValueSetBuffer</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEXMLREAD">xmlSecKeyDataBinaryValueXmlRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEXMLWRITE">xmlSecKeyDataBinaryValueXmlWrite</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINREADMETHOD">xmlSecKeyDataBinReadMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINREAD">xmlSecKeyDataBinRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINWRITEMETHOD">xmlSecKeyDataBinWriteMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINWRITE">xmlSecKeyDataBinWrite</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKID">xmlSecKeyDataCheckId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKSIZE">xmlSecKeyDataCheckSize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKUSAGE">xmlSecKeyDataCheckUsage</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATACREATE">xmlSecKeyDataCreate</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMPMETHOD">xmlSecKeyDataDebugDumpMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMP">xmlSecKeyDataDebugDump</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGXMLDUMP">xmlSecKeyDataDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATADESGETKLASS">xmlSecKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATADESID">xmlSecKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADESTROY">xmlSecKeyDataDestroy</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATADSAGETKLASS">xmlSecKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATADSAID">xmlSecKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADUPLICATEMETHOD">xmlSecKeyDataDuplicateMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADUPLICATE">xmlSecKeyDataDuplicate</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAECDSAGETKLASS">xmlSecKeyDataEcdsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAECDSAID">xmlSecKeyDataEcdsaId</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATAENCRYPTEDKEYGETKLASS">xmlSecKeyDataEncryptedKeyGetKlass</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATAENCRYPTEDKEYID">xmlSecKeyDataEncryptedKeyId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAFINALIZEMETHOD">xmlSecKeyDataFinalizeMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT">xmlSecKeyDataFormat</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGENERATEMETHOD">xmlSecKeyDataGenerateMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGENERATE">xmlSecKeyDataGenerate</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETIDENTIFIERMETHOD">xmlSecKeyDataGetIdentifierMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETIDENTIFIER">xmlSecKeyDataGetIdentifier</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETNAME">xmlSecKeyDataGetName</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETSIZEMETHOD">xmlSecKeyDataGetSizeMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETSIZE">xmlSecKeyDataGetSize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETTYPEMETHOD">xmlSecKeyDataGetTypeMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETTYPE">xmlSecKeyDataGetType</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAGOST2001GETKLASS">xmlSecKeyDataGost2001GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAGOST2001ID">xmlSecKeyDataGost2001Id</a></p></li>
-<li><p><font>xmlSecKeyDataGostR3410-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecKeyDataGostR3410-2012-256Id</font></p></li>
-<li><p><font>xmlSecKeyDataGostR3410-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecKeyDataGostR3410-2012-512Id</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAHMACGETKLASS">xmlSecKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAHMACID">xmlSecKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTDEBUGDUMP">xmlSecKeyDataIdListDebugDump</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTDEBUGXMLDUMP">xmlSecKeyDataIdListDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYHREF">xmlSecKeyDataIdListFindByHref</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYNAME">xmlSecKeyDataIdListFindByName</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYNODE">xmlSecKeyDataIdListFindByNode</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFIND">xmlSecKeyDataIdListFind</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTGETKLASS">xmlSecKeyDataIdListGetKlass</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTID">xmlSecKeyDataIdListId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSGET">xmlSecKeyDataIdsGet</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSINIT">xmlSecKeyDataIdsInit</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSREGISTERDEFAULT">xmlSecKeyDataIdsRegisterDefault</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSREGISTER">xmlSecKeyDataIdsRegister</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSSHUTDOWN">xmlSecKeyDataIdsShutdown</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDUNKNOWN">xmlSecKeyDataIdUnknown</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAINITMETHOD">xmlSecKeyDataInitMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAISVALID">xmlSecKeyDataIsValid</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAKLASSGETNAME">xmlSecKeyDataKlassGetName</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAKLASS">xmlSecKeyDataKlass</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATALISTGETKLASS">xmlSecKeyDataListGetKlass</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATALISTID">xmlSecKeyDataListId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyData</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATANAMEGETKLASS">xmlSecKeyDataNameGetKlass</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATANAMEID">xmlSecKeyDataNameId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATARAWX509CERTGETKLASS">xmlSecKeyDataRawX509CertGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATARAWX509CERTID">xmlSecKeyDataRawX509CertId</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATARETRIEVALMETHODGETKLASS">xmlSecKeyDataRetrievalMethodGetKlass</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATARETRIEVALMETHODID">xmlSecKeyDataRetrievalMethodId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATARSAGETKLASS">xmlSecKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATARSAID">xmlSecKeyDataRsaId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECHECKID">xmlSecKeyDataStoreCheckId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECHECKSIZE">xmlSecKeyDataStoreCheckSize</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECREATE">xmlSecKeyDataStoreCreate</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREDESTROY">xmlSecKeyDataStoreDestroy</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREFINALIZEMETHOD">xmlSecKeyDataStoreFinalizeMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREGETNAME">xmlSecKeyDataStoreGetName</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREIDUNKNOWN">xmlSecKeyDataStoreIdUnknown</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREINITIALIZEMETHOD">xmlSecKeyDataStoreInitializeMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREISVALID">xmlSecKeyDataStoreIsValid</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREKLASSGETNAME">xmlSecKeyDataStoreKlassGetName</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREKLASS">xmlSecKeyDataStoreKlass</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStore</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREPTRLISTGETKLASS">xmlSecKeyDataStorePtrListGetKlass</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREPTRLISTID">xmlSecKeyDataStorePtrListId</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEANY">xmlSecKeyDataTypeAny</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE">xmlSecKeyDataType</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPENONE">xmlSecKeyDataTypeNone</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPERMANENT">xmlSecKeyDataTypePermanent</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPRIVATE">xmlSecKeyDataTypePrivate</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPUBLIC">xmlSecKeyDataTypePublic</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPESESSION">xmlSecKeyDataTypeSession</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPESYMMETRIC">xmlSecKeyDataTypeSymmetric</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPETRUSTED">xmlSecKeyDataTypeTrusted</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEUNKNOWN">xmlSecKeyDataTypeUnknown</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEANY">xmlSecKeyDataUsageAny</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODE">xmlSecKeyDataUsageKeyInfoNode</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODEREAD">xmlSecKeyDataUsageKeyInfoNodeRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODEWRITE">xmlSecKeyDataUsageKeyInfoNodeWrite</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODE">xmlSecKeyDataUsageKeyValueNode</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODEREAD">xmlSecKeyDataUsageKeyValueNodeRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODEWRITE">xmlSecKeyDataUsageKeyValueNodeWrite</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE">xmlSecKeyDataUsage</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODEBIN">xmlSecKeyDataUsageRetrievalMethodNodeBin</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODE">xmlSecKeyDataUsageRetrievalMethodNode</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODEXML">xmlSecKeyDataUsageRetrievalMethodNodeXml</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEUNKNOWN">xmlSecKeyDataUsageUnknown</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATAVALUEGETKLASS">xmlSecKeyDataValueGetKlass</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYDATAVALUEID">xmlSecKeyDataValueId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAX509GETKLASS">xmlSecKeyDataX509GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECKEYDATAX509ID">xmlSecKeyDataX509Id</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREADMETHOD">xmlSecKeyDataXmlReadMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREAD">xmlSecKeyDataXmlRead</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLWRITEMETHOD">xmlSecKeyDataXmlWriteMethod</a></p></li>
-<li><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLWRITE">xmlSecKeyDataXmlWrite</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYDEBUGDUMP">xmlSecKeyDebugDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYDEBUGXMLDUMP">xmlSecKeyDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYDESTROY">xmlSecKeyDestroy</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYDUPLICATE">xmlSecKeyDuplicate</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYEMPTY">xmlSecKeyEmpty</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYENSUREDATA">xmlSecKeyEnsureData</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGENERATEBYNAME">xmlSecKeyGenerateByName</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGENERATE">xmlSecKeyGenerate</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGETDATA">xmlSecKeyGetData</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGETNAME">xmlSecKeyGetName</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGETTYPE">xmlSecKeyGetType</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYGETVALUE">xmlSecKeyGetValue</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCOPYUSERPREF">xmlSecKeyInfoCtxCopyUserPref</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCREATEENCCTX">xmlSecKeyInfoCtxCreateEncCtx</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCREATE">xmlSecKeyInfoCtxCreate</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDEBUGDUMP">xmlSecKeyInfoCtxDebugDump</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDEBUGXMLDUMP">xmlSecKeyInfoCtxDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDESTROY">xmlSecKeyInfoCtxDestroy</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXFINALIZE">xmlSecKeyInfoCtxFinalize</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXINITIALIZE">xmlSecKeyInfoCtxInitialize</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXRESET">xmlSecKeyInfoCtxReset</a></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-DONT-STOP-ON-KEY-FOUND</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-ENCKEY-DONT-STOP-ON-FAILED-DECRYPTION</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-KEYNAME-STOP-ON-UNKNOWN</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-KEYVALUE-STOP-ON-UNKNOWN-CHILD</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-MISMATCH-HREF</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-UNKNOWN-HREF</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-STOP-ON-EMPTY-NODE</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-STOP-ON-UNKNOWN-CHILD</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-DONT-VERIFY-CERTS</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-SKIP-STRICT-CHECKS</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-INVALID-CERT</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CERT</font></p></li>
-<li><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CHILD</font></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOMODE">xmlSecKeyInfoMode</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFONODEREAD">xmlSecKeyInfoNodeRead</a></p></li>
-<li><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFONODEWRITE">xmlSecKeyInfoNodeWrite</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYISVALID">xmlSecKeyIsValid</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYMATCH">xmlSecKeyMatch</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEY">xmlSecKey</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYPTRLISTGETKLASS">xmlSecKeyPtrListGetKlass</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYPTRLISTID">xmlSecKeyPtrListId</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREADBINARYFILE">xmlSecKeyReadBinaryFile</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREADBUFFER">xmlSecKeyReadBuffer</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREADMEMORY">xmlSecKeyReadMemory</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQCOPY">xmlSecKeyReqCopy</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQDEBUGDUMP">xmlSecKeyReqDebugDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQDEBUGXMLDUMP">xmlSecKeyReqDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQFINALIZE">xmlSecKeyReqFinalize</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQINITIALIZE">xmlSecKeyReqInitialize</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQMATCHKEY">xmlSecKeyReqMatchKey</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQMATCHKEYVALUE">xmlSecKeyReqMatchKeyValue</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQ">xmlSecKeyReq</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYREQRESET">xmlSecKeyReqReset</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYSETNAME">xmlSecKeySetName</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYSETVALUE">xmlSecKeySetValue</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRADOPTDATASTORE">xmlSecKeysMngrAdoptDataStore</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRADOPTKEYSSTORE">xmlSecKeysMngrAdoptKeysStore</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRCREATE">xmlSecKeysMngrCreate</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRDESTROY">xmlSecKeysMngrDestroy</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRFINDKEY">xmlSecKeysMngrFindKey</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETDATASTORE">xmlSecKeysMngrGetDataStore</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETKEY">xmlSecKeysMngrGetKey</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETKEYSSTORE">xmlSecKeysMngrGetKeysStore</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">xmlSecKeysMngr</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTORECHECKID">xmlSecKeyStoreCheckId</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTORECHECKSIZE">xmlSecKeyStoreCheckSize</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTORECREATE">xmlSecKeyStoreCreate</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREDESTROY">xmlSecKeyStoreDestroy</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINALIZEMETHOD">xmlSecKeyStoreFinalizeMethod</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINDKEYMETHOD">xmlSecKeyStoreFindKeyMethod</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINDKEY">xmlSecKeyStoreFindKey</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREGETNAME">xmlSecKeyStoreGetName</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREIDUNKNOWN">xmlSecKeyStoreIdUnknown</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREINITIALIZEMETHOD">xmlSecKeyStoreInitializeMethod</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREISVALID">xmlSecKeyStoreIsValid</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREKLASSGETNAME">xmlSecKeyStoreKlassGetName</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREKLASS">xmlSecKeyStoreKlass</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE">xmlSecKeyStore</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGEANY">xmlSecKeyUsageAny</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGEDECRYPT">xmlSecKeyUsageDecrypt</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGEENCRYPT">xmlSecKeyUsageEncrypt</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGEKEYEXCHANGE">xmlSecKeyUsageKeyExchange</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGE">xmlSecKeyUsage</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGESIGN">xmlSecKeyUsageSign</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSAGEVERIFY">xmlSecKeyUsageVerify</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHCOPY">xmlSecKeyUseWithCopy</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHCREATE">xmlSecKeyUseWithCreate</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHDEBUGDUMP">xmlSecKeyUseWithDebugDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHDEBUGXMLDUMP">xmlSecKeyUseWithDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHDESTROY">xmlSecKeyUseWithDestroy</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHDUPLICATE">xmlSecKeyUseWithDuplicate</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHFINALIZE">xmlSecKeyUseWithFinalize</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHINITIALIZE">xmlSecKeyUseWithInitialize</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITH">xmlSecKeyUseWith</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHPTRLISTGETKLASS">xmlSecKeyUseWithPtrListGetKlass</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHPTRLISTID">xmlSecKeyUseWithPtrListId</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHRESET">xmlSecKeyUseWithReset</a></p></li>
-<li><p><a href="xmlsec-keys.html#XMLSECKEYUSEWITHSET">xmlSecKeyUseWithSet</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecMSCryptoAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEYSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTTRUSTEDSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTUNTRUSTEDSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRINIT">xmlSecMSCryptoAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRLOAD">xmlSecMSCryptoAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPRIVATEKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPUBLICKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSAVE">xmlSecMSCryptoAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSYMKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPGETCERTSTORENAME">xmlSecMSCryptoAppGetCertStoreName</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPGETDEFAULTPWDCALLBACK">xmlSecMSCryptoAppGetDefaultPwdCallback</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPINIT">xmlSecMSCryptoAppInit</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYCERTLOADMEMORY">xmlSecMSCryptoAppKeyCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYCERTLOAD">xmlSecMSCryptoAppKeyCertLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYLOADMEMORY">xmlSecMSCryptoAppKeyLoadMemory</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYLOAD">xmlSecMSCryptoAppKeyLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYSMNGRCERTLOADMEMORY">xmlSecMSCryptoAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYSMNGRCERTLOAD">xmlSecMSCryptoAppKeysMngrCertLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPPKCS12LOADMEMORY">xmlSecMSCryptoAppPkcs12LoadMemory</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPPKCS12LOAD">xmlSecMSCryptoAppPkcs12Load</a></p></li>
-<li><p><a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPSHUTDOWN">xmlSecMSCryptoAppShutdown</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOCERTADOPT">xmlSecMSCryptoCertAdopt</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOCERTDUP">xmlSecMSCryptoCertDup</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTLOCALETOUNICODE">xmlSecMSCryptoConvertLocaleToUnicode</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTLOCALETOUTF8">xmlSecMSCryptoConvertLocaleToUtf8</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTTSTRTOUTF8">xmlSecMSCryptoConvertTstrToUtf8</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUNICODETOUTF8">xmlSecMSCryptoConvertUnicodeToUtf8</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOLOCALE">xmlSecMSCryptoConvertUtf8ToLocale</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOTSTR">xmlSecMSCryptoConvertUtf8ToTstr</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOUNICODE">xmlSecMSCryptoConvertUtf8ToUnicode</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOERRORSDEFAULTCALLBACK">xmlSecMSCryptoErrorsDefaultCallback</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOGENERATERANDOM">xmlSecMSCryptoGenerateRandom</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOHMACGETMINOUTPUTLENGTH">xmlSecMSCryptoHmacGetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOHMACSETMINOUTPUTLENGTH">xmlSecMSCryptoHmacSetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOINIT">xmlSecMSCryptoInit</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESGETKLASS">xmlSecMSCryptoKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESID">xmlSecMSCryptoKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESSET">xmlSecMSCryptoKeyDataAesSet</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADESGETKLASS">xmlSecMSCryptoKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADESID">xmlSecMSCryptoKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADSAGETKLASS">xmlSecMSCryptoKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADSAID">xmlSecMSCryptoKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETCERT">xmlSecMSCryptoKeyDataGetCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETDECRYPTKEY">xmlSecMSCryptoKeyDataGetDecryptKey</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETKEY">xmlSecMSCryptoKeyDataGetKey</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOKEYSPEC">xmlSecMSCryptoKeyDataGetMSCryptoKeySpec</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDERINFO">xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo</a></p></li>
-<li><p><a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDER">xmlSecMSCryptoKeyDataGetMSCryptoProvider</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAGOST2001GETKLASS">xmlSecMSCryptoKeyDataGost2001GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAGOST2001ID">xmlSecMSCryptoKeyDataGost2001Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACGETKLASS">xmlSecMSCryptoKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACID">xmlSecMSCryptoKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACSET">xmlSecMSCryptoKeyDataHmacSet</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATARAWX509CERTGETKLASS">xmlSecMSCryptoKeyDataRawX509CertGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATARAWX509CERTID">xmlSecMSCryptoKeyDataRawX509CertId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATARSAGETKLASS">xmlSecMSCryptoKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATARSAID">xmlSecMSCryptoKeyDataRsaId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTCERT">xmlSecMSCryptoKeyDataX509AdoptCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTCRL">xmlSecMSCryptoKeyDataX509AdoptCrl</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTKEYCERT">xmlSecMSCryptoKeyDataX509AdoptKeyCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCERT">xmlSecMSCryptoKeyDataX509GetCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCERTSSIZE">xmlSecMSCryptoKeyDataX509GetCertsSize</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCRL">xmlSecMSCryptoKeyDataX509GetCrl</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCRLSSIZE">xmlSecMSCryptoKeyDataX509GetCrlsSize</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETKEYCERT">xmlSecMSCryptoKeyDataX509GetKeyCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETKLASS">xmlSecMSCryptoKeyDataX509GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ID">xmlSecMSCryptoKeyDataX509Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYSMNGRINIT">xmlSecMSCryptoKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREADOPTKEY">xmlSecMSCryptoKeysStoreAdoptKey</a></p></li>
-<li><p><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREGETKLASS">xmlSecMSCryptoKeysStoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREID">xmlSecMSCryptoKeysStoreId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTORELOAD">xmlSecMSCryptoKeysStoreLoad</a></p></li>
-<li><p><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTORESAVE">xmlSecMSCryptoKeysStoreSave</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOSHUTDOWN">xmlSecMSCryptoShutdown</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES128CBCGETKLASS">xmlSecMSCryptoTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES128CBCID">xmlSecMSCryptoTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES192CBCGETKLASS">xmlSecMSCryptoTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES192CBCID">xmlSecMSCryptoTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES256CBCGETKLASS">xmlSecMSCryptoTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES256CBCID">xmlSecMSCryptoTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDES3CBCGETKLASS">xmlSecMSCryptoTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDES3CBCID">xmlSecMSCryptoTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDSASHA1GETKLASS">xmlSecMSCryptoTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDSASHA1ID">xmlSecMSCryptoTransformDsaSha1Id</a></p></li>
-<li><p><font>xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecMSCryptoTransformGost2001GostR3411-94Id</font></p></li>
-<li><p><font>xmlSecMSCryptoTransformGostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecMSCryptoTransformGostR3411-94Id</font></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACMD5GETKLASS">xmlSecMSCryptoTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACMD5ID">xmlSecMSCryptoTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA1GETKLASS">xmlSecMSCryptoTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA1ID">xmlSecMSCryptoTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA256GETKLASS">xmlSecMSCryptoTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA256ID">xmlSecMSCryptoTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA384GETKLASS">xmlSecMSCryptoTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA384ID">xmlSecMSCryptoTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA512GETKLASS">xmlSecMSCryptoTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA512ID">xmlSecMSCryptoTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES128GETKLASS">xmlSecMSCryptoTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES128ID">xmlSecMSCryptoTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES192GETKLASS">xmlSecMSCryptoTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES192ID">xmlSecMSCryptoTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES256GETKLASS">xmlSecMSCryptoTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES256ID">xmlSecMSCryptoTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWDES3GETKLASS">xmlSecMSCryptoTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWDES3ID">xmlSecMSCryptoTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMMD5GETKLASS">xmlSecMSCryptoTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMMD5ID">xmlSecMSCryptoTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAMD5GETKLASS">xmlSecMSCryptoTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAMD5ID">xmlSecMSCryptoTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAOAEPGETKLASS">xmlSecMSCryptoTransformRsaOaepGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAOAEPID">xmlSecMSCryptoTransformRsaOaepId</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAPKCS1GETKLASS">xmlSecMSCryptoTransformRsaPkcs1GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAPKCS1ID">xmlSecMSCryptoTransformRsaPkcs1Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA1GETKLASS">xmlSecMSCryptoTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA1ID">xmlSecMSCryptoTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA256GETKLASS">xmlSecMSCryptoTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA256ID">xmlSecMSCryptoTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA384GETKLASS">xmlSecMSCryptoTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA384ID">xmlSecMSCryptoTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA512GETKLASS">xmlSecMSCryptoTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA512ID">xmlSecMSCryptoTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA1GETKLASS">xmlSecMSCryptoTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA1ID">xmlSecMSCryptoTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA256GETKLASS">xmlSecMSCryptoTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA256ID">xmlSecMSCryptoTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA384GETKLASS">xmlSecMSCryptoTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA384ID">xmlSecMSCryptoTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA512GETKLASS">xmlSecMSCryptoTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA512ID">xmlSecMSCryptoTransformSha512Id</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTCERT">xmlSecMSCryptoX509StoreAdoptCert</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTKEYSTORE">xmlSecMSCryptoX509StoreAdoptKeyStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTTRUSTEDSTORE">xmlSecMSCryptoX509StoreAdoptTrustedStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTUNTRUSTEDSTORE">xmlSecMSCryptoX509StoreAdoptUntrustedStore</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREENABLESYSTEMTRUSTEDCERTS">xmlSecMSCryptoX509StoreEnableSystemTrustedCerts</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREGETKLASS">xmlSecMSCryptoX509StoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREID">xmlSecMSCryptoX509StoreId</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECNODEENCODEANDSETCONTENT">xmlSecNodeEncodeAndSetContent</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECNODEGETNAME">xmlSecNodeGetName</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETADDLIST">xmlSecNodeSetAddList</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETADD">xmlSecNodeSetAdd</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETCONTAINS">xmlSecNodeSetContains</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETCREATE">xmlSecNodeSetCreate</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETDEBUGDUMP">xmlSecNodeSetDebugDump</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETDESTROY">xmlSecNodeSetDestroy</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETDOCDESTROY">xmlSecNodeSetDocDestroy</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETDUMPTEXTNODES">xmlSecNodeSetDumpTextNodes</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETGETCHILDREN">xmlSecNodeSetGetChildren</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESET">xmlSecNodeSet</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETOP">xmlSecNodeSetOp</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETTYPE">xmlSecNodeSetType</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETWALKCALLBACK">xmlSecNodeSetWalkCallback</a></p></li>
-<li><p><a href="xmlsec-nodeset.html#XMLSECNODESETWALK">xmlSecNodeSetWalk</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecNssAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRINIT">xmlSecNssAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRLOAD">xmlSecNssAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRSAVE">xmlSecNssAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPGETDEFAULTPWDCALLBACK">xmlSecNssAppGetDefaultPwdCallback</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPINIT">xmlSecNssAppInit</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOADMEMORY">xmlSecNssAppKeyCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOAD">xmlSecNssAppKeyCertLoad</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOADSECITEM">xmlSecNssAppKeyCertLoadSECItem</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYFROMCERTLOADSECITEM">xmlSecNssAppKeyFromCertLoadSECItem</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOADMEMORY">xmlSecNssAppKeyLoadMemory</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOAD">xmlSecNssAppKeyLoad</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOADSECITEM">xmlSecNssAppKeyLoadSECItem</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOADMEMORY">xmlSecNssAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOAD">xmlSecNssAppKeysMngrCertLoad</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOADSECITEM">xmlSecNssAppKeysMngrCertLoadSECItem</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOADMEMORY">xmlSecNssAppPkcs12LoadMemory</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOAD">xmlSecNssAppPkcs12Load</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOADSECITEM">xmlSecNssAppPkcs12LoadSECItem</a></p></li>
-<li><p><a href="xmlsec-nss-app.html#XMLSECNSSAPPSHUTDOWN">xmlSecNssAppShutdown</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSERRORSDEFAULTCALLBACK">xmlSecNssErrorsDefaultCallback</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSGENERATERANDOM">xmlSecNssGenerateRandom</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSGETINTERNALKEYSLOT">xmlSecNssGetInternalKeySlot</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSHMACGETMINOUTPUTLENGTH">xmlSecNssHmacGetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSHMACSETMINOUTPUTLENGTH">xmlSecNssHmacSetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSINIT">xmlSecNssInit</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESGETKLASS">xmlSecNssKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESID">xmlSecNssKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESSET">xmlSecNssKeyDataAesSet</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESGETKLASS">xmlSecNssKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESID">xmlSecNssKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESSET">xmlSecNssKeyDataDesSet</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADSAGETKLASS">xmlSecNssKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADSAID">xmlSecNssKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACGETKLASS">xmlSecNssKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACID">xmlSecNssKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACSET">xmlSecNssKeyDataHmacSet</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATARAWX509CERTGETKLASS">xmlSecNssKeyDataRawX509CertGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATARAWX509CERTID">xmlSecNssKeyDataRawX509CertId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATARSAGETKLASS">xmlSecNssKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATARSAID">xmlSecNssKeyDataRsaId</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTCERT">xmlSecNssKeyDataX509AdoptCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTCRL">xmlSecNssKeyDataX509AdoptCrl</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTKEYCERT">xmlSecNssKeyDataX509AdoptKeyCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCERT">xmlSecNssKeyDataX509GetCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCERTSSIZE">xmlSecNssKeyDataX509GetCertsSize</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCRL">xmlSecNssKeyDataX509GetCrl</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCRLSSIZE">xmlSecNssKeyDataX509GetCrlsSize</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETKEYCERT">xmlSecNssKeyDataX509GetKeyCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETKLASS">xmlSecNssKeyDataX509GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ID">xmlSecNssKeyDataX509Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYSMNGRINIT">xmlSecNssKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREADOPTKEY">xmlSecNssKeysStoreAdoptKey</a></p></li>
-<li><p><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREGETKLASS">xmlSecNssKeysStoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREID">xmlSecNssKeysStoreId</a></p></li>
-<li><p><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTORELOAD">xmlSecNssKeysStoreLoad</a></p></li>
-<li><p><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTORESAVE">xmlSecNssKeysStoreSave</a></p></li>
-<li><p><a href="xmlsec-nss-bignum.html#XMLSECNSSNODEGETBIGNUMVALUE">xmlSecNssNodeGetBigNumValue</a></p></li>
-<li><p><a href="xmlsec-nss-bignum.html#XMLSECNSSNODESETBIGNUMVALUE">xmlSecNssNodeSetBigNumValue</a></p></li>
-<li><p><a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIADOPTKEY">xmlSecNssPKIAdoptKey</a></p></li>
-<li><p><a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATADUPLICATE">xmlSecNssPKIKeyDataDuplicate</a></p></li>
-<li><p><a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETKEYTYPE">xmlSecNssPKIKeyDataGetKeyType</a></p></li>
-<li><p><a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETPRIVKEY">xmlSecNssPKIKeyDataGetPrivKey</a></p></li>
-<li><p><a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETPUBKEY">xmlSecNssPKIKeyDataGetPubKey</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSSHUTDOWN">xmlSecNssShutdown</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES128CBCGETKLASS">xmlSecNssTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES128CBCID">xmlSecNssTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES192CBCGETKLASS">xmlSecNssTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES192CBCID">xmlSecNssTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES256CBCGETKLASS">xmlSecNssTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES256CBCID">xmlSecNssTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDES3CBCGETKLASS">xmlSecNssTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDES3CBCID">xmlSecNssTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDSASHA1GETKLASS">xmlSecNssTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDSASHA1ID">xmlSecNssTransformDsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACMD5GETKLASS">xmlSecNssTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACMD5ID">xmlSecNssTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACRIPEMD160GETKLASS">xmlSecNssTransformHmacRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACRIPEMD160ID">xmlSecNssTransformHmacRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA1GETKLASS">xmlSecNssTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA1ID">xmlSecNssTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA256GETKLASS">xmlSecNssTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA256ID">xmlSecNssTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA384GETKLASS">xmlSecNssTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA384ID">xmlSecNssTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA512GETKLASS">xmlSecNssTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA512ID">xmlSecNssTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES128GETKLASS">xmlSecNssTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES128ID">xmlSecNssTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES192GETKLASS">xmlSecNssTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES192ID">xmlSecNssTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES256GETKLASS">xmlSecNssTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES256ID">xmlSecNssTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWDES3GETKLASS">xmlSecNssTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWDES3ID">xmlSecNssTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMMD5GETKLASS">xmlSecNssTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMMD5ID">xmlSecNssTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAMD5GETKLASS">xmlSecNssTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAMD5ID">xmlSecNssTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAOAEPGETKLASS">xmlSecNssTransformRsaOaepGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAOAEPID">xmlSecNssTransformRsaOaepId</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAPKCS1GETKLASS">xmlSecNssTransformRsaPkcs1GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAPKCS1ID">xmlSecNssTransformRsaPkcs1Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA1GETKLASS">xmlSecNssTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA1ID">xmlSecNssTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA256GETKLASS">xmlSecNssTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA256ID">xmlSecNssTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA384GETKLASS">xmlSecNssTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA384ID">xmlSecNssTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA512GETKLASS">xmlSecNssTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA512ID">xmlSecNssTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA1GETKLASS">xmlSecNssTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA1ID">xmlSecNssTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA256GETKLASS">xmlSecNssTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA256ID">xmlSecNssTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA384GETKLASS">xmlSecNssTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA384ID">xmlSecNssTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA512GETKLASS">xmlSecNssTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA512ID">xmlSecNssTransformSha512Id</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509CERTGETKEY">xmlSecNssX509CertGetKey</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREADOPTCERT">xmlSecNssX509StoreAdoptCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREFINDCERT">xmlSecNssX509StoreFindCert</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREGETKLASS">xmlSecNssX509StoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREID">xmlSecNssX509StoreId</a></p></li>
-<li><p><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREVERIFY">xmlSecNssX509StoreVerify</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecOpenSSLAppDefaultKeysMngrAdoptKey</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRINIT">xmlSecOpenSSLAppDefaultKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRLOAD">xmlSecOpenSSLAppDefaultKeysMngrLoad</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRSAVE">xmlSecOpenSSLAppDefaultKeysMngrSave</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPGETDEFAULTPWDCALLBACK">xmlSecOpenSSLAppGetDefaultPwdCallback</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPINIT">xmlSecOpenSSLAppInit</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOADBIO">xmlSecOpenSSLAppKeyCertLoadBIO</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOADMEMORY">xmlSecOpenSSLAppKeyCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOAD">xmlSecOpenSSLAppKeyCertLoad</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYFROMCERTLOADBIO">xmlSecOpenSSLAppKeyFromCertLoadBIO</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOADBIO">xmlSecOpenSSLAppKeyLoadBIO</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOADMEMORY">xmlSecOpenSSLAppKeyLoadMemory</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOAD">xmlSecOpenSSLAppKeyLoad</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRADDCERTSFILE">xmlSecOpenSSLAppKeysMngrAddCertsFile</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRADDCERTSPATH">xmlSecOpenSSLAppKeysMngrAddCertsPath</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOADBIO">xmlSecOpenSSLAppKeysMngrCertLoadBIO</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOADMEMORY">xmlSecOpenSSLAppKeysMngrCertLoadMemory</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOAD">xmlSecOpenSSLAppKeysMngrCertLoad</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOADBIO">xmlSecOpenSSLAppPkcs12LoadBIO</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOADMEMORY">xmlSecOpenSSLAppPkcs12LoadMemory</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOAD">xmlSecOpenSSLAppPkcs12Load</a></p></li>
-<li><p><a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPSHUTDOWN">xmlSecOpenSSLAppShutdown</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLERRORSDEFAULTCALLBACK">xmlSecOpenSSLErrorsDefaultCallback</a></p></li>
-<li><p><font>XMLSEC-OPENSSL-ERRORS-FUNCTION</font></p></li>
-<li><p><font>XMLSEC-OPENSSL-ERRORS-LIB</font></p></li>
-<li><p><a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYADOPT">xmlSecOpenSSLEvpKeyAdopt</a></p></li>
-<li><p><a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDATAADOPTEVP">xmlSecOpenSSLEvpKeyDataAdoptEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDATAGETEVP">xmlSecOpenSSLEvpKeyDataGetEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDUP">xmlSecOpenSSLEvpKeyDup</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLGENERATERANDOM">xmlSecOpenSSLGenerateRandom</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLGETDEFAULTTRUSTEDCERTSFOLDER">xmlSecOpenSSLGetDefaultTrustedCertsFolder</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLHMACGETMINOUTPUTLENGTH">xmlSecOpenSSLHmacGetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLHMACSETMINOUTPUTLENGTH">xmlSecOpenSSLHmacSetMinOutputLength</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLINIT">xmlSecOpenSSLInit</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESGETKLASS">xmlSecOpenSSLKeyDataAesGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESID">xmlSecOpenSSLKeyDataAesId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESSET">xmlSecOpenSSLKeyDataAesSet</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESGETKLASS">xmlSecOpenSSLKeyDataDesGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESID">xmlSecOpenSSLKeyDataDesId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESSET">xmlSecOpenSSLKeyDataDesSet</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAADOPTDSA">xmlSecOpenSSLKeyDataDsaAdoptDsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAADOPTEVP">xmlSecOpenSSLKeyDataDsaAdoptEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETDSA">xmlSecOpenSSLKeyDataDsaGetDsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETEVP">xmlSecOpenSSLKeyDataDsaGetEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETKLASS">xmlSecOpenSSLKeyDataDsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAID">xmlSecOpenSSLKeyDataDsaId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAADOPTECDSA">xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAADOPTEVP">xmlSecOpenSSLKeyDataEcdsaAdoptEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETECDSA">xmlSecOpenSSLKeyDataEcdsaGetEcdsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETEVP">xmlSecOpenSSLKeyDataEcdsaGetEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETKLASS">xmlSecOpenSSLKeyDataEcdsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAID">xmlSecOpenSSLKeyDataEcdsaId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOST2001GETKLASS">xmlSecOpenSSLKeyDataGost2001GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOST2001ID">xmlSecOpenSSLKeyDataGost2001Id</a></p></li>
-<li><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-256Id</font></p></li>
-<li><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-512Id</font></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACGETKLASS">xmlSecOpenSSLKeyDataHmacGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACID">xmlSecOpenSSLKeyDataHmacId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACSET">xmlSecOpenSSLKeyDataHmacSet</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTGETKLASS">xmlSecOpenSSLKeyDataRawX509CertGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTID">xmlSecOpenSSLKeyDataRawX509CertId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAADOPTEVP">xmlSecOpenSSLKeyDataRsaAdoptEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAADOPTRSA">xmlSecOpenSSLKeyDataRsaAdoptRsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETEVP">xmlSecOpenSSLKeyDataRsaGetEvp</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETKLASS">xmlSecOpenSSLKeyDataRsaGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETRSA">xmlSecOpenSSLKeyDataRsaGetRsa</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAID">xmlSecOpenSSLKeyDataRsaId</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCERT">xmlSecOpenSSLKeyDataX509AdoptCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCRL">xmlSecOpenSSLKeyDataX509AdoptCrl</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTKEYCERT">xmlSecOpenSSLKeyDataX509AdoptKeyCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERT">xmlSecOpenSSLKeyDataX509GetCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERTSSIZE">xmlSecOpenSSLKeyDataX509GetCertsSize</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRL">xmlSecOpenSSLKeyDataX509GetCrl</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRLSSIZE">xmlSecOpenSSLKeyDataX509GetCrlsSize</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKEYCERT">xmlSecOpenSSLKeyDataX509GetKeyCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKLASS">xmlSecOpenSSLKeyDataX509GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ID">xmlSecOpenSSLKeyDataX509Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYSMNGRINIT">xmlSecOpenSSLKeysMngrInit</a></p></li>
-<li><p><a href="xmlsec-openssl-bn.html#XMLSECOPENSSLNODEGETBNVALUE">xmlSecOpenSSLNodeGetBNValue</a></p></li>
-<li><p><a href="xmlsec-openssl-bn.html#XMLSECOPENSSLNODESETBNVALUE">xmlSecOpenSSLNodeSetBNValue</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLSETDEFAULTTRUSTEDCERTSFOLDER">xmlSecOpenSSLSetDefaultTrustedCertsFolder</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLSHUTDOWN">xmlSecOpenSSLShutdown</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES128CBCGETKLASS">xmlSecOpenSSLTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES128CBCID">xmlSecOpenSSLTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES192CBCGETKLASS">xmlSecOpenSSLTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES192CBCID">xmlSecOpenSSLTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES256CBCGETKLASS">xmlSecOpenSSLTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES256CBCID">xmlSecOpenSSLTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDES3CBCGETKLASS">xmlSecOpenSSLTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDES3CBCID">xmlSecOpenSSLTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA1GETKLASS">xmlSecOpenSSLTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA1ID">xmlSecOpenSSLTransformDsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA256GETKLASS">xmlSecOpenSSLTransformDsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA256ID">xmlSecOpenSSLTransformDsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA1GETKLASS">xmlSecOpenSSLTransformEcdsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA1ID">xmlSecOpenSSLTransformEcdsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA224GETKLASS">xmlSecOpenSSLTransformEcdsaSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA224ID">xmlSecOpenSSLTransformEcdsaSha224Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA256GETKLASS">xmlSecOpenSSLTransformEcdsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA256ID">xmlSecOpenSSLTransformEcdsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA384GETKLASS">xmlSecOpenSSLTransformEcdsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA384ID">xmlSecOpenSSLTransformEcdsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA512GETKLASS">xmlSecOpenSSLTransformEcdsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA512ID">xmlSecOpenSSLTransformEcdsaSha512Id</a></p></li>
-<li><p><font>xmlSecOpenSSLTransformGost2001GostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGost2001GostR3411-94Id</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256Id</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512Id</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-2012-256Id</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-2012-512Id</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecOpenSSLTransformGostR3411-94Id</font></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACMD5GETKLASS">xmlSecOpenSSLTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACMD5ID">xmlSecOpenSSLTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACRIPEMD160GETKLASS">xmlSecOpenSSLTransformHmacRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACRIPEMD160ID">xmlSecOpenSSLTransformHmacRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA1GETKLASS">xmlSecOpenSSLTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA1ID">xmlSecOpenSSLTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA224GETKLASS">xmlSecOpenSSLTransformHmacSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA224ID">xmlSecOpenSSLTransformHmacSha224Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA256GETKLASS">xmlSecOpenSSLTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA256ID">xmlSecOpenSSLTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA384GETKLASS">xmlSecOpenSSLTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA384ID">xmlSecOpenSSLTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA512GETKLASS">xmlSecOpenSSLTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA512ID">xmlSecOpenSSLTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES128GETKLASS">xmlSecOpenSSLTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES128ID">xmlSecOpenSSLTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES192GETKLASS">xmlSecOpenSSLTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES192ID">xmlSecOpenSSLTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES256GETKLASS">xmlSecOpenSSLTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES256ID">xmlSecOpenSSLTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWDES3GETKLASS">xmlSecOpenSSLTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWDES3ID">xmlSecOpenSSLTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMMD5GETKLASS">xmlSecOpenSSLTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMMD5ID">xmlSecOpenSSLTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRIPEMD160GETKLASS">xmlSecOpenSSLTransformRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRIPEMD160ID">xmlSecOpenSSLTransformRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAMD5GETKLASS">xmlSecOpenSSLTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAMD5ID">xmlSecOpenSSLTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAOAEPGETKLASS">xmlSecOpenSSLTransformRsaOaepGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAOAEPID">xmlSecOpenSSLTransformRsaOaepId</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAPKCS1GETKLASS">xmlSecOpenSSLTransformRsaPkcs1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAPKCS1ID">xmlSecOpenSSLTransformRsaPkcs1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSARIPEMD160GETKLASS">xmlSecOpenSSLTransformRsaRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSARIPEMD160ID">xmlSecOpenSSLTransformRsaRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA1GETKLASS">xmlSecOpenSSLTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA1ID">xmlSecOpenSSLTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA224GETKLASS">xmlSecOpenSSLTransformRsaSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA224ID">xmlSecOpenSSLTransformRsaSha224Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA256GETKLASS">xmlSecOpenSSLTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA256ID">xmlSecOpenSSLTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA384GETKLASS">xmlSecOpenSSLTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA384ID">xmlSecOpenSSLTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA512GETKLASS">xmlSecOpenSSLTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA512ID">xmlSecOpenSSLTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA1GETKLASS">xmlSecOpenSSLTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA1ID">xmlSecOpenSSLTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA224GETKLASS">xmlSecOpenSSLTransformSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA224ID">xmlSecOpenSSLTransformSha224Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA256GETKLASS">xmlSecOpenSSLTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA256ID">xmlSecOpenSSLTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA384GETKLASS">xmlSecOpenSSLTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA384ID">xmlSecOpenSSLTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA512GETKLASS">xmlSecOpenSSLTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA512ID">xmlSecOpenSSLTransformSha512Id</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509CERTGETKEY">xmlSecOpenSSLX509CertGetKey</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADDCERTSFILE">xmlSecOpenSSLX509StoreAddCertsFile</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADDCERTSPATH">xmlSecOpenSSLX509StoreAddCertsPath</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADOPTCERT">xmlSecOpenSSLX509StoreAdoptCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADOPTCRL">xmlSecOpenSSLX509StoreAdoptCrl</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREFINDCERT">xmlSecOpenSSLX509StoreFindCert</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREGETKLASS">xmlSecOpenSSLX509StoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREID">xmlSecOpenSSLX509StoreId</a></p></li>
-<li><p><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREVERIFY">xmlSecOpenSSLX509StoreVerify</a></p></li>
-<li><p><a href="xmlsec-parser.html#XMLSECPARSEFILE">xmlSecParseFile</a></p></li>
-<li><p><a href="xmlsec-parser.html#XMLSECPARSEMEMORYEXT">xmlSecParseMemoryExt</a></p></li>
-<li><p><a href="xmlsec-parser.html#XMLSECPARSEMEMORY">xmlSecParseMemory</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECPRINTXMLSTRING">xmlSecPrintXmlString</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD">xmlSecPtrDebugDumpItemMethod</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRDESTROYITEMMETHOD">xmlSecPtrDestroyItemMethod</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRDUPLICATEITEMMETHOD">xmlSecPtrDuplicateItemMethod</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTADD">xmlSecPtrListAdd</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTCHECKID">xmlSecPtrListCheckId</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTCOPY">xmlSecPtrListCopy</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTCREATE">xmlSecPtrListCreate</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTDEBUGDUMP">xmlSecPtrListDebugDump</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTDEBUGXMLDUMP">xmlSecPtrListDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTDESTROY">xmlSecPtrListDestroy</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTDUPLICATE">xmlSecPtrListDuplicate</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTEMPTY">xmlSecPtrListEmpty</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTFINALIZE">xmlSecPtrListFinalize</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTGETITEM">xmlSecPtrListGetItem</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTGETNAME">xmlSecPtrListGetName</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTGETSIZE">xmlSecPtrListGetSize</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTIDUNKNOWN">xmlSecPtrListIdUnknown</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTINITIALIZE">xmlSecPtrListInitialize</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTISVALID">xmlSecPtrListIsValid</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTKLASSGETNAME">xmlSecPtrListKlassGetName</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTKLASS">xmlSecPtrListKlass</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrList</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTREMOVEANDRETURN">xmlSecPtrListRemoveAndReturn</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTREMOVE">xmlSecPtrListRemove</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTSETDEFAULTALLOCMODE">xmlSecPtrListSetDefaultAllocMode</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECPTRLISTSET">xmlSecPtrListSet</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECPTR">xmlSecPtr</a></p></li>
-<li><p><font>XMLSEC-PTR-TO-FUNC-IMPL</font></p></li>
-<li><p><font>XMLSEC-PTR-TO-FUNC</font></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKDEBUGDUMP">xmlSecQName2BitMaskDebugDump</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKDEBUGXMLDUMP">xmlSecQName2BitMaskDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETBITMASKFROMSTRING">xmlSecQName2BitMaskGetBitMaskFromString</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETBITMASK">xmlSecQName2BitMaskGetBitMask</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETINFO">xmlSecQName2BitMaskGetInfo</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETSTRINGFROMBITMASK">xmlSecQName2BitMaskGetStringFromBitMask</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKINFOCONSTPTR">xmlSecQName2BitMaskInfoConstPtr</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKINFO">xmlSecQName2BitMaskInfo</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKNODESREAD">xmlSecQName2BitMaskNodesRead</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKNODESWRITE">xmlSecQName2BitMaskNodesWrite</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERATTRIBUTEREAD">xmlSecQName2IntegerAttributeRead</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERATTRIBUTEWRITE">xmlSecQName2IntegerAttributeWrite</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERDEBUGDUMP">xmlSecQName2IntegerDebugDump</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERDEBUGXMLDUMP">xmlSecQName2IntegerDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINFO">xmlSecQName2IntegerGetInfo</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINTEGERFROMSTRING">xmlSecQName2IntegerGetIntegerFromString</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINTEGER">xmlSecQName2IntegerGetInteger</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETSTRINGFROMINTEGER">xmlSecQName2IntegerGetStringFromInteger</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERINFOCONSTPTR">xmlSecQName2IntegerInfoConstPtr</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERINFO">xmlSecQName2IntegerInfo</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERNODEREAD">xmlSecQName2IntegerNodeRead</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERNODEWRITE">xmlSecQName2IntegerNodeWrite</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACECONTENTANDRETURN">xmlSecReplaceContentAndReturn</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACECONTENT">xmlSecReplaceContent</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACENODEANDRETURN">xmlSecReplaceNodeAndReturn</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACENODEBUFFERANDRETURN">xmlSecReplaceNodeBufferAndReturn</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACENODEBUFFER">xmlSecReplaceNodeBuffer</a></p></li>
-<li><p><a href="xmlsec-xmltree.html#XMLSECREPLACENODE">xmlSecReplaceNode</a></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN">xmlSecShutdown</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREADOPTKEY">xmlSecSimpleKeysStoreAdoptKey</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREGETKEYS">xmlSecSimpleKeysStoreGetKeys</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREGETKLASS">xmlSecSimpleKeysStoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID">xmlSecSimpleKeysStoreId</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTORELOAD">xmlSecSimpleKeysStoreLoad</a></p></li>
-<li><p><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTORESAVE">xmlSecSimpleKeysStoreSave</a></p></li>
-<li><p><font>XMLSEC-SIZE-BAD-CAST</font></p></li>
-<li><p><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a></p></li>
-<li><p><font>xmlSecSoap11AddBodyEntry</font></p></li>
-<li><p><font>xmlSecSoap11AddFaultEntry</font></p></li>
-<li><p><font>xmlSecSoap11CheckEnvelope</font></p></li>
-<li><p><font>xmlSecSoap11CreateEnvelope</font></p></li>
-<li><p><font>xmlSecSoap11EnsureHeader</font></p></li>
-<li><p><font>xmlSecSoap11GetBodyEntriesNumber</font></p></li>
-<li><p><font>xmlSecSoap11GetBodyEntry</font></p></li>
-<li><p><font>xmlSecSoap11GetBody</font></p></li>
-<li><p><font>xmlSecSoap11GetFaultEntry</font></p></li>
-<li><p><font>xmlSecSoap11GetHeader</font></p></li>
-<li><p><font>xmlSecSoap12AddBodyEntry</font></p></li>
-<li><p><font>xmlSecSoap12AddFaultDetailEntry</font></p></li>
-<li><p><font>xmlSecSoap12AddFaultEntry</font></p></li>
-<li><p><font>xmlSecSoap12AddFaultReasonText</font></p></li>
-<li><p><font>xmlSecSoap12AddFaultSubcode</font></p></li>
-<li><p><font>xmlSecSoap12CheckEnvelope</font></p></li>
-<li><p><font>xmlSecSoap12CreateEnvelope</font></p></li>
-<li><p><font>xmlSecSoap12EnsureHeader</font></p></li>
-<li><p><font>xmlSecSoap12FaultCode</font></p></li>
-<li><p><font>xmlSecSoap12GetBodyEntriesNumber</font></p></li>
-<li><p><font>xmlSecSoap12GetBodyEntry</font></p></li>
-<li><p><font>xmlSecSoap12GetBody</font></p></li>
-<li><p><font>xmlSecSoap12GetFaultEntry</font></p></li>
-<li><p><font>xmlSecSoap12GetHeader</font></p></li>
-<li><p><font>XMLSEC-STACK-OF-X509-CRL</font></p></li>
-<li><p><font>XMLSEC-STACK-OF-X509</font></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECSTRINGLISTGETKLASS">xmlSecStringListGetKlass</a></p></li>
-<li><p><a href="xmlsec-list.html#XMLSECSTRINGLISTID">xmlSecStringListId</a></p></li>
-<li><p><font>xmlSecStrPrintf</font></p></li>
-<li><p><font>xmlSecStrVPrintf</font></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLCIPHERREFERENCEADDTRANSFORM">xmlSecTmplCipherReferenceAddTransform</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAADDENCPROPERTY">xmlSecTmplEncDataAddEncProperty</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATACREATE">xmlSecTmplEncDataCreate</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSURECIPHERREFERENCE">xmlSecTmplEncDataEnsureCipherReference</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSURECIPHERVALUE">xmlSecTmplEncDataEnsureCipherValue</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSUREENCPROPERTIES">xmlSecTmplEncDataEnsureEncProperties</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSUREKEYINFO">xmlSecTmplEncDataEnsureKeyInfo</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLENCDATAGETENCMETHODNODE">xmlSecTmplEncDataGetEncMethodNode</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDENCRYPTEDKEY">xmlSecTmplKeyInfoAddEncryptedKey</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDKEYNAME">xmlSecTmplKeyInfoAddKeyName</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDKEYVALUE">xmlSecTmplKeyInfoAddKeyValue</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDRETRIEVALMETHOD">xmlSecTmplKeyInfoAddRetrievalMethod</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDX509DATA">xmlSecTmplKeyInfoAddX509Data</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLMANIFESTADDREFERENCE">xmlSecTmplManifestAddReference</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLOBJECTADDMANIFEST">xmlSecTmplObjectAddManifest</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLOBJECTADDSIGNPROPERTIES">xmlSecTmplObjectAddSignProperties</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLREFERENCEADDTRANSFORM">xmlSecTmplReferenceAddTransform</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLREFERENCELISTADDDATAREFERENCE">xmlSecTmplReferenceListAddDataReference</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLREFERENCELISTADDKEYREFERENCE">xmlSecTmplReferenceListAddKeyReference</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLRETRIEVALMETHODADDTRANSFORM">xmlSecTmplRetrievalMethodAddTransform</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREADDOBJECT">xmlSecTmplSignatureAddObject</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREADDREFERENCE">xmlSecTmplSignatureAddReference</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATURECREATE">xmlSecTmplSignatureCreate</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATURECREATENSPREF">xmlSecTmplSignatureCreateNsPref</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREENSUREKEYINFO">xmlSecTmplSignatureEnsureKeyInfo</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREGETC14NMETHODNODE">xmlSecTmplSignatureGetC14NMethodNode</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREGETSIGNMETHODNODE">xmlSecTmplSignatureGetSignMethodNode</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDC14NINCLNAMESPACES">xmlSecTmplTransformAddC14NInclNamespaces</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDHMACOUTPUTLENGTH">xmlSecTmplTransformAddHmacOutputLength</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDRSAOAEPPARAM">xmlSecTmplTransformAddRsaOaepParam</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPATH2">xmlSecTmplTransformAddXPath2</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPATH">xmlSecTmplTransformAddXPath</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPOINTER">xmlSecTmplTransformAddXPointer</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXSLTSTYLESHEET">xmlSecTmplTransformAddXsltStylesheet</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDCERTIFICATE">xmlSecTmplX509DataAddCertificate</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDCRL">xmlSecTmplX509DataAddCRL</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDISSUERSERIAL">xmlSecTmplX509DataAddIssuerSerial</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDSKI">xmlSecTmplX509DataAddSKI</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDSUBJECTNAME">xmlSecTmplX509DataAddSubjectName</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509ISSUERSERIALADDISSUERNAME">xmlSecTmplX509IssuerSerialAddIssuerName</a></p></li>
-<li><p><a href="xmlsec-templates.html#XMLSECTMPLX509ISSUERSERIALADDSERIALNUMBER">xmlSecTmplX509IssuerSerialAddSerialNumber</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES128CBCGETKLASS">xmlSecTransformAes128CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES128CBCID">xmlSecTransformAes128CbcId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES192CBCGETKLASS">xmlSecTransformAes192CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES192CBCID">xmlSecTransformAes192CbcId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES256CBCGETKLASS">xmlSecTransformAes256CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMAES256CBCID">xmlSecTransformAes256CbcId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64GETKLASS">xmlSecTransformBase64GetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64ID">xmlSecTransformBase64Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64SETLINESIZE">xmlSecTransformBase64SetLineSize</a></p></li>
-<li><p><font>XMLSEC-TRANSFORM-BINARY-CHUNK</font></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCHECKID">xmlSecTransformCheckId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCHECKSIZE">xmlSecTransformCheckSize</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT">xmlSecTransformConnect</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATEINPUTBUFFER">xmlSecTransformCreateInputBuffer</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATE">xmlSecTransformCreate</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATEOUTPUTBUFFER">xmlSecTransformCreateOutputBuffer</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXAPPEND">xmlSecTransformCtxAppend</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXBINARYEXECUTE">xmlSecTransformCtxBinaryExecute</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCOPYUSERPREF">xmlSecTransformCtxCopyUserPref</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATEANDAPPEND">xmlSecTransformCtxCreateAndAppend</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATEANDPREPEND">xmlSecTransformCtxCreateAndPrepend</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATE">xmlSecTransformCtxCreate</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDEBUGDUMP">xmlSecTransformCtxDebugDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDEBUGXMLDUMP">xmlSecTransformCtxDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDESTROY">xmlSecTransformCtxDestroy</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXEXECUTE">xmlSecTransformCtxExecute</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXFINALIZE">xmlSecTransformCtxFinalize</a></p></li>
-<li><p><font>XMLSEC-TRANSFORMCTX-FLAGS-USE-VISA3D-HACK</font></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXINITIALIZE">xmlSecTransformCtxInitialize</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX">xmlSecTransformCtx</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXNODEREAD">xmlSecTransformCtxNodeRead</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXNODESLISTREAD">xmlSecTransformCtxNodesListRead</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREEXECUTECALLBACK">xmlSecTransformCtxPreExecuteCallback</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREPARE">xmlSecTransformCtxPrepare</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREPEND">xmlSecTransformCtxPrepend</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXRESET">xmlSecTransformCtxReset</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXSETURI">xmlSecTransformCtxSetUri</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXURIEXECUTE">xmlSecTransformCtxUriExecute</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXXMLEXECUTE">xmlSecTransformCtxXmlExecute</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEBIN">xmlSecTransformDataTypeBin</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE">xmlSecTransformDataType</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEUNKNOWN">xmlSecTransformDataTypeUnknown</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEXML">xmlSecTransformDataTypeXml</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEBUGDUMP">xmlSecTransformDebugDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEBUGXMLDUMP">xmlSecTransformDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTGETDATATYPE">xmlSecTransformDefaultGetDataType</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPOPBIN">xmlSecTransformDefaultPopBin</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPOPXML">xmlSecTransformDefaultPopXml</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPUSHBIN">xmlSecTransformDefaultPushBin</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPUSHXML">xmlSecTransformDefaultPushXml</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDES3CBCGETKLASS">xmlSecTransformDes3CbcGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDES3CBCID">xmlSecTransformDes3CbcId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMDESTROY">xmlSecTransformDestroy</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA1GETKLASS">xmlSecTransformDsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA1ID">xmlSecTransformDsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA256GETKLASS">xmlSecTransformDsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMDSASHA256ID">xmlSecTransformDsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA1GETKLASS">xmlSecTransformEcdsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA1ID">xmlSecTransformEcdsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA224GETKLASS">xmlSecTransformEcdsaSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA224ID">xmlSecTransformEcdsaSha224Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA256GETKLASS">xmlSecTransformEcdsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA256ID">xmlSecTransformEcdsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA384GETKLASS">xmlSecTransformEcdsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA384ID">xmlSecTransformEcdsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA512GETKLASS">xmlSecTransformEcdsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMECDSASHA512ID">xmlSecTransformEcdsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMENVELOPEDGETKLASS">xmlSecTransformEnvelopedGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMENVELOPEDID">xmlSecTransformEnvelopedId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NGETKLASS">xmlSecTransformExclC14NGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NID">xmlSecTransformExclC14NId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NWITHCOMMENTSGETKLASS">xmlSecTransformExclC14NWithCommentsGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NWITHCOMMENTSID">xmlSecTransformExclC14NWithCommentsId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">xmlSecTransformExecuteMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTE">xmlSecTransformExecute</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMFINALIZEMETHOD">xmlSecTransformFinalizeMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMGETDATATYPEMETHOD">xmlSecTransformGetDataTypeMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMGETDATATYPE">xmlSecTransformGetDataType</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMGETNAME">xmlSecTransformGetName</a></p></li>
-<li><p><font>xmlSecTransformGost2001GostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGost2001GostR3411-94Id</font></p></li>
-<li><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-256Id</font></p></li>
-<li><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-512Id</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-2012-256GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-2012-256Id</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-2012-512GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-2012-512Id</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-94GetKlass</font></p></li>
-<li><p><font>xmlSecTransformGostR3411-94Id</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACMD5GETKLASS">xmlSecTransformHmacMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACMD5ID">xmlSecTransformHmacMd5Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACRIPEMD160GETKLASS">xmlSecTransformHmacRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACRIPEMD160ID">xmlSecTransformHmacRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA1GETKLASS">xmlSecTransformHmacSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA1ID">xmlSecTransformHmacSha1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA224GETKLASS">xmlSecTransformHmacSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA224ID">xmlSecTransformHmacSha224Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA256GETKLASS">xmlSecTransformHmacSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA256ID">xmlSecTransformHmacSha256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA384GETKLASS">xmlSecTransformHmacSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA384ID">xmlSecTransformHmacSha384Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA512GETKLASS">xmlSecTransformHmacSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMHMACSHA512ID">xmlSecTransformHmacSha512Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTDEBUGDUMP">xmlSecTransformIdListDebugDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTDEBUGXMLDUMP">xmlSecTransformIdListDebugXmlDump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFINDBYHREF">xmlSecTransformIdListFindByHref</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFINDBYNAME">xmlSecTransformIdListFindByName</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFIND">xmlSecTransformIdListFind</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTGETKLASS">xmlSecTransformIdListGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTID">xmlSecTransformIdListId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSGET">xmlSecTransformIdsGet</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSINIT">xmlSecTransformIdsInit</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSREGISTERDEFAULT">xmlSecTransformIdsRegisterDefault</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSREGISTER">xmlSecTransformIdsRegister</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSSHUTDOWN">xmlSecTransformIdsShutdown</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDUNKNOWN">xmlSecTransformIdUnknown</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11GETKLASS">xmlSecTransformInclC14N11GetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11ID">xmlSecTransformInclC14N11Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11WITHCOMMENTSGETKLASS">xmlSecTransformInclC14N11WithCommentsGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11WITHCOMMENTSID">xmlSecTransformInclC14N11WithCommentsId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NGETKLASS">xmlSecTransformInclC14NGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NID">xmlSecTransformInclC14NId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NWITHCOMMENTSGETKLASS">xmlSecTransformInclC14NWithCommentsGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NWITHCOMMENTSID">xmlSecTransformInclC14NWithCommentsId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINITIALIZEMETHOD">xmlSecTransformInitializeMethod</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURICLOSE">xmlSecTransformInputURIClose</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIGETKLASS">xmlSecTransformInputURIGetKlass</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIID">xmlSecTransformInputURIId</a></p></li>
-<li><p><a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIOPEN">xmlSecTransformInputURIOpen</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMISVALID">xmlSecTransformIsValid</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMKLASSGETNAME">xmlSecTransformKlassGetName</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMKLASS">xmlSecTransformKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES128GETKLASS">xmlSecTransformKWAes128GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES128ID">xmlSecTransformKWAes128Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES192GETKLASS">xmlSecTransformKWAes192GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES192ID">xmlSecTransformKWAes192Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES256GETKLASS">xmlSecTransformKWAes256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWAES256ID">xmlSecTransformKWAes256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWDES3GETKLASS">xmlSecTransformKWDes3GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMKWDES3ID">xmlSecTransformKWDes3Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMMD5GETKLASS">xmlSecTransformMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMMD5ID">xmlSecTransformMd5Id</a></p></li>
-<li><p><a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFGETBUFFER">xmlSecTransformMemBufGetBuffer</a></p></li>
-<li><p><a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFGETKLASS">xmlSecTransformMemBufGetKlass</a></p></li>
-<li><p><a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFID">xmlSecTransformMemBufId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMMODE">xmlSecTransformMode</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM">xmlSecTransform</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEREADMETHOD">xmlSecTransformNodeReadMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEREAD">xmlSecTransformNodeRead</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEWRITEMETHOD">xmlSecTransformNodeWriteMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION">xmlSecTransformOperation</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBINMETHOD">xmlSecTransformPopBinMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBIN">xmlSecTransformPopBin</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXMLMETHOD">xmlSecTransformPopXmlMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXML">xmlSecTransformPopXml</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUMP">xmlSecTransformPump</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBINMETHOD">xmlSecTransformPushBinMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBIN">xmlSecTransformPushBin</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXMLMETHOD">xmlSecTransformPushXmlMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXML">xmlSecTransformPushXml</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMRELATIONSHIPGETKLASS">xmlSecTransformRelationshipGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMRELATIONSHIPID">xmlSecTransformRelationshipId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVE">xmlSecTransformRemove</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVEXMLTAGSC14NGETKLASS">xmlSecTransformRemoveXmlTagsC14NGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVEXMLTAGSC14NID">xmlSecTransformRemoveXmlTagsC14NId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRIPEMD160GETKLASS">xmlSecTransformRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRIPEMD160ID">xmlSecTransformRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAMD5GETKLASS">xmlSecTransformRsaMd5GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAMD5ID">xmlSecTransformRsaMd5Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAOAEPGETKLASS">xmlSecTransformRsaOaepGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAOAEPID">xmlSecTransformRsaOaepId</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAPKCS1GETKLASS">xmlSecTransformRsaPkcs1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSAPKCS1ID">xmlSecTransformRsaPkcs1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSARIPEMD160GETKLASS">xmlSecTransformRsaRipemd160GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSARIPEMD160ID">xmlSecTransformRsaRipemd160Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA1GETKLASS">xmlSecTransformRsaSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA1ID">xmlSecTransformRsaSha1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA224GETKLASS">xmlSecTransformRsaSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA224ID">xmlSecTransformRsaSha224Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA256GETKLASS">xmlSecTransformRsaSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA256ID">xmlSecTransformRsaSha256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA384GETKLASS">xmlSecTransformRsaSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA384ID">xmlSecTransformRsaSha384Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA512GETKLASS">xmlSecTransformRsaSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMRSASHA512ID">xmlSecTransformRsaSha512Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYMETHOD">xmlSecTransformSetKeyMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEY">xmlSecTransformSetKey</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQ">xmlSecTransformSetKeyReq</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQUIREMENTSMETHOD">xmlSecTransformSetKeyRequirementsMethod</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA1GETKLASS">xmlSecTransformSha1GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA1ID">xmlSecTransformSha1Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA224GETKLASS">xmlSecTransformSha224GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA224ID">xmlSecTransformSha224Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA256GETKLASS">xmlSecTransformSha256GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA256ID">xmlSecTransformSha256Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA384GETKLASS">xmlSecTransformSha384GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA384ID">xmlSecTransformSha384Id</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA512GETKLASS">xmlSecTransformSha512GetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECTRANSFORMSHA512ID">xmlSecTransformSha512Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUS">xmlSecTransformStatus</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEANY">xmlSecTransformUriTypeAny</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPECHECK">xmlSecTransformUriTypeCheck</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEEMPTY">xmlSecTransformUriTypeEmpty</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPELOCAL">xmlSecTransformUriTypeLocal</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE">xmlSecTransformUriType</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPENONE">xmlSecTransformUriTypeNone</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEREMOTE">xmlSecTransformUriTypeRemote</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPESAMEDOCUMENT">xmlSecTransformUriTypeSameDocument</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEANY">xmlSecTransformUsageAny</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEC14NMETHOD">xmlSecTransformUsageC14NMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEDIGESTMETHOD">xmlSecTransformUsageDigestMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEDSIGTRANSFORM">xmlSecTransformUsageDSigTransform</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEENCRYPTIONMETHOD">xmlSecTransformUsageEncryptionMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE">xmlSecTransformUsage</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGESIGNATUREMETHOD">xmlSecTransformUsageSignatureMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEUNKNOWN">xmlSecTransformUsageUnknown</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD">xmlSecTransformVerifyMethod</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFY">xmlSecTransformVerify</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYNODECONTENT">xmlSecTransformVerifyNodeContent</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKGETKLASS">xmlSecTransformVisa3DHackGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKID">xmlSecTransformVisa3DHackId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKSETID">xmlSecTransformVisa3DHackSetID</a></p></li>
-<li><p><a href="xmlsec-parser.html#XMLSECTRANSFORMXMLPARSERGETKLASS">xmlSecTransformXmlParserGetKlass</a></p></li>
-<li><p><a href="xmlsec-parser.html#XMLSECTRANSFORMXMLPARSERID">xmlSecTransformXmlParserId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATH2GETKLASS">xmlSecTransformXPath2GetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATH2ID">xmlSecTransformXPath2Id</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATHGETKLASS">xmlSecTransformXPathGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATHID">xmlSecTransformXPathId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERGETKLASS">xmlSecTransformXPointerGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERID">xmlSecTransformXPointerId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERSETEXPR">xmlSecTransformXPointerSetExpr</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTGETKLASS">xmlSecTransformXsltGetKlass</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTID">xmlSecTransformXsltId</a></p></li>
-<li><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTSETDEFAULTSECURITYPREFS">xmlSecTransformXsltSetDefaultSecurityPrefs</a></p></li>
-<li><p><font>XMLSEC-VERSION-INFO</font></p></li>
-<li><p><font>XMLSEC-VERSION-MAJOR</font></p></li>
-<li><p><font>XMLSEC-VERSION-MINOR</font></p></li>
-<li><p><font>XMLSEC-VERSION</font></p></li>
-<li><p><font>XMLSEC-VERSION-SUBMINOR</font></p></li>
-<li><p><font>XMLSEC-X509DATA-CERTIFICATE-NODE</font></p></li>
-<li><p><font>XMLSEC-X509DATA-CRL-NODE</font></p></li>
-<li><p><font>XMLSEC-X509DATA-DEFAULT</font></p></li>
-<li><p><a href="xmlsec-x509.html#XMLSECX509DATAGETNODECONTENT">xmlSecX509DataGetNodeContent</a></p></li>
-<li><p><font>XMLSEC-X509DATA-ISSUERSERIAL-NODE</font></p></li>
-<li><p><font>XMLSEC-X509DATA-SKI-NODE</font></p></li>
-<li><p><font>XMLSEC-X509DATA-SUBJECTNAME-NODE</font></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECX509STOREGETKLASS">xmlSecX509StoreGetKlass</a></p></li>
-<li><p><a href="xmlsec-app.html#XMLSECX509STOREID">xmlSecX509StoreId</a></p></li>
-</ul>
-    </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-x509.html"><b><<< x509</b></a></td>
-<td align="right"></td>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<td><img src="right-insensitive.png" width="16" height="16" border="0"></td>
 </tr></table>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-index"></a>XML Security Library Reference Index</h2></div></div></div>
+<p>
+	</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p><font>ATTRIBUTE-UNUSED</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlEncCtxMode" title="enum xmlEncCtxMode">xmlEncCtxMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecAddChild" title="xmlSecAddChild ()">xmlSecAddChild</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecAddChildNode" title="xmlSecAddChildNode ()">xmlSecAddChildNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecAddIDs" title="xmlSecAddIDs ()">xmlSecAddIDs</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecAddNextSibling" title="xmlSecAddNextSibling ()">xmlSecAddNextSibling</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecAddPrevSibling" title="xmlSecAddPrevSibling ()">xmlSecAddPrevSibling</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode">xmlSecAllocMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecAssert2" title="xmlSecAssert2()">xmlSecAssert2</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecAssert" title="xmlSecAssert()">xmlSecAssert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxCreate" title="xmlSecBase64CtxCreate ()">xmlSecBase64CtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxDestroy" title="xmlSecBase64CtxDestroy ()">xmlSecBase64CtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxFinalize" title="xmlSecBase64CtxFinalize ()">xmlSecBase64CtxFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxFinal" title="xmlSecBase64CtxFinal ()">xmlSecBase64CtxFinal</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxInitialize" title="xmlSecBase64CtxInitialize ()">xmlSecBase64CtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64CtxUpdate" title="xmlSecBase64CtxUpdate ()">xmlSecBase64CtxUpdate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64Decode" title="xmlSecBase64Decode ()">xmlSecBase64Decode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64Encode" title="xmlSecBase64Encode ()">xmlSecBase64Encode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64GetDefaultLineSize" title="xmlSecBase64GetDefaultLineSize ()">xmlSecBase64GetDefaultLineSize</a></p></li>
+<li class="listitem"><p><font>XMLSEC-BASE64-LINESIZE</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-base64.html#xmlSecBase64SetDefaultLineSize" title="xmlSecBase64SetDefaultLineSize ()">xmlSecBase64SetDefaultLineSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask">xmlSecBitMask</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnAdd" title="xmlSecBnAdd ()">xmlSecBnAdd</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnBlobSetNodeValue" title="xmlSecBnBlobSetNodeValue ()">xmlSecBnBlobSetNodeValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnCompare" title="xmlSecBnCompare ()">xmlSecBnCompare</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnCompareReverse" title="xmlSecBnCompareReverse ()">xmlSecBnCompareReverse</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnCreate" title="xmlSecBnCreate ()">xmlSecBnCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnDestroy" title="xmlSecBnDestroy ()">xmlSecBnDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnDiv" title="xmlSecBnDiv ()">xmlSecBnDiv</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnFinalize" title="xmlSecBnFinalize ()">xmlSecBnFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnFormat" title="enum xmlSecBnFormat">xmlSecBnFormat</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnFromDecString" title="xmlSecBnFromDecString ()">xmlSecBnFromDecString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnFromHexString" title="xmlSecBnFromHexString ()">xmlSecBnFromHexString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnFromString" title="xmlSecBnFromString ()">xmlSecBnFromString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnGetData" title="xmlSecBnGetData ()">xmlSecBnGetData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnGetNodeValue" title="xmlSecBnGetNodeValue ()">xmlSecBnGetNodeValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnGetSize" title="xmlSecBnGetSize ()">xmlSecBnGetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnInitialize" title="xmlSecBnInitialize ()">xmlSecBnInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnMul" title="xmlSecBnMul ()">xmlSecBnMul</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnReverse" title="xmlSecBnReverse ()">xmlSecBnReverse</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnSetData" title="xmlSecBnSetData ()">xmlSecBnSetData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnSetNodeValue" title="xmlSecBnSetNodeValue ()">xmlSecBnSetNodeValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnToDecString" title="xmlSecBnToDecString ()">xmlSecBnToDecString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnToHexString" title="xmlSecBnToHexString ()">xmlSecBnToHexString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnToString" title="xmlSecBnToString ()">xmlSecBnToString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-bn.html#xmlSecBnZero" title="xmlSecBnZero ()">xmlSecBnZero</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferAppend" title="xmlSecBufferAppend ()">xmlSecBufferAppend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferBase64NodeContentRead" title="xmlSecBufferBase64NodeContentRead ()">xmlSecBufferBase64NodeContentRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferBase64NodeContentWrite" title="xmlSecBufferBase64NodeContentWrite ()">xmlSecBufferBase64NodeContentWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferCreate" title="xmlSecBufferCreate ()">xmlSecBufferCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferCreateOutputBuffer" title="xmlSecBufferCreateOutputBuffer ()">xmlSecBufferCreateOutputBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferDestroy" title="xmlSecBufferDestroy ()">xmlSecBufferDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferEmpty" title="xmlSecBufferEmpty ()">xmlSecBufferEmpty</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferFinalize" title="xmlSecBufferFinalize ()">xmlSecBufferFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferGetData" title="xmlSecBufferGetData ()">xmlSecBufferGetData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferGetMaxSize" title="xmlSecBufferGetMaxSize ()">xmlSecBufferGetMaxSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferGetSize" title="xmlSecBufferGetSize ()">xmlSecBufferGetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferInitialize" title="xmlSecBufferInitialize ()">xmlSecBufferInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer">xmlSecBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferPrepend" title="xmlSecBufferPrepend ()">xmlSecBufferPrepend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferReadFile" title="xmlSecBufferReadFile ()">xmlSecBufferReadFile</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferRemoveHead" title="xmlSecBufferRemoveHead ()">xmlSecBufferRemoveHead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferRemoveTail" title="xmlSecBufferRemoveTail ()">xmlSecBufferRemoveTail</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferSetData" title="xmlSecBufferSetData ()">xmlSecBufferSetData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferSetDefaultAllocMode" title="xmlSecBufferSetDefaultAllocMode ()">xmlSecBufferSetDefaultAllocMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferSetMaxSize" title="xmlSecBufferSetMaxSize ()">xmlSecBufferSetMaxSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-buffer.html#xmlSecBufferSetSize" title="xmlSecBufferSetSize ()">xmlSecBufferSetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte">xmlSecByte</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecCheckNodeName" title="xmlSecCheckNodeName ()">xmlSecCheckNodeName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionExact" title="xmlSecCheckVersionExact">xmlSecCheckVersionExact</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionExt" title="xmlSecCheckVersionExt ()">xmlSecCheckVersionExt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionMode" title="enum xmlSecCheckVersionMode">xmlSecCheckVersionMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersion" title="xmlSecCheckVersion">xmlSecCheckVersion</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecCreateTree" title="xmlSecCreateTree ()">xmlSecCreateTree</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrAdoptKey" title="xmlSecCryptoAppDefaultKeysMngrAdoptKey ()">xmlSecCryptoAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrInit" title="xmlSecCryptoAppDefaultKeysMngrInit ()">xmlSecCryptoAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrLoad" title="xmlSecCryptoAppDefaultKeysMngrLoad ()">xmlSecCryptoAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppDefaultKeysMngrSave" title="xmlSecCryptoAppDefaultKeysMngrSave ()">xmlSecCryptoAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppGetDefaultPwdCallback" title="xmlSecCryptoAppGetDefaultPwdCallback ()">xmlSecCryptoAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppInitMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppInit" title="xmlSecCryptoAppInit ()">xmlSecCryptoAppInit</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeyCertLoadMemoryMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyCertLoadMemory" title="xmlSecCryptoAppKeyCertLoadMemory ()">xmlSecCryptoAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeyCertLoadMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyCertLoad" title="xmlSecCryptoAppKeyCertLoad ()">xmlSecCryptoAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeyLoadMemoryMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyLoadMemory" title="xmlSecCryptoAppKeyLoadMemory ()">xmlSecCryptoAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeyLoadMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeyLoad" title="xmlSecCryptoAppKeyLoad ()">xmlSecCryptoAppKeyLoad</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeysMngrCertLoadMemoryMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeysMngrCertLoadMemory" title="xmlSecCryptoAppKeysMngrCertLoadMemory ()">xmlSecCryptoAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppKeysMngrCertLoadMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeysMngrCertLoad" title="xmlSecCryptoAppKeysMngrCertLoad ()">xmlSecCryptoAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppPkcs12LoadMemoryMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppPkcs12LoadMemory" title="xmlSecCryptoAppPkcs12LoadMemory ()">xmlSecCryptoAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppPkcs12LoadMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppPkcs12Load" title="xmlSecCryptoAppPkcs12Load ()">xmlSecCryptoAppPkcs12Load</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoAppShutdownMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoAppShutdown" title="xmlSecCryptoAppShutdown ()">xmlSecCryptoAppShutdown</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoDLFunctions</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms" title="xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms ()">xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetFunctions" title="xmlSecCryptoDLGetFunctions ()">xmlSecCryptoDLGetFunctions</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLGetLibraryFunctions" title="xmlSecCryptoDLGetLibraryFunctions ()">xmlSecCryptoDLGetLibraryFunctions</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLInit" title="xmlSecCryptoDLInit ()">xmlSecCryptoDLInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()">xmlSecCryptoDLLoadLibrary</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLSetFunctions" title="xmlSecCryptoDLSetFunctions ()">xmlSecCryptoDLSetFunctions</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLShutdown" title="xmlSecCryptoDLShutdown ()">xmlSecCryptoDLShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-dl.html#xmlSecCryptoDLUnloadLibrary" title="xmlSecCryptoDLUnloadLibrary ()">xmlSecCryptoDLUnloadLibrary</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoGetFunctions-gcrypt</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoGetFunctions-gnutls</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoGetFunctions-mscrypto</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoGetFunctions-nss</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoGetFunctions-openssl</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoInitMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoInit" title="xmlSecCryptoInit ()">xmlSecCryptoInit</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoKeyDataGetKlassMethod</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoKeyDataStoreGetKlassMethod</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoKeysMngrInitMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoKeysMngrInit" title="xmlSecCryptoKeysMngrInit ()">xmlSecCryptoKeysMngrInit</a></p></li>
+<li class="listitem"><p><font>XMLSEC-CRYPTO</font></p></li>
+<li class="listitem"><p><font>xmlSecCryptoShutdownMethod</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecCryptoShutdown" title="xmlSecCryptoShutdown ()">xmlSecCryptoShutdown</a></p></li>
+<li class="listitem"><p><font>xmlSecCryptoTransformGetKlassMethod</font></p></li>
+<li class="listitem"><p><font>XMLSEC-DEPRECATED</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxCreate" title="xmlSecDSigCtxCreate ()">xmlSecDSigCtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDebugDump" title="xmlSecDSigCtxDebugDump ()">xmlSecDSigCtxDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDebugXmlDump" title="xmlSecDSigCtxDebugXmlDump ()">xmlSecDSigCtxDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDestroy" title="xmlSecDSigCtxDestroy ()">xmlSecDSigCtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxEnableReferenceTransform" title="xmlSecDSigCtxEnableReferenceTransform ()">xmlSecDSigCtxEnableReferenceTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxEnableSignatureTransform" title="xmlSecDSigCtxEnableSignatureTransform ()">xmlSecDSigCtxEnableSignatureTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxFinalize" title="xmlSecDSigCtxFinalize ()">xmlSecDSigCtxFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxGetPreSignBuffer" title="xmlSecDSigCtxGetPreSignBuffer ()">xmlSecDSigCtxGetPreSignBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxInitialize" title="xmlSecDSigCtxInitialize ()">xmlSecDSigCtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxSign" title="xmlSecDSigCtxSign ()">xmlSecDSigCtxSign</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxVerify" title="xmlSecDSigCtxVerify ()">xmlSecDSigCtxVerify</a></p></li>
+<li class="listitem"><p><font>XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS</font></p></li>
+<li class="listitem"><p><font>XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES</font></p></li>
+<li class="listitem"><p><font>XMLSEC-DSIG-FLAGS-STORE-SIGNATURE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES</font></p></li>
+<li class="listitem"><p><font>XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxCreate" title="xmlSecDSigReferenceCtxCreate ()">xmlSecDSigReferenceCtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDebugDump" title="xmlSecDSigReferenceCtxDebugDump ()">xmlSecDSigReferenceCtxDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDebugXmlDump" title="xmlSecDSigReferenceCtxDebugXmlDump ()">xmlSecDSigReferenceCtxDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDestroy" title="xmlSecDSigReferenceCtxDestroy ()">xmlSecDSigReferenceCtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxFinalize" title="xmlSecDSigReferenceCtxFinalize ()">xmlSecDSigReferenceCtxFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxGetPreDigestBuffer" title="xmlSecDSigReferenceCtxGetPreDigestBuffer ()">xmlSecDSigReferenceCtxGetPreDigestBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxInitialize" title="xmlSecDSigReferenceCtxInitialize ()">xmlSecDSigReferenceCtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxListGetKlass" title="xmlSecDSigReferenceCtxListGetKlass ()">xmlSecDSigReferenceCtxListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxListId" title="xmlSecDSigReferenceCtxListId">xmlSecDSigReferenceCtxListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtx" title="struct xmlSecDSigReferenceCtx">xmlSecDSigReferenceCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxProcessNode" title="xmlSecDSigReferenceCtxProcessNode ()">xmlSecDSigReferenceCtxProcessNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceOrigin" title="enum xmlSecDSigReferenceOrigin">xmlSecDSigReferenceOrigin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigStatus" title="enum xmlSecDSigStatus">xmlSecDSigStatus</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxBinaryEncrypt" title="xmlSecEncCtxBinaryEncrypt ()">xmlSecEncCtxBinaryEncrypt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCopyUserPref" title="xmlSecEncCtxCopyUserPref ()">xmlSecEncCtxCopyUserPref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()">xmlSecEncCtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugDump" title="xmlSecEncCtxDebugDump ()">xmlSecEncCtxDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugXmlDump" title="xmlSecEncCtxDebugXmlDump ()">xmlSecEncCtxDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecrypt" title="xmlSecEncCtxDecrypt ()">xmlSecEncCtxDecrypt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecryptToBuffer" title="xmlSecEncCtxDecryptToBuffer ()">xmlSecEncCtxDecryptToBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()">xmlSecEncCtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()">xmlSecEncCtxFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxInitialize" title="xmlSecEncCtxInitialize ()">xmlSecEncCtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxReset" title="xmlSecEncCtxReset ()">xmlSecEncCtxReset</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxUriEncrypt" title="xmlSecEncCtxUriEncrypt ()">xmlSecEncCtxUriEncrypt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxXmlEncrypt" title="xmlSecEncCtxXmlEncrypt ()">xmlSecEncCtxXmlEncrypt</a></p></li>
+<li class="listitem"><p><font>XMLSEC-ENC-RETURN-REPLACED-NODE</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecEnsureEmptyChild" title="xmlSecEnsureEmptyChild ()">xmlSecEnsureEmptyChild</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecError" title="xmlSecError ()">xmlSecError</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsCallback" title="xmlSecErrorsCallback ()">xmlSecErrorsCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsDefaultCallbackEnableOutput" title="xmlSecErrorsDefaultCallbackEnableOutput ()">xmlSecErrorsDefaultCallbackEnableOutput</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsDefaultCallback" title="xmlSecErrorsDefaultCallback ()">xmlSecErrorsDefaultCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsGetCode" title="xmlSecErrorsGetCode ()">xmlSecErrorsGetCode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsGetMsg" title="xmlSecErrorsGetMsg ()">xmlSecErrorsGetMsg</a></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-HERE</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsInit" title="xmlSecErrorsInit ()">xmlSecErrorsInit</a></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-MAX-NUMBER</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-NO-MESSAGE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-ASSERTION</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-HAS-EXPIRED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-ISSUER-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-NOT-FOUND</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-NOT-YET-VALID</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-REVOKED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CERT-VERIFY-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-CRYPTO-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-DATA-NOT-MATCH</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-DISABLED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-DSIG-INVALID-REFERENCE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-DSIG-NO-REFERENCES</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-CONFIG</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-DATA</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-FORMAT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-KEY-DATA</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-KEY-DATA-SIZE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-NODE-ATTRIBUTE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-NODE-CONTENT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-OPERATION</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-RESULT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-SIZE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-STATUS</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-TRANSFORM-KEY</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-TRANSFORM</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-TYPE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-URI-TYPE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-INVALID-VERSION</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-IO-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-KEY-DATA-ALREADY-EXIST</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-KEYDATA-DISABLED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-KEY-DATA-NOT-FOUND</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-KEY-NOT-FOUND</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-MALLOC-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-MAX-ENCKEY-LEVEL</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-MAX-RETRIEVALS-LEVEL</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-MAX-RETRIEVAL-TYPE-MISMATCH</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-MISSING-NODE-ATTRIBUTE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-NODE-ALREADY-PRESENT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-NODE-NOT-FOUND</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-NOT-IMPLEMENTED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-STRDUP-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-TRANSFORM-DISABLED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-TRANSFORM-SAME-DOCUMENT-REQUIRED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-UNEXPECTED-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-XML-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-XMLSEC-FAILED</font></p></li>
+<li class="listitem"><p><font>XMLSEC-ERRORS-R-XSLT-FAILED</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsSafeString" title="xmlSecErrorsSafeString()">xmlSecErrorsSafeString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsSetCallback" title="xmlSecErrorsSetCallback ()">xmlSecErrorsSetCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-errors.html#xmlSecErrorsShutdown" title="xmlSecErrorsShutdown ()">xmlSecErrorsShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecFindChild" title="xmlSecFindChild ()">xmlSecFindChild</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecFindNode" title="xmlSecFindNode ()">xmlSecFindNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecFindParent" title="xmlSecFindParent ()">xmlSecFindParent</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecFindSibling" title="xmlSecFindSibling ()">xmlSecFindSibling</a></p></li>
+<li class="listitem"><p><font>XMLSEC-FUNC-TO-PTR-IMPL</font></p></li>
+<li class="listitem"><p><font>XMLSEC-FUNC-TO-PTR</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrAdoptKey" title="xmlSecGCryptAppDefaultKeysMngrAdoptKey ()">xmlSecGCryptAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrInit" title="xmlSecGCryptAppDefaultKeysMngrInit ()">xmlSecGCryptAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrLoad" title="xmlSecGCryptAppDefaultKeysMngrLoad ()">xmlSecGCryptAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppDefaultKeysMngrSave" title="xmlSecGCryptAppDefaultKeysMngrSave ()">xmlSecGCryptAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppGetDefaultPwdCallback" title="xmlSecGCryptAppGetDefaultPwdCallback ()">xmlSecGCryptAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppInit" title="xmlSecGCryptAppInit ()">xmlSecGCryptAppInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyCertLoadMemory" title="xmlSecGCryptAppKeyCertLoadMemory ()">xmlSecGCryptAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyCertLoad" title="xmlSecGCryptAppKeyCertLoad ()">xmlSecGCryptAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyLoadMemory" title="xmlSecGCryptAppKeyLoadMemory ()">xmlSecGCryptAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeyLoad" title="xmlSecGCryptAppKeyLoad ()">xmlSecGCryptAppKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeysMngrCertLoadMemory" title="xmlSecGCryptAppKeysMngrCertLoadMemory ()">xmlSecGCryptAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppKeysMngrCertLoad" title="xmlSecGCryptAppKeysMngrCertLoad ()">xmlSecGCryptAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppPkcs12LoadMemory" title="xmlSecGCryptAppPkcs12LoadMemory ()">xmlSecGCryptAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppPkcs12Load" title="xmlSecGCryptAppPkcs12Load ()">xmlSecGCryptAppPkcs12Load</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-app.html#xmlSecGCryptAppShutdown" title="xmlSecGCryptAppShutdown ()">xmlSecGCryptAppShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptGenerateRandom" title="xmlSecGCryptGenerateRandom ()">xmlSecGCryptGenerateRandom</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptHmacGetMinOutputLength" title="xmlSecGCryptHmacGetMinOutputLength ()">xmlSecGCryptHmacGetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptHmacSetMinOutputLength" title="xmlSecGCryptHmacSetMinOutputLength ()">xmlSecGCryptHmacSetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptInit" title="xmlSecGCryptInit ()">xmlSecGCryptInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesGetKlass" title="xmlSecGCryptKeyDataAesGetKlass ()">xmlSecGCryptKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesId" title="xmlSecGCryptKeyDataAesId">xmlSecGCryptKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataAesSet" title="xmlSecGCryptKeyDataAesSet ()">xmlSecGCryptKeyDataAesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesGetKlass" title="xmlSecGCryptKeyDataDesGetKlass ()">xmlSecGCryptKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesId" title="xmlSecGCryptKeyDataDesId">xmlSecGCryptKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDesSet" title="xmlSecGCryptKeyDataDesSet ()">xmlSecGCryptKeyDataDesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaAdoptKey" title="xmlSecGCryptKeyDataDsaAdoptKey ()">xmlSecGCryptKeyDataDsaAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaAdoptKeyPair" title="xmlSecGCryptKeyDataDsaAdoptKeyPair ()">xmlSecGCryptKeyDataDsaAdoptKeyPair</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetKlass" title="xmlSecGCryptKeyDataDsaGetKlass ()">xmlSecGCryptKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetPrivateKey" title="xmlSecGCryptKeyDataDsaGetPrivateKey ()">xmlSecGCryptKeyDataDsaGetPrivateKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaGetPublicKey" title="xmlSecGCryptKeyDataDsaGetPublicKey ()">xmlSecGCryptKeyDataDsaGetPublicKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataDsaId" title="xmlSecGCryptKeyDataDsaId">xmlSecGCryptKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacGetKlass" title="xmlSecGCryptKeyDataHmacGetKlass ()">xmlSecGCryptKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacId" title="xmlSecGCryptKeyDataHmacId">xmlSecGCryptKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataHmacSet" title="xmlSecGCryptKeyDataHmacSet ()">xmlSecGCryptKeyDataHmacSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaAdoptKey" title="xmlSecGCryptKeyDataRsaAdoptKey ()">xmlSecGCryptKeyDataRsaAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaAdoptKeyPair" title="xmlSecGCryptKeyDataRsaAdoptKeyPair ()">xmlSecGCryptKeyDataRsaAdoptKeyPair</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetKlass" title="xmlSecGCryptKeyDataRsaGetKlass ()">xmlSecGCryptKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetPrivateKey" title="xmlSecGCryptKeyDataRsaGetPrivateKey ()">xmlSecGCryptKeyDataRsaGetPrivateKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaGetPublicKey" title="xmlSecGCryptKeyDataRsaGetPublicKey ()">xmlSecGCryptKeyDataRsaGetPublicKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeyDataRsaId" title="xmlSecGCryptKeyDataRsaId">xmlSecGCryptKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptKeysMngrInit" title="xmlSecGCryptKeysMngrInit ()">xmlSecGCryptKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptShutdown" title="xmlSecGCryptShutdown ()">xmlSecGCryptShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes128CbcGetKlass" title="xmlSecGCryptTransformAes128CbcGetKlass ()">xmlSecGCryptTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes128CbcId" title="xmlSecGCryptTransformAes128CbcId">xmlSecGCryptTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes192CbcGetKlass" title="xmlSecGCryptTransformAes192CbcGetKlass ()">xmlSecGCryptTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes192CbcId" title="xmlSecGCryptTransformAes192CbcId">xmlSecGCryptTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes256CbcGetKlass" title="xmlSecGCryptTransformAes256CbcGetKlass ()">xmlSecGCryptTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformAes256CbcId" title="xmlSecGCryptTransformAes256CbcId">xmlSecGCryptTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDes3CbcGetKlass" title="xmlSecGCryptTransformDes3CbcGetKlass ()">xmlSecGCryptTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDes3CbcId" title="xmlSecGCryptTransformDes3CbcId">xmlSecGCryptTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDsaSha1GetKlass" title="xmlSecGCryptTransformDsaSha1GetKlass ()">xmlSecGCryptTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformDsaSha1Id" title="xmlSecGCryptTransformDsaSha1Id">xmlSecGCryptTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacMd5GetKlass" title="xmlSecGCryptTransformHmacMd5GetKlass ()">xmlSecGCryptTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacMd5Id" title="xmlSecGCryptTransformHmacMd5Id">xmlSecGCryptTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacRipemd160GetKlass" title="xmlSecGCryptTransformHmacRipemd160GetKlass ()">xmlSecGCryptTransformHmacRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacRipemd160Id" title="xmlSecGCryptTransformHmacRipemd160Id">xmlSecGCryptTransformHmacRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha1GetKlass" title="xmlSecGCryptTransformHmacSha1GetKlass ()">xmlSecGCryptTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha1Id" title="xmlSecGCryptTransformHmacSha1Id">xmlSecGCryptTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha256GetKlass" title="xmlSecGCryptTransformHmacSha256GetKlass ()">xmlSecGCryptTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha256Id" title="xmlSecGCryptTransformHmacSha256Id">xmlSecGCryptTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha384GetKlass" title="xmlSecGCryptTransformHmacSha384GetKlass ()">xmlSecGCryptTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha384Id" title="xmlSecGCryptTransformHmacSha384Id">xmlSecGCryptTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha512GetKlass" title="xmlSecGCryptTransformHmacSha512GetKlass ()">xmlSecGCryptTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformHmacSha512Id" title="xmlSecGCryptTransformHmacSha512Id">xmlSecGCryptTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes128GetKlass" title="xmlSecGCryptTransformKWAes128GetKlass ()">xmlSecGCryptTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes128Id" title="xmlSecGCryptTransformKWAes128Id">xmlSecGCryptTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes192GetKlass" title="xmlSecGCryptTransformKWAes192GetKlass ()">xmlSecGCryptTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes192Id" title="xmlSecGCryptTransformKWAes192Id">xmlSecGCryptTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes256GetKlass" title="xmlSecGCryptTransformKWAes256GetKlass ()">xmlSecGCryptTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWAes256Id" title="xmlSecGCryptTransformKWAes256Id">xmlSecGCryptTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWDes3GetKlass" title="xmlSecGCryptTransformKWDes3GetKlass ()">xmlSecGCryptTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformKWDes3Id" title="xmlSecGCryptTransformKWDes3Id">xmlSecGCryptTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformMd5GetKlass" title="xmlSecGCryptTransformMd5GetKlass ()">xmlSecGCryptTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformMd5Id" title="xmlSecGCryptTransformMd5Id">xmlSecGCryptTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRipemd160GetKlass" title="xmlSecGCryptTransformRipemd160GetKlass ()">xmlSecGCryptTransformRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRipemd160Id" title="xmlSecGCryptTransformRipemd160Id">xmlSecGCryptTransformRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaMd5GetKlass" title="xmlSecGCryptTransformRsaMd5GetKlass ()">xmlSecGCryptTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaMd5Id" title="xmlSecGCryptTransformRsaMd5Id">xmlSecGCryptTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaRipemd160GetKlass" title="xmlSecGCryptTransformRsaRipemd160GetKlass ()">xmlSecGCryptTransformRsaRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaRipemd160Id" title="xmlSecGCryptTransformRsaRipemd160Id">xmlSecGCryptTransformRsaRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha1GetKlass" title="xmlSecGCryptTransformRsaSha1GetKlass ()">xmlSecGCryptTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha1Id" title="xmlSecGCryptTransformRsaSha1Id">xmlSecGCryptTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha256GetKlass" title="xmlSecGCryptTransformRsaSha256GetKlass ()">xmlSecGCryptTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha256Id" title="xmlSecGCryptTransformRsaSha256Id">xmlSecGCryptTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha384GetKlass" title="xmlSecGCryptTransformRsaSha384GetKlass ()">xmlSecGCryptTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha384Id" title="xmlSecGCryptTransformRsaSha384Id">xmlSecGCryptTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha512GetKlass" title="xmlSecGCryptTransformRsaSha512GetKlass ()">xmlSecGCryptTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformRsaSha512Id" title="xmlSecGCryptTransformRsaSha512Id">xmlSecGCryptTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha1GetKlass" title="xmlSecGCryptTransformSha1GetKlass ()">xmlSecGCryptTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha1Id" title="xmlSecGCryptTransformSha1Id">xmlSecGCryptTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha256GetKlass" title="xmlSecGCryptTransformSha256GetKlass ()">xmlSecGCryptTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha256Id" title="xmlSecGCryptTransformSha256Id">xmlSecGCryptTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha384GetKlass" title="xmlSecGCryptTransformSha384GetKlass ()">xmlSecGCryptTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha384Id" title="xmlSecGCryptTransformSha384Id">xmlSecGCryptTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha512GetKlass" title="xmlSecGCryptTransformSha512GetKlass ()">xmlSecGCryptTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gcrypt-crypto.html#xmlSecGCryptTransformSha512Id" title="xmlSecGCryptTransformSha512Id">xmlSecGCryptTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecGetDefaultCrypto" title="xmlSecGetDefaultCrypto ()">xmlSecGetDefaultCrypto</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecGetHex" title="xmlSecGetHex()">xmlSecGetHex</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecGetKeyCallback" title="xmlSecGetKeyCallback ()">xmlSecGetKeyCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecGetNextElementNode" title="xmlSecGetNextElementNode ()">xmlSecGetNextElementNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecGetNodeNsHref" title="xmlSecGetNodeNsHref ()">xmlSecGetNodeNsHref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecGetQName" title="xmlSecGetQName ()">xmlSecGetQName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrAdoptKey" title="xmlSecGnuTLSAppDefaultKeysMngrAdoptKey ()">xmlSecGnuTLSAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrInit" title="xmlSecGnuTLSAppDefaultKeysMngrInit ()">xmlSecGnuTLSAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrLoad" title="xmlSecGnuTLSAppDefaultKeysMngrLoad ()">xmlSecGnuTLSAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppDefaultKeysMngrSave" title="xmlSecGnuTLSAppDefaultKeysMngrSave ()">xmlSecGnuTLSAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppGetDefaultPwdCallback" title="xmlSecGnuTLSAppGetDefaultPwdCallback ()">xmlSecGnuTLSAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppInit" title="xmlSecGnuTLSAppInit ()">xmlSecGnuTLSAppInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyCertLoadMemory" title="xmlSecGnuTLSAppKeyCertLoadMemory ()">xmlSecGnuTLSAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyCertLoad" title="xmlSecGnuTLSAppKeyCertLoad ()">xmlSecGnuTLSAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyLoadMemory" title="xmlSecGnuTLSAppKeyLoadMemory ()">xmlSecGnuTLSAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeyLoad" title="xmlSecGnuTLSAppKeyLoad ()">xmlSecGnuTLSAppKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeysMngrCertLoadMemory" title="xmlSecGnuTLSAppKeysMngrCertLoadMemory ()">xmlSecGnuTLSAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppKeysMngrCertLoad" title="xmlSecGnuTLSAppKeysMngrCertLoad ()">xmlSecGnuTLSAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppPkcs12LoadMemory" title="xmlSecGnuTLSAppPkcs12LoadMemory ()">xmlSecGnuTLSAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppPkcs12Load" title="xmlSecGnuTLSAppPkcs12Load ()">xmlSecGnuTLSAppPkcs12Load</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-app.html#xmlSecGnuTLSAppShutdown" title="xmlSecGnuTLSAppShutdown ()">xmlSecGnuTLSAppShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSGenerateRandom" title="xmlSecGnuTLSGenerateRandom ()">xmlSecGnuTLSGenerateRandom</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSHmacGetMinOutputLength" title="xmlSecGnuTLSHmacGetMinOutputLength ()">xmlSecGnuTLSHmacGetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSHmacSetMinOutputLength" title="xmlSecGnuTLSHmacSetMinOutputLength ()">xmlSecGnuTLSHmacSetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSInit" title="xmlSecGnuTLSInit ()">xmlSecGnuTLSInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesGetKlass" title="xmlSecGnuTLSKeyDataAesGetKlass ()">xmlSecGnuTLSKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesId" title="xmlSecGnuTLSKeyDataAesId">xmlSecGnuTLSKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataAesSet" title="xmlSecGnuTLSKeyDataAesSet ()">xmlSecGnuTLSKeyDataAesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesGetKlass" title="xmlSecGnuTLSKeyDataDesGetKlass ()">xmlSecGnuTLSKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesId" title="xmlSecGnuTLSKeyDataDesId">xmlSecGnuTLSKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDesSet" title="xmlSecGnuTLSKeyDataDesSet ()">xmlSecGnuTLSKeyDataDesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaAdoptPrivateKey" title="xmlSecGnuTLSKeyDataDsaAdoptPrivateKey ()">xmlSecGnuTLSKeyDataDsaAdoptPrivateKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaAdoptPublicKey" title="xmlSecGnuTLSKeyDataDsaAdoptPublicKey ()">xmlSecGnuTLSKeyDataDsaAdoptPublicKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaGetKlass" title="xmlSecGnuTLSKeyDataDsaGetKlass ()">xmlSecGnuTLSKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataDsaId" title="xmlSecGnuTLSKeyDataDsaId">xmlSecGnuTLSKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacGetKlass" title="xmlSecGnuTLSKeyDataHmacGetKlass ()">xmlSecGnuTLSKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacId" title="xmlSecGnuTLSKeyDataHmacId">xmlSecGnuTLSKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataHmacSet" title="xmlSecGnuTLSKeyDataHmacSet ()">xmlSecGnuTLSKeyDataHmacSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataRawX509CertGetKlass" title="xmlSecGnuTLSKeyDataRawX509CertGetKlass ()">xmlSecGnuTLSKeyDataRawX509CertGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataRawX509CertId" title="xmlSecGnuTLSKeyDataRawX509CertId">xmlSecGnuTLSKeyDataRawX509CertId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaAdoptPrivateKey" title="xmlSecGnuTLSKeyDataRsaAdoptPrivateKey ()">xmlSecGnuTLSKeyDataRsaAdoptPrivateKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaAdoptPublicKey" title="xmlSecGnuTLSKeyDataRsaAdoptPublicKey ()">xmlSecGnuTLSKeyDataRsaAdoptPublicKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaGetKlass" title="xmlSecGnuTLSKeyDataRsaGetKlass ()">xmlSecGnuTLSKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeyDataRsaId" title="xmlSecGnuTLSKeyDataRsaId">xmlSecGnuTLSKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptCert" title="xmlSecGnuTLSKeyDataX509AdoptCert ()">xmlSecGnuTLSKeyDataX509AdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptCrl" title="xmlSecGnuTLSKeyDataX509AdoptCrl ()">xmlSecGnuTLSKeyDataX509AdoptCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509AdoptKeyCert" title="xmlSecGnuTLSKeyDataX509AdoptKeyCert ()">xmlSecGnuTLSKeyDataX509AdoptKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCert" title="xmlSecGnuTLSKeyDataX509GetCert ()">xmlSecGnuTLSKeyDataX509GetCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCertsSize" title="xmlSecGnuTLSKeyDataX509GetCertsSize ()">xmlSecGnuTLSKeyDataX509GetCertsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCrl" title="xmlSecGnuTLSKeyDataX509GetCrl ()">xmlSecGnuTLSKeyDataX509GetCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetCrlsSize" title="xmlSecGnuTLSKeyDataX509GetCrlsSize ()">xmlSecGnuTLSKeyDataX509GetCrlsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetKeyCert" title="xmlSecGnuTLSKeyDataX509GetKeyCert ()">xmlSecGnuTLSKeyDataX509GetKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509GetKlass" title="xmlSecGnuTLSKeyDataX509GetKlass ()">xmlSecGnuTLSKeyDataX509GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSKeyDataX509Id" title="xmlSecGnuTLSKeyDataX509Id">xmlSecGnuTLSKeyDataX509Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSKeysMngrInit" title="xmlSecGnuTLSKeysMngrInit ()">xmlSecGnuTLSKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSShutdown" title="xmlSecGnuTLSShutdown ()">xmlSecGnuTLSShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes128CbcGetKlass" title="xmlSecGnuTLSTransformAes128CbcGetKlass ()">xmlSecGnuTLSTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes128CbcId" title="xmlSecGnuTLSTransformAes128CbcId">xmlSecGnuTLSTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes192CbcGetKlass" title="xmlSecGnuTLSTransformAes192CbcGetKlass ()">xmlSecGnuTLSTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes192CbcId" title="xmlSecGnuTLSTransformAes192CbcId">xmlSecGnuTLSTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes256CbcGetKlass" title="xmlSecGnuTLSTransformAes256CbcGetKlass ()">xmlSecGnuTLSTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformAes256CbcId" title="xmlSecGnuTLSTransformAes256CbcId">xmlSecGnuTLSTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDes3CbcGetKlass" title="xmlSecGnuTLSTransformDes3CbcGetKlass ()">xmlSecGnuTLSTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDes3CbcId" title="xmlSecGnuTLSTransformDes3CbcId">xmlSecGnuTLSTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDsaSha1GetKlass" title="xmlSecGnuTLSTransformDsaSha1GetKlass ()">xmlSecGnuTLSTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformDsaSha1Id" title="xmlSecGnuTLSTransformDsaSha1Id">xmlSecGnuTLSTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacMd5GetKlass" title="xmlSecGnuTLSTransformHmacMd5GetKlass ()">xmlSecGnuTLSTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacMd5Id" title="xmlSecGnuTLSTransformHmacMd5Id">xmlSecGnuTLSTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacRipemd160GetKlass" title="xmlSecGnuTLSTransformHmacRipemd160GetKlass ()">xmlSecGnuTLSTransformHmacRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacRipemd160Id" title="xmlSecGnuTLSTransformHmacRipemd160Id">xmlSecGnuTLSTransformHmacRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha1GetKlass" title="xmlSecGnuTLSTransformHmacSha1GetKlass ()">xmlSecGnuTLSTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha1Id" title="xmlSecGnuTLSTransformHmacSha1Id">xmlSecGnuTLSTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha256GetKlass" title="xmlSecGnuTLSTransformHmacSha256GetKlass ()">xmlSecGnuTLSTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha256Id" title="xmlSecGnuTLSTransformHmacSha256Id">xmlSecGnuTLSTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha384GetKlass" title="xmlSecGnuTLSTransformHmacSha384GetKlass ()">xmlSecGnuTLSTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha384Id" title="xmlSecGnuTLSTransformHmacSha384Id">xmlSecGnuTLSTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha512GetKlass" title="xmlSecGnuTLSTransformHmacSha512GetKlass ()">xmlSecGnuTLSTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformHmacSha512Id" title="xmlSecGnuTLSTransformHmacSha512Id">xmlSecGnuTLSTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes128GetKlass" title="xmlSecGnuTLSTransformKWAes128GetKlass ()">xmlSecGnuTLSTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes128Id" title="xmlSecGnuTLSTransformKWAes128Id">xmlSecGnuTLSTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes192GetKlass" title="xmlSecGnuTLSTransformKWAes192GetKlass ()">xmlSecGnuTLSTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes192Id" title="xmlSecGnuTLSTransformKWAes192Id">xmlSecGnuTLSTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes256GetKlass" title="xmlSecGnuTLSTransformKWAes256GetKlass ()">xmlSecGnuTLSTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWAes256Id" title="xmlSecGnuTLSTransformKWAes256Id">xmlSecGnuTLSTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWDes3GetKlass" title="xmlSecGnuTLSTransformKWDes3GetKlass ()">xmlSecGnuTLSTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformKWDes3Id" title="xmlSecGnuTLSTransformKWDes3Id">xmlSecGnuTLSTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformMd5GetKlass" title="xmlSecGnuTLSTransformMd5GetKlass ()">xmlSecGnuTLSTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformMd5Id" title="xmlSecGnuTLSTransformMd5Id">xmlSecGnuTLSTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRipemd160GetKlass" title="xmlSecGnuTLSTransformRipemd160GetKlass ()">xmlSecGnuTLSTransformRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRipemd160Id" title="xmlSecGnuTLSTransformRipemd160Id">xmlSecGnuTLSTransformRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaMd5GetKlass" title="xmlSecGnuTLSTransformRsaMd5GetKlass ()">xmlSecGnuTLSTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaMd5Id" title="xmlSecGnuTLSTransformRsaMd5Id">xmlSecGnuTLSTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaRipemd160GetKlass" title="xmlSecGnuTLSTransformRsaRipemd160GetKlass ()">xmlSecGnuTLSTransformRsaRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaRipemd160Id" title="xmlSecGnuTLSTransformRsaRipemd160Id">xmlSecGnuTLSTransformRsaRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha1GetKlass" title="xmlSecGnuTLSTransformRsaSha1GetKlass ()">xmlSecGnuTLSTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha1Id" title="xmlSecGnuTLSTransformRsaSha1Id">xmlSecGnuTLSTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha256GetKlass" title="xmlSecGnuTLSTransformRsaSha256GetKlass ()">xmlSecGnuTLSTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha256Id" title="xmlSecGnuTLSTransformRsaSha256Id">xmlSecGnuTLSTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha384GetKlass" title="xmlSecGnuTLSTransformRsaSha384GetKlass ()">xmlSecGnuTLSTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha384Id" title="xmlSecGnuTLSTransformRsaSha384Id">xmlSecGnuTLSTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha512GetKlass" title="xmlSecGnuTLSTransformRsaSha512GetKlass ()">xmlSecGnuTLSTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformRsaSha512Id" title="xmlSecGnuTLSTransformRsaSha512Id">xmlSecGnuTLSTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha1GetKlass" title="xmlSecGnuTLSTransformSha1GetKlass ()">xmlSecGnuTLSTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha1Id" title="xmlSecGnuTLSTransformSha1Id">xmlSecGnuTLSTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha256GetKlass" title="xmlSecGnuTLSTransformSha256GetKlass ()">xmlSecGnuTLSTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha256Id" title="xmlSecGnuTLSTransformSha256Id">xmlSecGnuTLSTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha384GetKlass" title="xmlSecGnuTLSTransformSha384GetKlass ()">xmlSecGnuTLSTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha384Id" title="xmlSecGnuTLSTransformSha384Id">xmlSecGnuTLSTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha512GetKlass" title="xmlSecGnuTLSTransformSha512GetKlass ()">xmlSecGnuTLSTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-crypto.html#xmlSecGnuTLSTransformSha512Id" title="xmlSecGnuTLSTransformSha512Id">xmlSecGnuTLSTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509CertGetKey" title="xmlSecGnuTLSX509CertGetKey ()">xmlSecGnuTLSX509CertGetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreAdoptCert" title="xmlSecGnuTLSX509StoreAdoptCert ()">xmlSecGnuTLSX509StoreAdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreFindCert" title="xmlSecGnuTLSX509StoreFindCert ()">xmlSecGnuTLSX509StoreFindCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreGetKlass" title="xmlSecGnuTLSX509StoreGetKlass ()">xmlSecGnuTLSX509StoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreId" title="xmlSecGnuTLSX509StoreId">xmlSecGnuTLSX509StoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-gnutls-x509.html#xmlSecGnuTLSX509StoreVerify" title="xmlSecGnuTLSX509StoreVerify ()">xmlSecGnuTLSX509StoreVerify</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()">xmlSecInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecIOCleanupCallbacks" title="xmlSecIOCleanupCallbacks ()">xmlSecIOCleanupCallbacks</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecIOInit" title="xmlSecIOInit ()">xmlSecIOInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecIORegisterCallbacks" title="xmlSecIORegisterCallbacks ()">xmlSecIORegisterCallbacks</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecIORegisterDefaultCallbacks" title="xmlSecIORegisterDefaultCallbacks ()">xmlSecIORegisterDefaultCallbacks</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecIOShutdown" title="xmlSecIOShutdown ()">xmlSecIOShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecIsEmptyNode" title="xmlSecIsEmptyNode ()">xmlSecIsEmptyNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecIsEmptyString" title="xmlSecIsEmptyString ()">xmlSecIsEmptyString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecIsHex" title="xmlSecIsHex()">xmlSecIsHex</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyAdoptData" title="xmlSecKeyAdoptData ()">xmlSecKeyAdoptData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyCheckId" title="xmlSecKeyCheckId()">xmlSecKeyCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyCopy" title="xmlSecKeyCopy ()">xmlSecKeyCopy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyCreate" title="xmlSecKeyCreate ()">xmlSecKeyCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataAesGetKlass" title="xmlSecKeyDataAesGetKlass ()">xmlSecKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataAesId" title="xmlSecKeyDataAesId">xmlSecKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinarySize" title="xmlSecKeyDataBinarySize">xmlSecKeyDataBinarySize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueBinRead" title="xmlSecKeyDataBinaryValueBinRead ()">xmlSecKeyDataBinaryValueBinRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueBinWrite" title="xmlSecKeyDataBinaryValueBinWrite ()">xmlSecKeyDataBinaryValueBinWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDebugDump" title="xmlSecKeyDataBinaryValueDebugDump ()">xmlSecKeyDataBinaryValueDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDebugXmlDump" title="xmlSecKeyDataBinaryValueDebugXmlDump ()">xmlSecKeyDataBinaryValueDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDuplicate" title="xmlSecKeyDataBinaryValueDuplicate ()">xmlSecKeyDataBinaryValueDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueFinalize" title="xmlSecKeyDataBinaryValueFinalize ()">xmlSecKeyDataBinaryValueFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueGetBuffer" title="xmlSecKeyDataBinaryValueGetBuffer ()">xmlSecKeyDataBinaryValueGetBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueGetSize" title="xmlSecKeyDataBinaryValueGetSize ()">xmlSecKeyDataBinaryValueGetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueInitialize" title="xmlSecKeyDataBinaryValueInitialize ()">xmlSecKeyDataBinaryValueInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueSetBuffer" title="xmlSecKeyDataBinaryValueSetBuffer ()">xmlSecKeyDataBinaryValueSetBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueXmlRead" title="xmlSecKeyDataBinaryValueXmlRead ()">xmlSecKeyDataBinaryValueXmlRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueXmlWrite" title="xmlSecKeyDataBinaryValueXmlWrite ()">xmlSecKeyDataBinaryValueXmlWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinReadMethod" title="xmlSecKeyDataBinReadMethod ()">xmlSecKeyDataBinReadMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinRead" title="xmlSecKeyDataBinRead ()">xmlSecKeyDataBinRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinWriteMethod" title="xmlSecKeyDataBinWriteMethod ()">xmlSecKeyDataBinWriteMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinWrite" title="xmlSecKeyDataBinWrite ()">xmlSecKeyDataBinWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckId" title="xmlSecKeyDataCheckId()">xmlSecKeyDataCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckSize" title="xmlSecKeyDataCheckSize()">xmlSecKeyDataCheckSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckUsage" title="xmlSecKeyDataCheckUsage()">xmlSecKeyDataCheckUsage</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCreate" title="xmlSecKeyDataCreate ()">xmlSecKeyDataCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDumpMethod" title="xmlSecKeyDataDebugDumpMethod ()">xmlSecKeyDataDebugDumpMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDump" title="xmlSecKeyDataDebugDump ()">xmlSecKeyDataDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugXmlDump" title="xmlSecKeyDataDebugXmlDump ()">xmlSecKeyDataDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataDesGetKlass" title="xmlSecKeyDataDesGetKlass ()">xmlSecKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataDesId" title="xmlSecKeyDataDesId">xmlSecKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDestroy" title="xmlSecKeyDataDestroy ()">xmlSecKeyDataDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataDsaGetKlass" title="xmlSecKeyDataDsaGetKlass ()">xmlSecKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataDsaId" title="xmlSecKeyDataDsaId">xmlSecKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDuplicateMethod" title="xmlSecKeyDataDuplicateMethod ()">xmlSecKeyDataDuplicateMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDuplicate" title="xmlSecKeyDataDuplicate ()">xmlSecKeyDataDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataEcdsaGetKlass" title="xmlSecKeyDataEcdsaGetKlass ()">xmlSecKeyDataEcdsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataEcdsaId" title="xmlSecKeyDataEcdsaId">xmlSecKeyDataEcdsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataEncryptedKeyGetKlass" title="xmlSecKeyDataEncryptedKeyGetKlass ()">xmlSecKeyDataEncryptedKeyGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataEncryptedKeyId" title="xmlSecKeyDataEncryptedKeyId">xmlSecKeyDataEncryptedKeyId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFinalizeMethod" title="xmlSecKeyDataFinalizeMethod ()">xmlSecKeyDataFinalizeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat">xmlSecKeyDataFormat</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGenerateMethod" title="xmlSecKeyDataGenerateMethod ()">xmlSecKeyDataGenerateMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGenerate" title="xmlSecKeyDataGenerate ()">xmlSecKeyDataGenerate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetIdentifierMethod" title="xmlSecKeyDataGetIdentifierMethod ()">xmlSecKeyDataGetIdentifierMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetIdentifier" title="xmlSecKeyDataGetIdentifier ()">xmlSecKeyDataGetIdentifier</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetName" title="xmlSecKeyDataGetName()">xmlSecKeyDataGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetSizeMethod" title="xmlSecKeyDataGetSizeMethod ()">xmlSecKeyDataGetSizeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetSize" title="xmlSecKeyDataGetSize ()">xmlSecKeyDataGetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetTypeMethod" title="xmlSecKeyDataGetTypeMethod ()">xmlSecKeyDataGetTypeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetType" title="xmlSecKeyDataGetType ()">xmlSecKeyDataGetType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataGost2001GetKlass" title="xmlSecKeyDataGost2001GetKlass ()">xmlSecKeyDataGost2001GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataGost2001Id" title="xmlSecKeyDataGost2001Id">xmlSecKeyDataGost2001Id</a></p></li>
+<li class="listitem"><p><font>xmlSecKeyDataGostR3410-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecKeyDataGostR3410-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecKeyDataGostR3410-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecKeyDataGostR3410-2012-512Id</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataHmacGetKlass" title="xmlSecKeyDataHmacGetKlass ()">xmlSecKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataHmacId" title="xmlSecKeyDataHmacId">xmlSecKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListDebugDump" title="xmlSecKeyDataIdListDebugDump ()">xmlSecKeyDataIdListDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListDebugXmlDump" title="xmlSecKeyDataIdListDebugXmlDump ()">xmlSecKeyDataIdListDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByHref" title="xmlSecKeyDataIdListFindByHref ()">xmlSecKeyDataIdListFindByHref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByName" title="xmlSecKeyDataIdListFindByName ()">xmlSecKeyDataIdListFindByName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByNode" title="xmlSecKeyDataIdListFindByNode ()">xmlSecKeyDataIdListFindByNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFind" title="xmlSecKeyDataIdListFind ()">xmlSecKeyDataIdListFind</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListGetKlass" title="xmlSecKeyDataIdListGetKlass ()">xmlSecKeyDataIdListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListId" title="xmlSecKeyDataIdListId">xmlSecKeyDataIdListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsGet" title="xmlSecKeyDataIdsGet ()">xmlSecKeyDataIdsGet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsInit" title="xmlSecKeyDataIdsInit ()">xmlSecKeyDataIdsInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsRegisterDefault" title="xmlSecKeyDataIdsRegisterDefault ()">xmlSecKeyDataIdsRegisterDefault</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsRegister" title="xmlSecKeyDataIdsRegister ()">xmlSecKeyDataIdsRegister</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsShutdown" title="xmlSecKeyDataIdsShutdown ()">xmlSecKeyDataIdsShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdUnknown" title="xmlSecKeyDataIdUnknown">xmlSecKeyDataIdUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataInitMethod" title="xmlSecKeyDataInitMethod ()">xmlSecKeyDataInitMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIsValid" title="xmlSecKeyDataIsValid()">xmlSecKeyDataIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataKlassGetName" title="xmlSecKeyDataKlassGetName()">xmlSecKeyDataKlassGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataKlass" title="struct xmlSecKeyDataKlass">xmlSecKeyDataKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataListGetKlass" title="xmlSecKeyDataListGetKlass ()">xmlSecKeyDataListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataListId" title="xmlSecKeyDataListId">xmlSecKeyDataListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyData" title="struct xmlSecKeyData">xmlSecKeyData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataNameGetKlass" title="xmlSecKeyDataNameGetKlass ()">xmlSecKeyDataNameGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataNameId" title="xmlSecKeyDataNameId">xmlSecKeyDataNameId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataRawX509CertGetKlass" title="xmlSecKeyDataRawX509CertGetKlass ()">xmlSecKeyDataRawX509CertGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataRawX509CertId" title="xmlSecKeyDataRawX509CertId">xmlSecKeyDataRawX509CertId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataRetrievalMethodGetKlass" title="xmlSecKeyDataRetrievalMethodGetKlass ()">xmlSecKeyDataRetrievalMethodGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataRetrievalMethodId" title="xmlSecKeyDataRetrievalMethodId">xmlSecKeyDataRetrievalMethodId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataRsaGetKlass" title="xmlSecKeyDataRsaGetKlass ()">xmlSecKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataRsaId" title="xmlSecKeyDataRsaId">xmlSecKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCheckId" title="xmlSecKeyDataStoreCheckId()">xmlSecKeyDataStoreCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCheckSize" title="xmlSecKeyDataStoreCheckSize()">xmlSecKeyDataStoreCheckSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCreate" title="xmlSecKeyDataStoreCreate ()">xmlSecKeyDataStoreCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreDestroy" title="xmlSecKeyDataStoreDestroy ()">xmlSecKeyDataStoreDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreFinalizeMethod" title="xmlSecKeyDataStoreFinalizeMethod ()">xmlSecKeyDataStoreFinalizeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreGetName" title="xmlSecKeyDataStoreGetName()">xmlSecKeyDataStoreGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreIdUnknown" title="xmlSecKeyDataStoreIdUnknown">xmlSecKeyDataStoreIdUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreInitializeMethod" title="xmlSecKeyDataStoreInitializeMethod ()">xmlSecKeyDataStoreInitializeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreIsValid" title="xmlSecKeyDataStoreIsValid()">xmlSecKeyDataStoreIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreKlassGetName" title="xmlSecKeyDataStoreKlassGetName()">xmlSecKeyDataStoreKlassGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreKlass" title="struct xmlSecKeyDataStoreKlass">xmlSecKeyDataStoreKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStore" title="struct xmlSecKeyDataStore">xmlSecKeyDataStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStorePtrListGetKlass" title="xmlSecKeyDataStorePtrListGetKlass ()">xmlSecKeyDataStorePtrListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStorePtrListId" title="xmlSecKeyDataStorePtrListId">xmlSecKeyDataStorePtrListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeAny" title="xmlSecKeyDataTypeAny">xmlSecKeyDataTypeAny</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType">xmlSecKeyDataType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeNone" title="xmlSecKeyDataTypeNone">xmlSecKeyDataTypeNone</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePermanent" title="xmlSecKeyDataTypePermanent">xmlSecKeyDataTypePermanent</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePrivate" title="xmlSecKeyDataTypePrivate">xmlSecKeyDataTypePrivate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePublic" title="xmlSecKeyDataTypePublic">xmlSecKeyDataTypePublic</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeSession" title="xmlSecKeyDataTypeSession">xmlSecKeyDataTypeSession</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeSymmetric" title="xmlSecKeyDataTypeSymmetric">xmlSecKeyDataTypeSymmetric</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeTrusted" title="xmlSecKeyDataTypeTrusted">xmlSecKeyDataTypeTrusted</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeUnknown" title="xmlSecKeyDataTypeUnknown">xmlSecKeyDataTypeUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageAny" title="xmlSecKeyDataUsageAny">xmlSecKeyDataUsageAny</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNode" title="xmlSecKeyDataUsageKeyInfoNode">xmlSecKeyDataUsageKeyInfoNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNodeRead" title="xmlSecKeyDataUsageKeyInfoNodeRead">xmlSecKeyDataUsageKeyInfoNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNodeWrite" title="xmlSecKeyDataUsageKeyInfoNodeWrite">xmlSecKeyDataUsageKeyInfoNodeWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNode" title="xmlSecKeyDataUsageKeyValueNode">xmlSecKeyDataUsageKeyValueNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNodeRead" title="xmlSecKeyDataUsageKeyValueNodeRead">xmlSecKeyDataUsageKeyValueNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNodeWrite" title="xmlSecKeyDataUsageKeyValueNodeWrite">xmlSecKeyDataUsageKeyValueNodeWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage">xmlSecKeyDataUsage</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNodeBin" title="xmlSecKeyDataUsageRetrievalMethodNodeBin">xmlSecKeyDataUsageRetrievalMethodNodeBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNode" title="xmlSecKeyDataUsageRetrievalMethodNode">xmlSecKeyDataUsageRetrievalMethodNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNodeXml" title="xmlSecKeyDataUsageRetrievalMethodNodeXml">xmlSecKeyDataUsageRetrievalMethodNodeXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageUnknown" title="xmlSecKeyDataUsageUnknown">xmlSecKeyDataUsageUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataValueGetKlass" title="xmlSecKeyDataValueGetKlass ()">xmlSecKeyDataValueGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataValueId" title="xmlSecKeyDataValueId">xmlSecKeyDataValueId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataX509GetKlass" title="xmlSecKeyDataX509GetKlass ()">xmlSecKeyDataX509GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecKeyDataX509Id" title="xmlSecKeyDataX509Id">xmlSecKeyDataX509Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlReadMethod" title="xmlSecKeyDataXmlReadMethod ()">xmlSecKeyDataXmlReadMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlRead" title="xmlSecKeyDataXmlRead ()">xmlSecKeyDataXmlRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlWriteMethod" title="xmlSecKeyDataXmlWriteMethod ()">xmlSecKeyDataXmlWriteMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlWrite" title="xmlSecKeyDataXmlWrite ()">xmlSecKeyDataXmlWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyDebugDump" title="xmlSecKeyDebugDump ()">xmlSecKeyDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyDebugXmlDump" title="xmlSecKeyDebugXmlDump ()">xmlSecKeyDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()">xmlSecKeyDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyDuplicate" title="xmlSecKeyDuplicate ()">xmlSecKeyDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyEmpty" title="xmlSecKeyEmpty ()">xmlSecKeyEmpty</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyEnsureData" title="xmlSecKeyEnsureData ()">xmlSecKeyEnsureData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGenerateByName" title="xmlSecKeyGenerateByName ()">xmlSecKeyGenerateByName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGenerate" title="xmlSecKeyGenerate ()">xmlSecKeyGenerate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGetData" title="xmlSecKeyGetData ()">xmlSecKeyGetData</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGetName" title="xmlSecKeyGetName ()">xmlSecKeyGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGetType" title="xmlSecKeyGetType ()">xmlSecKeyGetType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyGetValue" title="xmlSecKeyGetValue ()">xmlSecKeyGetValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCopyUserPref" title="xmlSecKeyInfoCtxCopyUserPref ()">xmlSecKeyInfoCtxCopyUserPref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCreateEncCtx" title="xmlSecKeyInfoCtxCreateEncCtx ()">xmlSecKeyInfoCtxCreateEncCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCreate" title="xmlSecKeyInfoCtxCreate ()">xmlSecKeyInfoCtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDebugDump" title="xmlSecKeyInfoCtxDebugDump ()">xmlSecKeyInfoCtxDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDebugXmlDump" title="xmlSecKeyInfoCtxDebugXmlDump ()">xmlSecKeyInfoCtxDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDestroy" title="xmlSecKeyInfoCtxDestroy ()">xmlSecKeyInfoCtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxFinalize" title="xmlSecKeyInfoCtxFinalize ()">xmlSecKeyInfoCtxFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxInitialize" title="xmlSecKeyInfoCtxInitialize ()">xmlSecKeyInfoCtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx">xmlSecKeyInfoCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxReset" title="xmlSecKeyInfoCtxReset ()">xmlSecKeyInfoCtxReset</a></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-DONT-STOP-ON-KEY-FOUND</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-ENCKEY-DONT-STOP-ON-FAILED-DECRYPTION</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-KEYNAME-STOP-ON-UNKNOWN</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-KEYVALUE-STOP-ON-UNKNOWN-CHILD</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-MISMATCH-HREF</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-UNKNOWN-HREF</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-STOP-ON-EMPTY-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-STOP-ON-UNKNOWN-CHILD</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-DONT-VERIFY-CERTS</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-SKIP-STRICT-CHECKS</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-INVALID-CERT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CERT</font></p></li>
+<li class="listitem"><p><font>XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CHILD</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoMode" title="enum xmlSecKeyInfoMode">xmlSecKeyInfoMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoNodeRead" title="xmlSecKeyInfoNodeRead ()">xmlSecKeyInfoNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoNodeWrite" title="xmlSecKeyInfoNodeWrite ()">xmlSecKeyInfoNodeWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyIsValid" title="xmlSecKeyIsValid()">xmlSecKeyIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyMatch" title="xmlSecKeyMatch ()">xmlSecKeyMatch</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey">xmlSecKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyPtrListGetKlass" title="xmlSecKeyPtrListGetKlass ()">xmlSecKeyPtrListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyPtrListId" title="xmlSecKeyPtrListId">xmlSecKeyPtrListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReadBinaryFile" title="xmlSecKeyReadBinaryFile ()">xmlSecKeyReadBinaryFile</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReadBuffer" title="xmlSecKeyReadBuffer ()">xmlSecKeyReadBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReadMemory" title="xmlSecKeyReadMemory ()">xmlSecKeyReadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqCopy" title="xmlSecKeyReqCopy ()">xmlSecKeyReqCopy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqDebugDump" title="xmlSecKeyReqDebugDump ()">xmlSecKeyReqDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqDebugXmlDump" title="xmlSecKeyReqDebugXmlDump ()">xmlSecKeyReqDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqFinalize" title="xmlSecKeyReqFinalize ()">xmlSecKeyReqFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqInitialize" title="xmlSecKeyReqInitialize ()">xmlSecKeyReqInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqMatchKey" title="xmlSecKeyReqMatchKey ()">xmlSecKeyReqMatchKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqMatchKeyValue" title="xmlSecKeyReqMatchKeyValue ()">xmlSecKeyReqMatchKeyValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReq" title="struct xmlSecKeyReq">xmlSecKeyReq</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReqReset" title="xmlSecKeyReqReset ()">xmlSecKeyReqReset</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeySetName" title="xmlSecKeySetName ()">xmlSecKeySetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeySetValue" title="xmlSecKeySetValue ()">xmlSecKeySetValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrAdoptDataStore" title="xmlSecKeysMngrAdoptDataStore ()">xmlSecKeysMngrAdoptDataStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrAdoptKeysStore" title="xmlSecKeysMngrAdoptKeysStore ()">xmlSecKeysMngrAdoptKeysStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrCreate" title="xmlSecKeysMngrCreate ()">xmlSecKeysMngrCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrDestroy" title="xmlSecKeysMngrDestroy ()">xmlSecKeysMngrDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrFindKey" title="xmlSecKeysMngrFindKey ()">xmlSecKeysMngrFindKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetDataStore" title="xmlSecKeysMngrGetDataStore ()">xmlSecKeysMngrGetDataStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetKey" title="xmlSecKeysMngrGetKey ()">xmlSecKeysMngrGetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetKeysStore" title="xmlSecKeysMngrGetKeysStore ()">xmlSecKeysMngrGetKeysStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">xmlSecKeysMngr</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCheckId" title="xmlSecKeyStoreCheckId()">xmlSecKeyStoreCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCheckSize" title="xmlSecKeyStoreCheckSize()">xmlSecKeyStoreCheckSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCreate" title="xmlSecKeyStoreCreate ()">xmlSecKeyStoreCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreDestroy" title="xmlSecKeyStoreDestroy ()">xmlSecKeyStoreDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFinalizeMethod" title="xmlSecKeyStoreFinalizeMethod ()">xmlSecKeyStoreFinalizeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFindKeyMethod" title="xmlSecKeyStoreFindKeyMethod ()">xmlSecKeyStoreFindKeyMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFindKey" title="xmlSecKeyStoreFindKey ()">xmlSecKeyStoreFindKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreGetName" title="xmlSecKeyStoreGetName()">xmlSecKeyStoreGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreIdUnknown" title="xmlSecKeyStoreIdUnknown">xmlSecKeyStoreIdUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreInitializeMethod" title="xmlSecKeyStoreInitializeMethod ()">xmlSecKeyStoreInitializeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreIsValid" title="xmlSecKeyStoreIsValid()">xmlSecKeyStoreIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreKlassGetName" title="xmlSecKeyStoreKlassGetName()">xmlSecKeyStoreKlassGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreKlass" title="struct xmlSecKeyStoreKlass">xmlSecKeyStoreKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStore" title="struct xmlSecKeyStore">xmlSecKeyStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageAny" title="xmlSecKeyUsageAny">xmlSecKeyUsageAny</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageDecrypt" title="xmlSecKeyUsageDecrypt">xmlSecKeyUsageDecrypt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageEncrypt" title="xmlSecKeyUsageEncrypt">xmlSecKeyUsageEncrypt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageKeyExchange" title="xmlSecKeyUsageKeyExchange">xmlSecKeyUsageKeyExchange</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsage" title="xmlSecKeyUsage">xmlSecKeyUsage</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageSign" title="xmlSecKeyUsageSign">xmlSecKeyUsageSign</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageVerify" title="xmlSecKeyUsageVerify">xmlSecKeyUsageVerify</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithCopy" title="xmlSecKeyUseWithCopy ()">xmlSecKeyUseWithCopy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithCreate" title="xmlSecKeyUseWithCreate ()">xmlSecKeyUseWithCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDebugDump" title="xmlSecKeyUseWithDebugDump ()">xmlSecKeyUseWithDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDebugXmlDump" title="xmlSecKeyUseWithDebugXmlDump ()">xmlSecKeyUseWithDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDestroy" title="xmlSecKeyUseWithDestroy ()">xmlSecKeyUseWithDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDuplicate" title="xmlSecKeyUseWithDuplicate ()">xmlSecKeyUseWithDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithFinalize" title="xmlSecKeyUseWithFinalize ()">xmlSecKeyUseWithFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithInitialize" title="xmlSecKeyUseWithInitialize ()">xmlSecKeyUseWithInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWith" title="struct xmlSecKeyUseWith">xmlSecKeyUseWith</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithPtrListGetKlass" title="xmlSecKeyUseWithPtrListGetKlass ()">xmlSecKeyUseWithPtrListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithPtrListId" title="xmlSecKeyUseWithPtrListId">xmlSecKeyUseWithPtrListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithReset" title="xmlSecKeyUseWithReset ()">xmlSecKeyUseWithReset</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithSet" title="xmlSecKeyUseWithSet ()">xmlSecKeyUseWithSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptKey" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptKey ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrInit" title="xmlSecMSCryptoAppDefaultKeysMngrInit ()">xmlSecMSCryptoAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrLoad" title="xmlSecMSCryptoAppDefaultKeysMngrLoad ()">xmlSecMSCryptoAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrSave" title="xmlSecMSCryptoAppDefaultKeysMngrSave ()">xmlSecMSCryptoAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppGetCertStoreName" title="xmlSecMSCryptoAppGetCertStoreName ()">xmlSecMSCryptoAppGetCertStoreName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppGetDefaultPwdCallback" title="xmlSecMSCryptoAppGetDefaultPwdCallback ()">xmlSecMSCryptoAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppInit" title="xmlSecMSCryptoAppInit ()">xmlSecMSCryptoAppInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyCertLoadMemory" title="xmlSecMSCryptoAppKeyCertLoadMemory ()">xmlSecMSCryptoAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyCertLoad" title="xmlSecMSCryptoAppKeyCertLoad ()">xmlSecMSCryptoAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyLoadMemory" title="xmlSecMSCryptoAppKeyLoadMemory ()">xmlSecMSCryptoAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyLoad" title="xmlSecMSCryptoAppKeyLoad ()">xmlSecMSCryptoAppKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeysMngrCertLoadMemory" title="xmlSecMSCryptoAppKeysMngrCertLoadMemory ()">xmlSecMSCryptoAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeysMngrCertLoad" title="xmlSecMSCryptoAppKeysMngrCertLoad ()">xmlSecMSCryptoAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppPkcs12LoadMemory" title="xmlSecMSCryptoAppPkcs12LoadMemory ()">xmlSecMSCryptoAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppPkcs12Load" title="xmlSecMSCryptoAppPkcs12Load ()">xmlSecMSCryptoAppPkcs12Load</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppShutdown" title="xmlSecMSCryptoAppShutdown ()">xmlSecMSCryptoAppShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoCertAdopt" title="xmlSecMSCryptoCertAdopt ()">xmlSecMSCryptoCertAdopt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoCertDup" title="xmlSecMSCryptoCertDup ()">xmlSecMSCryptoCertDup</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertLocaleToUnicode" title="xmlSecMSCryptoConvertLocaleToUnicode ()">xmlSecMSCryptoConvertLocaleToUnicode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertLocaleToUtf8" title="xmlSecMSCryptoConvertLocaleToUtf8 ()">xmlSecMSCryptoConvertLocaleToUtf8</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertTstrToUtf8" title="xmlSecMSCryptoConvertTstrToUtf8 ()">xmlSecMSCryptoConvertTstrToUtf8</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUnicodeToUtf8" title="xmlSecMSCryptoConvertUnicodeToUtf8 ()">xmlSecMSCryptoConvertUnicodeToUtf8</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToLocale" title="xmlSecMSCryptoConvertUtf8ToLocale ()">xmlSecMSCryptoConvertUtf8ToLocale</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToTstr" title="xmlSecMSCryptoConvertUtf8ToTstr ()">xmlSecMSCryptoConvertUtf8ToTstr</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToUnicode" title="xmlSecMSCryptoConvertUtf8ToUnicode ()">xmlSecMSCryptoConvertUtf8ToUnicode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoErrorsDefaultCallback" title="xmlSecMSCryptoErrorsDefaultCallback ()">xmlSecMSCryptoErrorsDefaultCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoGenerateRandom" title="xmlSecMSCryptoGenerateRandom ()">xmlSecMSCryptoGenerateRandom</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoHmacGetMinOutputLength" title="xmlSecMSCryptoHmacGetMinOutputLength ()">xmlSecMSCryptoHmacGetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoHmacSetMinOutputLength" title="xmlSecMSCryptoHmacSetMinOutputLength ()">xmlSecMSCryptoHmacSetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoInit" title="xmlSecMSCryptoInit ()">xmlSecMSCryptoInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesGetKlass" title="xmlSecMSCryptoKeyDataAesGetKlass ()">xmlSecMSCryptoKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesId" title="xmlSecMSCryptoKeyDataAesId">xmlSecMSCryptoKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesSet" title="xmlSecMSCryptoKeyDataAesSet ()">xmlSecMSCryptoKeyDataAesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDesGetKlass" title="xmlSecMSCryptoKeyDataDesGetKlass ()">xmlSecMSCryptoKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDesId" title="xmlSecMSCryptoKeyDataDesId">xmlSecMSCryptoKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDsaGetKlass" title="xmlSecMSCryptoKeyDataDsaGetKlass ()">xmlSecMSCryptoKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDsaId" title="xmlSecMSCryptoKeyDataDsaId">xmlSecMSCryptoKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetCert" title="xmlSecMSCryptoKeyDataGetCert ()">xmlSecMSCryptoKeyDataGetCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetDecryptKey" title="xmlSecMSCryptoKeyDataGetDecryptKey ()">xmlSecMSCryptoKeyDataGetDecryptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetKey" title="xmlSecMSCryptoKeyDataGetKey ()">xmlSecMSCryptoKeyDataGetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoKeySpec" title="xmlSecMSCryptoKeyDataGetMSCryptoKeySpec ()">xmlSecMSCryptoKeyDataGetMSCryptoKeySpec</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo" title="xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo ()">xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoProvider" title="xmlSecMSCryptoKeyDataGetMSCryptoProvider ()">xmlSecMSCryptoKeyDataGetMSCryptoProvider</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataGost2001GetKlass" title="xmlSecMSCryptoKeyDataGost2001GetKlass ()">xmlSecMSCryptoKeyDataGost2001GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataGost2001Id" title="xmlSecMSCryptoKeyDataGost2001Id">xmlSecMSCryptoKeyDataGost2001Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacGetKlass" title="xmlSecMSCryptoKeyDataHmacGetKlass ()">xmlSecMSCryptoKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacId" title="xmlSecMSCryptoKeyDataHmacId">xmlSecMSCryptoKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacSet" title="xmlSecMSCryptoKeyDataHmacSet ()">xmlSecMSCryptoKeyDataHmacSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataRawX509CertGetKlass" title="xmlSecMSCryptoKeyDataRawX509CertGetKlass ()">xmlSecMSCryptoKeyDataRawX509CertGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataRawX509CertId" title="xmlSecMSCryptoKeyDataRawX509CertId">xmlSecMSCryptoKeyDataRawX509CertId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataRsaGetKlass" title="xmlSecMSCryptoKeyDataRsaGetKlass ()">xmlSecMSCryptoKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataRsaId" title="xmlSecMSCryptoKeyDataRsaId">xmlSecMSCryptoKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptCert" title="xmlSecMSCryptoKeyDataX509AdoptCert ()">xmlSecMSCryptoKeyDataX509AdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptCrl" title="xmlSecMSCryptoKeyDataX509AdoptCrl ()">xmlSecMSCryptoKeyDataX509AdoptCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptKeyCert" title="xmlSecMSCryptoKeyDataX509AdoptKeyCert ()">xmlSecMSCryptoKeyDataX509AdoptKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCert" title="xmlSecMSCryptoKeyDataX509GetCert ()">xmlSecMSCryptoKeyDataX509GetCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCertsSize" title="xmlSecMSCryptoKeyDataX509GetCertsSize ()">xmlSecMSCryptoKeyDataX509GetCertsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCrl" title="xmlSecMSCryptoKeyDataX509GetCrl ()">xmlSecMSCryptoKeyDataX509GetCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCrlsSize" title="xmlSecMSCryptoKeyDataX509GetCrlsSize ()">xmlSecMSCryptoKeyDataX509GetCrlsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetKeyCert" title="xmlSecMSCryptoKeyDataX509GetKeyCert ()">xmlSecMSCryptoKeyDataX509GetKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetKlass" title="xmlSecMSCryptoKeyDataX509GetKlass ()">xmlSecMSCryptoKeyDataX509GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509Id" title="xmlSecMSCryptoKeyDataX509Id">xmlSecMSCryptoKeyDataX509Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeysMngrInit" title="xmlSecMSCryptoKeysMngrInit ()">xmlSecMSCryptoKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreAdoptKey" title="xmlSecMSCryptoKeysStoreAdoptKey ()">xmlSecMSCryptoKeysStoreAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreGetKlass" title="xmlSecMSCryptoKeysStoreGetKlass ()">xmlSecMSCryptoKeysStoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreId" title="xmlSecMSCryptoKeysStoreId">xmlSecMSCryptoKeysStoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreLoad" title="xmlSecMSCryptoKeysStoreLoad ()">xmlSecMSCryptoKeysStoreLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreSave" title="xmlSecMSCryptoKeysStoreSave ()">xmlSecMSCryptoKeysStoreSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoShutdown" title="xmlSecMSCryptoShutdown ()">xmlSecMSCryptoShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes128CbcGetKlass" title="xmlSecMSCryptoTransformAes128CbcGetKlass ()">xmlSecMSCryptoTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes128CbcId" title="xmlSecMSCryptoTransformAes128CbcId">xmlSecMSCryptoTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes192CbcGetKlass" title="xmlSecMSCryptoTransformAes192CbcGetKlass ()">xmlSecMSCryptoTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes192CbcId" title="xmlSecMSCryptoTransformAes192CbcId">xmlSecMSCryptoTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes256CbcGetKlass" title="xmlSecMSCryptoTransformAes256CbcGetKlass ()">xmlSecMSCryptoTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes256CbcId" title="xmlSecMSCryptoTransformAes256CbcId">xmlSecMSCryptoTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDes3CbcGetKlass" title="xmlSecMSCryptoTransformDes3CbcGetKlass ()">xmlSecMSCryptoTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDes3CbcId" title="xmlSecMSCryptoTransformDes3CbcId">xmlSecMSCryptoTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDsaSha1GetKlass" title="xmlSecMSCryptoTransformDsaSha1GetKlass ()">xmlSecMSCryptoTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDsaSha1Id" title="xmlSecMSCryptoTransformDsaSha1Id">xmlSecMSCryptoTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><font>xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecMSCryptoTransformGost2001GostR3411-94Id</font></p></li>
+<li class="listitem"><p><font>xmlSecMSCryptoTransformGostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecMSCryptoTransformGostR3411-94Id</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacMd5GetKlass" title="xmlSecMSCryptoTransformHmacMd5GetKlass ()">xmlSecMSCryptoTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacMd5Id" title="xmlSecMSCryptoTransformHmacMd5Id">xmlSecMSCryptoTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha1GetKlass" title="xmlSecMSCryptoTransformHmacSha1GetKlass ()">xmlSecMSCryptoTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha1Id" title="xmlSecMSCryptoTransformHmacSha1Id">xmlSecMSCryptoTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha256GetKlass" title="xmlSecMSCryptoTransformHmacSha256GetKlass ()">xmlSecMSCryptoTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha256Id" title="xmlSecMSCryptoTransformHmacSha256Id">xmlSecMSCryptoTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha384GetKlass" title="xmlSecMSCryptoTransformHmacSha384GetKlass ()">xmlSecMSCryptoTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha384Id" title="xmlSecMSCryptoTransformHmacSha384Id">xmlSecMSCryptoTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha512GetKlass" title="xmlSecMSCryptoTransformHmacSha512GetKlass ()">xmlSecMSCryptoTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha512Id" title="xmlSecMSCryptoTransformHmacSha512Id">xmlSecMSCryptoTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes128GetKlass" title="xmlSecMSCryptoTransformKWAes128GetKlass ()">xmlSecMSCryptoTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes128Id" title="xmlSecMSCryptoTransformKWAes128Id">xmlSecMSCryptoTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes192GetKlass" title="xmlSecMSCryptoTransformKWAes192GetKlass ()">xmlSecMSCryptoTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes192Id" title="xmlSecMSCryptoTransformKWAes192Id">xmlSecMSCryptoTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes256GetKlass" title="xmlSecMSCryptoTransformKWAes256GetKlass ()">xmlSecMSCryptoTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes256Id" title="xmlSecMSCryptoTransformKWAes256Id">xmlSecMSCryptoTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWDes3GetKlass" title="xmlSecMSCryptoTransformKWDes3GetKlass ()">xmlSecMSCryptoTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWDes3Id" title="xmlSecMSCryptoTransformKWDes3Id">xmlSecMSCryptoTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformMd5GetKlass" title="xmlSecMSCryptoTransformMd5GetKlass ()">xmlSecMSCryptoTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformMd5Id" title="xmlSecMSCryptoTransformMd5Id">xmlSecMSCryptoTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaMd5GetKlass" title="xmlSecMSCryptoTransformRsaMd5GetKlass ()">xmlSecMSCryptoTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaMd5Id" title="xmlSecMSCryptoTransformRsaMd5Id">xmlSecMSCryptoTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaOaepGetKlass" title="xmlSecMSCryptoTransformRsaOaepGetKlass ()">xmlSecMSCryptoTransformRsaOaepGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaOaepId" title="xmlSecMSCryptoTransformRsaOaepId">xmlSecMSCryptoTransformRsaOaepId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaPkcs1GetKlass" title="xmlSecMSCryptoTransformRsaPkcs1GetKlass ()">xmlSecMSCryptoTransformRsaPkcs1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaPkcs1Id" title="xmlSecMSCryptoTransformRsaPkcs1Id">xmlSecMSCryptoTransformRsaPkcs1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha1GetKlass" title="xmlSecMSCryptoTransformRsaSha1GetKlass ()">xmlSecMSCryptoTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha1Id" title="xmlSecMSCryptoTransformRsaSha1Id">xmlSecMSCryptoTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha256GetKlass" title="xmlSecMSCryptoTransformRsaSha256GetKlass ()">xmlSecMSCryptoTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha256Id" title="xmlSecMSCryptoTransformRsaSha256Id">xmlSecMSCryptoTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha384GetKlass" title="xmlSecMSCryptoTransformRsaSha384GetKlass ()">xmlSecMSCryptoTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha384Id" title="xmlSecMSCryptoTransformRsaSha384Id">xmlSecMSCryptoTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha512GetKlass" title="xmlSecMSCryptoTransformRsaSha512GetKlass ()">xmlSecMSCryptoTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha512Id" title="xmlSecMSCryptoTransformRsaSha512Id">xmlSecMSCryptoTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha1GetKlass" title="xmlSecMSCryptoTransformSha1GetKlass ()">xmlSecMSCryptoTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha1Id" title="xmlSecMSCryptoTransformSha1Id">xmlSecMSCryptoTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha256GetKlass" title="xmlSecMSCryptoTransformSha256GetKlass ()">xmlSecMSCryptoTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha256Id" title="xmlSecMSCryptoTransformSha256Id">xmlSecMSCryptoTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha384GetKlass" title="xmlSecMSCryptoTransformSha384GetKlass ()">xmlSecMSCryptoTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha384Id" title="xmlSecMSCryptoTransformSha384Id">xmlSecMSCryptoTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha512GetKlass" title="xmlSecMSCryptoTransformSha512GetKlass ()">xmlSecMSCryptoTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha512Id" title="xmlSecMSCryptoTransformSha512Id">xmlSecMSCryptoTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptCert" title="xmlSecMSCryptoX509StoreAdoptCert ()">xmlSecMSCryptoX509StoreAdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptKeyStore" title="xmlSecMSCryptoX509StoreAdoptKeyStore ()">xmlSecMSCryptoX509StoreAdoptKeyStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptTrustedStore" title="xmlSecMSCryptoX509StoreAdoptTrustedStore ()">xmlSecMSCryptoX509StoreAdoptTrustedStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptUntrustedStore" title="xmlSecMSCryptoX509StoreAdoptUntrustedStore ()">xmlSecMSCryptoX509StoreAdoptUntrustedStore</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreEnableSystemTrustedCerts" title="xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()">xmlSecMSCryptoX509StoreEnableSystemTrustedCerts</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreGetKlass" title="xmlSecMSCryptoX509StoreGetKlass ()">xmlSecMSCryptoX509StoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreId" title="xmlSecMSCryptoX509StoreId">xmlSecMSCryptoX509StoreId</a></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-AES</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecNodeEncodeAndSetContent" title="xmlSecNodeEncodeAndSetContent ()">xmlSecNodeEncodeAndSetContent</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecNodeGetName" title="xmlSecNodeGetName()">xmlSecNodeGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetAddList" title="xmlSecNodeSetAddList ()">xmlSecNodeSetAddList</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetAdd" title="xmlSecNodeSetAdd ()">xmlSecNodeSetAdd</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetContains" title="xmlSecNodeSetContains ()">xmlSecNodeSetContains</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetCreate" title="xmlSecNodeSetCreate ()">xmlSecNodeSetCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDebugDump" title="xmlSecNodeSetDebugDump ()">xmlSecNodeSetDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDestroy" title="xmlSecNodeSetDestroy ()">xmlSecNodeSetDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDocDestroy" title="xmlSecNodeSetDocDestroy ()">xmlSecNodeSetDocDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDumpTextNodes" title="xmlSecNodeSetDumpTextNodes ()">xmlSecNodeSetDumpTextNodes</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetGetChildren" title="xmlSecNodeSetGetChildren ()">xmlSecNodeSetGetChildren</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSet" title="struct xmlSecNodeSet">xmlSecNodeSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetOp" title="enum xmlSecNodeSetOp">xmlSecNodeSetOp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetType" title="enum xmlSecNodeSetType">xmlSecNodeSetType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetWalkCallback" title="xmlSecNodeSetWalkCallback ()">xmlSecNodeSetWalkCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetWalk" title="xmlSecNodeSetWalk ()">xmlSecNodeSetWalk</a></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-DES</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-DSA</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-ECDSA</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-GOST2012</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-GOST</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-HMAC</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-MD5</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-RIPEMD160</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-RSA</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-SHA1</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-SHA224</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-SHA256</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-SHA384</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-SHA512</font></p></li>
+<li class="listitem"><p><font>XMLSEC-NO-X509</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrAdoptKey" title="xmlSecNssAppDefaultKeysMngrAdoptKey ()">xmlSecNssAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrInit" title="xmlSecNssAppDefaultKeysMngrInit ()">xmlSecNssAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrLoad" title="xmlSecNssAppDefaultKeysMngrLoad ()">xmlSecNssAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrSave" title="xmlSecNssAppDefaultKeysMngrSave ()">xmlSecNssAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppGetDefaultPwdCallback" title="xmlSecNssAppGetDefaultPwdCallback ()">xmlSecNssAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppInit" title="xmlSecNssAppInit ()">xmlSecNssAppInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoadMemory" title="xmlSecNssAppKeyCertLoadMemory ()">xmlSecNssAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoad" title="xmlSecNssAppKeyCertLoad ()">xmlSecNssAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoadSECItem" title="xmlSecNssAppKeyCertLoadSECItem ()">xmlSecNssAppKeyCertLoadSECItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyFromCertLoadSECItem" title="xmlSecNssAppKeyFromCertLoadSECItem ()">xmlSecNssAppKeyFromCertLoadSECItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoadMemory" title="xmlSecNssAppKeyLoadMemory ()">xmlSecNssAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoad" title="xmlSecNssAppKeyLoad ()">xmlSecNssAppKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoadSECItem" title="xmlSecNssAppKeyLoadSECItem ()">xmlSecNssAppKeyLoadSECItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoadMemory" title="xmlSecNssAppKeysMngrCertLoadMemory ()">xmlSecNssAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoad" title="xmlSecNssAppKeysMngrCertLoad ()">xmlSecNssAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoadSECItem" title="xmlSecNssAppKeysMngrCertLoadSECItem ()">xmlSecNssAppKeysMngrCertLoadSECItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12LoadMemory" title="xmlSecNssAppPkcs12LoadMemory ()">xmlSecNssAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12Load" title="xmlSecNssAppPkcs12Load ()">xmlSecNssAppPkcs12Load</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12LoadSECItem" title="xmlSecNssAppPkcs12LoadSECItem ()">xmlSecNssAppPkcs12LoadSECItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-app.html#xmlSecNssAppShutdown" title="xmlSecNssAppShutdown ()">xmlSecNssAppShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssErrorsDefaultCallback" title="xmlSecNssErrorsDefaultCallback ()">xmlSecNssErrorsDefaultCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssGenerateRandom" title="xmlSecNssGenerateRandom ()">xmlSecNssGenerateRandom</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssGetInternalKeySlot" title="xmlSecNssGetInternalKeySlot ()">xmlSecNssGetInternalKeySlot</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssHmacGetMinOutputLength" title="xmlSecNssHmacGetMinOutputLength ()">xmlSecNssHmacGetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssHmacSetMinOutputLength" title="xmlSecNssHmacSetMinOutputLength ()">xmlSecNssHmacSetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssInit" title="xmlSecNssInit ()">xmlSecNssInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesGetKlass" title="xmlSecNssKeyDataAesGetKlass ()">xmlSecNssKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesId" title="xmlSecNssKeyDataAesId">xmlSecNssKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesSet" title="xmlSecNssKeyDataAesSet ()">xmlSecNssKeyDataAesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesGetKlass" title="xmlSecNssKeyDataDesGetKlass ()">xmlSecNssKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesId" title="xmlSecNssKeyDataDesId">xmlSecNssKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesSet" title="xmlSecNssKeyDataDesSet ()">xmlSecNssKeyDataDesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDsaGetKlass" title="xmlSecNssKeyDataDsaGetKlass ()">xmlSecNssKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDsaId" title="xmlSecNssKeyDataDsaId">xmlSecNssKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataEcdsaGetKlass" title="xmlSecNssKeyDataEcdsaGetKlass ()">xmlSecNssKeyDataEcdsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataEcdsaId" title="xmlSecNssKeyDataEcdsaId">xmlSecNssKeyDataEcdsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacGetKlass" title="xmlSecNssKeyDataHmacGetKlass ()">xmlSecNssKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacId" title="xmlSecNssKeyDataHmacId">xmlSecNssKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacSet" title="xmlSecNssKeyDataHmacSet ()">xmlSecNssKeyDataHmacSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataRawX509CertGetKlass" title="xmlSecNssKeyDataRawX509CertGetKlass ()">xmlSecNssKeyDataRawX509CertGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataRawX509CertId" title="xmlSecNssKeyDataRawX509CertId">xmlSecNssKeyDataRawX509CertId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataRsaGetKlass" title="xmlSecNssKeyDataRsaGetKlass ()">xmlSecNssKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataRsaId" title="xmlSecNssKeyDataRsaId">xmlSecNssKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptCert" title="xmlSecNssKeyDataX509AdoptCert ()">xmlSecNssKeyDataX509AdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptCrl" title="xmlSecNssKeyDataX509AdoptCrl ()">xmlSecNssKeyDataX509AdoptCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptKeyCert" title="xmlSecNssKeyDataX509AdoptKeyCert ()">xmlSecNssKeyDataX509AdoptKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCert" title="xmlSecNssKeyDataX509GetCert ()">xmlSecNssKeyDataX509GetCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCertsSize" title="xmlSecNssKeyDataX509GetCertsSize ()">xmlSecNssKeyDataX509GetCertsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCrl" title="xmlSecNssKeyDataX509GetCrl ()">xmlSecNssKeyDataX509GetCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCrlsSize" title="xmlSecNssKeyDataX509GetCrlsSize ()">xmlSecNssKeyDataX509GetCrlsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetKeyCert" title="xmlSecNssKeyDataX509GetKeyCert ()">xmlSecNssKeyDataX509GetKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetKlass" title="xmlSecNssKeyDataX509GetKlass ()">xmlSecNssKeyDataX509GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509Id" title="xmlSecNssKeyDataX509Id">xmlSecNssKeyDataX509Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeysMngrInit" title="xmlSecNssKeysMngrInit ()">xmlSecNssKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreAdoptKey" title="xmlSecNssKeysStoreAdoptKey ()">xmlSecNssKeysStoreAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreGetKlass" title="xmlSecNssKeysStoreGetKlass ()">xmlSecNssKeysStoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreId" title="xmlSecNssKeysStoreId">xmlSecNssKeysStoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreLoad" title="xmlSecNssKeysStoreLoad ()">xmlSecNssKeysStoreLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreSave" title="xmlSecNssKeysStoreSave ()">xmlSecNssKeysStoreSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-bignum.html#xmlSecNssNodeGetBigNumValue" title="xmlSecNssNodeGetBigNumValue ()">xmlSecNssNodeGetBigNumValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-bignum.html#xmlSecNssNodeSetBigNumValue" title="xmlSecNssNodeSetBigNumValue ()">xmlSecNssNodeSetBigNumValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIAdoptKey" title="xmlSecNssPKIAdoptKey ()">xmlSecNssPKIAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataDuplicate" title="xmlSecNssPKIKeyDataDuplicate ()">xmlSecNssPKIKeyDataDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetKeyType" title="xmlSecNssPKIKeyDataGetKeyType ()">xmlSecNssPKIKeyDataGetKeyType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetPrivKey" title="xmlSecNssPKIKeyDataGetPrivKey ()">xmlSecNssPKIKeyDataGetPrivKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetPubKey" title="xmlSecNssPKIKeyDataGetPubKey ()">xmlSecNssPKIKeyDataGetPubKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssShutdown" title="xmlSecNssShutdown ()">xmlSecNssShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes128CbcGetKlass" title="xmlSecNssTransformAes128CbcGetKlass ()">xmlSecNssTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes128CbcId" title="xmlSecNssTransformAes128CbcId">xmlSecNssTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes192CbcGetKlass" title="xmlSecNssTransformAes192CbcGetKlass ()">xmlSecNssTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes192CbcId" title="xmlSecNssTransformAes192CbcId">xmlSecNssTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes256CbcGetKlass" title="xmlSecNssTransformAes256CbcGetKlass ()">xmlSecNssTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes256CbcId" title="xmlSecNssTransformAes256CbcId">xmlSecNssTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDes3CbcGetKlass" title="xmlSecNssTransformDes3CbcGetKlass ()">xmlSecNssTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDes3CbcId" title="xmlSecNssTransformDes3CbcId">xmlSecNssTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDsaSha1GetKlass" title="xmlSecNssTransformDsaSha1GetKlass ()">xmlSecNssTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDsaSha1Id" title="xmlSecNssTransformDsaSha1Id">xmlSecNssTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha1GetKlass" title="xmlSecNssTransformEcdsaSha1GetKlass ()">xmlSecNssTransformEcdsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha1Id" title="xmlSecNssTransformEcdsaSha1Id">xmlSecNssTransformEcdsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha256GetKlass" title="xmlSecNssTransformEcdsaSha256GetKlass ()">xmlSecNssTransformEcdsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha256Id" title="xmlSecNssTransformEcdsaSha256Id">xmlSecNssTransformEcdsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha512GetKlass" title="xmlSecNssTransformEcdsaSha512GetKlass ()">xmlSecNssTransformEcdsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha512Id" title="xmlSecNssTransformEcdsaSha512Id">xmlSecNssTransformEcdsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacMd5GetKlass" title="xmlSecNssTransformHmacMd5GetKlass ()">xmlSecNssTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacMd5Id" title="xmlSecNssTransformHmacMd5Id">xmlSecNssTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacRipemd160GetKlass" title="xmlSecNssTransformHmacRipemd160GetKlass ()">xmlSecNssTransformHmacRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacRipemd160Id" title="xmlSecNssTransformHmacRipemd160Id">xmlSecNssTransformHmacRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha1GetKlass" title="xmlSecNssTransformHmacSha1GetKlass ()">xmlSecNssTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha1Id" title="xmlSecNssTransformHmacSha1Id">xmlSecNssTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha256GetKlass" title="xmlSecNssTransformHmacSha256GetKlass ()">xmlSecNssTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha256Id" title="xmlSecNssTransformHmacSha256Id">xmlSecNssTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha384GetKlass" title="xmlSecNssTransformHmacSha384GetKlass ()">xmlSecNssTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha384Id" title="xmlSecNssTransformHmacSha384Id">xmlSecNssTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha512GetKlass" title="xmlSecNssTransformHmacSha512GetKlass ()">xmlSecNssTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha512Id" title="xmlSecNssTransformHmacSha512Id">xmlSecNssTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes128GetKlass" title="xmlSecNssTransformKWAes128GetKlass ()">xmlSecNssTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes128Id" title="xmlSecNssTransformKWAes128Id">xmlSecNssTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes192GetKlass" title="xmlSecNssTransformKWAes192GetKlass ()">xmlSecNssTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes192Id" title="xmlSecNssTransformKWAes192Id">xmlSecNssTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes256GetKlass" title="xmlSecNssTransformKWAes256GetKlass ()">xmlSecNssTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes256Id" title="xmlSecNssTransformKWAes256Id">xmlSecNssTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWDes3GetKlass" title="xmlSecNssTransformKWDes3GetKlass ()">xmlSecNssTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWDes3Id" title="xmlSecNssTransformKWDes3Id">xmlSecNssTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformMd5GetKlass" title="xmlSecNssTransformMd5GetKlass ()">xmlSecNssTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformMd5Id" title="xmlSecNssTransformMd5Id">xmlSecNssTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaMd5GetKlass" title="xmlSecNssTransformRsaMd5GetKlass ()">xmlSecNssTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaMd5Id" title="xmlSecNssTransformRsaMd5Id">xmlSecNssTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaOaepGetKlass" title="xmlSecNssTransformRsaOaepGetKlass ()">xmlSecNssTransformRsaOaepGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaOaepId" title="xmlSecNssTransformRsaOaepId">xmlSecNssTransformRsaOaepId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaPkcs1GetKlass" title="xmlSecNssTransformRsaPkcs1GetKlass ()">xmlSecNssTransformRsaPkcs1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaPkcs1Id" title="xmlSecNssTransformRsaPkcs1Id">xmlSecNssTransformRsaPkcs1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha1GetKlass" title="xmlSecNssTransformRsaSha1GetKlass ()">xmlSecNssTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha1Id" title="xmlSecNssTransformRsaSha1Id">xmlSecNssTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha256GetKlass" title="xmlSecNssTransformRsaSha256GetKlass ()">xmlSecNssTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha256Id" title="xmlSecNssTransformRsaSha256Id">xmlSecNssTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha384GetKlass" title="xmlSecNssTransformRsaSha384GetKlass ()">xmlSecNssTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha384Id" title="xmlSecNssTransformRsaSha384Id">xmlSecNssTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha512GetKlass" title="xmlSecNssTransformRsaSha512GetKlass ()">xmlSecNssTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha512Id" title="xmlSecNssTransformRsaSha512Id">xmlSecNssTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha1GetKlass" title="xmlSecNssTransformSha1GetKlass ()">xmlSecNssTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha1Id" title="xmlSecNssTransformSha1Id">xmlSecNssTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha256GetKlass" title="xmlSecNssTransformSha256GetKlass ()">xmlSecNssTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha256Id" title="xmlSecNssTransformSha256Id">xmlSecNssTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha384GetKlass" title="xmlSecNssTransformSha384GetKlass ()">xmlSecNssTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha384Id" title="xmlSecNssTransformSha384Id">xmlSecNssTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha512GetKlass" title="xmlSecNssTransformSha512GetKlass ()">xmlSecNssTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha512Id" title="xmlSecNssTransformSha512Id">xmlSecNssTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509CertGetKey" title="xmlSecNssX509CertGetKey ()">xmlSecNssX509CertGetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreAdoptCert" title="xmlSecNssX509StoreAdoptCert ()">xmlSecNssX509StoreAdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreFindCert" title="xmlSecNssX509StoreFindCert ()">xmlSecNssX509StoreFindCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreGetKlass" title="xmlSecNssX509StoreGetKlass ()">xmlSecNssX509StoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreId" title="xmlSecNssX509StoreId">xmlSecNssX509StoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreVerify" title="xmlSecNssX509StoreVerify ()">xmlSecNssX509StoreVerify</a></p></li>
+<li class="listitem"><p><font>XMLSEC-OPENSSL-API-098</font></p></li>
+<li class="listitem"><p><font>XMLSEC-OPENSSL-API-100</font></p></li>
+<li class="listitem"><p><font>XMLSEC-OPENSSL-API-110</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrAdoptKey" title="xmlSecOpenSSLAppDefaultKeysMngrAdoptKey ()">xmlSecOpenSSLAppDefaultKeysMngrAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrInit" title="xmlSecOpenSSLAppDefaultKeysMngrInit ()">xmlSecOpenSSLAppDefaultKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrLoad" title="xmlSecOpenSSLAppDefaultKeysMngrLoad ()">xmlSecOpenSSLAppDefaultKeysMngrLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrSave" title="xmlSecOpenSSLAppDefaultKeysMngrSave ()">xmlSecOpenSSLAppDefaultKeysMngrSave</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppGetDefaultPwdCallback" title="xmlSecOpenSSLAppGetDefaultPwdCallback ()">xmlSecOpenSSLAppGetDefaultPwdCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppInit" title="xmlSecOpenSSLAppInit ()">xmlSecOpenSSLAppInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoadBIO" title="xmlSecOpenSSLAppKeyCertLoadBIO ()">xmlSecOpenSSLAppKeyCertLoadBIO</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoadMemory" title="xmlSecOpenSSLAppKeyCertLoadMemory ()">xmlSecOpenSSLAppKeyCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoad" title="xmlSecOpenSSLAppKeyCertLoad ()">xmlSecOpenSSLAppKeyCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyFromCertLoadBIO" title="xmlSecOpenSSLAppKeyFromCertLoadBIO ()">xmlSecOpenSSLAppKeyFromCertLoadBIO</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoadBIO" title="xmlSecOpenSSLAppKeyLoadBIO ()">xmlSecOpenSSLAppKeyLoadBIO</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoadMemory" title="xmlSecOpenSSLAppKeyLoadMemory ()">xmlSecOpenSSLAppKeyLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoad" title="xmlSecOpenSSLAppKeyLoad ()">xmlSecOpenSSLAppKeyLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrAddCertsFile" title="xmlSecOpenSSLAppKeysMngrAddCertsFile ()">xmlSecOpenSSLAppKeysMngrAddCertsFile</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrAddCertsPath" title="xmlSecOpenSSLAppKeysMngrAddCertsPath ()">xmlSecOpenSSLAppKeysMngrAddCertsPath</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoadBIO" title="xmlSecOpenSSLAppKeysMngrCertLoadBIO ()">xmlSecOpenSSLAppKeysMngrCertLoadBIO</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoadMemory" title="xmlSecOpenSSLAppKeysMngrCertLoadMemory ()">xmlSecOpenSSLAppKeysMngrCertLoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoad" title="xmlSecOpenSSLAppKeysMngrCertLoad ()">xmlSecOpenSSLAppKeysMngrCertLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12LoadBIO" title="xmlSecOpenSSLAppPkcs12LoadBIO ()">xmlSecOpenSSLAppPkcs12LoadBIO</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12LoadMemory" title="xmlSecOpenSSLAppPkcs12LoadMemory ()">xmlSecOpenSSLAppPkcs12LoadMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12Load" title="xmlSecOpenSSLAppPkcs12Load ()">xmlSecOpenSSLAppPkcs12Load</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppShutdown" title="xmlSecOpenSSLAppShutdown ()">xmlSecOpenSSLAppShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLErrorsDefaultCallback" title="xmlSecOpenSSLErrorsDefaultCallback ()">xmlSecOpenSSLErrorsDefaultCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyAdopt" title="xmlSecOpenSSLEvpKeyAdopt ()">xmlSecOpenSSLEvpKeyAdopt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDataAdoptEvp" title="xmlSecOpenSSLEvpKeyDataAdoptEvp ()">xmlSecOpenSSLEvpKeyDataAdoptEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDataGetEvp" title="xmlSecOpenSSLEvpKeyDataGetEvp ()">xmlSecOpenSSLEvpKeyDataGetEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDup" title="xmlSecOpenSSLEvpKeyDup ()">xmlSecOpenSSLEvpKeyDup</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLGenerateRandom" title="xmlSecOpenSSLGenerateRandom ()">xmlSecOpenSSLGenerateRandom</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLGetDefaultTrustedCertsFolder" title="xmlSecOpenSSLGetDefaultTrustedCertsFolder ()">xmlSecOpenSSLGetDefaultTrustedCertsFolder</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLHmacGetMinOutputLength" title="xmlSecOpenSSLHmacGetMinOutputLength ()">xmlSecOpenSSLHmacGetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLHmacSetMinOutputLength" title="xmlSecOpenSSLHmacSetMinOutputLength ()">xmlSecOpenSSLHmacSetMinOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLInit" title="xmlSecOpenSSLInit ()">xmlSecOpenSSLInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesGetKlass" title="xmlSecOpenSSLKeyDataAesGetKlass ()">xmlSecOpenSSLKeyDataAesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesId" title="xmlSecOpenSSLKeyDataAesId">xmlSecOpenSSLKeyDataAesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesSet" title="xmlSecOpenSSLKeyDataAesSet ()">xmlSecOpenSSLKeyDataAesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesGetKlass" title="xmlSecOpenSSLKeyDataDesGetKlass ()">xmlSecOpenSSLKeyDataDesGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesId" title="xmlSecOpenSSLKeyDataDesId">xmlSecOpenSSLKeyDataDesId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesSet" title="xmlSecOpenSSLKeyDataDesSet ()">xmlSecOpenSSLKeyDataDesSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaAdoptDsa" title="xmlSecOpenSSLKeyDataDsaAdoptDsa ()">xmlSecOpenSSLKeyDataDsaAdoptDsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaAdoptEvp" title="xmlSecOpenSSLKeyDataDsaAdoptEvp ()">xmlSecOpenSSLKeyDataDsaAdoptEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetDsa" title="xmlSecOpenSSLKeyDataDsaGetDsa ()">xmlSecOpenSSLKeyDataDsaGetDsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetEvp" title="xmlSecOpenSSLKeyDataDsaGetEvp ()">xmlSecOpenSSLKeyDataDsaGetEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetKlass" title="xmlSecOpenSSLKeyDataDsaGetKlass ()">xmlSecOpenSSLKeyDataDsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaId" title="xmlSecOpenSSLKeyDataDsaId">xmlSecOpenSSLKeyDataDsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa" title="xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa ()">xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaAdoptEvp" title="xmlSecOpenSSLKeyDataEcdsaAdoptEvp ()">xmlSecOpenSSLKeyDataEcdsaAdoptEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetEcdsa" title="xmlSecOpenSSLKeyDataEcdsaGetEcdsa ()">xmlSecOpenSSLKeyDataEcdsaGetEcdsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetEvp" title="xmlSecOpenSSLKeyDataEcdsaGetEvp ()">xmlSecOpenSSLKeyDataEcdsaGetEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetKlass" title="xmlSecOpenSSLKeyDataEcdsaGetKlass ()">xmlSecOpenSSLKeyDataEcdsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaId" title="xmlSecOpenSSLKeyDataEcdsaId">xmlSecOpenSSLKeyDataEcdsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGost2001GetKlass" title="xmlSecOpenSSLKeyDataGost2001GetKlass ()">xmlSecOpenSSLKeyDataGost2001GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGost2001Id" title="xmlSecOpenSSLKeyDataGost2001Id">xmlSecOpenSSLKeyDataGost2001Id</a></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLKeyDataGostR3410-2012-512Id</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacGetKlass" title="xmlSecOpenSSLKeyDataHmacGetKlass ()">xmlSecOpenSSLKeyDataHmacGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacId" title="xmlSecOpenSSLKeyDataHmacId">xmlSecOpenSSLKeyDataHmacId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacSet" title="xmlSecOpenSSLKeyDataHmacSet ()">xmlSecOpenSSLKeyDataHmacSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataRawX509CertGetKlass" title="xmlSecOpenSSLKeyDataRawX509CertGetKlass ()">xmlSecOpenSSLKeyDataRawX509CertGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataRawX509CertId" title="xmlSecOpenSSLKeyDataRawX509CertId">xmlSecOpenSSLKeyDataRawX509CertId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaAdoptEvp" title="xmlSecOpenSSLKeyDataRsaAdoptEvp ()">xmlSecOpenSSLKeyDataRsaAdoptEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaAdoptRsa" title="xmlSecOpenSSLKeyDataRsaAdoptRsa ()">xmlSecOpenSSLKeyDataRsaAdoptRsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetEvp" title="xmlSecOpenSSLKeyDataRsaGetEvp ()">xmlSecOpenSSLKeyDataRsaGetEvp</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetKlass" title="xmlSecOpenSSLKeyDataRsaGetKlass ()">xmlSecOpenSSLKeyDataRsaGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetRsa" title="xmlSecOpenSSLKeyDataRsaGetRsa ()">xmlSecOpenSSLKeyDataRsaGetRsa</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaId" title="xmlSecOpenSSLKeyDataRsaId">xmlSecOpenSSLKeyDataRsaId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptCert" title="xmlSecOpenSSLKeyDataX509AdoptCert ()">xmlSecOpenSSLKeyDataX509AdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptCrl" title="xmlSecOpenSSLKeyDataX509AdoptCrl ()">xmlSecOpenSSLKeyDataX509AdoptCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptKeyCert" title="xmlSecOpenSSLKeyDataX509AdoptKeyCert ()">xmlSecOpenSSLKeyDataX509AdoptKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCert" title="xmlSecOpenSSLKeyDataX509GetCert ()">xmlSecOpenSSLKeyDataX509GetCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCertsSize" title="xmlSecOpenSSLKeyDataX509GetCertsSize ()">xmlSecOpenSSLKeyDataX509GetCertsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCrl" title="xmlSecOpenSSLKeyDataX509GetCrl ()">xmlSecOpenSSLKeyDataX509GetCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCrlsSize" title="xmlSecOpenSSLKeyDataX509GetCrlsSize ()">xmlSecOpenSSLKeyDataX509GetCrlsSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetKeyCert" title="xmlSecOpenSSLKeyDataX509GetKeyCert ()">xmlSecOpenSSLKeyDataX509GetKeyCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetKlass" title="xmlSecOpenSSLKeyDataX509GetKlass ()">xmlSecOpenSSLKeyDataX509GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509Id" title="xmlSecOpenSSLKeyDataX509Id">xmlSecOpenSSLKeyDataX509Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeysMngrInit" title="xmlSecOpenSSLKeysMngrInit ()">xmlSecOpenSSLKeysMngrInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-bn.html#xmlSecOpenSSLNodeGetBNValue" title="xmlSecOpenSSLNodeGetBNValue ()">xmlSecOpenSSLNodeGetBNValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-bn.html#xmlSecOpenSSLNodeSetBNValue" title="xmlSecOpenSSLNodeSetBNValue ()">xmlSecOpenSSLNodeSetBNValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLSetDefaultTrustedCertsFolder" title="xmlSecOpenSSLSetDefaultTrustedCertsFolder ()">xmlSecOpenSSLSetDefaultTrustedCertsFolder</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLShutdown" title="xmlSecOpenSSLShutdown ()">xmlSecOpenSSLShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes128CbcGetKlass" title="xmlSecOpenSSLTransformAes128CbcGetKlass ()">xmlSecOpenSSLTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes128CbcId" title="xmlSecOpenSSLTransformAes128CbcId">xmlSecOpenSSLTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes192CbcGetKlass" title="xmlSecOpenSSLTransformAes192CbcGetKlass ()">xmlSecOpenSSLTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes192CbcId" title="xmlSecOpenSSLTransformAes192CbcId">xmlSecOpenSSLTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes256CbcGetKlass" title="xmlSecOpenSSLTransformAes256CbcGetKlass ()">xmlSecOpenSSLTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes256CbcId" title="xmlSecOpenSSLTransformAes256CbcId">xmlSecOpenSSLTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDes3CbcGetKlass" title="xmlSecOpenSSLTransformDes3CbcGetKlass ()">xmlSecOpenSSLTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDes3CbcId" title="xmlSecOpenSSLTransformDes3CbcId">xmlSecOpenSSLTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha1GetKlass" title="xmlSecOpenSSLTransformDsaSha1GetKlass ()">xmlSecOpenSSLTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha1Id" title="xmlSecOpenSSLTransformDsaSha1Id">xmlSecOpenSSLTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha256GetKlass" title="xmlSecOpenSSLTransformDsaSha256GetKlass ()">xmlSecOpenSSLTransformDsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha256Id" title="xmlSecOpenSSLTransformDsaSha256Id">xmlSecOpenSSLTransformDsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha1GetKlass" title="xmlSecOpenSSLTransformEcdsaSha1GetKlass ()">xmlSecOpenSSLTransformEcdsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha1Id" title="xmlSecOpenSSLTransformEcdsaSha1Id">xmlSecOpenSSLTransformEcdsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha224GetKlass" title="xmlSecOpenSSLTransformEcdsaSha224GetKlass ()">xmlSecOpenSSLTransformEcdsaSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha224Id" title="xmlSecOpenSSLTransformEcdsaSha224Id">xmlSecOpenSSLTransformEcdsaSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha256GetKlass" title="xmlSecOpenSSLTransformEcdsaSha256GetKlass ()">xmlSecOpenSSLTransformEcdsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha256Id" title="xmlSecOpenSSLTransformEcdsaSha256Id">xmlSecOpenSSLTransformEcdsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha384GetKlass" title="xmlSecOpenSSLTransformEcdsaSha384GetKlass ()">xmlSecOpenSSLTransformEcdsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha384Id" title="xmlSecOpenSSLTransformEcdsaSha384Id">xmlSecOpenSSLTransformEcdsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha512GetKlass" title="xmlSecOpenSSLTransformEcdsaSha512GetKlass ()">xmlSecOpenSSLTransformEcdsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha512Id" title="xmlSecOpenSSLTransformEcdsaSha512Id">xmlSecOpenSSLTransformEcdsaSha512Id</a></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGost2001GostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGost2001GostR3411-94Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-2012-512Id</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecOpenSSLTransformGostR3411-94Id</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacMd5GetKlass" title="xmlSecOpenSSLTransformHmacMd5GetKlass ()">xmlSecOpenSSLTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacMd5Id" title="xmlSecOpenSSLTransformHmacMd5Id">xmlSecOpenSSLTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacRipemd160GetKlass" title="xmlSecOpenSSLTransformHmacRipemd160GetKlass ()">xmlSecOpenSSLTransformHmacRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacRipemd160Id" title="xmlSecOpenSSLTransformHmacRipemd160Id">xmlSecOpenSSLTransformHmacRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha1GetKlass" title="xmlSecOpenSSLTransformHmacSha1GetKlass ()">xmlSecOpenSSLTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha1Id" title="xmlSecOpenSSLTransformHmacSha1Id">xmlSecOpenSSLTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha224GetKlass" title="xmlSecOpenSSLTransformHmacSha224GetKlass ()">xmlSecOpenSSLTransformHmacSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha224Id" title="xmlSecOpenSSLTransformHmacSha224Id">xmlSecOpenSSLTransformHmacSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha256GetKlass" title="xmlSecOpenSSLTransformHmacSha256GetKlass ()">xmlSecOpenSSLTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha256Id" title="xmlSecOpenSSLTransformHmacSha256Id">xmlSecOpenSSLTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha384GetKlass" title="xmlSecOpenSSLTransformHmacSha384GetKlass ()">xmlSecOpenSSLTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha384Id" title="xmlSecOpenSSLTransformHmacSha384Id">xmlSecOpenSSLTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha512GetKlass" title="xmlSecOpenSSLTransformHmacSha512GetKlass ()">xmlSecOpenSSLTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha512Id" title="xmlSecOpenSSLTransformHmacSha512Id">xmlSecOpenSSLTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes128GetKlass" title="xmlSecOpenSSLTransformKWAes128GetKlass ()">xmlSecOpenSSLTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes128Id" title="xmlSecOpenSSLTransformKWAes128Id">xmlSecOpenSSLTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes192GetKlass" title="xmlSecOpenSSLTransformKWAes192GetKlass ()">xmlSecOpenSSLTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes192Id" title="xmlSecOpenSSLTransformKWAes192Id">xmlSecOpenSSLTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes256GetKlass" title="xmlSecOpenSSLTransformKWAes256GetKlass ()">xmlSecOpenSSLTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes256Id" title="xmlSecOpenSSLTransformKWAes256Id">xmlSecOpenSSLTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWDes3GetKlass" title="xmlSecOpenSSLTransformKWDes3GetKlass ()">xmlSecOpenSSLTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWDes3Id" title="xmlSecOpenSSLTransformKWDes3Id">xmlSecOpenSSLTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformMd5GetKlass" title="xmlSecOpenSSLTransformMd5GetKlass ()">xmlSecOpenSSLTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformMd5Id" title="xmlSecOpenSSLTransformMd5Id">xmlSecOpenSSLTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRipemd160GetKlass" title="xmlSecOpenSSLTransformRipemd160GetKlass ()">xmlSecOpenSSLTransformRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRipemd160Id" title="xmlSecOpenSSLTransformRipemd160Id">xmlSecOpenSSLTransformRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaMd5GetKlass" title="xmlSecOpenSSLTransformRsaMd5GetKlass ()">xmlSecOpenSSLTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaMd5Id" title="xmlSecOpenSSLTransformRsaMd5Id">xmlSecOpenSSLTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaOaepGetKlass" title="xmlSecOpenSSLTransformRsaOaepGetKlass ()">xmlSecOpenSSLTransformRsaOaepGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaOaepId" title="xmlSecOpenSSLTransformRsaOaepId">xmlSecOpenSSLTransformRsaOaepId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaPkcs1GetKlass" title="xmlSecOpenSSLTransformRsaPkcs1GetKlass ()">xmlSecOpenSSLTransformRsaPkcs1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaPkcs1Id" title="xmlSecOpenSSLTransformRsaPkcs1Id">xmlSecOpenSSLTransformRsaPkcs1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaRipemd160GetKlass" title="xmlSecOpenSSLTransformRsaRipemd160GetKlass ()">xmlSecOpenSSLTransformRsaRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaRipemd160Id" title="xmlSecOpenSSLTransformRsaRipemd160Id">xmlSecOpenSSLTransformRsaRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha1GetKlass" title="xmlSecOpenSSLTransformRsaSha1GetKlass ()">xmlSecOpenSSLTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha1Id" title="xmlSecOpenSSLTransformRsaSha1Id">xmlSecOpenSSLTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha224GetKlass" title="xmlSecOpenSSLTransformRsaSha224GetKlass ()">xmlSecOpenSSLTransformRsaSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha224Id" title="xmlSecOpenSSLTransformRsaSha224Id">xmlSecOpenSSLTransformRsaSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha256GetKlass" title="xmlSecOpenSSLTransformRsaSha256GetKlass ()">xmlSecOpenSSLTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha256Id" title="xmlSecOpenSSLTransformRsaSha256Id">xmlSecOpenSSLTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha384GetKlass" title="xmlSecOpenSSLTransformRsaSha384GetKlass ()">xmlSecOpenSSLTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha384Id" title="xmlSecOpenSSLTransformRsaSha384Id">xmlSecOpenSSLTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha512GetKlass" title="xmlSecOpenSSLTransformRsaSha512GetKlass ()">xmlSecOpenSSLTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha512Id" title="xmlSecOpenSSLTransformRsaSha512Id">xmlSecOpenSSLTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha1GetKlass" title="xmlSecOpenSSLTransformSha1GetKlass ()">xmlSecOpenSSLTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha1Id" title="xmlSecOpenSSLTransformSha1Id">xmlSecOpenSSLTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha224GetKlass" title="xmlSecOpenSSLTransformSha224GetKlass ()">xmlSecOpenSSLTransformSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha224Id" title="xmlSecOpenSSLTransformSha224Id">xmlSecOpenSSLTransformSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha256GetKlass" title="xmlSecOpenSSLTransformSha256GetKlass ()">xmlSecOpenSSLTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha256Id" title="xmlSecOpenSSLTransformSha256Id">xmlSecOpenSSLTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha384GetKlass" title="xmlSecOpenSSLTransformSha384GetKlass ()">xmlSecOpenSSLTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha384Id" title="xmlSecOpenSSLTransformSha384Id">xmlSecOpenSSLTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha512GetKlass" title="xmlSecOpenSSLTransformSha512GetKlass ()">xmlSecOpenSSLTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha512Id" title="xmlSecOpenSSLTransformSha512Id">xmlSecOpenSSLTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509CertGetKey" title="xmlSecOpenSSLX509CertGetKey ()">xmlSecOpenSSLX509CertGetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAddCertsFile" title="xmlSecOpenSSLX509StoreAddCertsFile ()">xmlSecOpenSSLX509StoreAddCertsFile</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAddCertsPath" title="xmlSecOpenSSLX509StoreAddCertsPath ()">xmlSecOpenSSLX509StoreAddCertsPath</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAdoptCert" title="xmlSecOpenSSLX509StoreAdoptCert ()">xmlSecOpenSSLX509StoreAdoptCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAdoptCrl" title="xmlSecOpenSSLX509StoreAdoptCrl ()">xmlSecOpenSSLX509StoreAdoptCrl</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreFindCert" title="xmlSecOpenSSLX509StoreFindCert ()">xmlSecOpenSSLX509StoreFindCert</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreGetKlass" title="xmlSecOpenSSLX509StoreGetKlass ()">xmlSecOpenSSLX509StoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreId" title="xmlSecOpenSSLX509StoreId">xmlSecOpenSSLX509StoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreVerify" title="xmlSecOpenSSLX509StoreVerify ()">xmlSecOpenSSLX509StoreVerify</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-parser.html#xmlSecParseFile" title="xmlSecParseFile ()">xmlSecParseFile</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-parser.html#xmlSecParseMemoryExt" title="xmlSecParseMemoryExt ()">xmlSecParseMemoryExt</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-parser.html#xmlSecParseMemory" title="xmlSecParseMemory ()">xmlSecParseMemory</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecPrintXmlString" title="xmlSecPrintXmlString ()">xmlSecPrintXmlString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDebugDumpItemMethod" title="xmlSecPtrDebugDumpItemMethod ()">xmlSecPtrDebugDumpItemMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDestroyItemMethod" title="xmlSecPtrDestroyItemMethod ()">xmlSecPtrDestroyItemMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDuplicateItemMethod" title="xmlSecPtrDuplicateItemMethod ()">xmlSecPtrDuplicateItemMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListAdd" title="xmlSecPtrListAdd ()">xmlSecPtrListAdd</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListCheckId" title="xmlSecPtrListCheckId()">xmlSecPtrListCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListCopy" title="xmlSecPtrListCopy ()">xmlSecPtrListCopy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListCreate" title="xmlSecPtrListCreate ()">xmlSecPtrListCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListDebugDump" title="xmlSecPtrListDebugDump ()">xmlSecPtrListDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListDebugXmlDump" title="xmlSecPtrListDebugXmlDump ()">xmlSecPtrListDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListDestroy" title="xmlSecPtrListDestroy ()">xmlSecPtrListDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListDuplicate" title="xmlSecPtrListDuplicate ()">xmlSecPtrListDuplicate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListEmpty" title="xmlSecPtrListEmpty ()">xmlSecPtrListEmpty</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListFinalize" title="xmlSecPtrListFinalize ()">xmlSecPtrListFinalize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListGetItem" title="xmlSecPtrListGetItem ()">xmlSecPtrListGetItem</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListGetName" title="xmlSecPtrListGetName()">xmlSecPtrListGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListGetSize" title="xmlSecPtrListGetSize ()">xmlSecPtrListGetSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListIdUnknown" title="xmlSecPtrListIdUnknown">xmlSecPtrListIdUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListInitialize" title="xmlSecPtrListInitialize ()">xmlSecPtrListInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListIsValid" title="xmlSecPtrListIsValid()">xmlSecPtrListIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListKlassGetName" title="xmlSecPtrListKlassGetName()">xmlSecPtrListKlassGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListKlass" title="struct xmlSecPtrListKlass">xmlSecPtrListKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList">xmlSecPtrList</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListRemoveAndReturn" title="xmlSecPtrListRemoveAndReturn ()">xmlSecPtrListRemoveAndReturn</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListRemove" title="xmlSecPtrListRemove ()">xmlSecPtrListRemove</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListSetDefaultAllocMode" title="xmlSecPtrListSetDefaultAllocMode ()">xmlSecPtrListSetDefaultAllocMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecPtrListSet" title="xmlSecPtrListSet ()">xmlSecPtrListSet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr">xmlSecPtr</a></p></li>
+<li class="listitem"><p><font>XMLSEC-PTR-TO-FUNC-IMPL</font></p></li>
+<li class="listitem"><p><font>XMLSEC-PTR-TO-FUNC</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskDebugDump" title="xmlSecQName2BitMaskDebugDump ()">xmlSecQName2BitMaskDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskDebugXmlDump" title="xmlSecQName2BitMaskDebugXmlDump ()">xmlSecQName2BitMaskDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetBitMaskFromString" title="xmlSecQName2BitMaskGetBitMaskFromString ()">xmlSecQName2BitMaskGetBitMaskFromString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetBitMask" title="xmlSecQName2BitMaskGetBitMask ()">xmlSecQName2BitMaskGetBitMask</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetInfo" title="xmlSecQName2BitMaskGetInfo ()">xmlSecQName2BitMaskGetInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetStringFromBitMask" title="xmlSecQName2BitMaskGetStringFromBitMask ()">xmlSecQName2BitMaskGetStringFromBitMask</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr">xmlSecQName2BitMaskInfoConstPtr</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfo" title="struct xmlSecQName2BitMaskInfo">xmlSecQName2BitMaskInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskNodesRead" title="xmlSecQName2BitMaskNodesRead ()">xmlSecQName2BitMaskNodesRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskNodesWrite" title="xmlSecQName2BitMaskNodesWrite ()">xmlSecQName2BitMaskNodesWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerAttributeRead" title="xmlSecQName2IntegerAttributeRead ()">xmlSecQName2IntegerAttributeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerAttributeWrite" title="xmlSecQName2IntegerAttributeWrite ()">xmlSecQName2IntegerAttributeWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerDebugDump" title="xmlSecQName2IntegerDebugDump ()">xmlSecQName2IntegerDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerDebugXmlDump" title="xmlSecQName2IntegerDebugXmlDump ()">xmlSecQName2IntegerDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetInfo" title="xmlSecQName2IntegerGetInfo ()">xmlSecQName2IntegerGetInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetIntegerFromString" title="xmlSecQName2IntegerGetIntegerFromString ()">xmlSecQName2IntegerGetIntegerFromString</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetInteger" title="xmlSecQName2IntegerGetInteger ()">xmlSecQName2IntegerGetInteger</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetStringFromInteger" title="xmlSecQName2IntegerGetStringFromInteger ()">xmlSecQName2IntegerGetStringFromInteger</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr">xmlSecQName2IntegerInfoConstPtr</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfo" title="struct xmlSecQName2IntegerInfo">xmlSecQName2IntegerInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerNodeRead" title="xmlSecQName2IntegerNodeRead ()">xmlSecQName2IntegerNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerNodeWrite" title="xmlSecQName2IntegerNodeWrite ()">xmlSecQName2IntegerNodeWrite</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceContentAndReturn" title="xmlSecReplaceContentAndReturn ()">xmlSecReplaceContentAndReturn</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceContent" title="xmlSecReplaceContent ()">xmlSecReplaceContent</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeAndReturn" title="xmlSecReplaceNodeAndReturn ()">xmlSecReplaceNodeAndReturn</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeBufferAndReturn" title="xmlSecReplaceNodeBufferAndReturn ()">xmlSecReplaceNodeBufferAndReturn</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeBuffer" title="xmlSecReplaceNodeBuffer ()">xmlSecReplaceNodeBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNode" title="xmlSecReplaceNode ()">xmlSecReplaceNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSetExternalEntityLoader" title="xmlSecSetExternalEntityLoader ()">xmlSecSetExternalEntityLoader</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()">xmlSecShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreAdoptKey" title="xmlSecSimpleKeysStoreAdoptKey ()">xmlSecSimpleKeysStoreAdoptKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreGetKeys" title="xmlSecSimpleKeysStoreGetKeys ()">xmlSecSimpleKeysStoreGetKeys</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreGetKlass" title="xmlSecSimpleKeysStoreGetKlass ()">xmlSecSimpleKeysStoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId">xmlSecSimpleKeysStoreId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreLoad" title="xmlSecSimpleKeysStoreLoad ()">xmlSecSimpleKeysStoreLoad</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreSave" title="xmlSecSimpleKeysStoreSave ()">xmlSecSimpleKeysStoreSave</a></p></li>
+<li class="listitem"><p><font>XMLSEC-SIZE-BAD-CAST</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize">xmlSecSize</a></p></li>
+<li class="listitem"><p><font>xmlSecSoap12FaultCode</font></p></li>
+<li class="listitem"><p><font>XMLSEC-STACK-OF-X509-CRL</font></p></li>
+<li class="listitem"><p><font>XMLSEC-STACK-OF-X509</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecStringListGetKlass" title="xmlSecStringListGetKlass ()">xmlSecStringListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-list.html#xmlSecStringListId" title="xmlSecStringListId">xmlSecStringListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplCipherReferenceAddTransform" title="xmlSecTmplCipherReferenceAddTransform ()">xmlSecTmplCipherReferenceAddTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataAddEncProperty" title="xmlSecTmplEncDataAddEncProperty ()">xmlSecTmplEncDataAddEncProperty</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataCreate" title="xmlSecTmplEncDataCreate ()">xmlSecTmplEncDataCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureCipherReference" title="xmlSecTmplEncDataEnsureCipherReference ()">xmlSecTmplEncDataEnsureCipherReference</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureCipherValue" title="xmlSecTmplEncDataEnsureCipherValue ()">xmlSecTmplEncDataEnsureCipherValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureEncProperties" title="xmlSecTmplEncDataEnsureEncProperties ()">xmlSecTmplEncDataEnsureEncProperties</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureKeyInfo" title="xmlSecTmplEncDataEnsureKeyInfo ()">xmlSecTmplEncDataEnsureKeyInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataGetEncMethodNode" title="xmlSecTmplEncDataGetEncMethodNode ()">xmlSecTmplEncDataGetEncMethodNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddEncryptedKey" title="xmlSecTmplKeyInfoAddEncryptedKey ()">xmlSecTmplKeyInfoAddEncryptedKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddKeyName" title="xmlSecTmplKeyInfoAddKeyName ()">xmlSecTmplKeyInfoAddKeyName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddKeyValue" title="xmlSecTmplKeyInfoAddKeyValue ()">xmlSecTmplKeyInfoAddKeyValue</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddRetrievalMethod" title="xmlSecTmplKeyInfoAddRetrievalMethod ()">xmlSecTmplKeyInfoAddRetrievalMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddX509Data" title="xmlSecTmplKeyInfoAddX509Data ()">xmlSecTmplKeyInfoAddX509Data</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplManifestAddReference" title="xmlSecTmplManifestAddReference ()">xmlSecTmplManifestAddReference</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplObjectAddManifest" title="xmlSecTmplObjectAddManifest ()">xmlSecTmplObjectAddManifest</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplObjectAddSignProperties" title="xmlSecTmplObjectAddSignProperties ()">xmlSecTmplObjectAddSignProperties</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceAddTransform" title="xmlSecTmplReferenceAddTransform ()">xmlSecTmplReferenceAddTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceListAddDataReference" title="xmlSecTmplReferenceListAddDataReference ()">xmlSecTmplReferenceListAddDataReference</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceListAddKeyReference" title="xmlSecTmplReferenceListAddKeyReference ()">xmlSecTmplReferenceListAddKeyReference</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplRetrievalMethodAddTransform" title="xmlSecTmplRetrievalMethodAddTransform ()">xmlSecTmplRetrievalMethodAddTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureAddObject" title="xmlSecTmplSignatureAddObject ()">xmlSecTmplSignatureAddObject</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureAddReference" title="xmlSecTmplSignatureAddReference ()">xmlSecTmplSignatureAddReference</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureCreate" title="xmlSecTmplSignatureCreate ()">xmlSecTmplSignatureCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureCreateNsPref" title="xmlSecTmplSignatureCreateNsPref ()">xmlSecTmplSignatureCreateNsPref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureEnsureKeyInfo" title="xmlSecTmplSignatureEnsureKeyInfo ()">xmlSecTmplSignatureEnsureKeyInfo</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureGetC14NMethodNode" title="xmlSecTmplSignatureGetC14NMethodNode ()">xmlSecTmplSignatureGetC14NMethodNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureGetSignMethodNode" title="xmlSecTmplSignatureGetSignMethodNode ()">xmlSecTmplSignatureGetSignMethodNode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddC14NInclNamespaces" title="xmlSecTmplTransformAddC14NInclNamespaces ()">xmlSecTmplTransformAddC14NInclNamespaces</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddHmacOutputLength" title="xmlSecTmplTransformAddHmacOutputLength ()">xmlSecTmplTransformAddHmacOutputLength</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddRsaOaepParam" title="xmlSecTmplTransformAddRsaOaepParam ()">xmlSecTmplTransformAddRsaOaepParam</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPath2" title="xmlSecTmplTransformAddXPath2 ()">xmlSecTmplTransformAddXPath2</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPath" title="xmlSecTmplTransformAddXPath ()">xmlSecTmplTransformAddXPath</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPointer" title="xmlSecTmplTransformAddXPointer ()">xmlSecTmplTransformAddXPointer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXsltStylesheet" title="xmlSecTmplTransformAddXsltStylesheet ()">xmlSecTmplTransformAddXsltStylesheet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddCertificate" title="xmlSecTmplX509DataAddCertificate ()">xmlSecTmplX509DataAddCertificate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddCRL" title="xmlSecTmplX509DataAddCRL ()">xmlSecTmplX509DataAddCRL</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddIssuerSerial" title="xmlSecTmplX509DataAddIssuerSerial ()">xmlSecTmplX509DataAddIssuerSerial</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddSKI" title="xmlSecTmplX509DataAddSKI ()">xmlSecTmplX509DataAddSKI</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddSubjectName" title="xmlSecTmplX509DataAddSubjectName ()">xmlSecTmplX509DataAddSubjectName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509IssuerSerialAddIssuerName" title="xmlSecTmplX509IssuerSerialAddIssuerName ()">xmlSecTmplX509IssuerSerialAddIssuerName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-templates.html#xmlSecTmplX509IssuerSerialAddSerialNumber" title="xmlSecTmplX509IssuerSerialAddSerialNumber ()">xmlSecTmplX509IssuerSerialAddSerialNumber</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes128CbcGetKlass" title="xmlSecTransformAes128CbcGetKlass ()">xmlSecTransformAes128CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes128CbcId" title="xmlSecTransformAes128CbcId">xmlSecTransformAes128CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes192CbcGetKlass" title="xmlSecTransformAes192CbcGetKlass ()">xmlSecTransformAes192CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes192CbcId" title="xmlSecTransformAes192CbcId">xmlSecTransformAes192CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes256CbcGetKlass" title="xmlSecTransformAes256CbcGetKlass ()">xmlSecTransformAes256CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformAes256CbcId" title="xmlSecTransformAes256CbcId">xmlSecTransformAes256CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64GetKlass" title="xmlSecTransformBase64GetKlass ()">xmlSecTransformBase64GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64Id" title="xmlSecTransformBase64Id">xmlSecTransformBase64Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64SetLineSize" title="xmlSecTransformBase64SetLineSize ()">xmlSecTransformBase64SetLineSize</a></p></li>
+<li class="listitem"><p><font>XMLSEC-TRANSFORM-BINARY-CHUNK</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCheckId" title="xmlSecTransformCheckId()">xmlSecTransformCheckId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCheckSize" title="xmlSecTransformCheckSize()">xmlSecTransformCheckSize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()">xmlSecTransformConnect</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCreateInputBuffer" title="xmlSecTransformCreateInputBuffer ()">xmlSecTransformCreateInputBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCreate" title="xmlSecTransformCreate ()">xmlSecTransformCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCreateOutputBuffer" title="xmlSecTransformCreateOutputBuffer ()">xmlSecTransformCreateOutputBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxAppend" title="xmlSecTransformCtxAppend ()">xmlSecTransformCtxAppend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxBinaryExecute" title="xmlSecTransformCtxBinaryExecute ()">xmlSecTransformCtxBinaryExecute</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCopyUserPref" title="xmlSecTransformCtxCopyUserPref ()">xmlSecTransformCtxCopyUserPref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreateAndAppend" title="xmlSecTransformCtxCreateAndAppend ()">xmlSecTransformCtxCreateAndAppend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreateAndPrepend" title="xmlSecTransformCtxCreateAndPrepend ()">xmlSecTransformCtxCreateAndPrepend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreate" title="xmlSecTransformCtxCreate ()">xmlSecTransformCtxCreate</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDebugDump" title="xmlSecTransformCtxDebugDump ()">xmlSecTransformCtxDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDebugXmlDump" title="xmlSecTransformCtxDebugXmlDump ()">xmlSecTransformCtxDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDestroy" title="xmlSecTransformCtxDestroy ()">xmlSecTransformCtxDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxExecute" title="xmlSecTransformCtxExecute ()">xmlSecTransformCtxExecute</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxFinalize" title="xmlSecTransformCtxFinalize ()">xmlSecTransformCtxFinalize</a></p></li>
+<li class="listitem"><p><font>XMLSEC-TRANSFORMCTX-FLAGS-USE-VISA3D-HACK</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxInitialize" title="xmlSecTransformCtxInitialize ()">xmlSecTransformCtxInitialize</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx">xmlSecTransformCtx</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxNodeRead" title="xmlSecTransformCtxNodeRead ()">xmlSecTransformCtxNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxNodesListRead" title="xmlSecTransformCtxNodesListRead ()">xmlSecTransformCtxNodesListRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPreExecuteCallback" title="xmlSecTransformCtxPreExecuteCallback ()">xmlSecTransformCtxPreExecuteCallback</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPrepare" title="xmlSecTransformCtxPrepare ()">xmlSecTransformCtxPrepare</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPrepend" title="xmlSecTransformCtxPrepend ()">xmlSecTransformCtxPrepend</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxReset" title="xmlSecTransformCtxReset ()">xmlSecTransformCtxReset</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxSetUri" title="xmlSecTransformCtxSetUri ()">xmlSecTransformCtxSetUri</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxUriExecute" title="xmlSecTransformCtxUriExecute ()">xmlSecTransformCtxUriExecute</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxXmlExecute" title="xmlSecTransformCtxXmlExecute ()">xmlSecTransformCtxXmlExecute</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeBin" title="xmlSecTransformDataTypeBin">xmlSecTransformDataTypeBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType">xmlSecTransformDataType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeUnknown" title="xmlSecTransformDataTypeUnknown">xmlSecTransformDataTypeUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeXml" title="xmlSecTransformDataTypeXml">xmlSecTransformDataTypeXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDebugDump" title="xmlSecTransformDebugDump ()">xmlSecTransformDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDebugXmlDump" title="xmlSecTransformDebugXmlDump ()">xmlSecTransformDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultGetDataType" title="xmlSecTransformDefaultGetDataType ()">xmlSecTransformDefaultGetDataType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPopBin" title="xmlSecTransformDefaultPopBin ()">xmlSecTransformDefaultPopBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPopXml" title="xmlSecTransformDefaultPopXml ()">xmlSecTransformDefaultPopXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPushBin" title="xmlSecTransformDefaultPushBin ()">xmlSecTransformDefaultPushBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPushXml" title="xmlSecTransformDefaultPushXml ()">xmlSecTransformDefaultPushXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDes3CbcGetKlass" title="xmlSecTransformDes3CbcGetKlass ()">xmlSecTransformDes3CbcGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDes3CbcId" title="xmlSecTransformDes3CbcId">xmlSecTransformDes3CbcId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformDestroy" title="xmlSecTransformDestroy ()">xmlSecTransformDestroy</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha1GetKlass" title="xmlSecTransformDsaSha1GetKlass ()">xmlSecTransformDsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha1Id" title="xmlSecTransformDsaSha1Id">xmlSecTransformDsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha256GetKlass" title="xmlSecTransformDsaSha256GetKlass ()">xmlSecTransformDsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformDsaSha256Id" title="xmlSecTransformDsaSha256Id">xmlSecTransformDsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha1GetKlass" title="xmlSecTransformEcdsaSha1GetKlass ()">xmlSecTransformEcdsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha1Id" title="xmlSecTransformEcdsaSha1Id">xmlSecTransformEcdsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha224GetKlass" title="xmlSecTransformEcdsaSha224GetKlass ()">xmlSecTransformEcdsaSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha224Id" title="xmlSecTransformEcdsaSha224Id">xmlSecTransformEcdsaSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha256GetKlass" title="xmlSecTransformEcdsaSha256GetKlass ()">xmlSecTransformEcdsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha256Id" title="xmlSecTransformEcdsaSha256Id">xmlSecTransformEcdsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha384GetKlass" title="xmlSecTransformEcdsaSha384GetKlass ()">xmlSecTransformEcdsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha384Id" title="xmlSecTransformEcdsaSha384Id">xmlSecTransformEcdsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha512GetKlass" title="xmlSecTransformEcdsaSha512GetKlass ()">xmlSecTransformEcdsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformEcdsaSha512Id" title="xmlSecTransformEcdsaSha512Id">xmlSecTransformEcdsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformEnvelopedGetKlass" title="xmlSecTransformEnvelopedGetKlass ()">xmlSecTransformEnvelopedGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformEnvelopedId" title="xmlSecTransformEnvelopedId">xmlSecTransformEnvelopedId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NGetKlass" title="xmlSecTransformExclC14NGetKlass ()">xmlSecTransformExclC14NGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NId" title="xmlSecTransformExclC14NId">xmlSecTransformExclC14NId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NWithCommentsGetKlass" title="xmlSecTransformExclC14NWithCommentsGetKlass ()">xmlSecTransformExclC14NWithCommentsGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NWithCommentsId" title="xmlSecTransformExclC14NWithCommentsId">xmlSecTransformExclC14NWithCommentsId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">xmlSecTransformExecuteMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExecute" title="xmlSecTransformExecute ()">xmlSecTransformExecute</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformFinalizeMethod" title="xmlSecTransformFinalizeMethod ()">xmlSecTransformFinalizeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformGetDataTypeMethod" title="xmlSecTransformGetDataTypeMethod ()">xmlSecTransformGetDataTypeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformGetDataType" title="xmlSecTransformGetDataType ()">xmlSecTransformGetDataType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformGetName" title="xmlSecTransformGetName()">xmlSecTransformGetName</a></p></li>
+<li class="listitem"><p><font>xmlSecTransformGost2001GostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGost2001GostR3411-94Id</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3410-2012GostR3411-2012-512Id</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-2012-256GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-2012-256Id</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-2012-512GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-2012-512Id</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-94GetKlass</font></p></li>
+<li class="listitem"><p><font>xmlSecTransformGostR3411-94Id</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacMd5GetKlass" title="xmlSecTransformHmacMd5GetKlass ()">xmlSecTransformHmacMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacMd5Id" title="xmlSecTransformHmacMd5Id">xmlSecTransformHmacMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacRipemd160GetKlass" title="xmlSecTransformHmacRipemd160GetKlass ()">xmlSecTransformHmacRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacRipemd160Id" title="xmlSecTransformHmacRipemd160Id">xmlSecTransformHmacRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha1GetKlass" title="xmlSecTransformHmacSha1GetKlass ()">xmlSecTransformHmacSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha1Id" title="xmlSecTransformHmacSha1Id">xmlSecTransformHmacSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha224GetKlass" title="xmlSecTransformHmacSha224GetKlass ()">xmlSecTransformHmacSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha224Id" title="xmlSecTransformHmacSha224Id">xmlSecTransformHmacSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha256GetKlass" title="xmlSecTransformHmacSha256GetKlass ()">xmlSecTransformHmacSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha256Id" title="xmlSecTransformHmacSha256Id">xmlSecTransformHmacSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha384GetKlass" title="xmlSecTransformHmacSha384GetKlass ()">xmlSecTransformHmacSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha384Id" title="xmlSecTransformHmacSha384Id">xmlSecTransformHmacSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha512GetKlass" title="xmlSecTransformHmacSha512GetKlass ()">xmlSecTransformHmacSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformHmacSha512Id" title="xmlSecTransformHmacSha512Id">xmlSecTransformHmacSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListDebugDump" title="xmlSecTransformIdListDebugDump ()">xmlSecTransformIdListDebugDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListDebugXmlDump" title="xmlSecTransformIdListDebugXmlDump ()">xmlSecTransformIdListDebugXmlDump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFindByHref" title="xmlSecTransformIdListFindByHref ()">xmlSecTransformIdListFindByHref</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFindByName" title="xmlSecTransformIdListFindByName ()">xmlSecTransformIdListFindByName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFind" title="xmlSecTransformIdListFind ()">xmlSecTransformIdListFind</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListGetKlass" title="xmlSecTransformIdListGetKlass ()">xmlSecTransformIdListGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListId" title="xmlSecTransformIdListId">xmlSecTransformIdListId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsGet" title="xmlSecTransformIdsGet ()">xmlSecTransformIdsGet</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsInit" title="xmlSecTransformIdsInit ()">xmlSecTransformIdsInit</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsRegisterDefault" title="xmlSecTransformIdsRegisterDefault ()">xmlSecTransformIdsRegisterDefault</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsRegister" title="xmlSecTransformIdsRegister ()">xmlSecTransformIdsRegister</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsShutdown" title="xmlSecTransformIdsShutdown ()">xmlSecTransformIdsShutdown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdUnknown" title="xmlSecTransformIdUnknown">xmlSecTransformIdUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11GetKlass" title="xmlSecTransformInclC14N11GetKlass ()">xmlSecTransformInclC14N11GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11Id" title="xmlSecTransformInclC14N11Id">xmlSecTransformInclC14N11Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11WithCommentsGetKlass" title="xmlSecTransformInclC14N11WithCommentsGetKlass ()">xmlSecTransformInclC14N11WithCommentsGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11WithCommentsId" title="xmlSecTransformInclC14N11WithCommentsId">xmlSecTransformInclC14N11WithCommentsId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NGetKlass" title="xmlSecTransformInclC14NGetKlass ()">xmlSecTransformInclC14NGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NId" title="xmlSecTransformInclC14NId">xmlSecTransformInclC14NId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NWithCommentsGetKlass" title="xmlSecTransformInclC14NWithCommentsGetKlass ()">xmlSecTransformInclC14NWithCommentsGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NWithCommentsId" title="xmlSecTransformInclC14NWithCommentsId">xmlSecTransformInclC14NWithCommentsId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInitializeMethod" title="xmlSecTransformInitializeMethod ()">xmlSecTransformInitializeMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecTransformInputURIClose" title="xmlSecTransformInputURIClose ()">xmlSecTransformInputURIClose</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecTransformInputURIGetKlass" title="xmlSecTransformInputURIGetKlass ()">xmlSecTransformInputURIGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecTransformInputURIId" title="xmlSecTransformInputURIId">xmlSecTransformInputURIId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-io.html#xmlSecTransformInputURIOpen" title="xmlSecTransformInputURIOpen ()">xmlSecTransformInputURIOpen</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformIsValid" title="xmlSecTransformIsValid()">xmlSecTransformIsValid</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformKlassGetName" title="xmlSecTransformKlassGetName()">xmlSecTransformKlassGetName</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformKlass" title="struct xmlSecTransformKlass">xmlSecTransformKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes128GetKlass" title="xmlSecTransformKWAes128GetKlass ()">xmlSecTransformKWAes128GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes128Id" title="xmlSecTransformKWAes128Id">xmlSecTransformKWAes128Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes192GetKlass" title="xmlSecTransformKWAes192GetKlass ()">xmlSecTransformKWAes192GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes192Id" title="xmlSecTransformKWAes192Id">xmlSecTransformKWAes192Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes256GetKlass" title="xmlSecTransformKWAes256GetKlass ()">xmlSecTransformKWAes256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWAes256Id" title="xmlSecTransformKWAes256Id">xmlSecTransformKWAes256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWDes3GetKlass" title="xmlSecTransformKWDes3GetKlass ()">xmlSecTransformKWDes3GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformKWDes3Id" title="xmlSecTransformKWDes3Id">xmlSecTransformKWDes3Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformMd5GetKlass" title="xmlSecTransformMd5GetKlass ()">xmlSecTransformMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformMd5Id" title="xmlSecTransformMd5Id">xmlSecTransformMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufGetBuffer" title="xmlSecTransformMemBufGetBuffer ()">xmlSecTransformMemBufGetBuffer</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufGetKlass" title="xmlSecTransformMemBufGetKlass ()">xmlSecTransformMemBufGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufId" title="xmlSecTransformMemBufId">xmlSecTransformMemBufId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformMode" title="enum xmlSecTransformMode">xmlSecTransformMode</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform">xmlSecTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeReadMethod" title="xmlSecTransformNodeReadMethod ()">xmlSecTransformNodeReadMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeRead" title="xmlSecTransformNodeRead ()">xmlSecTransformNodeRead</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeWriteMethod" title="xmlSecTransformNodeWriteMethod ()">xmlSecTransformNodeWriteMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation">xmlSecTransformOperation</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBinMethod" title="xmlSecTransformPopBinMethod ()">xmlSecTransformPopBinMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBin" title="xmlSecTransformPopBin ()">xmlSecTransformPopBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXmlMethod" title="xmlSecTransformPopXmlMethod ()">xmlSecTransformPopXmlMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXml" title="xmlSecTransformPopXml ()">xmlSecTransformPopXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPump" title="xmlSecTransformPump ()">xmlSecTransformPump</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBinMethod" title="xmlSecTransformPushBinMethod ()">xmlSecTransformPushBinMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBin" title="xmlSecTransformPushBin ()">xmlSecTransformPushBin</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXmlMethod" title="xmlSecTransformPushXmlMethod ()">xmlSecTransformPushXmlMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXml" title="xmlSecTransformPushXml ()">xmlSecTransformPushXml</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformRelationshipGetKlass" title="xmlSecTransformRelationshipGetKlass ()">xmlSecTransformRelationshipGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformRelationshipId" title="xmlSecTransformRelationshipId">xmlSecTransformRelationshipId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformRemove" title="xmlSecTransformRemove ()">xmlSecTransformRemove</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformRemoveXmlTagsC14NGetKlass" title="xmlSecTransformRemoveXmlTagsC14NGetKlass ()">xmlSecTransformRemoveXmlTagsC14NGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformRemoveXmlTagsC14NId" title="xmlSecTransformRemoveXmlTagsC14NId">xmlSecTransformRemoveXmlTagsC14NId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRipemd160GetKlass" title="xmlSecTransformRipemd160GetKlass ()">xmlSecTransformRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRipemd160Id" title="xmlSecTransformRipemd160Id">xmlSecTransformRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaMd5GetKlass" title="xmlSecTransformRsaMd5GetKlass ()">xmlSecTransformRsaMd5GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaMd5Id" title="xmlSecTransformRsaMd5Id">xmlSecTransformRsaMd5Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaOaepGetKlass" title="xmlSecTransformRsaOaepGetKlass ()">xmlSecTransformRsaOaepGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaOaepId" title="xmlSecTransformRsaOaepId">xmlSecTransformRsaOaepId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaPkcs1GetKlass" title="xmlSecTransformRsaPkcs1GetKlass ()">xmlSecTransformRsaPkcs1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaPkcs1Id" title="xmlSecTransformRsaPkcs1Id">xmlSecTransformRsaPkcs1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaRipemd160GetKlass" title="xmlSecTransformRsaRipemd160GetKlass ()">xmlSecTransformRsaRipemd160GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaRipemd160Id" title="xmlSecTransformRsaRipemd160Id">xmlSecTransformRsaRipemd160Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha1GetKlass" title="xmlSecTransformRsaSha1GetKlass ()">xmlSecTransformRsaSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha1Id" title="xmlSecTransformRsaSha1Id">xmlSecTransformRsaSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha224GetKlass" title="xmlSecTransformRsaSha224GetKlass ()">xmlSecTransformRsaSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha224Id" title="xmlSecTransformRsaSha224Id">xmlSecTransformRsaSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha256GetKlass" title="xmlSecTransformRsaSha256GetKlass ()">xmlSecTransformRsaSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha256Id" title="xmlSecTransformRsaSha256Id">xmlSecTransformRsaSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha384GetKlass" title="xmlSecTransformRsaSha384GetKlass ()">xmlSecTransformRsaSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha384Id" title="xmlSecTransformRsaSha384Id">xmlSecTransformRsaSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha512GetKlass" title="xmlSecTransformRsaSha512GetKlass ()">xmlSecTransformRsaSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformRsaSha512Id" title="xmlSecTransformRsaSha512Id">xmlSecTransformRsaSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyMethod" title="xmlSecTransformSetKeyMethod ()">xmlSecTransformSetKeyMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKey" title="xmlSecTransformSetKey ()">xmlSecTransformSetKey</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyReq" title="xmlSecTransformSetKeyReq ()">xmlSecTransformSetKeyReq</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyRequirementsMethod" title="xmlSecTransformSetKeyRequirementsMethod ()">xmlSecTransformSetKeyRequirementsMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha1GetKlass" title="xmlSecTransformSha1GetKlass ()">xmlSecTransformSha1GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha1Id" title="xmlSecTransformSha1Id">xmlSecTransformSha1Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha224GetKlass" title="xmlSecTransformSha224GetKlass ()">xmlSecTransformSha224GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha224Id" title="xmlSecTransformSha224Id">xmlSecTransformSha224Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha256GetKlass" title="xmlSecTransformSha256GetKlass ()">xmlSecTransformSha256GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha256Id" title="xmlSecTransformSha256Id">xmlSecTransformSha256Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha384GetKlass" title="xmlSecTransformSha384GetKlass ()">xmlSecTransformSha384GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha384Id" title="xmlSecTransformSha384Id">xmlSecTransformSha384Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha512GetKlass" title="xmlSecTransformSha512GetKlass ()">xmlSecTransformSha512GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecTransformSha512Id" title="xmlSecTransformSha512Id">xmlSecTransformSha512Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformStatus" title="enum xmlSecTransformStatus">xmlSecTransformStatus</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeAny" title="xmlSecTransformUriTypeAny">xmlSecTransformUriTypeAny</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeCheck" title="xmlSecTransformUriTypeCheck ()">xmlSecTransformUriTypeCheck</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeEmpty" title="xmlSecTransformUriTypeEmpty">xmlSecTransformUriTypeEmpty</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeLocal" title="xmlSecTransformUriTypeLocal">xmlSecTransformUriTypeLocal</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriType" title="xmlSecTransformUriType">xmlSecTransformUriType</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeNone" title="xmlSecTransformUriTypeNone">xmlSecTransformUriTypeNone</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeRemote" title="xmlSecTransformUriTypeRemote">xmlSecTransformUriTypeRemote</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeSameDocument" title="xmlSecTransformUriTypeSameDocument">xmlSecTransformUriTypeSameDocument</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageAny" title="xmlSecTransformUsageAny">xmlSecTransformUsageAny</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageC14NMethod" title="xmlSecTransformUsageC14NMethod">xmlSecTransformUsageC14NMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageDigestMethod" title="xmlSecTransformUsageDigestMethod">xmlSecTransformUsageDigestMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageDSigTransform" title="xmlSecTransformUsageDSigTransform">xmlSecTransformUsageDSigTransform</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageEncryptionMethod" title="xmlSecTransformUsageEncryptionMethod">xmlSecTransformUsageEncryptionMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage">xmlSecTransformUsage</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageSignatureMethod" title="xmlSecTransformUsageSignatureMethod">xmlSecTransformUsageSignatureMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageUnknown" title="xmlSecTransformUsageUnknown">xmlSecTransformUsageUnknown</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()">xmlSecTransformVerifyMethod</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVerify" title="xmlSecTransformVerify ()">xmlSecTransformVerify</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyNodeContent" title="xmlSecTransformVerifyNodeContent ()">xmlSecTransformVerifyNodeContent</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackGetKlass" title="xmlSecTransformVisa3DHackGetKlass ()">xmlSecTransformVisa3DHackGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackId" title="xmlSecTransformVisa3DHackId">xmlSecTransformVisa3DHackId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackSetID" title="xmlSecTransformVisa3DHackSetID ()">xmlSecTransformVisa3DHackSetID</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-parser.html#xmlSecTransformXmlParserGetKlass" title="xmlSecTransformXmlParserGetKlass ()">xmlSecTransformXmlParserGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-parser.html#xmlSecTransformXmlParserId" title="xmlSecTransformXmlParserId">xmlSecTransformXmlParserId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPath2GetKlass" title="xmlSecTransformXPath2GetKlass ()">xmlSecTransformXPath2GetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPath2Id" title="xmlSecTransformXPath2Id">xmlSecTransformXPath2Id</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPathGetKlass" title="xmlSecTransformXPathGetKlass ()">xmlSecTransformXPathGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPathId" title="xmlSecTransformXPathId">xmlSecTransformXPathId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerGetKlass" title="xmlSecTransformXPointerGetKlass ()">xmlSecTransformXPointerGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerId" title="xmlSecTransformXPointerId">xmlSecTransformXPointerId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerSetExpr" title="xmlSecTransformXPointerSetExpr ()">xmlSecTransformXPointerSetExpr</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltGetKlass" title="xmlSecTransformXsltGetKlass ()">xmlSecTransformXsltGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltId" title="xmlSecTransformXsltId">xmlSecTransformXsltId</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltSetDefaultSecurityPrefs" title="xmlSecTransformXsltSetDefaultSecurityPrefs ()">xmlSecTransformXsltSetDefaultSecurityPrefs</a></p></li>
+<li class="listitem"><p><font>XMLSEC-VERSION-INFO</font></p></li>
+<li class="listitem"><p><font>XMLSEC-VERSION-MAJOR</font></p></li>
+<li class="listitem"><p><font>XMLSEC-VERSION-MINOR</font></p></li>
+<li class="listitem"><p><font>XMLSEC-VERSION</font></p></li>
+<li class="listitem"><p><font>XMLSEC-VERSION-SUBMINOR</font></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-CERTIFICATE-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-CRL-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-DEFAULT</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-x509.html#xmlSecX509DataGetNodeContent" title="xmlSecX509DataGetNodeContent ()">xmlSecX509DataGetNodeContent</a></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-ISSUERSERIAL-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-SKI-NODE</font></p></li>
+<li class="listitem"><p><font>XMLSEC-X509DATA-SUBJECTNAME-NODE</font></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecX509StoreGetKlass" title="xmlSecX509StoreGetKlass ()">xmlSecX509StoreGetKlass</a></p></li>
+<li class="listitem"><p><a class="link" href="xmlsec-app.html#xmlSecX509StoreId" title="xmlSecX509StoreId">xmlSecX509StoreId</a></p></li>
+</ul></div>
+<p>
+    </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-io.html b/docs/api/xmlsec-io.html
index 9782a92..57fb400 100644
--- a/docs/api/xmlsec-io.html
+++ b/docs/api/xmlsec-io.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>io</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="errors" href="xmlsec-errors.html">
-<link rel="NEXT" title="keyinfo" href="xmlsec-keyinfo.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>io: 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-errors.html" title="errors">
+<link rel="next" href="xmlsec-keyinfo.html" title="keyinfo">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,275 +73,290 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-errors.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-io.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-errors.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-keyinfo.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-IO"></a>io</h1>
-<div class="REFNAMEDIV">
-<a name="AEN7144"></a><h2>Name</h2>io -- Input/output support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-IO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7149"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-io"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-io.top_of_page"></a>io</span></h2>
+<p>io — Input/output support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-io.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECIOINIT">xmlSecIOInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecIOInit" title="xmlSecIOInit ()">xmlSecIOInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECIOSHUTDOWN">xmlSecIOShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecIOShutdown" title="xmlSecIOShutdown ()">xmlSecIOShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECIOCLEANUPCALLBACKS">xmlSecIOCleanupCallbacks</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecIOCleanupCallbacks" title="xmlSecIOCleanupCallbacks ()">xmlSecIOCleanupCallbacks</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECIOREGISTERDEFAULTCALLBACKS">xmlSecIORegisterDefaultCallbacks</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecIORegisterDefaultCallbacks" title="xmlSecIORegisterDefaultCallbacks ()">xmlSecIORegisterDefaultCallbacks</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECIOREGISTERCALLBACKS">xmlSecIORegisterCallbacks</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecIORegisterCallbacks" title="xmlSecIORegisterCallbacks ()">xmlSecIORegisterCallbacks</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIGETKLASS">xmlSecTransformInputURIGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecTransformInputURIGetKlass" title="xmlSecTransformInputURIGetKlass ()">xmlSecTransformInputURIGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIOPEN">xmlSecTransformInputURIOpen</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecTransformInputURIOpen" title="xmlSecTransformInputURIOpen ()">xmlSecTransformInputURIOpen</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURICLOSE">xmlSecTransformInputURIClose</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-io.html#xmlSecTransformInputURIClose" title="xmlSecTransformInputURIClose ()">xmlSecTransformInputURIClose</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-IO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7210"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refsect1">
+<a name="xmlsec-io.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-io.html#XMLSECTRANSFORMINPUTURIID">xmlSecTransformInputURIId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-io.html#xmlSecTransformInputURIId" title="xmlSecTransformInputURIId">xmlSecTransformInputURIId</a></td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-io.description"></a><h2>Description</h2>
+<p>
+Input/output support.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-IO.DESCRIPTION"></a><h2>Description</h2>
-<p>Input/output support.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-IO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECIOINIT"></a><h3>xmlSecIOInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecIOInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The IO initialization (called from <a href="xmlsec-xmlsec.html#XMLSECINIT"><span class="TYPE">xmlSecInit</span></a> function).
+<div class="refsect1">
+<a name="xmlsec-io.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecIOInit"></a><h3>xmlSecIOInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecIOInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The IO initialization (called from <a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()"><span class="type">xmlSecInit</span></a> function).
 Applications should not call this function directly.</p>
-<div class="REFSECT3">
-<a name="AEN7234"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecIOInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECIOSHUTDOWN"></a><h3>xmlSecIOShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecIOShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The IO clenaup (called from <a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN"><span class="TYPE">xmlSecShutdown</span></a> function).
+<div class="refsect2">
+<a name="xmlSecIOShutdown"></a><h3>xmlSecIOShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecIOShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The IO clenaup (called from <a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()"><span class="type">xmlSecShutdown</span></a> function).
 Applications should not call this function directly.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECIOCLEANUPCALLBACKS"></a><h3>xmlSecIOCleanupCallbacks ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecIOCleanupCallbacks (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecIOCleanupCallbacks"></a><h3>xmlSecIOCleanupCallbacks ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecIOCleanupCallbacks (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Clears the entire input callback table. this includes the
 compiled-in I/O.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECIOREGISTERDEFAULTCALLBACKS"></a><h3>xmlSecIORegisterDefaultCallbacks ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecIORegisterDefaultCallbacks (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecIORegisterDefaultCallbacks"></a><h3>xmlSecIORegisterDefaultCallbacks ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecIORegisterDefaultCallbacks (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Registers the default compiled-in I/O handlers.</p>
-<div class="REFSECT3">
-<a name="AEN7269"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecIORegisterDefaultCallbacks.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECIOREGISTERCALLBACKS"></a><h3>xmlSecIORegisterCallbacks ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecIORegisterCallbacks (<code class="PARAMETER"><font><span class="TYPE">xmlInputMatchCallback</span></font> matchFunc</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlInputOpenCallback</span></font> openFunc</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlInputReadCallback</span></font> readFunc</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlInputCloseCallback</span></font> closeFunc</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecIORegisterCallbacks"></a><h3>xmlSecIORegisterCallbacks ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecIORegisterCallbacks (<em class="parameter"><code><font><span class="type">xmlInputMatchCallback</span></font> matchFunc</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlInputOpenCallback</span></font> openFunc</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlInputReadCallback</span></font> readFunc</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlInputCloseCallback</span></font> closeFunc</code></em>);</pre>
 <p>Register a new set of I/O callback for handling parser input.</p>
-<div class="REFSECT3">
-<a name="AEN7292"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7294"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecIORegisterCallbacks.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>matchFunc</p></td>
-<td><p>the protocol match callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>matchFunc</p></td>
+<td class="parameter_description"><p>the protocol match callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>openFunc</p></td>
-<td><p>the open stream callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>openFunc</p></td>
+<td class="parameter_description"><p>the open stream callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>readFunc</p></td>
-<td><p>the read from stream callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>readFunc</p></td>
+<td class="parameter_description"><p>the read from stream callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>closeFunc</p></td>
-<td><p>the close stream callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>closeFunc</p></td>
+<td class="parameter_description"><p>the close stream callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7321"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecIORegisterCallbacks.returns"></a><h4>Returns</h4>
 <p> the 0 on success or a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINPUTURIGETKLASS"></a><h3>xmlSecTransformInputURIGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformInputURIGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInputURIGetKlass"></a><h3>xmlSecTransformInputURIGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformInputURIGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The input uri transform klass. Reads binary data from an uri.</p>
-<div class="REFSECT3">
-<a name="AEN7334"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInputURIGetKlass.returns"></a><h4>Returns</h4>
 <p> input URI transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINPUTURIOPEN"></a><h3>xmlSecTransformInputURIOpen ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformInputURIOpen (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
-<p>Opens the given <code class="PARAMETER">uri</code>
+<div class="refsect2">
+<a name="xmlSecTransformInputURIOpen"></a><h3>xmlSecTransformInputURIOpen ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformInputURIOpen (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
+<p>Opens the given <em class="parameter"><code>uri</code></em>
  for reading.</p>
-<div class="REFSECT3">
-<a name="AEN7352"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7354"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformInputURIOpen.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to IO transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to IO transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URL to open.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URL to open.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7369"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInputURIOpen.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINPUTURICLOSE"></a><h3>xmlSecTransformInputURIClose ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformInputURIClose (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
-<p>Closes the given <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformInputURIClose"></a><h3>xmlSecTransformInputURIClose ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformInputURIClose (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
+<p>Closes the given <em class="parameter"><code>transform</code></em>
  and frees up resourses.</p>
-<div class="REFSECT3">
-<a name="AEN7384"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7386"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformInputURIClose.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to IO transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to IO transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7395"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInputURIClose.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-IO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINPUTURIID"></a><h3>xmlSecTransformInputURIId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformInputURIId</pre>
+<div class="refsect1">
+<a name="xmlsec-io.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecTransformInputURIId"></a><h3>xmlSecTransformInputURIId</h3>
+<pre class="programlisting">#define             xmlSecTransformInputURIId</pre>
 <p>The Input URI transform id.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-errors.html"><b><<< errors</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-keyinfo.html"><b>keyinfo >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-keyinfo.html b/docs/api/xmlsec-keyinfo.html
index a8ad3cd..8fd30da 100644
--- a/docs/api/xmlsec-keyinfo.html
+++ b/docs/api/xmlsec-keyinfo.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keyinfo</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="io" href="xmlsec-io.html">
-<link rel="NEXT" title="keysdata" href="xmlsec-keysdata.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keyinfo: 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-io.html" title="io">
+<link rel="next" href="xmlsec-keysdata.html" title="keysdata">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,586 +73,600 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-io.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-keyinfo.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-io.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-keysdata.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-KEYINFO"></a>keyinfo</h1>
-<div class="REFNAMEDIV">
-<a name="AEN7411"></a><h2>Name</h2>keyinfo -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> node parser.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYINFO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7417"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-keyinfo"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-keyinfo.top_of_page"></a>keyinfo</span></h2>
+<p>keyinfo — <dsig:KeyInfo/> node parser.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-keyinfo.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFONODEREAD">xmlSecKeyInfoNodeRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoNodeRead" title="xmlSecKeyInfoNodeRead ()">xmlSecKeyInfoNodeRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFONODEWRITE">xmlSecKeyInfoNodeWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoNodeWrite" title="xmlSecKeyInfoNodeWrite ()">xmlSecKeyInfoNodeWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="RETURNVALUE">xmlSecKeyInfoCtxPtr</span></a></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCREATE">xmlSecKeyInfoCtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyInfoCtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCreate" title="xmlSecKeyInfoCtxCreate ()">xmlSecKeyInfoCtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDESTROY">xmlSecKeyInfoCtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDestroy" title="xmlSecKeyInfoCtxDestroy ()">xmlSecKeyInfoCtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXINITIALIZE">xmlSecKeyInfoCtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxInitialize" title="xmlSecKeyInfoCtxInitialize ()">xmlSecKeyInfoCtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXFINALIZE">xmlSecKeyInfoCtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxFinalize" title="xmlSecKeyInfoCtxFinalize ()">xmlSecKeyInfoCtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXRESET">xmlSecKeyInfoCtxReset</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxReset" title="xmlSecKeyInfoCtxReset ()">xmlSecKeyInfoCtxReset</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCOPYUSERPREF">xmlSecKeyInfoCtxCopyUserPref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCopyUserPref" title="xmlSecKeyInfoCtxCopyUserPref ()">xmlSecKeyInfoCtxCopyUserPref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCREATEENCCTX">xmlSecKeyInfoCtxCreateEncCtx</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCreateEncCtx" title="xmlSecKeyInfoCtxCreateEncCtx ()">xmlSecKeyInfoCtxCreateEncCtx</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDEBUGDUMP">xmlSecKeyInfoCtxDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDebugDump" title="xmlSecKeyInfoCtxDebugDump ()">xmlSecKeyInfoCtxDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDEBUGXMLDUMP">xmlSecKeyInfoCtxDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDebugXmlDump" title="xmlSecKeyInfoCtxDebugXmlDump ()">xmlSecKeyInfoCtxDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYDATANAMEGETKLASS">xmlSecKeyDataNameGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataNameGetKlass" title="xmlSecKeyDataNameGetKlass ()">xmlSecKeyDataNameGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYDATAVALUEGETKLASS">xmlSecKeyDataValueGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataValueGetKlass" title="xmlSecKeyDataValueGetKlass ()">xmlSecKeyDataValueGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYDATARETRIEVALMETHODGETKLASS">xmlSecKeyDataRetrievalMethodGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataRetrievalMethodGetKlass" title="xmlSecKeyDataRetrievalMethodGetKlass ()">xmlSecKeyDataRetrievalMethodGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keyinfo.html#XMLSECKEYDATAENCRYPTEDKEYGETKLASS">xmlSecKeyDataEncryptedKeyGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataEncryptedKeyGetKlass" title="xmlSecKeyDataEncryptedKeyGetKlass ()">xmlSecKeyDataEncryptedKeyGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYINFO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7527"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keyinfo.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYINFOMODE">xmlSecKeyInfoMode</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoMode" title="enum xmlSecKeyInfoMode">xmlSecKeyInfoMode</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-DONT-STOP-ON-KEY-FOUND:CAPS">XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-DONT-STOP-ON-KEY-FOUND:CAPS" title="XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND">XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-STOP-ON-UNKNOWN-CHILD:CAPS">XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-STOP-ON-UNKNOWN-CHILD:CAPS" title="XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD">XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-KEYNAME-STOP-ON-UNKNOWN:CAPS">XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-KEYNAME-STOP-ON-UNKNOWN:CAPS" title="XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN">XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-KEYVALUE-STOP-ON-UNKNOWN-CHILD:CAPS">XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-KEYVALUE-STOP-ON-UNKNOWN-CHILD:CAPS" title="XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD">XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-UNKNOWN-HREF:CAPS">XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-UNKNOWN-HREF:CAPS" title="XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF">XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-MISMATCH-HREF:CAPS">XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-MISMATCH-HREF:CAPS" title="XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF">XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CHILD:CAPS">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CHILD:CAPS" title="XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-DONT-VERIFY-CERTS:CAPS">XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-DONT-VERIFY-CERTS:CAPS" title="XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS">XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CERT:CAPS">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CERT:CAPS" title="XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-INVALID-CERT:CAPS">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-INVALID-CERT:CAPS" title="XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT">XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-ENCKEY-DONT-STOP-ON-FAILED-DECRYPTION:CAPS">XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-ENCKEY-DONT-STOP-ON-FAILED-DECRYPTION:CAPS" title="XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION">XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-STOP-ON-EMPTY-NODE:CAPS">XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-STOP-ON-EMPTY-NODE:CAPS" title="XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE">XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-SKIP-STRICT-CHECKS:CAPS">XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#XMLSEC-KEYINFO-FLAGS-X509DATA-SKIP-STRICT-CHECKS:CAPS" title="XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS">XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX">xmlSecKeyInfoCtx</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx">xmlSecKeyInfoCtx</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYDATANAMEID">xmlSecKeyDataNameId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataNameId" title="xmlSecKeyDataNameId">xmlSecKeyDataNameId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYDATAVALUEID">xmlSecKeyDataValueId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataValueId" title="xmlSecKeyDataValueId">xmlSecKeyDataValueId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYDATARETRIEVALMETHODID">xmlSecKeyDataRetrievalMethodId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataRetrievalMethodId" title="xmlSecKeyDataRetrievalMethodId">xmlSecKeyDataRetrievalMethodId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keyinfo.html#XMLSECKEYDATAENCRYPTEDKEYID">xmlSecKeyDataEncryptedKeyId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyDataEncryptedKeyId" title="xmlSecKeyDataEncryptedKeyId">xmlSecKeyDataEncryptedKeyId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYINFO.DESCRIPTION"></a><h2>Description</h2>
-<p><a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> node parser.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYINFO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFONODEREAD"></a><h3>xmlSecKeyInfoNodeRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyInfoNodeRead (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Parses the <dsig:KeyInfo/> element <code class="PARAMETER">keyInfoNode</code>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keyinfo.description"></a><h2>Description</h2>
+<p>
+<dsig:KeyInfo/> node parser.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keyinfo.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecKeyInfoNodeRead"></a><h3>xmlSecKeyInfoNodeRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyInfoNodeRead (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Parses the <dsig:KeyInfo/> element <em class="parameter"><code>keyInfoNode</code></em>
 , extracts the key data
-and stores into <code class="PARAMETER">key</code>
+and stores into <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN7631"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7633"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoNodeRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to result key object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to result key object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7654"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoNodeRead.returns"></a><h4>Returns</h4>
 <p> 0 on success or -1 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFONODEWRITE"></a><h3>xmlSecKeyInfoNodeWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyInfoNodeWrite (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Writes the <code class="PARAMETER">key</code>
- into the <dsig:KeyInfo/> element template <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecKeyInfoNodeWrite"></a><h3>xmlSecKeyInfoNodeWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyInfoNodeWrite (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Writes the <em class="parameter"><code>key</code></em>
+ into the <dsig:KeyInfo/> element template <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN7676"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7678"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoNodeWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7699"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoNodeWrite.returns"></a><h4>Returns</h4>
 <p> 0 on success or -1 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXCREATE"></a><h3>xmlSecKeyInfoCtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="RETURNVALUE">xmlSecKeyInfoCtxPtr</span></a>
-xmlSecKeyInfoCtxCreate (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxCreate"></a><h3>xmlSecKeyInfoCtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyInfoCtxPtr</span></font>
+xmlSecKeyInfoCtxCreate (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Allocates and initializes <dsig:KeyInfo/> element processing context.
-Caller is responsible for freeing it by calling <a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXDESTROY"><span class="TYPE">xmlSecKeyInfoCtxDestroy</span></a>
+Caller is responsible for freeing it by calling <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxDestroy" title="xmlSecKeyInfoCtxDestroy ()"><span class="type">xmlSecKeyInfoCtxDestroy</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN7715"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7717"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7726"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated object or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXDESTROY"></a><h3>xmlSecKeyInfoCtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyInfoCtxDestroy (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Destroys <code class="PARAMETER">keyInfoCtx</code>
- object created with <a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXCREATE"><span class="TYPE">xmlSecKeyInfoCtxCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN7743"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7745"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxDestroy"></a><h3>xmlSecKeyInfoCtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyInfoCtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Destroys <em class="parameter"><code>keyInfoCtx</code></em>
+ object created with <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxCreate" title="xmlSecKeyInfoCtxCreate ()"><span class="type">xmlSecKeyInfoCtxCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXINITIALIZE"></a><h3>xmlSecKeyInfoCtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyInfoCtxInitialize (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxInitialize"></a><h3>xmlSecKeyInfoCtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyInfoCtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Initializes <dsig:KeyInfo/> element processing context. Caller is
-responsible for cleaning it up by <a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXFINALIZE"><span class="TYPE">xmlSecKeyInfoCtxFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN7770"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7772"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+responsible for cleaning it up by <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxFinalize" title="xmlSecKeyInfoCtxFinalize ()"><span class="type">xmlSecKeyInfoCtxFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN7787"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxInitialize.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXFINALIZE"></a><h3>xmlSecKeyInfoCtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyInfoCtxFinalize (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Cleans up the <code class="PARAMETER">keyInfoCtx</code>
- initialized with <a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTXINITIALIZE"><span class="TYPE">xmlSecKeyInfoCtxInitialize</span></a>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxFinalize"></a><h3>xmlSecKeyInfoCtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyInfoCtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Cleans up the <em class="parameter"><code>keyInfoCtx</code></em>
+ initialized with <a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtxInitialize" title="xmlSecKeyInfoCtxInitialize ()"><span class="type">xmlSecKeyInfoCtxInitialize</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN7804"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7806"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXRESET"></a><h3>xmlSecKeyInfoCtxReset ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyInfoCtxReset (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Resets the <code class="PARAMETER">keyInfoCtx</code>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxReset"></a><h3>xmlSecKeyInfoCtxReset ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyInfoCtxReset (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Resets the <em class="parameter"><code>keyInfoCtx</code></em>
  state. User settings are not changed.</p>
-<div class="REFSECT3">
-<a name="AEN7827"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7829"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxReset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXCOPYUSERPREF"></a><h3>xmlSecKeyInfoCtxCopyUserPref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyInfoCtxCopyUserPref (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> dst</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> src</code>);</pre>
-<p>Copies user preferences from <code class="PARAMETER">src</code>
- context to <code class="PARAMETER">dst</code>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxCopyUserPref"></a><h3>xmlSecKeyInfoCtxCopyUserPref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyInfoCtxCopyUserPref (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> dst</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> src</code></em>);</pre>
+<p>Copies user preferences from <em class="parameter"><code>src</code></em>
+ context to <em class="parameter"><code>dst</code></em>
  context.</p>
-<div class="REFSECT3">
-<a name="AEN7854"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7856"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCopyUserPref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7871"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCopyUserPref.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXCREATEENCCTX"></a><h3>xmlSecKeyInfoCtxCreateEncCtx ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyInfoCtxCreateEncCtx (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxCreateEncCtx"></a><h3>xmlSecKeyInfoCtxCreateEncCtx ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyInfoCtxCreateEncCtx (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Creates encryption context form processing <enc:EncryptedKey/> child
 of <dsig:KeyInfo/> element.</p>
-<div class="REFSECT3">
-<a name="AEN7885"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7887"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCreateEncCtx.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN7896"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxCreateEncCtx.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXDEBUGDUMP"></a><h3>xmlSecKeyInfoCtxDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyInfoCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints user settings and current context state to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxDebugDump"></a><h3>xmlSecKeyInfoCtxDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyInfoCtxDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>,
+                           <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints user settings and current context state to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN7914"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7916"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the output file pointer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the output file pointer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTXDEBUGXMLDUMP"></a><h3>xmlSecKeyInfoCtxDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyInfoCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints user settings and current context state in XML format to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtxDebugXmlDump"></a><h3>xmlSecKeyInfoCtxDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyInfoCtxDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>,
+                              <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints user settings and current context state in XML format to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN7946"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN7948"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtxDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the output file pointer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the output file pointer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATANAMEGETKLASS"></a><h3>xmlSecKeyDataNameGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataNameGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataNameGetKlass"></a><h3>xmlSecKeyDataNameGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataNameGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The <dsig:KeyName/> element key data klass
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-KeyName</span></font>):</p>
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-KeyName</span></font>):</p>
 <p>The KeyName element contains a string value (in which white space is
 significant) which may be used by the signer to communicate a key
 identifier to the recipient. Typically, KeyName contains an identifier
@@ -687,32 +674,32 @@ related to the key pair used to sign the message, but it may contain
 other protocol-related information that indirectly identifies a key pair.
 (Common uses of KeyName include simple string names for keys, a key index,
 a distinguished name (DN), an email address, etc.)</p>
-<div class="REFSECT3">
-<a name="AEN7976"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataNameGetKlass.returns"></a><h4>Returns</h4>
 <p> the <dsig:KeyName/> element processing key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAVALUEGETKLASS"></a><h3>xmlSecKeyDataValueGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataValueGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataValueGetKlass"></a><h3>xmlSecKeyDataValueGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataValueGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The <dsig:KeyValue/> element key data klass
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-KeyValue</span></font>):</p>
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-KeyValue</span></font>):</p>
 <p>The KeyValue element contains a single public key that may be useful in
 validating the signature.</p>
-<div class="REFSECT3">
-<a name="AEN7992"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataValueGetKlass.returns"></a><h4>Returns</h4>
 <p> the <dsig:KeyValue/> element processing key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARETRIEVALMETHODGETKLASS"></a><h3>xmlSecKeyDataRetrievalMethodGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataRetrievalMethodGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRetrievalMethodGetKlass"></a><h3>xmlSecKeyDataRetrievalMethodGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataRetrievalMethodGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The <dsig:RetrievalMethod/> element key data klass
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-RetrievalMethod</span></font>):
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-RetrievalMethod</span></font>):
 A RetrievalMethod element within KeyInfo is used to convey a reference to
 KeyInfo information that is stored at another location. For example,
 several signatures in a document might use a key verified by an X.509v3
@@ -722,18 +709,18 @@ RetrievalMethod element instead of including the entire chain with a
 sequence of X509Certificate elements.</p>
 <p>RetrievalMethod uses the same syntax and dereferencing behavior as
 Reference's URI and The Reference Processing Model.</p>
-<div class="REFSECT3">
-<a name="AEN8008"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataRetrievalMethodGetKlass.returns"></a><h4>Returns</h4>
 <p> the <dsig:RetrievalMethod/> element processing key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAENCRYPTEDKEYGETKLASS"></a><h3>xmlSecKeyDataEncryptedKeyGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataEncryptedKeyGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataEncryptedKeyGetKlass"></a><h3>xmlSecKeyDataEncryptedKeyGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataEncryptedKeyGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The <enc:EncryptedKey/> element key data klass
-(http://www.w3.org/TR/xmlenc-core/<font><span class="TYPE">sec-EncryptedKey</span></font>):</p>
+(http://www.w3.org/TR/xmlenc-core/<font><span class="type">sec-EncryptedKey</span></font>):</p>
 <p>The EncryptedKey element is used to transport encryption keys from
 the originator to a known recipient(s). It may be used as a stand-alone
 XML document, be placed within an application document, or appear inside
@@ -741,138 +728,153 @@ an EncryptedData element as a child of a ds:KeyInfo element. The key value
 is always encrypted to the recipient(s). When EncryptedKey is decrypted the
 resulting octets are made available to the EncryptionMethod algorithm
 without any additional processing.</p>
-<div class="REFSECT3">
-<a name="AEN8024"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataEncryptedKeyGetKlass.returns"></a><h4>Returns</h4>
 <p> the <enc:EncryptedKey/> element processing key data klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYINFO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOMODE"></a><h3>enum xmlSecKeyInfoMode</h3>
-<p>The <code class="PARAMETER">xmlSecKeyInfoCtx</code>
+<div class="refsect1">
+<a name="xmlsec-keyinfo.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecKeyInfoMode"></a><h3>enum xmlSecKeyInfoMode</h3>
+<p>The <em class="parameter"><code>xmlSecKeyInfoCtx</code></em>
  operation mode (read or write).</p>
-<div class="REFSECT3">
-<a name="AEN8035"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN8037"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoMode.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecKeyInfoModeRead</p></td>
-<td><p>read <dsig:KeyInfo /> element.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyInfoModeRead"></a>xmlSecKeyInfoModeRead</p></td>
+<td class="enum_member_description">
+<p>read <dsig:KeyInfo /> element.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyInfoModeWrite</p></td>
-<td><p>write <dsig:KeyInfo /> element.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyInfoModeWrite"></a>xmlSecKeyInfoModeWrite</p></td>
+<td class="enum_member_description">
+<p>write <dsig:KeyInfo /> element.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-DONT-STOP-ON-KEY-FOUND:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND             0x00000001</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_DONT_STOP_ON_KEY_FOUND             0x00000001
+</pre>
 <p>If flag is set then we will continue reading <dsig:KeyInfo />
 element even when key is already found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-STOP-ON-UNKNOWN-CHILD:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD              0x00000002</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD              0x00000002
+</pre>
 <p>If flag is set then we abort if an unknown <dsig:KeyInfo />
 child is found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-KEYNAME-STOP-ON-UNKNOWN:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN            0x00000004</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_KEYNAME_STOP_ON_UNKNOWN            0x00000004
+</pre>
 <p>If flags is set then we abort if an unknown key name
 (content of <dsig:KeyName /> element) is found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-KEYVALUE-STOP-ON-UNKNOWN-CHILD:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD     0x00000008</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD     0x00000008
+</pre>
 <p>If flags is set then we abort if an unknown <dsig:KeyValue />
 child is found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-UNKNOWN-HREF:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF    0x00000010</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF    0x00000010
+</pre>
 <p>If flag is set then we abort if an unknown href attribute
 of <dsig:RetrievalMethod /> element is found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-RETRMETHOD-STOP-ON-MISMATCH-HREF:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF   0x00000020</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF   0x00000020
+</pre>
 <p>If flag is set then we abort if an href attribute <dsig:RetrievalMethod />
 element does not match the real key data type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CHILD:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD     0x00000100</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD     0x00000100
+</pre>
 <p>If flags is set then we abort if an unknown <dsig:X509Data />
 child is found.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-X509DATA-DONT-VERIFY-CERTS:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS         0x00000200</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS         0x00000200
+</pre>
 <p>If flag is set then we'll load certificates from <dsig:X509Data />
 element without verification.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-UNKNOWN-CERT:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT      0x00000400</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT      0x00000400
+</pre>
 <p>If flag is set then we'll stop when we could not resolve reference
 to certificate from <dsig:X509IssuerSerial />, <dsig:X509SKI /> or
 <dsig:X509SubjectName /> elements.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-X509DATA-STOP-ON-INVALID-CERT:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT      0x00000800</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT      0x00000800
+</pre>
 <p>If the flag is set then we'll stop when <dsig:X509Data /> element
 processing does not return a verified certificate.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-ENCKEY-DONT-STOP-ON-FAILED-DECRYPTION:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION 0x00001000</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION 0x00001000
+</pre>
 <p>If the flag is set then we'll stop when <enc:EncryptedKey /> element
 processing fails.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-STOP-ON-EMPTY-NODE:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE                 0x00002000</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE                 0x00002000
+</pre>
 <p>If the flag is set then we'll stop when we found an empty node.
 Otherwise we just ignore it.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-KEYINFO-FLAGS-X509DATA-SKIP-STRICT-CHECKS:CAPS"></a><h3>XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS        0x00004000</pre>
+<pre class="programlisting">#define XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS        0x00004000
+</pre>
 <p>If the flag is set then we'll skip strict checking of certs and CRLs</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYINFOCTX"></a><h3>struct xmlSecKeyInfoCtx</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyInfoCtx {
+<div class="refsect2">
+<a name="xmlSecKeyInfoCtx"></a><h3>struct xmlSecKeyInfoCtx</h3>
+<pre class="programlisting">struct xmlSecKeyInfoCtx {
     void*                               userData;
     unsigned int                        flags;
     unsigned int                        flags2;
@@ -908,167 +910,169 @@ Otherwise we just ignore it.</p>
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The <dsig:KeyInfo /> reading or writing context.</p>
-<div class="REFSECT3">
-<a name="AEN8136"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN8138"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyInfoCtx.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">userData</code>;</p></td>
-<td><p>the pointer to user data (xmlsec and xmlsec-crypto
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyInfoCtx.userData"></a>userData</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto
 never touch this).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags</code>;</p></td>
-<td><p>the bit mask for flags that control processin.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_description"><p>the bit mask for flags that control processin.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags2</code>;</p></td>
-<td><p>reserved for future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.flags2"></a>flags2</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> <code class="STRUCTFIELD">keysMngr</code>;</p></td>
-<td><p>the pointer to current keys manager.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeysMngrPtr</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.keysMngr"></a>keysMngr</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to current keys manager.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOMODE"><span class="TYPE">xmlSecKeyInfoMode</span></a> <code class="STRUCTFIELD">mode</code>;</p></td>
-<td><p>do we read or write <dsig:KeyInfo /> element.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoMode" title="enum xmlSecKeyInfoMode"><span class="type">xmlSecKeyInfoMode</span></a> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.mode"></a>mode</code></em>;</p></td>
+<td class="struct_member_description"><p>do we read or write <dsig:KeyInfo /> element.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">enabledKeyData</code>;</p></td>
-<td><p>the list of enabled <code class="PARAMETER">xmlSecKeyDataId</code>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.enabledKeyData"></a>enabledKeyData</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of enabled <em class="parameter"><code>xmlSecKeyDataId</code></em>
 (if list is
 empty then all data ids are enabled).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">base64LineSize</code>;</p></td>
-<td><p>the max columns size for base64 encoding.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.base64LineSize"></a>base64LineSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the max columns size for base64 encoding.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">retrievalMethodCtx</code>;</p></td>
-<td><p>the transforms context for <dsig:RetrievalMethod />
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx"><span class="type">xmlSecTransformCtx</span></a> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.retrievalMethodCtx"></a>retrievalMethodCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the transforms context for <dsig:RetrievalMethod />
 element processing.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">maxRetrievalMethodLevel</code>;</p></td>
-<td><p>the max recursion level when processing
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.maxRetrievalMethodLevel"></a>maxRetrievalMethodLevel</code></em>;</p></td>
+<td class="struct_member_description"><p>the max recursion level when processing
 <dsig:RetrievalMethod /> element; default level is 1
-(see also <code class="PARAMETER">curRetrievalMethodLevel</code>
+(see also <em class="parameter"><code>curRetrievalMethodLevel</code></em>
 ).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> <code class="STRUCTFIELD">encCtx</code>;</p></td>
-<td><p>the encryption context for <dsig:EncryptedKey /> element
+<td class="struct_member_name"><p><font><span class="type">xmlSecEncCtxPtr</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.encCtx"></a>encCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the encryption context for <dsig:EncryptedKey /> element
 processing.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">maxEncryptedKeyLevel</code>;</p></td>
-<td><p>the max recursion level when processing
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.maxEncryptedKeyLevel"></a>maxEncryptedKeyLevel</code></em>;</p></td>
+<td class="struct_member_description"><p>the max recursion level when processing
 <enc:EncryptedKey /> element; default level is 1
-(see <code class="PARAMETER">curEncryptedKeyLevel</code>
+(see <em class="parameter"><code>curEncryptedKeyLevel</code></em>
 ).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">time_t</span></font> <code class="STRUCTFIELD">certsVerificationTime</code>;</p></td>
-<td><p>the time to use for X509 certificates verification
+<td class="struct_member_name"><p><font><span class="type">time_t</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.certsVerificationTime"></a>certsVerificationTime</code></em>;</p></td>
+<td class="struct_member_description"><p>the time to use for X509 certificates verification
 ("not valid before" and "not valid after" checks);
-if <code class="PARAMETER">certsVerificationTime</code>
+if <em class="parameter"><code>certsVerificationTime</code></em>
 is equal to 0 (default)
 then we verify certificates against the system's
 clock "now".</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">certsVerificationDepth</code>;</p></td>
-<td><p>the max certifications chain length (default is 9).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.certsVerificationDepth"></a>certsVerificationDepth</code></em>;</p></td>
+<td class="struct_member_description"><p>the max certifications chain length (default is 9).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">pgpReserved</code>;</p></td>
-<td><p>reserved for PGP.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyInfoCtx.pgpReserved"></a>pgpReserved</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for PGP.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">curRetrievalMethodLevel</code>;</p></td>
-<td><p>the current <dsig:RetrievalMethod /> element
-processing level (see <code class="PARAMETER">maxRetrievalMethodLevel</code>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.curRetrievalMethodLevel"></a>curRetrievalMethodLevel</code></em>;</p></td>
+<td class="struct_member_description"><p>the current <dsig:RetrievalMethod /> element
+processing level (see <em class="parameter"><code>maxRetrievalMethodLevel</code></em>
 ).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">curEncryptedKeyLevel</code>;</p></td>
-<td><p>the current <enc:EncryptedKey /> element
-processing level (see <code class="PARAMETER">maxEncryptedKeyLevel</code>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.curEncryptedKeyLevel"></a>curEncryptedKeyLevel</code></em>;</p></td>
+<td class="struct_member_description"><p>the current <enc:EncryptedKey /> element
+processing level (see <em class="parameter"><code>maxEncryptedKeyLevel</code></em>
 ).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReq</span></a> <code class="STRUCTFIELD">keyReq</code>;</p></td>
-<td><p>the current key requirements.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyReq" title="struct xmlSecKeyReq"><span class="type">xmlSecKeyReq</span></a> <em class="structfield"><code><a name="xmlSecKeyInfoCtx.keyReq"></a>keyReq</code></em>;</p></td>
+<td class="struct_member_description"><p>the current key requirements.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyInfoCtx.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyInfoCtx.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATANAMEID"></a><h3>xmlSecKeyDataNameId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataNameId             xmlSecKeyDataNameGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataNameId"></a><h3>xmlSecKeyDataNameId</h3>
+<pre class="programlisting">#define xmlSecKeyDataNameId             xmlSecKeyDataNameGetKlass()
+</pre>
 <p>The <dsig:KeyName> processing class.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAVALUEID"></a><h3>xmlSecKeyDataValueId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataValueId            xmlSecKeyDataValueGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataValueId"></a><h3>xmlSecKeyDataValueId</h3>
+<pre class="programlisting">#define xmlSecKeyDataValueId            xmlSecKeyDataValueGetKlass()
+</pre>
 <p>The <dsig:KeyValue> processing class.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATARETRIEVALMETHODID"></a><h3>xmlSecKeyDataRetrievalMethodId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataRetrievalMethodId  xmlSecKeyDataRetrievalMethodGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataRetrievalMethodId"></a><h3>xmlSecKeyDataRetrievalMethodId</h3>
+<pre class="programlisting">#define xmlSecKeyDataRetrievalMethodId  xmlSecKeyDataRetrievalMethodGetKlass()
+</pre>
 <p>The <dsig:RetrievalMethod> processing class.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAENCRYPTEDKEYID"></a><h3>xmlSecKeyDataEncryptedKeyId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataEncryptedKeyId     xmlSecKeyDataEncryptedKeyGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataEncryptedKeyId"></a><h3>xmlSecKeyDataEncryptedKeyId</h3>
+<pre class="programlisting">#define xmlSecKeyDataEncryptedKeyId     xmlSecKeyDataEncryptedKeyGetKlass()
+</pre>
 <p>The <enc:EncryptedKey> processing class.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-io.html"><b><<< io</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-keysdata.html"><b>keysdata >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-keys.html b/docs/api/xmlsec-keys.html
index 3c49c84..24c4a72 100644
--- a/docs/api/xmlsec-keys.html
+++ b/docs/api/xmlsec-keys.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keys</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="keysdata" href="xmlsec-keysdata.html">
-<link rel="NEXT" title="keysmngr" href="xmlsec-keysmngr.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keys: 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-keysdata.html" title="keysdata">
+<link rel="next" href="xmlsec-keysmngr.html" title="keysmngr">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1845 +73,1859 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-keysdata.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-keys.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-keysdata.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-keysmngr.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-KEYS"></a>keys</h1>
-<div class="REFNAMEDIV">
-<a name="AEN11732"></a><h2>Name</h2>keys -- Crypto key object definition.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYS.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11737"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-keys"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-keys.top_of_page"></a>keys</span></h2>
+<p>keys — Crypto key object definition.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-keys.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHINITIALIZE">xmlSecKeyUseWithInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithInitialize" title="xmlSecKeyUseWithInitialize ()">xmlSecKeyUseWithInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHFINALIZE">xmlSecKeyUseWithFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithFinalize" title="xmlSecKeyUseWithFinalize ()">xmlSecKeyUseWithFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHRESET">xmlSecKeyUseWithReset</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithReset" title="xmlSecKeyUseWithReset ()">xmlSecKeyUseWithReset</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHCOPY">xmlSecKeyUseWithCopy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithCopy" title="xmlSecKeyUseWithCopy ()">xmlSecKeyUseWithCopy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="RETURNVALUE">xmlSecKeyUseWithPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHCREATE">xmlSecKeyUseWithCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyUseWithPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithCreate" title="xmlSecKeyUseWithCreate ()">xmlSecKeyUseWithCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="RETURNVALUE">xmlSecKeyUseWithPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHDUPLICATE">xmlSecKeyUseWithDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyUseWithPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDuplicate" title="xmlSecKeyUseWithDuplicate ()">xmlSecKeyUseWithDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHDESTROY">xmlSecKeyUseWithDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDestroy" title="xmlSecKeyUseWithDestroy ()">xmlSecKeyUseWithDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHSET">xmlSecKeyUseWithSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithSet" title="xmlSecKeyUseWithSet ()">xmlSecKeyUseWithSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHDEBUGDUMP">xmlSecKeyUseWithDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDebugDump" title="xmlSecKeyUseWithDebugDump ()">xmlSecKeyUseWithDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHDEBUGXMLDUMP">xmlSecKeyUseWithDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithDebugXmlDump" title="xmlSecKeyUseWithDebugXmlDump ()">xmlSecKeyUseWithDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYUSEWITHPTRLISTGETKLASS">xmlSecKeyUseWithPtrListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithPtrListGetKlass" title="xmlSecKeyUseWithPtrListGetKlass ()">xmlSecKeyUseWithPtrListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQINITIALIZE">xmlSecKeyReqInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqInitialize" title="xmlSecKeyReqInitialize ()">xmlSecKeyReqInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQFINALIZE">xmlSecKeyReqFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqFinalize" title="xmlSecKeyReqFinalize ()">xmlSecKeyReqFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQRESET">xmlSecKeyReqReset</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqReset" title="xmlSecKeyReqReset ()">xmlSecKeyReqReset</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQCOPY">xmlSecKeyReqCopy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqCopy" title="xmlSecKeyReqCopy ()">xmlSecKeyReqCopy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQMATCHKEY">xmlSecKeyReqMatchKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqMatchKey" title="xmlSecKeyReqMatchKey ()">xmlSecKeyReqMatchKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQMATCHKEYVALUE">xmlSecKeyReqMatchKeyValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqMatchKeyValue" title="xmlSecKeyReqMatchKeyValue ()">xmlSecKeyReqMatchKeyValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQDEBUGDUMP">xmlSecKeyReqDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqDebugDump" title="xmlSecKeyReqDebugDump ()">xmlSecKeyReqDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREQDEBUGXMLDUMP">xmlSecKeyReqDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReqDebugXmlDump" title="xmlSecKeyReqDebugXmlDump ()">xmlSecKeyReqDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYCREATE">xmlSecKeyCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyCreate" title="xmlSecKeyCreate ()">xmlSecKeyCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYDESTROY">xmlSecKeyDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()">xmlSecKeyDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYEMPTY">xmlSecKeyEmpty</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyEmpty" title="xmlSecKeyEmpty ()">xmlSecKeyEmpty</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYDUPLICATE">xmlSecKeyDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyDuplicate" title="xmlSecKeyDuplicate ()">xmlSecKeyDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYCOPY">xmlSecKeyCopy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyCopy" title="xmlSecKeyCopy ()">xmlSecKeyCopy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGETNAME">xmlSecKeyGetName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGetName" title="xmlSecKeyGetName ()">xmlSecKeyGetName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYSETNAME">xmlSecKeySetName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeySetName" title="xmlSecKeySetName ()">xmlSecKeySetName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGETTYPE">xmlSecKeyGetType</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGetType" title="xmlSecKeyGetType ()">xmlSecKeyGetType</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGETVALUE">xmlSecKeyGetValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGetValue" title="xmlSecKeyGetValue ()">xmlSecKeyGetValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYSETVALUE">xmlSecKeySetValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeySetValue" title="xmlSecKeySetValue ()">xmlSecKeySetValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGETDATA">xmlSecKeyGetData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGetData" title="xmlSecKeyGetData ()">xmlSecKeyGetData</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYENSUREDATA">xmlSecKeyEnsureData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyEnsureData" title="xmlSecKeyEnsureData ()">xmlSecKeyEnsureData</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYADOPTDATA">xmlSecKeyAdoptData</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyAdoptData" title="xmlSecKeyAdoptData ()">xmlSecKeyAdoptData</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYDEBUGDUMP">xmlSecKeyDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyDebugDump" title="xmlSecKeyDebugDump ()">xmlSecKeyDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYDEBUGXMLDUMP">xmlSecKeyDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyDebugXmlDump" title="xmlSecKeyDebugXmlDump ()">xmlSecKeyDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGENERATE">xmlSecKeyGenerate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGenerate" title="xmlSecKeyGenerate ()">xmlSecKeyGenerate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYGENERATEBYNAME">xmlSecKeyGenerateByName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyGenerateByName" title="xmlSecKeyGenerateByName ()">xmlSecKeyGenerateByName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYMATCH">xmlSecKeyMatch</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyMatch" title="xmlSecKeyMatch ()">xmlSecKeyMatch</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREADBUFFER">xmlSecKeyReadBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReadBuffer" title="xmlSecKeyReadBuffer ()">xmlSecKeyReadBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREADBINARYFILE">xmlSecKeyReadBinaryFile</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReadBinaryFile" title="xmlSecKeyReadBinaryFile ()">xmlSecKeyReadBinaryFile</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYREADMEMORY">xmlSecKeyReadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyReadMemory" title="xmlSecKeyReadMemory ()">xmlSecKeyReadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYISVALID">xmlSecKeyIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyIsValid" title="xmlSecKeyIsValid()">xmlSecKeyIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYCHECKID">xmlSecKeyCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyCheckId" title="xmlSecKeyCheckId()">xmlSecKeyCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-keys.html#XMLSECKEYPTRLISTGETKLASS">xmlSecKeyPtrListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keys.html#xmlSecKeyPtrListGetKlass" title="xmlSecKeyPtrListGetKlass ()">xmlSecKeyPtrListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYS.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12039"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keys.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGE">xmlSecKeyUsage</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsage" title="xmlSecKeyUsage">xmlSecKeyUsage</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGESIGN">xmlSecKeyUsageSign</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageSign" title="xmlSecKeyUsageSign">xmlSecKeyUsageSign</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGEVERIFY">xmlSecKeyUsageVerify</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageVerify" title="xmlSecKeyUsageVerify">xmlSecKeyUsageVerify</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGEENCRYPT">xmlSecKeyUsageEncrypt</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageEncrypt" title="xmlSecKeyUsageEncrypt">xmlSecKeyUsageEncrypt</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGEDECRYPT">xmlSecKeyUsageDecrypt</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageDecrypt" title="xmlSecKeyUsageDecrypt">xmlSecKeyUsageDecrypt</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGEKEYEXCHANGE">xmlSecKeyUsageKeyExchange</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageKeyExchange" title="xmlSecKeyUsageKeyExchange">xmlSecKeyUsageKeyExchange</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSAGEANY">xmlSecKeyUsageAny</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUsageAny" title="xmlSecKeyUsageAny">xmlSecKeyUsageAny</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSEWITH">xmlSecKeyUseWith</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWith" title="struct xmlSecKeyUseWith">xmlSecKeyUseWith</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYUSEWITHPTRLISTID">xmlSecKeyUseWithPtrListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyUseWithPtrListId" title="xmlSecKeyUseWithPtrListId">xmlSecKeyUseWithPtrListId</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYREQ">xmlSecKeyReq</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyReq" title="struct xmlSecKeyReq">xmlSecKeyReq</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keys.html#XMLSECKEY">xmlSecKey</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey">xmlSecKey</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keys.html#XMLSECKEYPTRLISTID">xmlSecKeyPtrListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keys.html#xmlSecKeyPtrListId" title="xmlSecKeyPtrListId">xmlSecKeyPtrListId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYS.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto key object definition.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYS.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHINITIALIZE"></a><h3>xmlSecKeyUseWithInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyUseWithInitialize (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>);</pre>
-<p>Initializes <code class="PARAMETER">keyUseWith</code>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keys.description"></a><h2>Description</h2>
+<p>
+Crypto key object definition.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keys.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithInitialize"></a><h3>xmlSecKeyUseWithInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyUseWithInitialize (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>keyUseWith</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN12107"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12109"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12118"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithInitialize.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="XMLSECKEYUSEWITHFINALIZE"></a><h3>xmlSecKeyUseWithFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyUseWithFinalize (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>);</pre>
-<p>Finalizes <code class="PARAMETER">keyUseWith</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithFinalize"></a><h3>xmlSecKeyUseWithFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyUseWithFinalize (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>);</pre>
+<p>Finalizes <em class="parameter"><code>keyUseWith</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN12133"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12135"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHRESET"></a><h3>xmlSecKeyUseWithReset ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyUseWithReset (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>);</pre>
-<p>Resets the <code class="PARAMETER">keyUseWith</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithReset"></a><h3>xmlSecKeyUseWithReset ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyUseWithReset (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>);</pre>
+<p>Resets the <em class="parameter"><code>keyUseWith</code></em>
  to its state after initialization.</p>
-<div class="REFSECT3">
-<a name="AEN12156"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12158"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithReset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHCOPY"></a><h3>xmlSecKeyUseWithCopy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyUseWithCopy (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> dst</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> src</code>);</pre>
-<p>Copies information from <code class="PARAMETER">dst</code>
- to <code class="PARAMETER">src</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithCopy"></a><h3>xmlSecKeyUseWithCopy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyUseWithCopy (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> dst</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> src</code></em>);</pre>
+<p>Copies information from <em class="parameter"><code>dst</code></em>
+ to <em class="parameter"><code>src</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12183"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12185"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithCopy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12200"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithCopy.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="XMLSECKEYUSEWITHCREATE"></a><h3>xmlSecKeyUseWithCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="RETURNVALUE">xmlSecKeyUseWithPtr</span></a>
-xmlSecKeyUseWithCreate (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *application</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *identifier</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithCreate"></a><h3>xmlSecKeyUseWithCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyUseWithPtr</span></font>
+xmlSecKeyUseWithCreate (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *application</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *identifier</code></em>);</pre>
 <p>Creates new xmlSecKeyUseWith object. The caller is responsible for destroying
-returned object with <code class="PARAMETER">xmlSecKeyUseWithDestroy</code>
+returned object with <em class="parameter"><code>xmlSecKeyUseWithDestroy</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN12218"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12220"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>application</p></td>
-<td><p>the application value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>application</p></td>
+<td class="parameter_description"><p>the application value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>identifier</p></td>
-<td><p>the identifier value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>identifier</p></td>
+<td class="parameter_description"><p>the identifier value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12235"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly created object or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHDUPLICATE"></a><h3>xmlSecKeyUseWithDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="RETURNVALUE">xmlSecKeyUseWithPtr</span></a>
-xmlSecKeyUseWithDuplicate (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>);</pre>
-<p>Duplicates <code class="PARAMETER">keyUseWith</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithDuplicate"></a><h3>xmlSecKeyUseWithDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyUseWithPtr</span></font>
+xmlSecKeyUseWithDuplicate (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>);</pre>
+<p>Duplicates <em class="parameter"><code>keyUseWith</code></em>
  object. The caller is responsible for destroying
-returned object with <code class="PARAMETER">xmlSecKeyUseWithDestroy</code>
+returned object with <em class="parameter"><code>xmlSecKeyUseWithDestroy</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN12251"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12253"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12262"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithDuplicate.returns"></a><h4>Returns</h4>
 <p> pointer to newly created object or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHDESTROY"></a><h3>xmlSecKeyUseWithDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyUseWithDestroy (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>);</pre>
-<p>Destroys <code class="PARAMETER">keyUseWith</code>
- created with <code class="PARAMETER">xmlSecKeyUseWithCreate</code>
- or <code class="PARAMETER">xmlSecKeyUseWithDuplicate</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithDestroy"></a><h3>xmlSecKeyUseWithDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyUseWithDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>);</pre>
+<p>Destroys <em class="parameter"><code>keyUseWith</code></em>
+ created with <em class="parameter"><code>xmlSecKeyUseWithCreate</code></em>
+ or <em class="parameter"><code>xmlSecKeyUseWithDuplicate</code></em>
 
 functions.</p>
-<div class="REFSECT3">
-<a name="AEN12279"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12281"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHSET"></a><h3>xmlSecKeyUseWithSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyUseWithSet (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>,
-                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *application</code>,
-                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *identifier</code>);</pre>
-<p>Sets <code class="PARAMETER">application</code>
- and <code class="PARAMETER">identifier</code>
- in the <code class="PARAMETER">keyUseWith</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithSet"></a><h3>xmlSecKeyUseWithSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyUseWithSet (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>,
+                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *application</code></em>,
+                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *identifier</code></em>);</pre>
+<p>Sets <em class="parameter"><code>application</code></em>
+ and <em class="parameter"><code>identifier</code></em>
+ in the <em class="parameter"><code>keyUseWith</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12310"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12312"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>application</p></td>
-<td><p>the new application value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>application</p></td>
+<td class="parameter_description"><p>the new application value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>identifier</p></td>
-<td><p>the new identifier value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>identifier</p></td>
+<td class="parameter_description"><p>the new identifier value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12333"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithSet.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="XMLSECKEYUSEWITHDEBUGDUMP"></a><h3>xmlSecKeyUseWithDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyUseWithDebugDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints xmlSecKeyUseWith debug information to a file <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithDebugDump"></a><h3>xmlSecKeyUseWithDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyUseWithDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>,
+                           <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints xmlSecKeyUseWith debug information to a file <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12351"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12353"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHDEBUGXMLDUMP"></a><h3>xmlSecKeyUseWithDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyUseWithDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYUSEWITH"><span class="TYPE">xmlSecKeyUseWithPtr</span></a> keyUseWith</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints xmlSecKeyUseWith debug information to a file <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithDebugXmlDump"></a><h3>xmlSecKeyUseWithDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyUseWithDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyUseWithPtr</span></font> keyUseWith</code></em>,
+                              <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints xmlSecKeyUseWith debug information to a file <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN12383"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12385"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyUseWith</p></td>
-<td><p>the pointer to information about key application/user.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyUseWith</p></td>
+<td class="parameter_description"><p>the pointer to information about key application/user.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHPTRLISTGETKLASS"></a><h3>xmlSecKeyUseWithPtrListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecKeyUseWithPtrListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithPtrListGetKlass"></a><h3>xmlSecKeyUseWithPtrListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecKeyUseWithPtrListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The key data list klass.</p>
-<div class="REFSECT3">
-<a name="AEN12410"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyUseWithPtrListGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to the key data list klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQINITIALIZE"></a><h3>xmlSecKeyReqInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyReqInitialize (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyReqInitialize"></a><h3>xmlSecKeyReqInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyReqInitialize (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
 <p>Initialize key requirements object. Caller is responsible for
-cleaning it with <a href="xmlsec-keys.html#XMLSECKEYREQFINALIZE"><span class="TYPE">xmlSecKeyReqFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN12426"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12428"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+cleaning it with <a class="link" href="xmlsec-keys.html#xmlSecKeyReqFinalize" title="xmlSecKeyReqFinalize ()"><span class="type">xmlSecKeyReqFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyReqInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12437"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReqInitialize.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="XMLSECKEYREQFINALIZE"></a><h3>xmlSecKeyReqFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyReqFinalize (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
-<p>Cleans the key requirements object initialized with <a href="xmlsec-keys.html#XMLSECKEYREQINITIALIZE"><span class="TYPE">xmlSecKeyReqInitialize</span></a>
+<div class="refsect2">
+<a name="xmlSecKeyReqFinalize"></a><h3>xmlSecKeyReqFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyReqFinalize (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
+<p>Cleans the key requirements object initialized with <a class="link" href="xmlsec-keys.html#xmlSecKeyReqInitialize" title="xmlSecKeyReqInitialize ()"><span class="type">xmlSecKeyReqInitialize</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN12453"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12455"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQRESET"></a><h3>xmlSecKeyReqReset ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyReqReset (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyReqReset"></a><h3>xmlSecKeyReqReset ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyReqReset (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
 <p>Resets key requirements object for new key search.</p>
-<div class="REFSECT3">
-<a name="AEN12475"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12477"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqReset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQCOPY"></a><h3>xmlSecKeyReqCopy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyReqCopy (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> dst</code>,
-                  <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> src</code>);</pre>
-<p>Copies key requirements from <code class="PARAMETER">src</code>
- object to <code class="PARAMETER">dst</code>
+<div class="refsect2">
+<a name="xmlSecKeyReqCopy"></a><h3>xmlSecKeyReqCopy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyReqCopy (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> dst</code></em>,
+                  <em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> src</code></em>);</pre>
+<p>Copies key requirements from <em class="parameter"><code>src</code></em>
+ object to <em class="parameter"><code>dst</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN12502"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12504"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqCopy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12519"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReqCopy.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQMATCHKEY"></a><h3>xmlSecKeyReqMatchKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyReqMatchKey (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Checks whether <code class="PARAMETER">key</code>
- matches key requirements <code class="PARAMETER">keyReq</code>
+<div class="refsect2">
+<a name="xmlSecKeyReqMatchKey"></a><h3>xmlSecKeyReqMatchKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyReqMatchKey (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Checks whether <em class="parameter"><code>key</code></em>
+ matches key requirements <em class="parameter"><code>keyReq</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12538"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12540"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqMatchKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12555"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReqMatchKey.returns"></a><h4>Returns</h4>
 <p> 1 if key matches requirements, 0 if not and a negative value
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQMATCHKEYVALUE"></a><h3>xmlSecKeyReqMatchKeyValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyReqMatchKeyValue (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>,
-                           <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> value</code>);</pre>
-<p>Checks whether <code class="PARAMETER">keyValue</code>
- matches key requirements <code class="PARAMETER">keyReq</code>
+<div class="refsect2">
+<a name="xmlSecKeyReqMatchKeyValue"></a><h3>xmlSecKeyReqMatchKeyValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyReqMatchKeyValue (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> value</code></em>);</pre>
+<p>Checks whether <em class="parameter"><code>keyValue</code></em>
+ matches key requirements <em class="parameter"><code>keyReq</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12574"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12576"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqMatchKeyValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>value</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12591"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReqMatchKeyValue.returns"></a><h4>Returns</h4>
 <p> 1 if key value matches requirements, 0 if not and a negative value
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQDEBUGDUMP"></a><h3>xmlSecKeyReqDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyReqDebugDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">keyReq</code>
- into <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyReqDebugDump"></a><h3>xmlSecKeyReqDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyReqDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>,
+                       <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>keyReq</code></em>
+ into <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12610"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12612"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQDEBUGXMLDUMP"></a><h3>xmlSecKeyReqDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyReqDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">keyReq</code>
- into <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyReqDebugXmlDump"></a><h3>xmlSecKeyReqDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyReqDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>,
+                          <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>keyReq</code></em>
+ into <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN12643"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12645"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReqDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYCREATE"></a><h3>xmlSecKeyCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyCreate (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyCreate"></a><h3>xmlSecKeyCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyCreate (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Allocates and initializes new key. Caller is responsible for
-freeing returned object with <a href="xmlsec-keys.html#XMLSECKEYDESTROY"><span class="TYPE">xmlSecKeyDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN12672"></a><h4>Returns</h4>
-<p> the pointer to newly allocated <code class="PARAMETER">xmlSecKey</code>
+freeing returned object with <a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()"><span class="type">xmlSecKeyDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyCreate.returns"></a><h4>Returns</h4>
+<p> the pointer to newly allocated <em class="parameter"><code>xmlSecKey</code></em>
 structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDESTROY"></a><h3>xmlSecKeyDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDestroy (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Destroys the key created using <a href="xmlsec-keys.html#XMLSECKEYCREATE"><span class="TYPE">xmlSecKeyCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN12689"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12691"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeyDestroy"></a><h3>xmlSecKeyDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Destroys the key created using <a class="link" href="xmlsec-keys.html#xmlSecKeyCreate" title="xmlSecKeyCreate ()"><span class="type">xmlSecKeyCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYEMPTY"></a><h3>xmlSecKeyEmpty ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyEmpty (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Clears the <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyEmpty"></a><h3>xmlSecKeyEmpty ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyEmpty (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Clears the <em class="parameter"><code>key</code></em>
  data.</p>
-<div class="REFSECT3">
-<a name="AEN12712"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12714"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyEmpty.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDUPLICATE"></a><h3>xmlSecKeyDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyDuplicate (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Creates a duplicate of the given <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyDuplicate"></a><h3>xmlSecKeyDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyDuplicate (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Creates a duplicate of the given <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12735"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12737"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to the <a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKey</span></a> structure.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to the <a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="type">xmlSecKey</span></a> structure.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12748"></a><h4>Returns</h4>
-<p> the pointer to newly allocated <a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKey</span></a> structure
+<div class="refsect3">
+<a name="xmlSecKeyDuplicate.returns"></a><h4>Returns</h4>
+<p> the pointer to newly allocated <a class="link" href="xmlsec-keys.html#xmlSecKey" title="struct xmlSecKey"><span class="type">xmlSecKey</span></a> structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYCOPY"></a><h3>xmlSecKeyCopy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyCopy (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> keyDst</code>,
-               <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> keySrc</code>);</pre>
-<p>Copies key data from <code class="PARAMETER">keySrc</code>
- to <code class="PARAMETER">keyDst</code>
+<div class="refsect2">
+<a name="xmlSecKeyCopy"></a><h3>xmlSecKeyCopy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyCopy (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> keyDst</code></em>,
+               <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> keySrc</code></em>);</pre>
+<p>Copies key data from <em class="parameter"><code>keySrc</code></em>
+ to <em class="parameter"><code>keyDst</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12769"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12771"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyCopy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyDst</p></td>
-<td><p>the destination key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyDst</p></td>
+<td class="parameter_description"><p>the destination key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keySrc</p></td>
-<td><p>the source key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keySrc</p></td>
+<td class="parameter_description"><p>the source key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12786"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyCopy.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="XMLSECKEYGETNAME"></a><h3>xmlSecKeyGetName ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecKeyGetName (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Gets key name (see also <a href="xmlsec-keys.html#XMLSECKEYSETNAME"><span class="TYPE">xmlSecKeySetName</span></a> function).</p>
-<div class="REFSECT3">
-<a name="AEN12802"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12804"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeyGetName"></a><h3>xmlSecKeyGetName ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
+xmlSecKeyGetName (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Gets key name (see also <a class="link" href="xmlsec-keys.html#xmlSecKeySetName" title="xmlSecKeySetName ()"><span class="type">xmlSecKeySetName</span></a> function).</p>
+<div class="refsect3">
+<a name="xmlSecKeyGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12813"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyGetName.returns"></a><h4>Returns</h4>
 <p> key name.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSETNAME"></a><h3>xmlSecKeySetName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeySetName (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>);</pre>
-<p>Sets key name (see also <a href="xmlsec-keys.html#XMLSECKEYGETNAME"><span class="TYPE">xmlSecKeyGetName</span></a> function).</p>
-<div class="REFSECT3">
-<a name="AEN12832"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12834"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeySetName"></a><h3>xmlSecKeySetName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeySetName (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>);</pre>
+<p>Sets key name (see also <a class="link" href="xmlsec-keys.html#xmlSecKeyGetName" title="xmlSecKeyGetName ()"><span class="type">xmlSecKeyGetName</span></a> function).</p>
+<div class="refsect3">
+<a name="xmlSecKeySetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the new key name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the new key name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12849"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeySetName.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="XMLSECKEYGETTYPE"></a><h3>xmlSecKeyGetType ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a>
-xmlSecKeyGetType (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Gets <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyGetType"></a><h3>xmlSecKeyGetType ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+xmlSecKeyGetType (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Gets <em class="parameter"><code>key</code></em>
  type.</p>
-<div class="REFSECT3">
-<a name="AEN12864"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12866"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyGetType.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12875"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyGetType.returns"></a><h4>Returns</h4>
 <p> key type.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYGETVALUE"></a><h3>xmlSecKeyGetValue ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecKeyGetValue (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Gets key value (see also <a href="xmlsec-keys.html#XMLSECKEYSETVALUE"><span class="TYPE">xmlSecKeySetValue</span></a> function).</p>
-<div class="REFSECT3">
-<a name="AEN12891"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12893"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeyGetValue"></a><h3>xmlSecKeyGetValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecKeyGetValue (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Gets key value (see also <a class="link" href="xmlsec-keys.html#xmlSecKeySetValue" title="xmlSecKeySetValue ()"><span class="type">xmlSecKeySetValue</span></a> function).</p>
+<div class="refsect3">
+<a name="xmlSecKeyGetValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN12902"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyGetValue.returns"></a><h4>Returns</h4>
 <p> key value (crypto material).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSETVALUE"></a><h3>xmlSecKeySetValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeySetValue (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> value</code>);</pre>
-<p>Sets key value (see also <a href="xmlsec-keys.html#XMLSECKEYGETVALUE"><span class="TYPE">xmlSecKeyGetValue</span></a> function).</p>
-<div class="REFSECT3">
-<a name="AEN12921"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12923"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeySetValue"></a><h3>xmlSecKeySetValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeySetValue (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                   <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> value</code></em>);</pre>
+<p>Sets key value (see also <a class="link" href="xmlsec-keys.html#xmlSecKeyGetValue" title="xmlSecKeyGetValue ()"><span class="type">xmlSecKeyGetValue</span></a> function).</p>
+<div class="refsect3">
+<a name="xmlSecKeySetValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>value</p></td>
-<td><p>the new value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>value</p></td>
+<td class="parameter_description"><p>the new value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12938"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeySetValue.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="XMLSECKEYGETDATA"></a><h3>xmlSecKeyGetData ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecKeyGetData (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                  <code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyGetData"></a><h3>xmlSecKeyGetData ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecKeyGetData (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                  <em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>);</pre>
 <p>Gets key's data.</p>
-<div class="REFSECT3">
-<a name="AEN12955"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12957"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyGetData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the requested data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the requested data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN12972"></a><h4>Returns</h4>
-<p> additional data associated with the <code class="PARAMETER">key</code>
+<div class="refsect3">
+<a name="xmlSecKeyGetData.returns"></a><h4>Returns</h4>
+<p> additional data associated with the <em class="parameter"><code>key</code></em>
 (see also
-<a href="xmlsec-keys.html#XMLSECKEYADOPTDATA"><span class="TYPE">xmlSecKeyAdoptData</span></a> function).</p>
+<a class="link" href="xmlsec-keys.html#xmlSecKeyAdoptData" title="xmlSecKeyAdoptData ()"><span class="type">xmlSecKeyAdoptData</span></a> function).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYENSUREDATA"></a><h3>xmlSecKeyEnsureData ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecKeyEnsureData (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>);</pre>
-<p>If necessary, creates key data of <code class="PARAMETER">dataId</code>
- klass and adds to <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyEnsureData"></a><h3>xmlSecKeyEnsureData ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecKeyEnsureData (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>);</pre>
+<p>If necessary, creates key data of <em class="parameter"><code>dataId</code></em>
+ klass and adds to <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN12994"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN12996"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyEnsureData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the requested data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the requested data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13011"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyEnsureData.returns"></a><h4>Returns</h4>
 <p> pointer to key data or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYADOPTDATA"></a><h3>xmlSecKeyAdoptData ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyAdoptData (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Adds <code class="PARAMETER">data</code>
- to the <code class="PARAMETER">key</code>
-. The <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecKeyAdoptData"></a><h3>xmlSecKeyAdoptData ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyAdoptData (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                    <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Adds <em class="parameter"><code>data</code></em>
+ to the <em class="parameter"><code>key</code></em>
+. The <em class="parameter"><code>data</code></em>
  object will be destroyed
-by <code class="PARAMETER">key</code>
+by <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13032"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13034"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyAdoptData.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13049"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyAdoptData.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDEBUGDUMP"></a><h3>xmlSecKeyDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDebugDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                    <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the information about the <code class="PARAMETER">key</code>
- to the <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDebugDump"></a><h3>xmlSecKeyDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                    <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the information about the <em class="parameter"><code>key</code></em>
+ to the <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13068"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13070"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDEBUGXMLDUMP"></a><h3>xmlSecKeyDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the information about the <code class="PARAMETER">key</code>
- to the <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDebugXmlDump"></a><h3>xmlSecKeyDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                       <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the information about the <em class="parameter"><code>key</code></em>
+ to the <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN13101"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13103"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYGENERATE"></a><h3>xmlSecKeyGenerate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyGenerate (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>,
-                   <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> sizeBits</code>,
-                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Generates new key of requested klass <code class="PARAMETER">dataId</code>
- and <code class="PARAMETER">type</code>
+<div class="refsect2">
+<a name="xmlSecKeyGenerate"></a><h3>xmlSecKeyGenerate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyGenerate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>,
+                   <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> sizeBits</code></em>,
+                   <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Generates new key of requested klass <em class="parameter"><code>dataId</code></em>
+ and <em class="parameter"><code>type</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13137"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13139"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyGenerate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the requested key klass (rsa, dsa, aes, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the requested key klass (rsa, dsa, aes, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>sizeBits</p></td>
-<td><p>the new key size (in bits!).</p></td>
-<td> </td>
+<td class="parameter_name"><p>sizeBits</p></td>
+<td class="parameter_description"><p>the new key size (in bits!).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the new key type (session, permanent, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the new key type (session, permanent, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN13160"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyGenerate.returns"></a><h4>Returns</h4>
 <p> pointer to newly created key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYGENERATEBYNAME"></a><h3>xmlSecKeyGenerateByName ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyGenerateByName (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                         <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> sizeBits</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Generates new key of requested <code class="PARAMETER">klass</code>
- and <code class="PARAMETER">type</code>
+<div class="refsect2">
+<a name="xmlSecKeyGenerateByName"></a><h3>xmlSecKeyGenerateByName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyGenerateByName (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> sizeBits</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Generates new key of requested <em class="parameter"><code>klass</code></em>
+ and <em class="parameter"><code>type</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13182"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13184"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyGenerateByName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>name</p></td>
-<td><p>the requested key klass name (rsa, dsa, aes, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the requested key klass name (rsa, dsa, aes, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>sizeBits</p></td>
-<td><p>the new key size (in bits!).</p></td>
-<td> </td>
+<td class="parameter_name"><p>sizeBits</p></td>
+<td class="parameter_description"><p>the new key size (in bits!).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the new key type (session, permanent, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the new key type (session, permanent, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN13205"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyGenerateByName.returns"></a><h4>Returns</h4>
 <p> pointer to newly created key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYMATCH"></a><h3>xmlSecKeyMatch ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyMatch (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
-<p>Checks whether the <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyMatch"></a><h3>xmlSecKeyMatch ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyMatch (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                <em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
+<p>Checks whether the <em class="parameter"><code>key</code></em>
  matches the given criteria.</p>
-<div class="REFSECT3">
-<a name="AEN13226"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13228"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyMatch.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the pointer to key name (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the pointer to key name (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN13249"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyMatch.returns"></a><h4>Returns</h4>
 <p> 1 if the key satisfies the given criteria or 0 otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREADBUFFER"></a><h3>xmlSecKeyReadBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyReadBuffer (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>,
-                     <code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBuffer</span></a> *buffer</code>);</pre>
-<p>Reads the key value of klass <code class="PARAMETER">dataId</code>
+<div class="refsect2">
+<a name="xmlSecKeyReadBuffer"></a><h3>xmlSecKeyReadBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyReadBuffer (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>,
+                     <em class="parameter"><code><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="type">xmlSecBuffer</span></a> *buffer</code></em>);</pre>
+<p>Reads the key value of klass <em class="parameter"><code>dataId</code></em>
  from a buffer.</p>
-<div class="REFSECT3">
-<a name="AEN13267"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13269"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReadBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the key value data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the key value data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the buffer that contains the binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the buffer that contains the binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13284"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReadBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to newly created key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREADBINARYFILE"></a><h3>xmlSecKeyReadBinaryFile ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyReadBinaryFile (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>);</pre>
-<p>Reads the key value of klass <code class="PARAMETER">dataId</code>
- from a binary file <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecKeyReadBinaryFile"></a><h3>xmlSecKeyReadBinaryFile ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyReadBinaryFile (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>);</pre>
+<p>Reads the key value of klass <em class="parameter"><code>dataId</code></em>
+ from a binary file <em class="parameter"><code>filename</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13303"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13305"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReadBinaryFile.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the key value data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the key value data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key binary filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key binary filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13320"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReadBinaryFile.returns"></a><h4>Returns</h4>
 <p> pointer to newly created key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREADMEMORY"></a><h3>xmlSecKeyReadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyReadMemory (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>,
-                     <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                     <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>);</pre>
-<p>Reads the key value of klass <code class="PARAMETER">dataId</code>
- from a memory block <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecKeyReadMemory"></a><h3>xmlSecKeyReadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyReadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</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>Reads the key value of klass <em class="parameter"><code>dataId</code></em>
+ from a memory block <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13342"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13344"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the key value data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the key value data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the memory containing the key</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the memory containing the key</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of the memory block</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of the memory block</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13365"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyReadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to newly created key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYISVALID"></a><h3>xmlSecKeyIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyIsValid(key)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">key</code>
- is not NULL and <code class="PARAMETER">key->id</code>
+<div class="refsect2">
+<a name="xmlSecKeyIsValid"></a><h3>xmlSecKeyIsValid()</h3>
+<pre class="programlisting">#define             xmlSecKeyIsValid(key)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>key</code></em>
+ is not NULL and <em class="parameter"><code>key->id</code></em>
  is not NULL
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN13376"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13378"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYCHECKID"></a><h3>xmlSecKeyCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyCheckId(key, keyId)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">key</code>
- is valid and <code class="PARAMETER">key</code>
-'s id is equal to <code class="PARAMETER">keyId</code>
+<div class="refsect2">
+<a name="xmlSecKeyCheckId"></a><h3>xmlSecKeyCheckId()</h3>
+<pre class="programlisting">#define             xmlSecKeyCheckId(key, keyId)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>key</code></em>
+ is valid and <em class="parameter"><code>key</code></em>
+'s id is equal to <em class="parameter"><code>keyId</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13396"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13398"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyId</p></td>
-<td><p>the key Id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyId</p></td>
+<td class="parameter_description"><p>the key Id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYPTRLISTGETKLASS"></a><h3>xmlSecKeyPtrListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecKeyPtrListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyPtrListGetKlass"></a><h3>xmlSecKeyPtrListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecKeyPtrListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The keys list klass.</p>
-<div class="REFSECT3">
-<a name="AEN13423"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyPtrListGetKlass.returns"></a><h4>Returns</h4>
 <p> keys list id.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYS.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGE"></a><h3>xmlSecKeyUsage</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                    xmlSecKeyUsage;</pre>
+<div class="refsect1">
+<a name="xmlsec-keys.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecKeyUsage"></a><h3>xmlSecKeyUsage</h3>
+<pre class="programlisting">typedef unsigned int                    xmlSecKeyUsage;
+</pre>
 <p>The key usage.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGESIGN"></a><h3>xmlSecKeyUsageSign</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageSign              0x00000001</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageSign"></a><h3>xmlSecKeyUsageSign</h3>
+<pre class="programlisting">#define xmlSecKeyUsageSign              0x00000001
+</pre>
 <p>Key can be used in any way.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGEVERIFY"></a><h3>xmlSecKeyUsageVerify</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageVerify            0x00000002</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageVerify"></a><h3>xmlSecKeyUsageVerify</h3>
+<pre class="programlisting">#define xmlSecKeyUsageVerify            0x00000002
+</pre>
 <p>Key for signing.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGEENCRYPT"></a><h3>xmlSecKeyUsageEncrypt</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageEncrypt           0x00000004</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageEncrypt"></a><h3>xmlSecKeyUsageEncrypt</h3>
+<pre class="programlisting">#define xmlSecKeyUsageEncrypt           0x00000004
+</pre>
 <p>Key for signature verification.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGEDECRYPT"></a><h3>xmlSecKeyUsageDecrypt</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageDecrypt           0x00000008</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageDecrypt"></a><h3>xmlSecKeyUsageDecrypt</h3>
+<pre class="programlisting">#define xmlSecKeyUsageDecrypt           0x00000008
+</pre>
 <p>An encryption key.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGEKEYEXCHANGE"></a><h3>xmlSecKeyUsageKeyExchange</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageKeyExchange       0x00000010</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageKeyExchange"></a><h3>xmlSecKeyUsageKeyExchange</h3>
+<pre class="programlisting">#define xmlSecKeyUsageKeyExchange       0x00000010
+</pre>
 <p>The key is used for key exchange.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSAGEANY"></a><h3>xmlSecKeyUsageAny</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUsageAny               0xFFFFFFFF</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUsageAny"></a><h3>xmlSecKeyUsageAny</h3>
+<pre class="programlisting">#define xmlSecKeyUsageAny               0xFFFFFFFF
+</pre>
 <p>A decryption key.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITH"></a><h3>struct xmlSecKeyUseWith</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyUseWith {
+<div class="refsect2">
+<a name="xmlSecKeyUseWith"></a><h3>struct xmlSecKeyUseWith</h3>
+<pre class="programlisting">struct xmlSecKeyUseWith {
     xmlChar*                    application;
     xmlChar*                    identifier;
 
     void*                       reserved1;
     void*                       reserved2;
-};</pre>
+};
+</pre>
 <p>Information about application and user of the key.</p>
-<div class="REFSECT3">
-<a name="AEN13476"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13478"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyUseWith.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">application</code>;</p></td>
-<td><p>the application.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyUseWith.application"></a>application</code></em>;</p></td>
+<td class="struct_member_description"><p>the application.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">identifier</code>;</p></td>
-<td><p>the identifier.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyUseWith.identifier"></a>identifier</code></em>;</p></td>
+<td class="struct_member_description"><p>the identifier.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for future use.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyUseWith.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for future use.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved2</code>;</p></td>
-<td><p>reserved for future use.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyUseWith.reserved2"></a>reserved2</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for future use.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYUSEWITHPTRLISTID"></a><h3>xmlSecKeyUseWithPtrListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyUseWithPtrListId       xmlSecKeyUseWithPtrListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyUseWithPtrListId"></a><h3>xmlSecKeyUseWithPtrListId</h3>
+<pre class="programlisting">#define xmlSecKeyUseWithPtrListId       xmlSecKeyUseWithPtrListGetKlass()
+</pre>
 <p>The keys list klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYREQ"></a><h3>struct xmlSecKeyReq</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyReq {
+<div class="refsect2">
+<a name="xmlSecKeyReq"></a><h3>struct xmlSecKeyReq</h3>
+<pre class="programlisting">struct xmlSecKeyReq {
     xmlSecKeyDataId             keyId;
     xmlSecKeyDataType           keyType;
     xmlSecKeyUsage              keyUsage;
@@ -1947,126 +1934,124 @@ xmlSecKeyPtrListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span>
 
     void*                       reserved1;
     void*                       reserved2;
-};</pre>
+};
+</pre>
 <p>The key requirements information.</p>
-<div class="REFSECT3">
-<a name="AEN13529"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13531"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyReq.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecKeyDataId</span></font> <code class="STRUCTFIELD">keyId</code>;</p></td>
-<td><p>the desired key value klass.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyDataId</span></font> <em class="structfield"><code><a name="xmlSecKeyReq.keyId"></a>keyId</code></em>;</p></td>
+<td class="struct_member_description"><p>the desired key value klass.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> <code class="STRUCTFIELD">keyType</code>;</p></td>
-<td><p>the desired key type.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> <em class="structfield"><code><a name="xmlSecKeyReq.keyType"></a>keyType</code></em>;</p></td>
+<td class="struct_member_description"><p>the desired key type.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keys.html#XMLSECKEYUSAGE"><span class="TYPE">xmlSecKeyUsage</span></a> <code class="STRUCTFIELD">keyUsage</code>;</p></td>
-<td><p>the desired key usage.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsage" title="xmlSecKeyUsage"><span class="type">xmlSecKeyUsage</span></a> <em class="structfield"><code><a name="xmlSecKeyReq.keyUsage"></a>keyUsage</code></em>;</p></td>
+<td class="struct_member_description"><p>the desired key usage.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">keyBitsSize</code>;</p></td>
-<td><p>the desired key size (in bits!).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyReq.keyBitsSize"></a>keyBitsSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the desired key size (in bits!).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">keyUseWithList</code>;</p></td>
-<td><p>the desired key use with application/identifier information.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecKeyReq.keyUseWithList"></a>keyUseWithList</code></em>;</p></td>
+<td class="struct_member_description"><p>the desired key use with application/identifier information.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for future use.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyReq.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for future use.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved2</code>;</p></td>
-<td><p>reserved for future use.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyReq.reserved2"></a>reserved2</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for future use.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEY"></a><h3>struct xmlSecKey</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKey {
+<div class="refsect2">
+<a name="xmlSecKey"></a><h3>struct xmlSecKey</h3>
+<pre class="programlisting">struct xmlSecKey {
     xmlChar*                            name;
     xmlSecKeyDataPtr                    value;
     xmlSecPtrListPtr                    dataList;
     xmlSecKeyUsage                      usage;
     time_t                              notValidBefore;
     time_t                              notValidAfter;
-};</pre>
+};
+</pre>
 <p>The key.</p>
-<div class="REFSECT3">
-<a name="AEN13603"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13605"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKey.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the key name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKey.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the key name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> <code class="STRUCTFIELD">value</code>;</p></td>
-<td><p>the key value.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyDataPtr</span></font> <em class="structfield"><code><a name="xmlSecKey.value"></a>value</code></em>;</p></td>
+<td class="struct_member_description"><p>the key value.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> <code class="STRUCTFIELD">dataList</code>;</p></td>
-<td><p>the key data list.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecPtrListPtr</span></font> <em class="structfield"><code><a name="xmlSecKey.dataList"></a>dataList</code></em>;</p></td>
+<td class="struct_member_description"><p>the key data list.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keys.html#XMLSECKEYUSAGE"><span class="TYPE">xmlSecKeyUsage</span></a> <code class="STRUCTFIELD">usage</code>;</p></td>
-<td><p>the key usage.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keys.html#xmlSecKeyUsage" title="xmlSecKeyUsage"><span class="type">xmlSecKeyUsage</span></a> <em class="structfield"><code><a name="xmlSecKey.usage"></a>usage</code></em>;</p></td>
+<td class="struct_member_description"><p>the key usage.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">time_t</span></font> <code class="STRUCTFIELD">notValidBefore</code>;</p></td>
-<td><p>the start key validity interval.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">time_t</span></font> <em class="structfield"><code><a name="xmlSecKey.notValidBefore"></a>notValidBefore</code></em>;</p></td>
+<td class="struct_member_description"><p>the start key validity interval.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">time_t</span></font> <code class="STRUCTFIELD">notValidAfter</code>;</p></td>
-<td><p>the end key validity interval.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">time_t</span></font> <em class="structfield"><code><a name="xmlSecKey.notValidAfter"></a>notValidAfter</code></em>;</p></td>
+<td class="struct_member_description"><p>the end key validity interval.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYPTRLISTID"></a><h3>xmlSecKeyPtrListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyPtrListId      xmlSecKeyPtrListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyPtrListId"></a><h3>xmlSecKeyPtrListId</h3>
+<pre class="programlisting">#define xmlSecKeyPtrListId      xmlSecKeyPtrListGetKlass()
+</pre>
 <p>The keys list klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-keysdata.html"><b><<< keysdata</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-keysmngr.html"><b>keysmngr >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-keysdata.html b/docs/api/xmlsec-keysdata.html
index 01f8428..e86acc3 100644
--- a/docs/api/xmlsec-keysdata.html
+++ b/docs/api/xmlsec-keysdata.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keysdata</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="keyinfo" href="xmlsec-keyinfo.html">
-<link rel="NEXT" title="keys" href="xmlsec-keys.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keysdata: 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-keyinfo.html" title="keyinfo">
+<link rel="next" href="xmlsec-keys.html" title="keys">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,3015 +73,3046 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-keyinfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-keysdata.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-keyinfo.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-keys.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-KEYSDATA"></a>keysdata</h1>
-<div class="REFNAMEDIV">
-<a name="AEN8347"></a><h2>Name</h2>keysdata -- Crypto key data object definition.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSDATA.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN8352"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-keysdata"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-keysdata.top_of_page"></a>keysdata</span></h2>
+<p>keysdata — Crypto key data object definition.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-keysdata.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSGET">xmlSecKeyDataIdsGet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListPtr</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSINIT">xmlSecKeyDataIdsInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsGet" title="xmlSecKeyDataIdsGet ()">xmlSecKeyDataIdsGet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSSHUTDOWN">xmlSecKeyDataIdsShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsInit" title="xmlSecKeyDataIdsInit ()">xmlSecKeyDataIdsInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSREGISTERDEFAULT">xmlSecKeyDataIdsRegisterDefault</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsShutdown" title="xmlSecKeyDataIdsShutdown ()">xmlSecKeyDataIdsShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDSREGISTER">xmlSecKeyDataIdsRegister</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsRegisterDefault" title="xmlSecKeyDataIdsRegisterDefault ()">xmlSecKeyDataIdsRegisterDefault</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATACREATE">xmlSecKeyDataCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdsRegister" title="xmlSecKeyDataIdsRegister ()">xmlSecKeyDataIdsRegister</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATADUPLICATE">xmlSecKeyDataDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCreate" title="xmlSecKeyDataCreate ()">xmlSecKeyDataCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATADESTROY">xmlSecKeyDataDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDuplicate" title="xmlSecKeyDataDuplicate ()">xmlSecKeyDataDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAGENERATE">xmlSecKeyDataGenerate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDestroy" title="xmlSecKeyDataDestroy ()">xmlSecKeyDataDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAGETTYPE">xmlSecKeyDataGetType</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGenerate" title="xmlSecKeyDataGenerate ()">xmlSecKeyDataGenerate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAGETSIZE">xmlSecKeyDataGetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetType" title="xmlSecKeyDataGetType ()">xmlSecKeyDataGetType</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAGETIDENTIFIER">xmlSecKeyDataGetIdentifier</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-keysdata.html#xmlSecKeyDataGetSize" title="xmlSecKeyDataGetSize ()">xmlSecKeyDataGetSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMP">xmlSecKeyDataDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetIdentifier" title="xmlSecKeyDataGetIdentifier ()">xmlSecKeyDataGetIdentifier</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGXMLDUMP">xmlSecKeyDataDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDump" title="xmlSecKeyDataDebugDump ()">xmlSecKeyDataDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREAD">xmlSecKeyDataXmlRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugXmlDump" title="xmlSecKeyDataDebugXmlDump ()">xmlSecKeyDataDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLWRITE">xmlSecKeyDataXmlWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlRead" title="xmlSecKeyDataXmlRead ()">xmlSecKeyDataXmlRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINREAD">xmlSecKeyDataBinRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlWrite" title="xmlSecKeyDataXmlWrite ()">xmlSecKeyDataXmlWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINWRITE">xmlSecKeyDataBinWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinRead" title="xmlSecKeyDataBinRead ()">xmlSecKeyDataBinRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAGETNAME">xmlSecKeyDataGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinWrite" title="xmlSecKeyDataBinWrite ()">xmlSecKeyDataBinWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAISVALID">xmlSecKeyDataIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetName" title="xmlSecKeyDataGetName()">xmlSecKeyDataGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKID">xmlSecKeyDataCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIsValid" title="xmlSecKeyDataIsValid()">xmlSecKeyDataIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKUSAGE">xmlSecKeyDataCheckUsage</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckId" title="xmlSecKeyDataCheckId()">xmlSecKeyDataCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATACHECKSIZE">xmlSecKeyDataCheckSize</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckUsage" title="xmlSecKeyDataCheckUsage()">xmlSecKeyDataCheckUsage</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDUNKNOWN">xmlSecKeyDataIdUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataCheckSize" title="xmlSecKeyDataCheckSize()">xmlSecKeyDataCheckSize</a><span class="c_punctuation">()</span>
+</td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAINITMETHOD">*xmlSecKeyDataInitMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataInitMethod" title="xmlSecKeyDataInitMethod ()">*xmlSecKeyDataInitMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATADUPLICATEMETHOD">*xmlSecKeyDataDuplicateMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDuplicateMethod" title="xmlSecKeyDataDuplicateMethod ()">*xmlSecKeyDataDuplicateMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAFINALIZEMETHOD">*xmlSecKeyDataFinalizeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFinalizeMethod" title="xmlSecKeyDataFinalizeMethod ()">*xmlSecKeyDataFinalizeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREADMETHOD">*xmlSecKeyDataXmlReadMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlReadMethod" title="xmlSecKeyDataXmlReadMethod ()">*xmlSecKeyDataXmlReadMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLWRITEMETHOD">*xmlSecKeyDataXmlWriteMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlWriteMethod" title="xmlSecKeyDataXmlWriteMethod ()">*xmlSecKeyDataXmlWriteMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATABINREADMETHOD">*xmlSecKeyDataBinReadMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinReadMethod" title="xmlSecKeyDataBinReadMethod ()">*xmlSecKeyDataBinReadMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATABINWRITEMETHOD">*xmlSecKeyDataBinWriteMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinWriteMethod" title="xmlSecKeyDataBinWriteMethod ()">*xmlSecKeyDataBinWriteMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAGENERATEMETHOD">*xmlSecKeyDataGenerateMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGenerateMethod" title="xmlSecKeyDataGenerateMethod ()">*xmlSecKeyDataGenerateMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETTYPEMETHOD">*xmlSecKeyDataGetTypeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetTypeMethod" title="xmlSecKeyDataGetTypeMethod ()">*xmlSecKeyDataGetTypeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETSIZEMETHOD">*xmlSecKeyDataGetSizeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetSizeMethod" title="xmlSecKeyDataGetSizeMethod ()">*xmlSecKeyDataGetSizeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETIDENTIFIERMETHOD">*xmlSecKeyDataGetIdentifierMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetIdentifierMethod" title="xmlSecKeyDataGetIdentifierMethod ()">*xmlSecKeyDataGetIdentifierMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMPMETHOD">*xmlSecKeyDataDebugDumpMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDumpMethod" title="xmlSecKeyDataDebugDumpMethod ()">*xmlSecKeyDataDebugDumpMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAKLASSGETNAME">xmlSecKeyDataKlassGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataKlassGetName" title="xmlSecKeyDataKlassGetName()">xmlSecKeyDataKlassGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATALISTGETKLASS">xmlSecKeyDataListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataListGetKlass" title="xmlSecKeyDataListGetKlass ()">xmlSecKeyDataListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTGETKLASS">xmlSecKeyDataIdListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListGetKlass" title="xmlSecKeyDataIdListGetKlass ()">xmlSecKeyDataIdListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFIND">xmlSecKeyDataIdListFind</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFind" title="xmlSecKeyDataIdListFind ()">xmlSecKeyDataIdListFind</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYNODE">xmlSecKeyDataIdListFindByNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByNode" title="xmlSecKeyDataIdListFindByNode ()">xmlSecKeyDataIdListFindByNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYHREF">xmlSecKeyDataIdListFindByHref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByHref" title="xmlSecKeyDataIdListFindByHref ()">xmlSecKeyDataIdListFindByHref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTFINDBYNAME">xmlSecKeyDataIdListFindByName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListFindByName" title="xmlSecKeyDataIdListFindByName ()">xmlSecKeyDataIdListFindByName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTDEBUGDUMP">xmlSecKeyDataIdListDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListDebugDump" title="xmlSecKeyDataIdListDebugDump ()">xmlSecKeyDataIdListDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTDEBUGXMLDUMP">xmlSecKeyDataIdListDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListDebugXmlDump" title="xmlSecKeyDataIdListDebugXmlDump ()">xmlSecKeyDataIdListDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEINITIALIZE">xmlSecKeyDataBinaryValueInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueInitialize" title="xmlSecKeyDataBinaryValueInitialize ()">xmlSecKeyDataBinaryValueInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDUPLICATE">xmlSecKeyDataBinaryValueDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDuplicate" title="xmlSecKeyDataBinaryValueDuplicate ()">xmlSecKeyDataBinaryValueDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEFINALIZE">xmlSecKeyDataBinaryValueFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueFinalize" title="xmlSecKeyDataBinaryValueFinalize ()">xmlSecKeyDataBinaryValueFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEXMLREAD">xmlSecKeyDataBinaryValueXmlRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueXmlRead" title="xmlSecKeyDataBinaryValueXmlRead ()">xmlSecKeyDataBinaryValueXmlRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEXMLWRITE">xmlSecKeyDataBinaryValueXmlWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueXmlWrite" title="xmlSecKeyDataBinaryValueXmlWrite ()">xmlSecKeyDataBinaryValueXmlWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEBINREAD">xmlSecKeyDataBinaryValueBinRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueBinRead" title="xmlSecKeyDataBinaryValueBinRead ()">xmlSecKeyDataBinaryValueBinRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEBINWRITE">xmlSecKeyDataBinaryValueBinWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueBinWrite" title="xmlSecKeyDataBinaryValueBinWrite ()">xmlSecKeyDataBinaryValueBinWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDEBUGDUMP">xmlSecKeyDataBinaryValueDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDebugDump" title="xmlSecKeyDataBinaryValueDebugDump ()">xmlSecKeyDataBinaryValueDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEDEBUGXMLDUMP">xmlSecKeyDataBinaryValueDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueDebugXmlDump" title="xmlSecKeyDataBinaryValueDebugXmlDump ()">xmlSecKeyDataBinaryValueDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEGETSIZE">xmlSecKeyDataBinaryValueGetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-keysdata.html#xmlSecKeyDataBinaryValueGetSize" title="xmlSecKeyDataBinaryValueGetSize ()">xmlSecKeyDataBinaryValueGetSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUEGETBUFFER">xmlSecKeyDataBinaryValueGetBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueGetBuffer" title="xmlSecKeyDataBinaryValueGetBuffer ()">xmlSecKeyDataBinaryValueGetBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYVALUESETBUFFER">xmlSecKeyDataBinaryValueSetBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinaryValueSetBuffer" title="xmlSecKeyDataBinaryValueSetBuffer ()">xmlSecKeyDataBinaryValueSetBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="RETURNVALUE">xmlSecKeyDataStorePtr</span></a></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECREATE">xmlSecKeyDataStoreCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStorePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCreate" title="xmlSecKeyDataStoreCreate ()">xmlSecKeyDataStoreCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREDESTROY">xmlSecKeyDataStoreDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreDestroy" title="xmlSecKeyDataStoreDestroy ()">xmlSecKeyDataStoreDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREGETNAME">xmlSecKeyDataStoreGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreGetName" title="xmlSecKeyDataStoreGetName()">xmlSecKeyDataStoreGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREISVALID">xmlSecKeyDataStoreIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreIsValid" title="xmlSecKeyDataStoreIsValid()">xmlSecKeyDataStoreIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECHECKID">xmlSecKeyDataStoreCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCheckId" title="xmlSecKeyDataStoreCheckId()">xmlSecKeyDataStoreCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECHECKSIZE">xmlSecKeyDataStoreCheckSize</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCheckSize" title="xmlSecKeyDataStoreCheckSize()">xmlSecKeyDataStoreCheckSize</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREINITIALIZEMETHOD">*xmlSecKeyDataStoreInitializeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreInitializeMethod" title="xmlSecKeyDataStoreInitializeMethod ()">*xmlSecKeyDataStoreInitializeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREFINALIZEMETHOD">*xmlSecKeyDataStoreFinalizeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreFinalizeMethod" title="xmlSecKeyDataStoreFinalizeMethod ()">*xmlSecKeyDataStoreFinalizeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREKLASSGETNAME">xmlSecKeyDataStoreKlassGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreKlassGetName" title="xmlSecKeyDataStoreKlassGetName()">xmlSecKeyDataStoreKlassGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREPTRLISTGETKLASS">xmlSecKeyDataStorePtrListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStorePtrListGetKlass" title="xmlSecKeyDataStorePtrListGetKlass ()">xmlSecKeyDataStorePtrListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSDATA.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN8829"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysdata.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE">xmlSecKeyDataUsage</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage">xmlSecKeyDataUsage</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageUnknown" title="xmlSecKeyDataUsageUnknown">xmlSecKeyDataUsageUnknown</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEUNKNOWN">xmlSecKeyDataUsageUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNodeRead" title="xmlSecKeyDataUsageKeyInfoNodeRead">xmlSecKeyDataUsageKeyInfoNodeRead</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODEREAD">xmlSecKeyDataUsageKeyInfoNodeRead</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNodeWrite" title="xmlSecKeyDataUsageKeyInfoNodeWrite">xmlSecKeyDataUsageKeyInfoNodeWrite</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODEWRITE">xmlSecKeyDataUsageKeyInfoNodeWrite</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNodeRead" title="xmlSecKeyDataUsageKeyValueNodeRead">xmlSecKeyDataUsageKeyValueNodeRead</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODEREAD">xmlSecKeyDataUsageKeyValueNodeRead</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNodeWrite" title="xmlSecKeyDataUsageKeyValueNodeWrite">xmlSecKeyDataUsageKeyValueNodeWrite</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODEWRITE">xmlSecKeyDataUsageKeyValueNodeWrite</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNodeXml" title="xmlSecKeyDataUsageRetrievalMethodNodeXml">xmlSecKeyDataUsageRetrievalMethodNodeXml</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODEXML">xmlSecKeyDataUsageRetrievalMethodNodeXml</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNodeBin" title="xmlSecKeyDataUsageRetrievalMethodNodeBin">xmlSecKeyDataUsageRetrievalMethodNodeBin</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODEBIN">xmlSecKeyDataUsageRetrievalMethodNodeBin</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageAny" title="xmlSecKeyDataUsageAny">xmlSecKeyDataUsageAny</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEANY">xmlSecKeyDataUsageAny</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyInfoNode" title="xmlSecKeyDataUsageKeyInfoNode">xmlSecKeyDataUsageKeyInfoNode</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYINFONODE">xmlSecKeyDataUsageKeyInfoNode</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageKeyValueNode" title="xmlSecKeyDataUsageKeyValueNode">xmlSecKeyDataUsageKeyValueNode</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGEKEYVALUENODE">xmlSecKeyDataUsageKeyValueNode</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsageRetrievalMethodNode" title="xmlSecKeyDataUsageRetrievalMethodNode">xmlSecKeyDataUsageRetrievalMethodNode</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGERETRIEVALMETHODNODE">xmlSecKeyDataUsageRetrievalMethodNode</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType">xmlSecKeyDataType</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE">xmlSecKeyDataType</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeUnknown" title="xmlSecKeyDataTypeUnknown">xmlSecKeyDataTypeUnknown</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEUNKNOWN">xmlSecKeyDataTypeUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeNone" title="xmlSecKeyDataTypeNone">xmlSecKeyDataTypeNone</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPENONE">xmlSecKeyDataTypeNone</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePublic" title="xmlSecKeyDataTypePublic">xmlSecKeyDataTypePublic</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPUBLIC">xmlSecKeyDataTypePublic</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePrivate" title="xmlSecKeyDataTypePrivate">xmlSecKeyDataTypePrivate</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPRIVATE">xmlSecKeyDataTypePrivate</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeSymmetric" title="xmlSecKeyDataTypeSymmetric">xmlSecKeyDataTypeSymmetric</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPESYMMETRIC">xmlSecKeyDataTypeSymmetric</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeSession" title="xmlSecKeyDataTypeSession">xmlSecKeyDataTypeSession</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPESESSION">xmlSecKeyDataTypeSession</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypePermanent" title="xmlSecKeyDataTypePermanent">xmlSecKeyDataTypePermanent</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEPERMANENT">xmlSecKeyDataTypePermanent</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeTrusted" title="xmlSecKeyDataTypeTrusted">xmlSecKeyDataTypeTrusted</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPETRUSTED">xmlSecKeyDataTypeTrusted</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeAny" title="xmlSecKeyDataTypeAny">xmlSecKeyDataTypeAny</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEANY">xmlSecKeyDataTypeAny</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat">xmlSecKeyDataFormat</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT">xmlSecKeyDataFormat</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyData" title="struct xmlSecKeyData">xmlSecKeyData</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA">xmlSecKeyData</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdUnknown" title="xmlSecKeyDataIdUnknown">xmlSecKeyDataIdUnknown</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAKLASS">xmlSecKeyDataKlass</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataKlass" title="struct xmlSecKeyDataKlass">xmlSecKeyDataKlass</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATALISTID">xmlSecKeyDataListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataListId" title="xmlSecKeyDataListId">xmlSecKeyDataListId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATAIDLISTID">xmlSecKeyDataIdListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataIdListId" title="xmlSecKeyDataIdListId">xmlSecKeyDataIdListId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATABINARYSIZE">xmlSecKeyDataBinarySize</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinarySize" title="xmlSecKeyDataBinarySize">xmlSecKeyDataBinarySize</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE">xmlSecKeyDataStore</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStore" title="struct xmlSecKeyDataStore">xmlSecKeyDataStore</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREIDUNKNOWN">xmlSecKeyDataStoreIdUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreIdUnknown" title="xmlSecKeyDataStoreIdUnknown">xmlSecKeyDataStoreIdUnknown</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREKLASS">xmlSecKeyDataStoreKlass</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreKlass" title="struct xmlSecKeyDataStoreKlass">xmlSecKeyDataStoreKlass</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREPTRLISTID">xmlSecKeyDataStorePtrListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStorePtrListId" title="xmlSecKeyDataStorePtrListId">xmlSecKeyDataStorePtrListId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSDATA.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto key data object definition.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSDATA.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDSGET"></a><h3>xmlSecKeyDataIdsGet ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a>
-xmlSecKeyDataIdsGet (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysdata.description"></a><h2>Description</h2>
+<p>
+Crypto key data object definition.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysdata.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdsGet"></a><h3>xmlSecKeyDataIdsGet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+xmlSecKeyDataIdsGet (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets global registered key data klasses list.</p>
-<div class="REFSECT3">
-<a name="AEN8975"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdsGet.returns"></a><h4>Returns</h4>
 <p> the pointer to list of all registered key data klasses.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDSINIT"></a><h3>xmlSecKeyDataIdsInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataIdsInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdsInit"></a><h3>xmlSecKeyDataIdsInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataIdsInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Initializes the key data klasses. This function is called from the
-<a href="xmlsec-xmlsec.html#XMLSECINIT"><span class="TYPE">xmlSecInit</span></a> function and the application should not call it directly.</p>
-<div class="REFSECT3">
-<a name="AEN8990"></a><h4>Returns</h4>
+<a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()"><span class="type">xmlSecInit</span></a> function and the application should not call it directly.</p>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdsInit.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="XMLSECKEYDATAIDSSHUTDOWN"></a><h3>xmlSecKeyDataIdsShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataIdsShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdsShutdown"></a><h3>xmlSecKeyDataIdsShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataIdsShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Shuts down the keys data klasses. This function is called from the
-<a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN"><span class="TYPE">xmlSecShutdown</span></a> function and the application should not call it directly.</p>
+<a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()"><span class="type">xmlSecShutdown</span></a> function and the application should not call it directly.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDSREGISTERDEFAULT"></a><h3>xmlSecKeyDataIdsRegisterDefault ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataIdsRegisterDefault (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdsRegisterDefault"></a><h3>xmlSecKeyDataIdsRegisterDefault ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataIdsRegisterDefault (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Registers default (implemented by XML Security Library)
 key data klasses: <dsig:KeyName/> element processing klass,
 <dsig:KeyValue/> element processing klass, ...</p>
-<div class="REFSECT3">
-<a name="AEN9015"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdsRegisterDefault.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="XMLSECKEYDATAIDSREGISTER"></a><h3>xmlSecKeyDataIdsRegister ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataIdsRegister (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>);</pre>
-<p>Registers <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdsRegister"></a><h3>xmlSecKeyDataIdsRegister ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataIdsRegister (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>);</pre>
+<p>Registers <em class="parameter"><code>id</code></em>
  in the global list of key data klasses.</p>
-<div class="REFSECT3">
-<a name="AEN9030"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9032"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdsRegister.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the key data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the key data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9041"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdsRegister.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="XMLSECKEYDATACREATE"></a><h3>xmlSecKeyDataCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecKeyDataCreate (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>);</pre>
-<p>Allocates and initializes new key data of the specified type <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataCreate"></a><h3>xmlSecKeyDataCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecKeyDataCreate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>);</pre>
+<p>Allocates and initializes new key data of the specified type <em class="parameter"><code>id</code></em>
 .
 Caller is responsible for destroying returned object with
-<a href="xmlsec-keysdata.html#XMLSECKEYDATADESTROY"><span class="TYPE">xmlSecKeyDataDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN9058"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9060"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDestroy" title="xmlSecKeyDataDestroy ()"><span class="type">xmlSecKeyDataDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyDataCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the data id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9069"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataCreate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly allocated key data structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADUPLICATE"></a><h3>xmlSecKeyDataDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecKeyDataDuplicate (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Creates a duplicate of the given <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataDuplicate"></a><h3>xmlSecKeyDataDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecKeyDataDuplicate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Creates a duplicate of the given <em class="parameter"><code>data</code></em>
 . Caller is responsible for
-destroying returned object with <a href="xmlsec-keysdata.html#XMLSECKEYDATADESTROY"><span class="TYPE">xmlSecKeyDataDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN9086"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9088"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+destroying returned object with <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDestroy" title="xmlSecKeyDataDestroy ()"><span class="type">xmlSecKeyDataDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyDataDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to the key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to the key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9097"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataDuplicate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly allocated key data structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADESTROY"></a><h3>xmlSecKeyDataDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataDestroy (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDestroy"></a><h3>xmlSecKeyDataDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Destroys the data and frees all allocated memory.</p>
-<div class="REFSECT3">
-<a name="AEN9111"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9113"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to the key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to the key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGENERATE"></a><h3>xmlSecKeyDataGenerate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataGenerate (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> sizeBits</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGenerate"></a><h3>xmlSecKeyDataGenerate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataGenerate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> sizeBits</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Generates new key data of given size and type.</p>
-<div class="REFSECT3">
-<a name="AEN9139"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9141"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGenerate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>sizeBits</p></td>
-<td><p>the desired key data size (in bits).</p></td>
-<td> </td>
+<td class="parameter_name"><p>sizeBits</p></td>
+<td class="parameter_description"><p>the desired key data size (in bits).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the desired key data type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the desired key data type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9162"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGenerate.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGETTYPE"></a><h3>xmlSecKeyDataGetType ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a>
-xmlSecKeyDataGetType (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetType"></a><h3>xmlSecKeyDataGetType ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+xmlSecKeyDataGetType (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets key data type.</p>
-<div class="REFSECT3">
-<a name="AEN9176"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9178"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetType.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9187"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetType.returns"></a><h4>Returns</h4>
 <p> key data type.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGETSIZE"></a><h3>xmlSecKeyDataGetSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecKeyDataGetSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetSize"></a><h3>xmlSecKeyDataGetSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecKeyDataGetSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets key data size.</p>
-<div class="REFSECT3">
-<a name="AEN9201"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9203"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9212"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetSize.returns"></a><h4>Returns</h4>
 <p> key data size (in bits).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGETIDENTIFIER"></a><h3>xmlSecKeyDataGetIdentifier ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecKeyDataGetIdentifier (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetIdentifier"></a><h3>xmlSecKeyDataGetIdentifier ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
+xmlSecKeyDataGetIdentifier (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets key data identifier string.</p>
-<div class="REFSECT3">
-<a name="AEN9226"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9228"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetIdentifier.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9237"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetIdentifier.returns"></a><h4>Returns</h4>
 <p> key data id string.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADEBUGDUMP"></a><h3>xmlSecKeyDataDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataDebugDump (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDebugDump"></a><h3>xmlSecKeyDataDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                        <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
 <p>Prints key data debug info.</p>
-<div class="REFSECT3">
-<a name="AEN9254"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9256"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADEBUGXMLDUMP"></a><h3>xmlSecKeyDataDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDebugXmlDump"></a><h3>xmlSecKeyDataDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                           <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
 <p>Prints key data debug info in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN9285"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9287"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAXMLREAD"></a><h3>xmlSecKeyDataXmlRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataXmlRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads the key data of klass <code class="PARAMETER">id</code>
- from XML <code class="PARAMETER">node</code>
- and adds them to <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataXmlRead"></a><h3>xmlSecKeyDataXmlRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataXmlRead (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads the key data of klass <em class="parameter"><code>id</code></em>
+ from XML <em class="parameter"><code>node</code></em>
+ and adds them to <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9325"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9327"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the destination key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the destination key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9354"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlRead.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAXMLWRITE"></a><h3>xmlSecKeyDataXmlWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataXmlWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Writes the key data of klass <code class="PARAMETER">id</code>
- from <code class="PARAMETER">key</code>
- to an XML <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataXmlWrite"></a><h3>xmlSecKeyDataXmlWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataXmlWrite (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Writes the key data of klass <em class="parameter"><code>id</code></em>
+ from <em class="parameter"><code>key</code></em>
+ to an XML <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9380"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9382"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the source key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the source key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9409"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlWrite.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINREAD"></a><h3>xmlSecKeyDataBinRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                      <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads the key data of klass <code class="PARAMETER">id</code>
- from binary buffer <code class="PARAMETER">buf</code>
- to <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinRead"></a><h3>xmlSecKeyDataBinRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinRead (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                      <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads the key data of klass <em class="parameter"><code>id</code></em>
+ from binary buffer <em class="parameter"><code>buf</code></em>
+ to <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9438"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9440"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the destination key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the destination key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the input binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the input binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the input buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the input buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9473"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinRead.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="XMLSECKEYDATABINWRITE"></a><h3>xmlSecKeyDataBinWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> **buf</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *bufSize</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Writes the key data of klass <code class="PARAMETER">id</code>
- from the <code class="PARAMETER">key</code>
- to a binary buffer <code class="PARAMETER">buf</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinWrite"></a><h3>xmlSecKeyDataBinWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinWrite (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> **buf</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> *bufSize</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Writes the key data of klass <em class="parameter"><code>id</code></em>
+ from the <em class="parameter"><code>key</code></em>
+ to a binary buffer <em class="parameter"><code>buf</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9502"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9504"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the source key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the source key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the output binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the output binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the output buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the output buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9537"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinWrite.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="XMLSECKEYDATAGETNAME"></a><h3>xmlSecKeyDataGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataGetName(data)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetName"></a><h3>xmlSecKeyDataGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataGetName(data)</pre>
 <p>Macro. Returns the key data name.</p>
-<div class="REFSECT3">
-<a name="AEN9546"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9548"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAISVALID"></a><h3>xmlSecKeyDataIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataIsValid(data)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">data</code>
- is not NULL and <code class="PARAMETER">data->id</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIsValid"></a><h3>xmlSecKeyDataIsValid()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataIsValid(data)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>data</code></em>
+ is not NULL and <em class="parameter"><code>data->id</code></em>
  is not NULL
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN9565"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9567"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATACHECKID"></a><h3>xmlSecKeyDataCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataCheckId(data, dataId)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">data</code>
- is valid and <code class="PARAMETER">data</code>
-'s id is equal to <code class="PARAMETER">dataId</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataCheckId"></a><h3>xmlSecKeyDataCheckId()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataCheckId(data, dataId)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>data</code></em>
+ is valid and <em class="parameter"><code>data</code></em>
+'s id is equal to <em class="parameter"><code>dataId</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9585"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9587"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the data Id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the data Id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATACHECKUSAGE"></a><h3>xmlSecKeyDataCheckUsage()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataCheckUsage(data, usg)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">data</code>
- is valid and could be used for <code class="PARAMETER">usg</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataCheckUsage"></a><h3>xmlSecKeyDataCheckUsage()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataCheckUsage(data, usg)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>data</code></em>
+ is valid and could be used for <em class="parameter"><code>usg</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN9610"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9612"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataCheckUsage.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usg</p></td>
-<td><p>the data usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usg</p></td>
+<td class="parameter_description"><p>the data usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATACHECKSIZE"></a><h3>xmlSecKeyDataCheckSize()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataCheckSize(data, size)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">data</code>
- is valid and <code class="PARAMETER">data</code>
-'s object has at least <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataCheckSize"></a><h3>xmlSecKeyDataCheckSize()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataCheckSize(data, size)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>data</code></em>
+ is valid and <em class="parameter"><code>data</code></em>
+'s object has at least <em class="parameter"><code>size</code></em>
  bytes.</p>
-<div class="REFSECT3">
-<a name="AEN9636"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9638"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataCheckSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the expected size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the expected size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDUNKNOWN"></a><h3>xmlSecKeyDataIdUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataIdUnknown                  ((xmlSecKeyDataId)NULL)</pre>
-<p>The "unknown" id.</p>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAINITMETHOD"></a><h3>xmlSecKeyDataInitMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataInitMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataInitMethod"></a><h3>xmlSecKeyDataInitMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataInitMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Key data specific initialization method.</p>
-<div class="REFSECT3">
-<a name="AEN9672"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9674"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataInitMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9683"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataInitMethod.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="XMLSECKEYDATADUPLICATEMETHOD"></a><h3>xmlSecKeyDataDuplicateMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataDuplicateMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> dst</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> src</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDuplicateMethod"></a><h3>xmlSecKeyDataDuplicateMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataDuplicateMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> dst</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> src</code></em>);</pre>
 <p>Key data specific duplication (copy) method.</p>
-<div class="REFSECT3">
-<a name="AEN9702"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9704"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataDuplicateMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the poiniter to source key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the poiniter to source key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9719"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataDuplicateMethod.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="XMLSECKEYDATAFINALIZEMETHOD"></a><h3>xmlSecKeyDataFinalizeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataFinalizeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataFinalizeMethod"></a><h3>xmlSecKeyDataFinalizeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataFinalizeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Key data specific finalization method. All the objects and resources allocated
 by the key data object must be freed inside this method.</p>
-<div class="REFSECT3">
-<a name="AEN9735"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9737"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataFinalizeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAXMLREADMETHOD"></a><h3>xmlSecKeyDataXmlReadMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataXmlReadMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataXmlReadMethod"></a><h3>xmlSecKeyDataXmlReadMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataXmlReadMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Key data specific method for reading XML node.</p>
-<div class="REFSECT3">
-<a name="AEN9768"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9770"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlReadMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to data's value XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to data's value XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9797"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlReadMethod.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="XMLSECKEYDATAXMLWRITEMETHOD"></a><h3>xmlSecKeyDataXmlWriteMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataXmlWriteMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataXmlWriteMethod"></a><h3>xmlSecKeyDataXmlWriteMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataXmlWriteMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Key data specific method for writing XML node.</p>
-<div class="REFSECT3">
-<a name="AEN9822"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9824"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlWriteMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to data's value XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to data's value XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN9851"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataXmlWriteMethod.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="XMLSECKEYDATABINREADMETHOD"></a><h3>xmlSecKeyDataBinReadMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataBinReadMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                               <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinReadMethod"></a><h3>xmlSecKeyDataBinReadMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataBinReadMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                               <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Key data specific method for reading binary buffer.</p>
-<div class="REFSECT3">
-<a name="AEN9879"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9881"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinReadMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the input buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the input buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9914"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinReadMethod.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="XMLSECKEYDATABINWRITEMETHOD"></a><h3>xmlSecKeyDataBinWriteMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataBinWriteMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> **buf</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *bufSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinWriteMethod"></a><h3>xmlSecKeyDataBinWriteMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataBinWriteMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> **buf</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> *bufSize</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Key data specific method for reading binary buffer.</p>
-<div class="REFSECT3">
-<a name="AEN9942"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN9944"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinWriteMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the output buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the output buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN9977"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinWriteMethod.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="XMLSECKEYDATAGENERATEMETHOD"></a><h3>xmlSecKeyDataGenerateMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataGenerateMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> sizeBits</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGenerateMethod"></a><h3>xmlSecKeyDataGenerateMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataGenerateMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> sizeBits</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Key data specific method for generating new key data.</p>
-<div class="REFSECT3">
-<a name="AEN9999"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10001"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGenerateMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>sizeBits</p></td>
-<td><p>the key data specific size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>sizeBits</p></td>
+<td class="parameter_description"><p>the key data specific size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the required key type (session/permanent, etc.)</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the required key type (session/permanent, etc.)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10022"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGenerateMethod.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="XMLSECKEYDATAGETTYPEMETHOD"></a><h3>xmlSecKeyDataGetTypeMethod ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="RETURNVALUE">xmlSecKeyDataType</span></a>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataGetTypeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetTypeMethod"></a><h3>xmlSecKeyDataGetTypeMethod ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="returnvalue">xmlSecKeyDataType</span></a>
+<span class="c_punctuation">(</span>*xmlSecKeyDataGetTypeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Key data specific method to get the key type.</p>
-<div class="REFSECT3">
-<a name="AEN10038"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10040"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetTypeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10049"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetTypeMethod.returns"></a><h4>Returns</h4>
 <p> the key type.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGETSIZEMETHOD"></a><h3>xmlSecKeyDataGetSizeMethod ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataGetSizeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetSizeMethod"></a><h3>xmlSecKeyDataGetSizeMethod ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+<span class="c_punctuation">(</span>*xmlSecKeyDataGetSizeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Key data specific method to get the key size.</p>
-<div class="REFSECT3">
-<a name="AEN10065"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10067"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetSizeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10076"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetSizeMethod.returns"></a><h4>Returns</h4>
 <p> the key size in bits.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAGETIDENTIFIERMETHOD"></a><h3>xmlSecKeyDataGetIdentifierMethod ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataGetIdentifierMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataGetIdentifierMethod"></a><h3>xmlSecKeyDataGetIdentifierMethod ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
+<span class="c_punctuation">(</span>*xmlSecKeyDataGetIdentifierMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Key data specific method to get the key data identifier string (for example,
 X509 data identifier is the subject of the verified cert).</p>
-<div class="REFSECT3">
-<a name="AEN10092"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10094"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetIdentifierMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10103"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataGetIdentifierMethod.returns"></a><h4>Returns</h4>
 <p> the identifier string or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATADEBUGDUMPMETHOD"></a><h3>xmlSecKeyDataDebugDumpMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataDebugDumpMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataDebugDumpMethod"></a><h3>xmlSecKeyDataDebugDumpMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataDebugDumpMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
 <p>Key data specific method for printing debug info.</p>
-<div class="REFSECT3">
-<a name="AEN10122"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10124"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataDebugDumpMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the FILE to print debug info (should be open for writing).</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the FILE to print debug info (should be open for writing).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAKLASSGETNAME"></a><h3>xmlSecKeyDataKlassGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataKlassGetName(klass)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataKlassGetName"></a><h3>xmlSecKeyDataKlassGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataKlassGetName(klass)</pre>
 <p>Macro. Returns data klass name.</p>
-<div class="REFSECT3">
-<a name="AEN10145"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10147"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataKlassGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>klass</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATALISTGETKLASS"></a><h3>xmlSecKeyDataListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecKeyDataListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataListGetKlass"></a><h3>xmlSecKeyDataListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecKeyDataListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The key data list klass.</p>
-<div class="REFSECT3">
-<a name="AEN10166"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataListGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to the key data list klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTGETKLASS"></a><h3>xmlSecKeyDataIdListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecKeyDataIdListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListGetKlass"></a><h3>xmlSecKeyDataIdListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecKeyDataIdListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The key data id list klass.</p>
-<div class="REFSECT3">
-<a name="AEN10179"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to the key data id list klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTFIND"></a><h3>xmlSecKeyDataIdListFind ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataIdListFind (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> dataId</code>);</pre>
-<p>Lookups <code class="PARAMETER">dataId</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListFind"></a><h3>xmlSecKeyDataIdListFind ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataIdListFind (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> dataId</code></em>);</pre>
+<p>Lookups <em class="parameter"><code>dataId</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10198"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10200"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFind.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the key data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the key data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10215"></a><h4>Returns</h4>
-<p> 1 if <code class="PARAMETER">dataId</code>
-is found in the <code class="PARAMETER">list</code>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFind.returns"></a><h4>Returns</h4>
+<p> 1 if <em class="parameter"><code>dataId</code></em>
+is found in the <em class="parameter"><code>list</code></em>
 , 0 if not and a negative
 value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTFINDBYNODE"></a><h3>xmlSecKeyDataIdListFindByNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataIdListFindByNode (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeName</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeNs</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE"><span class="TYPE">xmlSecKeyDataUsage</span></a> usage</code>);</pre>
-<p>Lookups data klass in the list with given <code class="PARAMETER">nodeName</code>
-, <code class="PARAMETER">nodeNs</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListFindByNode"></a><h3>xmlSecKeyDataIdListFindByNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataIdListFindByNode (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeName</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeNs</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage"><span class="type">xmlSecKeyDataUsage</span></a> usage</code></em>);</pre>
+<p>Lookups data klass in the list with given <em class="parameter"><code>nodeName</code></em>
+, <em class="parameter"><code>nodeNs</code></em>
  and
-<code class="PARAMETER">usage</code>
- in the <code class="PARAMETER">list</code>
+<em class="parameter"><code>usage</code></em>
+ in the <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10244"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10246"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeName</p></td>
-<td><p>the desired key data klass XML node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeName</p></td>
+<td class="parameter_description"><p>the desired key data klass XML node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeNs</p></td>
-<td><p>the desired key data klass XML node namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeNs</p></td>
+<td class="parameter_description"><p>the desired key data klass XML node namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the desired key data usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the desired key data usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10273"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByNode.returns"></a><h4>Returns</h4>
 <p> key data klass is found and NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTFINDBYHREF"></a><h3>xmlSecKeyDataIdListFindByHref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataIdListFindByHref (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *href</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE"><span class="TYPE">xmlSecKeyDataUsage</span></a> usage</code>);</pre>
-<p>Lookups data klass in the list with given <code class="PARAMETER">href</code>
- and <code class="PARAMETER">usage</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListFindByHref"></a><h3>xmlSecKeyDataIdListFindByHref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataIdListFindByHref (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *href</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage"><span class="type">xmlSecKeyDataUsage</span></a> usage</code></em>);</pre>
+<p>Lookups data klass in the list with given <em class="parameter"><code>href</code></em>
+ and <em class="parameter"><code>usage</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10296"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10298"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByHref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>href</p></td>
-<td><p>the desired key data klass href.</p></td>
-<td> </td>
+<td class="parameter_name"><p>href</p></td>
+<td class="parameter_description"><p>the desired key data klass href.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the desired key data usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the desired key data usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10319"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByHref.returns"></a><h4>Returns</h4>
 <p> key data klass is found and NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTFINDBYNAME"></a><h3>xmlSecKeyDataIdListFindByName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecKeyDataIdListFindByName (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE"><span class="TYPE">xmlSecKeyDataUsage</span></a> usage</code>);</pre>
-<p>Lookups data klass in the list with given <code class="PARAMETER">name</code>
- and <code class="PARAMETER">usage</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListFindByName"></a><h3>xmlSecKeyDataIdListFindByName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecKeyDataIdListFindByName (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage"><span class="type">xmlSecKeyDataUsage</span></a> usage</code></em>);</pre>
+<p>Lookups data klass in the list with given <em class="parameter"><code>name</code></em>
+ and <em class="parameter"><code>usage</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10342"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10344"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the desired key data klass name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the desired key data klass name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the desired key data usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the desired key data usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10365"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListFindByName.returns"></a><h4>Returns</h4>
 <p> key data klass is found and NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTDEBUGDUMP"></a><h3>xmlSecKeyDataIdListDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataIdListDebugDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary key data debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListDebugDump"></a><h3>xmlSecKeyDataIdListDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataIdListDebugDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                              <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary key data debug information to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10383"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10385"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTDEBUGXMLDUMP"></a><h3>xmlSecKeyDataIdListDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataIdListDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary key data debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListDebugXmlDump"></a><h3>xmlSecKeyDataIdListDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataIdListDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary key data debug information to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN10415"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10417"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataIdListDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to key data ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to key data ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEINITIALIZE"></a><h3>xmlSecKeyDataBinaryValueInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueInitialize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueInitialize"></a><h3>xmlSecKeyDataBinaryValueInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueInitialize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Initializes key data.</p>
-<div class="REFSECT3">
-<a name="AEN10443"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10445"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10454"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueInitialize.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEDUPLICATE"></a><h3>xmlSecKeyDataBinaryValueDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueDuplicate (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> dst</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> src</code>);</pre>
-<p>Copies binary key data from <code class="PARAMETER">src</code>
- to <code class="PARAMETER">dst</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueDuplicate"></a><h3>xmlSecKeyDataBinaryValueDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueDuplicate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> dst</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> src</code></em>);</pre>
+<p>Copies binary key data from <em class="parameter"><code>src</code></em>
+ to <em class="parameter"><code>dst</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10473"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10475"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10490"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueDuplicate.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEFINALIZE"></a><h3>xmlSecKeyDataBinaryValueFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataBinaryValueFinalize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueFinalize"></a><h3>xmlSecKeyDataBinaryValueFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataBinaryValueFinalize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Cleans up binary key data.</p>
-<div class="REFSECT3">
-<a name="AEN10504"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10506"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEXMLREAD"></a><h3>xmlSecKeyDataBinaryValueXmlRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueXmlRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads binary key data from <code class="PARAMETER">node</code>
- to the key by base64 decoding the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueXmlRead"></a><h3>xmlSecKeyDataBinaryValueXmlRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueXmlRead (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads binary key data from <em class="parameter"><code>node</code></em>
+ to the key by base64 decoding the <em class="parameter"><code>node</code></em>
  content.</p>
-<div class="REFSECT3">
-<a name="AEN10537"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10539"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueXmlRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to destination key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to destination key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10566"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueXmlRead.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEXMLWRITE"></a><h3>xmlSecKeyDataBinaryValueXmlWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueXmlWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Base64 encodes binary key data of klass <code class="PARAMETER">id</code>
- from the <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueXmlWrite"></a><h3>xmlSecKeyDataBinaryValueXmlWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueXmlWrite (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Base64 encodes binary key data of klass <em class="parameter"><code>id</code></em>
+ from the <em class="parameter"><code>key</code></em>
  and
-sets to the <code class="PARAMETER">node</code>
+sets to the <em class="parameter"><code>node</code></em>
  content.</p>
-<div class="REFSECT3">
-<a name="AEN10592"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10594"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueXmlWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to source key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to source key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10621"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueXmlWrite.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEBINREAD"></a><h3>xmlSecKeyDataBinaryValueBinRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueBinRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                 <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads binary key data of the klass <code class="PARAMETER">id</code>
- from <code class="PARAMETER">buf</code>
- to the <code class="PARAMETER">key</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueBinRead"></a><h3>xmlSecKeyDataBinaryValueBinRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueBinRead (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                 <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads binary key data of the klass <em class="parameter"><code>id</code></em>
+ from <em class="parameter"><code>buf</code></em>
+ to the <em class="parameter"><code>key</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10650"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10652"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueBinRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to destination key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to destination key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the source binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the source binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the source binary buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the source binary buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10685"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueBinRead.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEBINWRITE"></a><h3>xmlSecKeyDataBinaryValueBinWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueBinWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataId</span></font> id</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> **buf</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *bufSize</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Writes binary key data of klass <code class="PARAMETER">id</code>
- from the <code class="PARAMETER">key</code>
- to <code class="PARAMETER">buf</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueBinWrite"></a><h3>xmlSecKeyDataBinaryValueBinWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueBinWrite (<em class="parameter"><code><font><span class="type">xmlSecKeyDataId</span></font> id</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> **buf</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> *bufSize</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Writes binary key data of klass <em class="parameter"><code>id</code></em>
+ from the <em class="parameter"><code>key</code></em>
+ to <em class="parameter"><code>buf</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10714"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10716"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueBinWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>id</p></td>
-<td><p>the data klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the data klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to source key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to source key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the destination binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the destination binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the destination binary buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the destination binary buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10749"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueBinWrite.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEDEBUGDUMP"></a><h3>xmlSecKeyDataBinaryValueDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataBinaryValueDebugDump (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary key data debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueDebugDump"></a><h3>xmlSecKeyDataBinaryValueDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataBinaryValueDebugDump (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                   <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary key data debug information to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10767"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10769"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEDEBUGXMLDUMP"></a><h3>xmlSecKeyDataBinaryValueDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataBinaryValueDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary key data debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueDebugXmlDump"></a><h3>xmlSecKeyDataBinaryValueDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataBinaryValueDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                      <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary key data debug information to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN10799"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10801"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEGETSIZE"></a><h3>xmlSecKeyDataBinaryValueGetSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecKeyDataBinaryValueGetSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueGetSize"></a><h3>xmlSecKeyDataBinaryValueGetSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecKeyDataBinaryValueGetSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the binary key data size.</p>
-<div class="REFSECT3">
-<a name="AEN10827"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10829"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueGetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN10838"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueGetSize.returns"></a><h4>Returns</h4>
 <p> binary key data size in bits.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUEGETBUFFER"></a><h3>xmlSecKeyDataBinaryValueGetBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
-xmlSecKeyDataBinaryValueGetBuffer (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueGetBuffer"></a><h3>xmlSecKeyDataBinaryValueGetBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
+xmlSecKeyDataBinaryValueGetBuffer (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the binary key data buffer.</p>
-<div class="REFSECT3">
-<a name="AEN10852"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10854"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueGetBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10863"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueGetBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to binary key data buffer.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYVALUESETBUFFER"></a><h3>xmlSecKeyDataBinaryValueSetBuffer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeyDataBinaryValueSetBuffer (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                   <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
-<p>Sets the value of <code class="PARAMETER">data</code>
- to <code class="PARAMETER">buf</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinaryValueSetBuffer"></a><h3>xmlSecKeyDataBinaryValueSetBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeyDataBinaryValueSetBuffer (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                   <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                                   <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
+<p>Sets the value of <em class="parameter"><code>data</code></em>
+ to <em class="parameter"><code>buf</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN10885"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10887"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueSetBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the binary buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the binary buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10908"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataBinaryValueSetBuffer.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTORECREATE"></a><h3>xmlSecKeyDataStoreCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="RETURNVALUE">xmlSecKeyDataStorePtr</span></a>
-xmlSecKeyDataStoreCreate (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataStoreId</span></font> id</code>);</pre>
-<p>Creates new key data store of the specified klass <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreCreate"></a><h3>xmlSecKeyDataStoreCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStorePtr</span></font>
+xmlSecKeyDataStoreCreate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStoreId</span></font> id</code></em>);</pre>
+<p>Creates new key data store of the specified klass <em class="parameter"><code>id</code></em>
 . Caller is responsible
-for freeing returned object with <a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREDESTROY"><span class="TYPE">xmlSecKeyDataStoreDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN10925"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10927"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+for freeing returned object with <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreDestroy" title="xmlSecKeyDataStoreDestroy ()"><span class="type">xmlSecKeyDataStoreDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the store id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the store id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN10936"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreCreate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly allocated key data store structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREDESTROY"></a><h3>xmlSecKeyDataStoreDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyDataStoreDestroy (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>);</pre>
-<p>Destroys the key data store created with <a href="xmlsec-keysdata.html#XMLSECKEYDATASTORECREATE"><span class="TYPE">xmlSecKeyDataStoreCreate</span></a>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreDestroy"></a><h3>xmlSecKeyDataStoreDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyDataStoreDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>);</pre>
+<p>Destroys the key data store created with <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreCreate" title="xmlSecKeyDataStoreCreate ()"><span class="type">xmlSecKeyDataStoreCreate</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN10952"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10954"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to the key data store..</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to the key data store..</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREGETNAME"></a><h3>xmlSecKeyDataStoreGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataStoreGetName(store)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreGetName"></a><h3>xmlSecKeyDataStoreGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataStoreGetName(store)</pre>
 <p>Macro. Returns key data store name.</p>
-<div class="REFSECT3">
-<a name="AEN10969"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10971"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREISVALID"></a><h3>xmlSecKeyDataStoreIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataStoreIsValid(store)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">store</code>
- is not NULL and <code class="PARAMETER">store->id</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreIsValid"></a><h3>xmlSecKeyDataStoreIsValid()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataStoreIsValid(store)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>store</code></em>
+ is not NULL and <em class="parameter"><code>store->id</code></em>
  is not NULL
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN10988"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN10990"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTORECHECKID"></a><h3>xmlSecKeyDataStoreCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataStoreCheckId(store, storeId)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">store</code>
- is valid and <code class="PARAMETER">store</code>
-'s id is equal to <code class="PARAMETER">storeId</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreCheckId"></a><h3>xmlSecKeyDataStoreCheckId()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataStoreCheckId(store, storeId)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>store</code></em>
+ is valid and <em class="parameter"><code>store</code></em>
+'s id is equal to <em class="parameter"><code>storeId</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN11008"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11010"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>storeId</p></td>
-<td><p>the store Id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>storeId</p></td>
+<td class="parameter_description"><p>the store Id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTORECHECKSIZE"></a><h3>xmlSecKeyDataStoreCheckSize()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataStoreCheckSize(store, size)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">data</code>
- is valid and <code class="PARAMETER">stores</code>
-'s object has at least <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreCheckSize"></a><h3>xmlSecKeyDataStoreCheckSize()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataStoreCheckSize(store, size)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>data</code></em>
+ is valid and <em class="parameter"><code>stores</code></em>
+'s object has at least <em class="parameter"><code>size</code></em>
  bytes.</p>
-<div class="REFSECT3">
-<a name="AEN11034"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11036"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreCheckSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the expected size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the expected size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREINITIALIZEMETHOD"></a><h3>xmlSecKeyDataStoreInitializeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataStoreInitializeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreInitializeMethod"></a><h3>xmlSecKeyDataStoreInitializeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataStoreInitializeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>);</pre>
 <p>Key data store specific initialization method.</p>
-<div class="REFSECT3">
-<a name="AEN11064"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11066"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreInitializeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the data store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the data store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN11075"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreInitializeMethod.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="XMLSECKEYDATASTOREFINALIZEMETHOD"></a><h3>xmlSecKeyDataStoreFinalizeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyDataStoreFinalizeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreFinalizeMethod"></a><h3>xmlSecKeyDataStoreFinalizeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyDataStoreFinalizeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>);</pre>
 <p>Key data store specific finalization (destroy) method.</p>
-<div class="REFSECT3">
-<a name="AEN11091"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11093"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreFinalizeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the data store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the data store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREKLASSGETNAME"></a><h3>xmlSecKeyDataStoreKlassGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataStoreKlassGetName(klass)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreKlassGetName"></a><h3>xmlSecKeyDataStoreKlassGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyDataStoreKlassGetName(klass)</pre>
 <p>Macro. Returns store klass name.</p>
-<div class="REFSECT3">
-<a name="AEN11108"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11110"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreKlassGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>klass</p></td>
-<td><p>the pointer to store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>the pointer to store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREPTRLISTGETKLASS"></a><h3>xmlSecKeyDataStorePtrListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecKeyDataStorePtrListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStorePtrListGetKlass"></a><h3>xmlSecKeyDataStorePtrListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecKeyDataStorePtrListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Key data stores list.</p>
-<div class="REFSECT3">
-<a name="AEN11129"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyDataStorePtrListGetKlass.returns"></a><h4>Returns</h4>
 <p> key data stores list klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSDATA.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGE"></a><h3>xmlSecKeyDataUsage</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                                    xmlSecKeyDataUsage;</pre>
+<div class="refsect1">
+<a name="xmlsec-keysdata.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsage"></a><h3>xmlSecKeyDataUsage</h3>
+<pre class="programlisting">typedef unsigned int                                    xmlSecKeyDataUsage;
+</pre>
 <p>The bits mask that determines possible keys data usage.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEUNKNOWN"></a><h3>xmlSecKeyDataUsageUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageUnknown                       0x00000</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageUnknown"></a><h3>xmlSecKeyDataUsageUnknown</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageUnknown                       0x00000
+</pre>
 <p>The key data usage is unknown.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYINFONODEREAD"></a><h3>xmlSecKeyDataUsageKeyInfoNodeRead</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageKeyInfoNodeRead               0x00001</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyInfoNodeRead"></a><h3>xmlSecKeyDataUsageKeyInfoNodeRead</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageKeyInfoNodeRead               0x00001
+</pre>
 <p>The key data could be read from a <dsig:KeyInfo/> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYINFONODEWRITE"></a><h3>xmlSecKeyDataUsageKeyInfoNodeWrite</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageKeyInfoNodeWrite              0x00002</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyInfoNodeWrite"></a><h3>xmlSecKeyDataUsageKeyInfoNodeWrite</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageKeyInfoNodeWrite              0x00002
+</pre>
 <p>The key data could be written to a <dsig:KeyInfo /> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYVALUENODEREAD"></a><h3>xmlSecKeyDataUsageKeyValueNodeRead</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageKeyValueNodeRead              0x00004</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyValueNodeRead"></a><h3>xmlSecKeyDataUsageKeyValueNodeRead</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageKeyValueNodeRead              0x00004
+</pre>
 <p>The key data could be read from a <dsig:KeyValue /> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYVALUENODEWRITE"></a><h3>xmlSecKeyDataUsageKeyValueNodeWrite</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageKeyValueNodeWrite             0x00008</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyValueNodeWrite"></a><h3>xmlSecKeyDataUsageKeyValueNodeWrite</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageKeyValueNodeWrite             0x00008
+</pre>
 <p>The key data could be written to a <dsig:KeyValue /> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGERETRIEVALMETHODNODEXML"></a><h3>xmlSecKeyDataUsageRetrievalMethodNodeXml</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageRetrievalMethodNodeXml        0x00010</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageRetrievalMethodNodeXml"></a><h3>xmlSecKeyDataUsageRetrievalMethodNodeXml</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageRetrievalMethodNodeXml        0x00010
+</pre>
 <p>The key data could be retrieved using <dsig:RetrievalMethod /> node
 in XML format.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGERETRIEVALMETHODNODEBIN"></a><h3>xmlSecKeyDataUsageRetrievalMethodNodeBin</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageRetrievalMethodNodeBin        0x00020</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageRetrievalMethodNodeBin"></a><h3>xmlSecKeyDataUsageRetrievalMethodNodeBin</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageRetrievalMethodNodeBin        0x00020
+</pre>
 <p>The key data could be retrieved using <dsig:RetrievalMethod /> node
 in binary format.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEANY"></a><h3>xmlSecKeyDataUsageAny</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataUsageAny                           0xFFFFF</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageAny"></a><h3>xmlSecKeyDataUsageAny</h3>
+<pre class="programlisting">#define xmlSecKeyDataUsageAny                           0xFFFFF
+</pre>
 <p>Any key data usage.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYINFONODE"></a><h3>xmlSecKeyDataUsageKeyInfoNode</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataUsageKeyInfoNode</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyInfoNode"></a><h3>xmlSecKeyDataUsageKeyInfoNode</h3>
+<pre class="programlisting">#define             xmlSecKeyDataUsageKeyInfoNode</pre>
 <p>The key data could be read and written from/to a <dsig:KeyInfo /> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGEKEYVALUENODE"></a><h3>xmlSecKeyDataUsageKeyValueNode</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataUsageKeyValueNode</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageKeyValueNode"></a><h3>xmlSecKeyDataUsageKeyValueNode</h3>
+<pre class="programlisting">#define             xmlSecKeyDataUsageKeyValueNode</pre>
 <p>The key data could be read and written from/to a <dsig:KeyValue /> child.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAUSAGERETRIEVALMETHODNODE"></a><h3>xmlSecKeyDataUsageRetrievalMethodNode</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataUsageRetrievalMethodNode</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataUsageRetrievalMethodNode"></a><h3>xmlSecKeyDataUsageRetrievalMethodNode</h3>
+<pre class="programlisting">#define             xmlSecKeyDataUsageRetrievalMethodNode</pre>
 <p>The key data could be retrieved using <dsig:RetrievalMethod /> node
 in any format.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPE"></a><h3>xmlSecKeyDataType</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                            xmlSecKeyDataType;</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataType"></a><h3>xmlSecKeyDataType</h3>
+<pre class="programlisting">typedef unsigned int                            xmlSecKeyDataType;
+</pre>
 <p>The key data type (public/private, session/permanet, etc.).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPEUNKNOWN"></a><h3>xmlSecKeyDataTypeUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeUnknown                        0x0000</pre>
-<p>The key data type is unknown (same as <a href="xmlsec-keysdata.html#XMLSECKEYDATATYPENONE"><span class="TYPE">xmlSecKeyDataTypeNone</span></a>).</p>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeUnknown"></a><h3>xmlSecKeyDataTypeUnknown</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeUnknown                        0x0000
+</pre>
+<p>The key data type is unknown (same as <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeNone" title="xmlSecKeyDataTypeNone"><span class="type">xmlSecKeyDataTypeNone</span></a>).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPENONE"></a><h3>xmlSecKeyDataTypeNone</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeNone                           xmlSecKeyDataTypeUnknown</pre>
-<p>The key data type is unknown (same as <a href="xmlsec-keysdata.html#XMLSECKEYDATATYPEUNKNOWN"><span class="TYPE">xmlSecKeyDataTypeUnknown</span></a>).</p>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeNone"></a><h3>xmlSecKeyDataTypeNone</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeNone                           xmlSecKeyDataTypeUnknown
+</pre>
+<p>The key data type is unknown (same as <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataTypeUnknown" title="xmlSecKeyDataTypeUnknown"><span class="type">xmlSecKeyDataTypeUnknown</span></a>).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPEPUBLIC"></a><h3>xmlSecKeyDataTypePublic</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypePublic                         0x0001</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypePublic"></a><h3>xmlSecKeyDataTypePublic</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypePublic                         0x0001
+</pre>
 <p>The key data contain a public key.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPEPRIVATE"></a><h3>xmlSecKeyDataTypePrivate</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypePrivate                        0x0002</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypePrivate"></a><h3>xmlSecKeyDataTypePrivate</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypePrivate                        0x0002
+</pre>
 <p>The key data contain a private key.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPESYMMETRIC"></a><h3>xmlSecKeyDataTypeSymmetric</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeSymmetric                      0x0004</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeSymmetric"></a><h3>xmlSecKeyDataTypeSymmetric</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeSymmetric                      0x0004
+</pre>
 <p>The key data contain a symmetric key.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPESESSION"></a><h3>xmlSecKeyDataTypeSession</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeSession                        0x0008</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeSession"></a><h3>xmlSecKeyDataTypeSession</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeSession                        0x0008
+</pre>
 <p>The key data contain session key (one time key, not stored in keys manager).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPEPERMANENT"></a><h3>xmlSecKeyDataTypePermanent</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypePermanent                      0x0010</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypePermanent"></a><h3>xmlSecKeyDataTypePermanent</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypePermanent                      0x0010
+</pre>
 <p>The key data contain permanent key (stored in keys manager).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPETRUSTED"></a><h3>xmlSecKeyDataTypeTrusted</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeTrusted                        0x0100</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeTrusted"></a><h3>xmlSecKeyDataTypeTrusted</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeTrusted                        0x0100
+</pre>
 <p>The key data is trusted.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATATYPEANY"></a><h3>xmlSecKeyDataTypeAny</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataTypeAny                            0xFFFF</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataTypeAny"></a><h3>xmlSecKeyDataTypeAny</h3>
+<pre class="programlisting">#define xmlSecKeyDataTypeAny                            0xFFFF
+</pre>
 <p>Any key data.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAFORMAT"></a><h3>enum xmlSecKeyDataFormat</h3>
+<div class="refsect2">
+<a name="xmlSecKeyDataFormat"></a><h3>enum xmlSecKeyDataFormat</h3>
 <p>The key data format (binary, der, pem, etc.).</p>
-<div class="REFSECT3">
-<a name="AEN11275"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11277"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataFormat.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecKeyDataFormatUnknown</p></td>
-<td><p>the key data format is unknown.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatUnknown"></a>xmlSecKeyDataFormatUnknown</p></td>
+<td class="enum_member_description">
+<p>the key data format is unknown.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatBinary</p></td>
-<td><p>the binary key data.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatBinary"></a>xmlSecKeyDataFormatBinary</p></td>
+<td class="enum_member_description">
+<p>the binary key data.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatPem</p></td>
-<td><p>the PEM key data (cert or public/private key).</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatPem"></a>xmlSecKeyDataFormatPem</p></td>
+<td class="enum_member_description">
+<p>the PEM key data (cert or public/private key).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatDer</p></td>
-<td><p>the DER key data (cert or public/private key).</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatDer"></a>xmlSecKeyDataFormatDer</p></td>
+<td class="enum_member_description">
+<p>the DER key data (cert or public/private key).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatPkcs8Pem</p></td>
-<td><p>the PKCS8 PEM private key.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatPkcs8Pem"></a>xmlSecKeyDataFormatPkcs8Pem</p></td>
+<td class="enum_member_description">
+<p>the PKCS8 PEM private key.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatPkcs8Der</p></td>
-<td><p>the PKCS8 DER private key.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatPkcs8Der"></a>xmlSecKeyDataFormatPkcs8Der</p></td>
+<td class="enum_member_description">
+<p>the PKCS8 DER private key.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatPkcs12</p></td>
-<td><p>the PKCS12 format (bag of keys and certs)</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatPkcs12"></a>xmlSecKeyDataFormatPkcs12</p></td>
+<td class="enum_member_description">
+<p>the PKCS12 format (bag of keys and certs)</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatCertPem</p></td>
-<td><p>the PEM cert.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatCertPem"></a>xmlSecKeyDataFormatCertPem</p></td>
+<td class="enum_member_description">
+<p>the PEM cert.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecKeyDataFormatCertDer</p></td>
-<td><p>the DER cert.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecKeyDataFormatCertDer"></a>xmlSecKeyDataFormatCertDer</p></td>
+<td class="enum_member_description">
+<p>the DER cert.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATA"></a><h3>struct xmlSecKeyData</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyData {
+<div class="refsect2">
+<a name="xmlSecKeyData"></a><h3>struct xmlSecKeyData</h3>
+<pre class="programlisting">struct xmlSecKeyData {
     xmlSecKeyDataId                     id;
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The key data: key value (crypto material), x509 data, pgp data, etc.</p>
-<div class="REFSECT3">
-<a name="AEN11340"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11342"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyData.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecKeyDataId</span></font> <code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the data id (<font><span class="TYPE">xmlSecKeyDataId</span></font>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyDataId</span></font> <em class="structfield"><code><a name="xmlSecKeyData.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the data id (<font><span class="type">xmlSecKeyDataId</span></font>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyData.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyData.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdUnknown"></a><h3>xmlSecKeyDataIdUnknown</h3>
+<pre class="programlisting">#define xmlSecKeyDataIdUnknown                  ((xmlSecKeyDataId)NULL)
+</pre>
+<p>The "unknown" id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAKLASS"></a><h3>struct xmlSecKeyDataKlass</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyDataKlass {
+<div class="refsect2">
+<a name="xmlSecKeyDataKlass"></a><h3>struct xmlSecKeyDataKlass</h3>
+<pre class="programlisting">struct xmlSecKeyDataKlass {
     xmlSecSize                          klassSize;
     xmlSecSize                          objSize;
 
@@ -3143,204 +3147,205 @@ in any format.</p>
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The data id (klass).</p>
-<div class="REFSECT3">
-<a name="AEN11380"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11382"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataKlass.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">klassSize</code>;</p></td>
-<td><p>the klass size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.klassSize"></a>klassSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the klass size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">objSize</code>;</p></td>
-<td><p>the object size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.objSize"></a>objSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the object size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the object name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the object name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAUSAGE"><span class="TYPE">xmlSecKeyDataUsage</span></a> <code class="STRUCTFIELD">usage</code>;</p></td>
-<td><p>the allowed data usage.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataUsage" title="xmlSecKeyDataUsage"><span class="type">xmlSecKeyDataUsage</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.usage"></a>usage</code></em>;</p></td>
+<td class="struct_member_description"><p>the allowed data usage.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">href</code>;</p></td>
-<td><p>the identification string (href).</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.href"></a>href</code></em>;</p></td>
+<td class="struct_member_description"><p>the identification string (href).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">dataNodeName</code>;</p></td>
-<td><p>the data's XML node name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.dataNodeName"></a>dataNodeName</code></em>;</p></td>
+<td class="struct_member_description"><p>the data's XML node name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">dataNodeNs</code>;</p></td>
-<td><p>the data's XML node namespace.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.dataNodeNs"></a>dataNodeNs</code></em>;</p></td>
+<td class="struct_member_description"><p>the data's XML node namespace.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAINITMETHOD"><span class="TYPE">xmlSecKeyDataInitMethod</span></a> <code class="STRUCTFIELD">initialize</code>;</p></td>
-<td><p>the initialization method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataInitMethod" title="xmlSecKeyDataInitMethod ()"><span class="type">xmlSecKeyDataInitMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.initialize"></a>initialize</code></em>;</p></td>
+<td class="struct_member_description"><p>the initialization method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADUPLICATEMETHOD"><span class="TYPE">xmlSecKeyDataDuplicateMethod</span></a> <code class="STRUCTFIELD">duplicate</code>;</p></td>
-<td><p>the duplicate (copy) method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDuplicateMethod" title="xmlSecKeyDataDuplicateMethod ()"><span class="type">xmlSecKeyDataDuplicateMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.duplicate"></a>duplicate</code></em>;</p></td>
+<td class="struct_member_description"><p>the duplicate (copy) method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAFINALIZEMETHOD"><span class="TYPE">xmlSecKeyDataFinalizeMethod</span></a> <code class="STRUCTFIELD">finalize</code>;</p></td>
-<td><p>the finalization (destroy) method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFinalizeMethod" title="xmlSecKeyDataFinalizeMethod ()"><span class="type">xmlSecKeyDataFinalizeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.finalize"></a>finalize</code></em>;</p></td>
+<td class="struct_member_description"><p>the finalization (destroy) method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGENERATEMETHOD"><span class="TYPE">xmlSecKeyDataGenerateMethod</span></a> <code class="STRUCTFIELD">generate</code>;</p></td>
-<td><p>the new data generation method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGenerateMethod" title="xmlSecKeyDataGenerateMethod ()"><span class="type">xmlSecKeyDataGenerateMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.generate"></a>generate</code></em>;</p></td>
+<td class="struct_member_description"><p>the new data generation method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETTYPEMETHOD"><span class="TYPE">xmlSecKeyDataGetTypeMethod</span></a> <code class="STRUCTFIELD">getType</code>;</p></td>
-<td><p>the method to access data's type information.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetTypeMethod" title="xmlSecKeyDataGetTypeMethod ()"><span class="type">xmlSecKeyDataGetTypeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.getType"></a>getType</code></em>;</p></td>
+<td class="struct_member_description"><p>the method to access data's type information.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETSIZEMETHOD"><span class="TYPE">xmlSecKeyDataGetSizeMethod</span></a> <code class="STRUCTFIELD">getSize</code>;</p></td>
-<td><p>the method to access data's size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetSizeMethod" title="xmlSecKeyDataGetSizeMethod ()"><span class="type">xmlSecKeyDataGetSizeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.getSize"></a>getSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the method to access data's size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAGETIDENTIFIERMETHOD"><span class="TYPE">xmlSecKeyDataGetIdentifierMethod</span></a> <code class="STRUCTFIELD">getIdentifier</code>;</p></td>
-<td><p>the method to access data's string identifier.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataGetIdentifierMethod" title="xmlSecKeyDataGetIdentifierMethod ()"><span class="type">xmlSecKeyDataGetIdentifierMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.getIdentifier"></a>getIdentifier</code></em>;</p></td>
+<td class="struct_member_description"><p>the method to access data's string identifier.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREADMETHOD"><span class="TYPE">xmlSecKeyDataXmlReadMethod</span></a> <code class="STRUCTFIELD">xmlRead</code>;</p></td>
-<td><p>the method for reading data from XML node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlReadMethod" title="xmlSecKeyDataXmlReadMethod ()"><span class="type">xmlSecKeyDataXmlReadMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.xmlRead"></a>xmlRead</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for reading data from XML node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLWRITEMETHOD"><span class="TYPE">xmlSecKeyDataXmlWriteMethod</span></a> <code class="STRUCTFIELD">xmlWrite</code>;</p></td>
-<td><p>the method for writing data to XML node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlWriteMethod" title="xmlSecKeyDataXmlWriteMethod ()"><span class="type">xmlSecKeyDataXmlWriteMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.xmlWrite"></a>xmlWrite</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for writing data to XML node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINREADMETHOD"><span class="TYPE">xmlSecKeyDataBinReadMethod</span></a> <code class="STRUCTFIELD">binRead</code>;</p></td>
-<td><p>the method for reading data from a binary buffer.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinReadMethod" title="xmlSecKeyDataBinReadMethod ()"><span class="type">xmlSecKeyDataBinReadMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.binRead"></a>binRead</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for reading data from a binary buffer.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATABINWRITEMETHOD"><span class="TYPE">xmlSecKeyDataBinWriteMethod</span></a> <code class="STRUCTFIELD">binWrite</code>;</p></td>
-<td><p>the method for writing data to binary buffer.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinWriteMethod" title="xmlSecKeyDataBinWriteMethod ()"><span class="type">xmlSecKeyDataBinWriteMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.binWrite"></a>binWrite</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for writing data to binary buffer.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMPMETHOD"><span class="TYPE">xmlSecKeyDataDebugDumpMethod</span></a> <code class="STRUCTFIELD">debugDump</code>;</p></td>
-<td><p>the method for printing debug data information.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDumpMethod" title="xmlSecKeyDataDebugDumpMethod ()"><span class="type">xmlSecKeyDataDebugDumpMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.debugDump"></a>debugDump</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for printing debug data information.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATADEBUGDUMPMETHOD"><span class="TYPE">xmlSecKeyDataDebugDumpMethod</span></a> <code class="STRUCTFIELD">debugXmlDump</code>;</p></td>
-<td><p>the method for printing debug data information in XML format.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataDebugDumpMethod" title="xmlSecKeyDataDebugDumpMethod ()"><span class="type">xmlSecKeyDataDebugDumpMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataKlass.debugXmlDump"></a>debugXmlDump</code></em>;</p></td>
+<td class="struct_member_description"><p>the method for printing debug data information in XML format.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataKlass.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATALISTID"></a><h3>xmlSecKeyDataListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataListId     xmlSecKeyDataListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataListId"></a><h3>xmlSecKeyDataListId</h3>
+<pre class="programlisting">#define xmlSecKeyDataListId     xmlSecKeyDataListGetKlass()
+</pre>
 <p>The key data klasses list klass id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATAIDLISTID"></a><h3>xmlSecKeyDataIdListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataIdListId   xmlSecKeyDataIdListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataIdListId"></a><h3>xmlSecKeyDataIdListId</h3>
+<pre class="programlisting">#define xmlSecKeyDataIdListId   xmlSecKeyDataIdListGetKlass()
+</pre>
 <p>The key data list klass id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATABINARYSIZE"></a><h3>xmlSecKeyDataBinarySize</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyDataBinarySize</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataBinarySize"></a><h3>xmlSecKeyDataBinarySize</h3>
+<pre class="programlisting">#define             xmlSecKeyDataBinarySize</pre>
 <p>The binary key data object size.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTORE"></a><h3>struct xmlSecKeyDataStore</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyDataStore {
+<div class="refsect2">
+<a name="xmlSecKeyDataStore"></a><h3>struct xmlSecKeyDataStore</h3>
+<pre class="programlisting">struct xmlSecKeyDataStore {
     xmlSecKeyDataStoreId                id;
 
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The key data store. Key data store holds common key data specific information
 required for key data processing. For example, X509 data store may hold
 information about trusted (root) certificates.</p>
-<div class="REFSECT3">
-<a name="AEN11607"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11609"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStore.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecKeyDataStoreId</span></font> <code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the store id (<font><span class="TYPE">xmlSecKeyDataStoreId</span></font>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyDataStoreId</span></font> <em class="structfield"><code><a name="xmlSecKeyDataStore.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the store id (<font><span class="type">xmlSecKeyDataStoreId</span></font>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataStore.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataStore.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREIDUNKNOWN"></a><h3>xmlSecKeyDataStoreIdUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataStoreIdUnknown                     NULL</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreIdUnknown"></a><h3>xmlSecKeyDataStoreIdUnknown</h3>
+<pre class="programlisting">#define xmlSecKeyDataStoreIdUnknown                     NULL
+</pre>
 <p>The "unknown" id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREKLASS"></a><h3>struct xmlSecKeyDataStoreKlass</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyDataStoreKlass {
+<div class="refsect2">
+<a name="xmlSecKeyDataStoreKlass"></a><h3>struct xmlSecKeyDataStoreKlass</h3>
+<pre class="programlisting">struct xmlSecKeyDataStoreKlass {
     xmlSecSize                          klassSize;
     xmlSecSize                          objSize;
 
@@ -3354,69 +3359,68 @@ information about trusted (root) certificates.</p>
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The data store id (klass).</p>
-<div class="REFSECT3">
-<a name="AEN11653"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN11655"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyDataStoreKlass.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">klassSize</code>;</p></td>
-<td><p>the data store klass size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.klassSize"></a>klassSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the data store klass size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">objSize</code>;</p></td>
-<td><p>the data store obj size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.objSize"></a>objSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the data store obj size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the store's name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREINITIALIZEMETHOD"><span class="TYPE">xmlSecKeyDataStoreInitializeMethod</span></a> <code class="STRUCTFIELD">initialize</code>;</p></td>
-<td><p>the store's initialization method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreInitializeMethod" title="xmlSecKeyDataStoreInitializeMethod ()"><span class="type">xmlSecKeyDataStoreInitializeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.initialize"></a>initialize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's initialization method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysdata.html#XMLSECKEYDATASTOREFINALIZEMETHOD"><span class="TYPE">xmlSecKeyDataStoreFinalizeMethod</span></a> <code class="STRUCTFIELD">finalize</code>;</p></td>
-<td><p>the store's finalization (destroy) method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataStoreFinalizeMethod" title="xmlSecKeyDataStoreFinalizeMethod ()"><span class="type">xmlSecKeyDataStoreFinalizeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.finalize"></a>finalize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's finalization (destroy) method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyDataStoreKlass.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYDATASTOREPTRLISTID"></a><h3>xmlSecKeyDataStorePtrListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyDataStorePtrListId     xmlSecKeyDataStorePtrListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecKeyDataStorePtrListId"></a><h3>xmlSecKeyDataStorePtrListId</h3>
+<pre class="programlisting">#define xmlSecKeyDataStorePtrListId     xmlSecKeyDataStorePtrListGetKlass()
+</pre>
 <p>The data store list id (klass).</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-keyinfo.html"><b><<< keyinfo</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-keys.html"><b>keys >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-keysmngr.html b/docs/api/xmlsec-keysmngr.html
index 04a026d..3e4e9ad 100644
--- a/docs/api/xmlsec-keysmngr.html
+++ b/docs/api/xmlsec-keysmngr.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keysmngr</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="keys" href="xmlsec-keys.html">
-<link rel="NEXT" title="list" href="xmlsec-list.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keysmngr: 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-keys.html" title="keys">
+<link rel="next" href="xmlsec-list.html" title="list">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1100 +73,1099 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-keysmngr.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-list.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-KEYSMNGR"></a>keysmngr</h1>
-<div class="REFNAMEDIV">
-<a name="AEN13673"></a><h2>Name</h2>keysmngr -- Keys manager object support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSMNGR.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13678"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-keysmngr"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-keysmngr.top_of_page"></a>keysmngr</span></h2>
+<p>keysmngr — Keys manager object support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-keysmngr.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="RETURNVALUE">xmlSecKeysMngrPtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRCREATE">xmlSecKeysMngrCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeysMngrPtr</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRDESTROY">xmlSecKeysMngrDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrCreate" title="xmlSecKeysMngrCreate ()">xmlSecKeysMngrCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRFINDKEY">xmlSecKeysMngrFindKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrDestroy" title="xmlSecKeysMngrDestroy ()">xmlSecKeysMngrDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRADOPTKEYSSTORE">xmlSecKeysMngrAdoptKeysStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrFindKey" title="xmlSecKeysMngrFindKey ()">xmlSecKeysMngrFindKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="RETURNVALUE">xmlSecKeyStorePtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETKEYSSTORE">xmlSecKeysMngrGetKeysStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrAdoptKeysStore" title="xmlSecKeysMngrAdoptKeysStore ()">xmlSecKeysMngrAdoptKeysStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRADOPTDATASTORE">xmlSecKeysMngrAdoptDataStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyStorePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetKeysStore" title="xmlSecKeysMngrGetKeysStore ()">xmlSecKeysMngrGetKeysStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="RETURNVALUE">xmlSecKeyDataStorePtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETDATASTORE">xmlSecKeysMngrGetDataStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrAdoptDataStore" title="xmlSecKeysMngrAdoptDataStore ()">xmlSecKeysMngrAdoptDataStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysmngr.html#XMLSECGETKEYCALLBACK">*xmlSecGetKeyCallback</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStorePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetDataStore" title="xmlSecKeysMngrGetDataStore ()">xmlSecKeysMngrGetDataStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRGETKEY">xmlSecKeysMngrGetKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysmngr.html#xmlSecGetKeyCallback" title="xmlSecGetKeyCallback ()">*xmlSecGetKeyCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="RETURNVALUE">xmlSecKeyStorePtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTORECREATE">xmlSecKeyStoreCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrGetKey" title="xmlSecKeysMngrGetKey ()">xmlSecKeysMngrGetKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTOREDESTROY">xmlSecKeyStoreDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyStorePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCreate" title="xmlSecKeyStoreCreate ()">xmlSecKeyStoreCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINDKEY">xmlSecKeyStoreFindKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreDestroy" title="xmlSecKeyStoreDestroy ()">xmlSecKeyStoreDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTOREGETNAME">xmlSecKeyStoreGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFindKey" title="xmlSecKeyStoreFindKey ()">xmlSecKeyStoreFindKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTOREISVALID">xmlSecKeyStoreIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreGetName" title="xmlSecKeyStoreGetName()">xmlSecKeyStoreGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTORECHECKID">xmlSecKeyStoreCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreIsValid" title="xmlSecKeyStoreIsValid()">xmlSecKeyStoreIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTORECHECKSIZE">xmlSecKeyStoreCheckSize</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCheckId" title="xmlSecKeyStoreCheckId()">xmlSecKeyStoreCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREIDUNKNOWN">xmlSecKeyStoreIdUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCheckSize" title="xmlSecKeyStoreCheckSize()">xmlSecKeyStoreCheckSize</a><span class="c_punctuation">()</span>
+</td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREINITIALIZEMETHOD">*xmlSecKeyStoreInitializeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreInitializeMethod" title="xmlSecKeyStoreInitializeMethod ()">*xmlSecKeyStoreInitializeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINALIZEMETHOD">*xmlSecKeyStoreFinalizeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFinalizeMethod" title="xmlSecKeyStoreFinalizeMethod ()">*xmlSecKeyStoreFinalizeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINDKEYMETHOD">*xmlSecKeyStoreFindKeyMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFindKeyMethod" title="xmlSecKeyStoreFindKeyMethod ()">*xmlSecKeyStoreFindKeyMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECKEYSTOREKLASSGETNAME">xmlSecKeyStoreKlassGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreKlassGetName" title="xmlSecKeyStoreKlassGetName()">xmlSecKeyStoreKlassGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREGETKLASS">xmlSecSimpleKeysStoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreGetKlass" title="xmlSecSimpleKeysStoreGetKlass ()">xmlSecSimpleKeysStoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREADOPTKEY">xmlSecSimpleKeysStoreAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreAdoptKey" title="xmlSecSimpleKeysStoreAdoptKey ()">xmlSecSimpleKeysStoreAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTORELOAD">xmlSecSimpleKeysStoreLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreLoad" title="xmlSecSimpleKeysStoreLoad ()">xmlSecSimpleKeysStoreLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTORESAVE">xmlSecSimpleKeysStoreSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreSave" title="xmlSecSimpleKeysStoreSave ()">xmlSecSimpleKeysStoreSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a></td>
-<td>
-<a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREGETKEYS">xmlSecSimpleKeysStoreGetKeys</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreGetKeys" title="xmlSecSimpleKeysStoreGetKeys ()">xmlSecSimpleKeysStoreGetKeys</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSMNGR.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13860"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysmngr.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">xmlSecKeysMngr</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">xmlSecKeysMngr</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStore" title="struct xmlSecKeyStore">xmlSecKeyStore</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE">xmlSecKeyStore</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreIdUnknown" title="xmlSecKeyStoreIdUnknown">xmlSecKeyStoreIdUnknown</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREKLASS">xmlSecKeyStoreKlass</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreKlass" title="struct xmlSecKeyStoreKlass">xmlSecKeyStoreKlass</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID">xmlSecSimpleKeysStoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId">xmlSecSimpleKeysStoreId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSMNGR.DESCRIPTION"></a><h2>Description</h2>
-<p>Keys manager object support.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSMNGR.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRCREATE"></a><h3>xmlSecKeysMngrCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="RETURNVALUE">xmlSecKeysMngrPtr</span></a>
-xmlSecKeysMngrCreate (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysmngr.description"></a><h2>Description</h2>
+<p>
+Keys manager object support.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-keysmngr.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecKeysMngrCreate"></a><h3>xmlSecKeysMngrCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeysMngrPtr</span></font>
+xmlSecKeysMngrCreate (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Creates new keys manager. Caller is responsible for freeing it with
-<a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRDESTROY"><span class="TYPE">xmlSecKeysMngrDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN13896"></a><h4>Returns</h4>
+<a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrDestroy" title="xmlSecKeysMngrDestroy ()"><span class="type">xmlSecKeysMngrDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeysMngrCreate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly allocated keys manager or NULL if
 an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRDESTROY"></a><h3>xmlSecKeysMngrDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeysMngrDestroy (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Destroys keys manager created with <a href="xmlsec-keysmngr.html#XMLSECKEYSMNGRCREATE"><span class="TYPE">xmlSecKeysMngrCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN13912"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13914"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeysMngrDestroy"></a><h3>xmlSecKeysMngrDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeysMngrDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Destroys keys manager created with <a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngrCreate" title="xmlSecKeysMngrCreate ()"><span class="type">xmlSecKeysMngrCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeysMngrDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRFINDKEY"></a><h3>xmlSecKeysMngrFindKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeysMngrFindKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                       <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeysMngrFindKey"></a><h3>xmlSecKeysMngrFindKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeysMngrFindKey (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                       <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Lookups key in the keys manager keys store. The caller is responsible
-for destroying the returned key using <a href="xmlsec-keys.html#XMLSECKEYDESTROY"><span class="TYPE">xmlSecKeyDestroy</span></a> method.</p>
-<div class="REFSECT3">
-<a name="AEN13942"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13944"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+for destroying the returned key using <a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()"><span class="type">xmlSecKeyDestroy</span></a> method.</p>
+<div class="refsect3">
+<a name="xmlSecKeysMngrFindKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the desired key name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the desired key name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN13965"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeysMngrFindKey.returns"></a><h4>Returns</h4>
 <p> the pointer to a key or NULL if key is not found or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRADOPTKEYSSTORE"></a><h3>xmlSecKeysMngrAdoptKeysStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeysMngrAdoptKeysStore (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>);</pre>
-<p>Adopts keys store in the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecKeysMngrAdoptKeysStore"></a><h3>xmlSecKeysMngrAdoptKeysStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeysMngrAdoptKeysStore (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>);</pre>
+<p>Adopts keys store in the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN13983"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN13985"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngrAdoptKeysStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14000"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeysMngrAdoptKeysStore.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="XMLSECKEYSMNGRGETKEYSSTORE"></a><h3>xmlSecKeysMngrGetKeysStore ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="RETURNVALUE">xmlSecKeyStorePtr</span></a>
-xmlSecKeysMngrGetKeysStore (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeysMngrGetKeysStore"></a><h3>xmlSecKeysMngrGetKeysStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyStorePtr</span></font>
+xmlSecKeysMngrGetKeysStore (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Gets the keys store.</p>
-<div class="REFSECT3">
-<a name="AEN14014"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14016"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetKeysStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14025"></a><h4>Returns</h4>
-<p> the keys store in the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetKeysStore.returns"></a><h4>Returns</h4>
+<p> the keys store in the keys manager <em class="parameter"><code>mngr</code></em>
 or NULL if
 there is no store or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRADOPTDATASTORE"></a><h3>xmlSecKeysMngrAdoptDataStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecKeysMngrAdoptDataStore (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeysMngrAdoptDataStore"></a><h3>xmlSecKeysMngrAdoptDataStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecKeysMngrAdoptDataStore (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>);</pre>
 <p>Adopts data store in the keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN14043"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14045"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngrAdoptDataStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to data store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to data store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14060"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeysMngrAdoptDataStore.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="XMLSECKEYSMNGRGETDATASTORE"></a><h3>xmlSecKeysMngrGetDataStore ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="RETURNVALUE">xmlSecKeyDataStorePtr</span></a>
-xmlSecKeysMngrGetDataStore (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlSecKeyDataStoreId</span></font> id</code>);</pre>
-<p>Lookups the data store of given klass <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecKeysMngrGetDataStore"></a><h3>xmlSecKeysMngrGetDataStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStorePtr</span></font>
+xmlSecKeysMngrGetDataStore (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlSecKeyDataStoreId</span></font> id</code></em>);</pre>
+<p>Lookups the data store of given klass <em class="parameter"><code>id</code></em>
  in the keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN14078"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14080"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetDataStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the desired data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the desired data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14095"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetDataStore.returns"></a><h4>Returns</h4>
 <p> pointer to data store or NULL if it is not found or an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETKEYCALLBACK"></a><h3>xmlSecGetKeyCallback ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecGetKeyCallback<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecGetKeyCallback"></a><h3>xmlSecGetKeyCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+<span class="c_punctuation">(</span>*xmlSecGetKeyCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
  and extracts the key.</p>
-<div class="REFSECT3">
-<a name="AEN14115"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14117"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGetKeyCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14132"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGetKeyCallback.returns"></a><h4>Returns</h4>
 <p> the pointer to key or NULL if the key is not found or
 an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGRGETKEY"></a><h3>xmlSecKeysMngrGetKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeysMngrGetKey (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                      <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
-<p>Reads the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecKeysMngrGetKey"></a><h3>xmlSecKeysMngrGetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeysMngrGetKey (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
+<p>Reads the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
  and extracts the key.</p>
-<div class="REFSECT3">
-<a name="AEN14150"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14152"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14167"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeysMngrGetKey.returns"></a><h4>Returns</h4>
 <p> the pointer to key or NULL if the key is not found or
 an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTORECREATE"></a><h3>xmlSecKeyStoreCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="RETURNVALUE">xmlSecKeyStorePtr</span></a>
-xmlSecKeyStoreCreate (<code class="PARAMETER"><font><span class="TYPE">xmlSecKeyStoreId</span></font> id</code>);</pre>
-<p>Creates new store of the specified klass <code class="PARAMETER">klass</code>
+<div class="refsect2">
+<a name="xmlSecKeyStoreCreate"></a><h3>xmlSecKeyStoreCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyStorePtr</span></font>
+xmlSecKeyStoreCreate (<em class="parameter"><code><font><span class="type">xmlSecKeyStoreId</span></font> id</code></em>);</pre>
+<p>Creates new store of the specified klass <em class="parameter"><code>klass</code></em>
 . Caller is responsible
-for freeing the returned store by calling <a href="xmlsec-keysmngr.html#XMLSECKEYSTOREDESTROY"><span class="TYPE">xmlSecKeyStoreDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN14184"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14186"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+for freeing the returned store by calling <a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreDestroy" title="xmlSecKeyStoreDestroy ()"><span class="type">xmlSecKeyStoreDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyStoreCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the key store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the key store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14195"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyStoreCreate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly allocated keys store or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREDESTROY"></a><h3>xmlSecKeyStoreDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecKeyStoreDestroy (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>);</pre>
-<p>Destroys the store created with <a href="xmlsec-keysmngr.html#XMLSECKEYSTORECREATE"><span class="TYPE">xmlSecKeyStoreCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN14211"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14213"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecKeyStoreDestroy"></a><h3>xmlSecKeyStoreDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecKeyStoreDestroy (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>);</pre>
+<p>Destroys the store created with <a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreCreate" title="xmlSecKeyStoreCreate ()"><span class="type">xmlSecKeyStoreCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecKeyStoreDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREFINDKEY"></a><h3>xmlSecKeyStoreFindKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecKeyStoreFindKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                       <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreFindKey"></a><h3>xmlSecKeyStoreFindKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecKeyStoreFindKey (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                       <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Lookups key in the store. The caller is responsible for destroying
-the returned key using <a href="xmlsec-keys.html#XMLSECKEYDESTROY"><span class="TYPE">xmlSecKeyDestroy</span></a> method.</p>
-<div class="REFSECT3">
-<a name="AEN14241"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14243"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+the returned key using <a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()"><span class="type">xmlSecKeyDestroy</span></a> method.</p>
+<div class="refsect3">
+<a name="xmlSecKeyStoreFindKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the desired key name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the desired key name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14264"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyStoreFindKey.returns"></a><h4>Returns</h4>
 <p> the pointer to a key or NULL if key is not found or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREGETNAME"></a><h3>xmlSecKeyStoreGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyStoreGetName(store)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreGetName"></a><h3>xmlSecKeyStoreGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyStoreGetName(store)</pre>
 <p>Macro. Returns key store name.</p>
-<div class="REFSECT3">
-<a name="AEN14273"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14275"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREISVALID"></a><h3>xmlSecKeyStoreIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyStoreIsValid(store)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">store</code>
- is not NULL and <code class="PARAMETER">store->id</code>
+<div class="refsect2">
+<a name="xmlSecKeyStoreIsValid"></a><h3>xmlSecKeyStoreIsValid()</h3>
+<pre class="programlisting">#define             xmlSecKeyStoreIsValid(store)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>store</code></em>
+ is not NULL and <em class="parameter"><code>store->id</code></em>
  is not NULL
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN14292"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14294"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTORECHECKID"></a><h3>xmlSecKeyStoreCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyStoreCheckId(store, storeId)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">store</code>
- is valid and <code class="PARAMETER">store</code>
-'s id is equal to <code class="PARAMETER">storeId</code>
+<div class="refsect2">
+<a name="xmlSecKeyStoreCheckId"></a><h3>xmlSecKeyStoreCheckId()</h3>
+<pre class="programlisting">#define             xmlSecKeyStoreCheckId(store, storeId)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>store</code></em>
+ is valid and <em class="parameter"><code>store</code></em>
+'s id is equal to <em class="parameter"><code>storeId</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN14312"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14314"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>storeId</p></td>
-<td><p>the store Id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>storeId</p></td>
+<td class="parameter_description"><p>the store Id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTORECHECKSIZE"></a><h3>xmlSecKeyStoreCheckSize()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyStoreCheckSize(store, size)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">store</code>
- is valid and <code class="PARAMETER">stores</code>
-'s object has at least <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecKeyStoreCheckSize"></a><h3>xmlSecKeyStoreCheckSize()</h3>
+<pre class="programlisting">#define             xmlSecKeyStoreCheckSize(store, size)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>store</code></em>
+ is valid and <em class="parameter"><code>stores</code></em>
+'s object has at least <em class="parameter"><code>size</code></em>
  bytes.</p>
-<div class="REFSECT3">
-<a name="AEN14338"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14340"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreCheckSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the expected size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the expected size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREIDUNKNOWN"></a><h3>xmlSecKeyStoreIdUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecKeyStoreIdUnknown                         ((xmlSecKeyDataStoreId)NULL)</pre>
-<p>The "unknown" id.</p>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREINITIALIZEMETHOD"></a><h3>xmlSecKeyStoreInitializeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyStoreInitializeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreInitializeMethod"></a><h3>xmlSecKeyStoreInitializeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyStoreInitializeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>);</pre>
 <p>Keys store specific initialization method.</p>
-<div class="REFSECT3">
-<a name="AEN14374"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14376"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreInitializeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14385"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyStoreInitializeMethod.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="XMLSECKEYSTOREFINALIZEMETHOD"></a><h3>xmlSecKeyStoreFinalizeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyStoreFinalizeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreFinalizeMethod"></a><h3>xmlSecKeyStoreFinalizeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyStoreFinalizeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>);</pre>
 <p>Keys store specific finalization (destroy) method.</p>
-<div class="REFSECT3">
-<a name="AEN14401"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14403"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreFinalizeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREFINDKEYMETHOD"></a><h3>xmlSecKeyStoreFindKeyMethod ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecKeyStoreFindKeyMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreFindKeyMethod"></a><h3>xmlSecKeyStoreFindKeyMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+<span class="c_punctuation">(</span>*xmlSecKeyStoreFindKeyMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Keys store specific find method. The caller is responsible for destroying
-the returned key using <a href="xmlsec-keys.html#XMLSECKEYDESTROY"><span class="TYPE">xmlSecKeyDestroy</span></a> method.</p>
-<div class="REFSECT3">
-<a name="AEN14433"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14435"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+the returned key using <a class="link" href="xmlsec-keys.html#xmlSecKeyDestroy" title="xmlSecKeyDestroy ()"><span class="type">xmlSecKeyDestroy</span></a> method.</p>
+<div class="refsect3">
+<a name="xmlSecKeyStoreFindKeyMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the desired key name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the desired key name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to key info context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to key info context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14456"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecKeyStoreFindKeyMethod.returns"></a><h4>Returns</h4>
 <p> the pointer to a key or NULL if key is not found or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREKLASSGETNAME"></a><h3>xmlSecKeyStoreKlassGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecKeyStoreKlassGetName(klass)</pre>
+<div class="refsect2">
+<a name="xmlSecKeyStoreKlassGetName"></a><h3>xmlSecKeyStoreKlassGetName()</h3>
+<pre class="programlisting">#define             xmlSecKeyStoreKlassGetName(klass)</pre>
 <p>Macro. Returns store klass name.</p>
-<div class="REFSECT3">
-<a name="AEN14465"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14467"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreKlassGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>klass</p></td>
-<td><p>the pointer to store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>the pointer to store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSIMPLEKEYSSTOREGETKLASS"></a><h3>xmlSecSimpleKeysStoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font>
-xmlSecSimpleKeysStoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreGetKlass"></a><h3>xmlSecSimpleKeysStoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+xmlSecSimpleKeysStoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The simple list based keys store klass.</p>
-<div class="REFSECT3">
-<a name="AEN14486"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreGetKlass.returns"></a><h4>Returns</h4>
 <p> simple list based keys store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSIMPLEKEYSSTOREADOPTKEY"></a><h3>xmlSecSimpleKeysStoreAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecSimpleKeysStoreAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreAdoptKey"></a><h3>xmlSecSimpleKeysStoreAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecSimpleKeysStoreAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN14505"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14507"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to simple keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to simple keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN14522"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreAdoptKey.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="XMLSECSIMPLEKEYSSTORELOAD"></a><h3>xmlSecSimpleKeysStoreLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecSimpleKeysStoreLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>,
-                           <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreLoad"></a><h3>xmlSecSimpleKeysStoreLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecSimpleKeysStoreLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Reads keys from an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN14542"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14544"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to simple keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to simple keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to associated keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to associated keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14565"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreLoad.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="XMLSECSIMPLEKEYSSTORESAVE"></a><h3>xmlSecSimpleKeysStoreSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecSimpleKeysStoreSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                           <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Writes keys from <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreSave"></a><h3>xmlSecSimpleKeysStoreSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecSimpleKeysStoreSave (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Writes keys from <em class="parameter"><code>store</code></em>
  to an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN14586"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14588"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to simple keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to simple keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the saved keys type (public, private, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the saved keys type (public, private, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14609"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreSave.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="XMLSECSIMPLEKEYSSTOREGETKEYS"></a><h3>xmlSecSimpleKeysStoreGetKeys ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a>
-xmlSecSimpleKeysStoreGetKeys (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreGetKeys"></a><h3>xmlSecSimpleKeysStoreGetKeys ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+xmlSecSimpleKeysStoreGetKeys (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>);</pre>
 <p>Gets list of keys from simple keys store.</p>
-<div class="REFSECT3">
-<a name="AEN14623"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14625"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreGetKeys.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>store</p></td>
-<td><p>the pointer to simple keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to simple keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN14634"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecSimpleKeysStoreGetKeys.returns"></a><h4>Returns</h4>
 <p> pointer to the list of keys stored in the keys store or NULL
 if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-KEYSMNGR.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECKEYSMNGR"></a><h3>struct xmlSecKeysMngr</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeysMngr {
+<div class="refsect1">
+<a name="xmlsec-keysmngr.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecKeysMngr"></a><h3>struct xmlSecKeysMngr</h3>
+<pre class="programlisting">struct xmlSecKeysMngr {
     xmlSecKeyStorePtr           keysStore;
     xmlSecPtrList               storesList;
     xmlSecGetKeyCallback        getKey;
-};</pre>
+};
+</pre>
 <p>The keys manager structure.</p>
-<div class="REFSECT3">
-<a name="AEN14645"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14647"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeysMngr.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> <code class="STRUCTFIELD">keysStore</code>;</p></td>
-<td><p>the key store (list of keys known to keys manager).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyStorePtr</span></font> <em class="structfield"><code><a name="xmlSecKeysMngr.keysStore"></a>keysStore</code></em>;</p></td>
+<td class="struct_member_description"><p>the key store (list of keys known to keys manager).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">storesList</code>;</p></td>
-<td><p>the list of key data stores known to keys manager.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecKeysMngr.storesList"></a>storesList</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of key data stores known to keys manager.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECGETKEYCALLBACK"><span class="TYPE">xmlSecGetKeyCallback</span></a> <code class="STRUCTFIELD">getKey</code>;</p></td>
-<td><p>the callback used to read <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecGetKeyCallback" title="xmlSecGetKeyCallback ()"><span class="type">xmlSecGetKeyCallback</span></a> <em class="structfield"><code><a name="xmlSecKeysMngr.getKey"></a>getKey</code></em>;</p></td>
+<td class="struct_member_description"><p>the callback used to read <dsig:KeyInfo/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTORE"></a><h3>struct xmlSecKeyStore</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyStore {
+<div class="refsect2">
+<a name="xmlSecKeyStore"></a><h3>struct xmlSecKeyStore</h3>
+<pre class="programlisting">struct xmlSecKeyStore {
     xmlSecKeyStoreId                    id;
 
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The keys store.</p>
-<div class="REFSECT3">
-<a name="AEN14683"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14685"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStore.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecKeyStoreId</span></font> <code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the store id (<font><span class="TYPE">xmlSecKeyStoreId</span></font>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyStoreId</span></font> <em class="structfield"><code><a name="xmlSecKeyStore.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the store id (<font><span class="type">xmlSecKeyStoreId</span></font>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyStore.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyStore.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecKeyStoreIdUnknown"></a><h3>xmlSecKeyStoreIdUnknown</h3>
+<pre class="programlisting">#define xmlSecKeyStoreIdUnknown                         ((xmlSecKeyDataStoreId)NULL)
+</pre>
+<p>The "unknown" id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECKEYSTOREKLASS"></a><h3>struct xmlSecKeyStoreKlass</h3>
-<pre class="PROGRAMLISTING">struct xmlSecKeyStoreKlass {
+<div class="refsect2">
+<a name="xmlSecKeyStoreKlass"></a><h3>struct xmlSecKeyStoreKlass</h3>
+<pre class="programlisting">struct xmlSecKeyStoreKlass {
     xmlSecSize                          klassSize;
     xmlSecSize                          objSize;
 
@@ -1208,74 +1180,73 @@ if an error occurs.</p>
     /* for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The keys store id (klass).</p>
-<div class="REFSECT3">
-<a name="AEN14723"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14725"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecKeyStoreKlass.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">klassSize</code>;</p></td>
-<td><p>the store klass size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyStoreKlass.klassSize"></a>klassSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store klass size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">objSize</code>;</p></td>
-<td><p>the store obj size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecKeyStoreKlass.objSize"></a>objSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store obj size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the store's name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecKeyStoreKlass.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREINITIALIZEMETHOD"><span class="TYPE">xmlSecKeyStoreInitializeMethod</span></a> <code class="STRUCTFIELD">initialize</code>;</p></td>
-<td><p>the store's initialization method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreInitializeMethod" title="xmlSecKeyStoreInitializeMethod ()"><span class="type">xmlSecKeyStoreInitializeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyStoreKlass.initialize"></a>initialize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's initialization method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINALIZEMETHOD"><span class="TYPE">xmlSecKeyStoreFinalizeMethod</span></a> <code class="STRUCTFIELD">finalize</code>;</p></td>
-<td><p>the store's finalization (destroy) method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFinalizeMethod" title="xmlSecKeyStoreFinalizeMethod ()"><span class="type">xmlSecKeyStoreFinalizeMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyStoreKlass.finalize"></a>finalize</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's finalization (destroy) method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keysmngr.html#XMLSECKEYSTOREFINDKEYMETHOD"><span class="TYPE">xmlSecKeyStoreFindKeyMethod</span></a> <code class="STRUCTFIELD">findKey</code>;</p></td>
-<td><p>the store's find method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keysmngr.html#xmlSecKeyStoreFindKeyMethod" title="xmlSecKeyStoreFindKeyMethod ()"><span class="type">xmlSecKeyStoreFindKeyMethod</span></a> <em class="structfield"><code><a name="xmlSecKeyStoreKlass.findKey"></a>findKey</code></em>;</p></td>
+<td class="struct_member_description"><p>the store's find method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyStoreKlass.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecKeyStoreKlass.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSIMPLEKEYSSTOREID"></a><h3>xmlSecSimpleKeysStoreId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecSimpleKeysStoreId         xmlSecSimpleKeysStoreGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecSimpleKeysStoreId"></a><h3>xmlSecSimpleKeysStoreId</h3>
+<pre class="programlisting">#define xmlSecSimpleKeysStoreId         xmlSecSimpleKeysStoreGetKlass()
+</pre>
 <p>A simple keys store klass id.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-keys.html"><b><<< keys</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-list.html"><b>list >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-list.html b/docs/api/xmlsec-list.html
index 06fffcf..1fd4efb 100644
--- a/docs/api/xmlsec-list.html
+++ b/docs/api/xmlsec-list.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>list</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="keysmngr" href="xmlsec-keysmngr.html">
-<link rel="NEXT" title="membuf" href="xmlsec-membuf.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>list: 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-keysmngr.html" title="keysmngr">
+<link rel="next" href="xmlsec-membuf.html" title="membuf">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1069 +73,1067 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-keysmngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-list.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-keysmngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-membuf.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-LIST"></a>list</h1>
-<div class="REFNAMEDIV">
-<a name="AEN14811"></a><h2>Name</h2>list -- Generic list structure implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-LIST.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14816"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-list"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-list.top_of_page"></a>list</span></h2>
+<p>list — Generic list structure implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-list.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTSETDEFAULTALLOCMODE">xmlSecPtrListSetDefaultAllocMode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListSetDefaultAllocMode" title="xmlSecPtrListSetDefaultAllocMode ()">xmlSecPtrListSetDefaultAllocMode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTINITIALIZE">xmlSecPtrListInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListInitialize" title="xmlSecPtrListInitialize ()">xmlSecPtrListInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTFINALIZE">xmlSecPtrListFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListFinalize" title="xmlSecPtrListFinalize ()">xmlSecPtrListFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTCREATE">xmlSecPtrListCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListCreate" title="xmlSecPtrListCreate ()">xmlSecPtrListCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTDESTROY">xmlSecPtrListDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListDestroy" title="xmlSecPtrListDestroy ()">xmlSecPtrListDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTEMPTY">xmlSecPtrListEmpty</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListEmpty" title="xmlSecPtrListEmpty ()">xmlSecPtrListEmpty</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTCOPY">xmlSecPtrListCopy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListCopy" title="xmlSecPtrListCopy ()">xmlSecPtrListCopy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTDUPLICATE">xmlSecPtrListDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListDuplicate" title="xmlSecPtrListDuplicate ()">xmlSecPtrListDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTGETSIZE">xmlSecPtrListGetSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-list.html#xmlSecPtrListGetSize" title="xmlSecPtrListGetSize ()">xmlSecPtrListGetSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtr</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTGETITEM">xmlSecPtrListGetItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListGetItem" title="xmlSecPtrListGetItem ()">xmlSecPtrListGetItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTADD">xmlSecPtrListAdd</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListAdd" title="xmlSecPtrListAdd ()">xmlSecPtrListAdd</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTSET">xmlSecPtrListSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListSet" title="xmlSecPtrListSet ()">xmlSecPtrListSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTREMOVE">xmlSecPtrListRemove</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListRemove" title="xmlSecPtrListRemove ()">xmlSecPtrListRemove</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtr</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTREMOVEANDRETURN">xmlSecPtrListRemoveAndReturn</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListRemoveAndReturn" title="xmlSecPtrListRemoveAndReturn ()">xmlSecPtrListRemoveAndReturn</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTDEBUGDUMP">xmlSecPtrListDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListDebugDump" title="xmlSecPtrListDebugDump ()">xmlSecPtrListDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTDEBUGXMLDUMP">xmlSecPtrListDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListDebugXmlDump" title="xmlSecPtrListDebugXmlDump ()">xmlSecPtrListDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTGETNAME">xmlSecPtrListGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListGetName" title="xmlSecPtrListGetName()">xmlSecPtrListGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTISVALID">xmlSecPtrListIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListIsValid" title="xmlSecPtrListIsValid()">xmlSecPtrListIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTCHECKID">xmlSecPtrListCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListCheckId" title="xmlSecPtrListCheckId()">xmlSecPtrListCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtr</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-list.html#XMLSECPTRDUPLICATEITEMMETHOD">*xmlSecPtrDuplicateItemMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-list.html#xmlSecPtrDuplicateItemMethod" title="xmlSecPtrDuplicateItemMethod ()">*xmlSecPtrDuplicateItemMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-list.html#XMLSECPTRDESTROYITEMMETHOD">*xmlSecPtrDestroyItemMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-list.html#xmlSecPtrDestroyItemMethod" title="xmlSecPtrDestroyItemMethod ()">*xmlSecPtrDestroyItemMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD">*xmlSecPtrDebugDumpItemMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-list.html#xmlSecPtrDebugDumpItemMethod" title="xmlSecPtrDebugDumpItemMethod ()">*xmlSecPtrDebugDumpItemMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-list.html#XMLSECPTRLISTKLASSGETNAME">xmlSecPtrListKlassGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecPtrListKlassGetName" title="xmlSecPtrListKlassGetName()">xmlSecPtrListKlassGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-list.html#XMLSECSTRINGLISTGETKLASS">xmlSecStringListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-list.html#xmlSecStringListGetKlass" title="xmlSecStringListGetKlass ()">xmlSecStringListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-LIST.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN14987"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-list.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST">xmlSecPtrList</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList">xmlSecPtrList</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-list.html#XMLSECPTRLISTIDUNKNOWN">xmlSecPtrListIdUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-list.html#xmlSecPtrListIdUnknown" title="xmlSecPtrListIdUnknown">xmlSecPtrListIdUnknown</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-list.html#XMLSECPTRLISTKLASS">xmlSecPtrListKlass</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-list.html#xmlSecPtrListKlass" title="struct xmlSecPtrListKlass">xmlSecPtrListKlass</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-list.html#XMLSECSTRINGLISTID">xmlSecStringListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-list.html#xmlSecStringListId" title="xmlSecStringListId">xmlSecStringListId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-LIST.DESCRIPTION"></a><h2>Description</h2>
-<p>Generic list structure implementation.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-LIST.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTSETDEFAULTALLOCMODE"></a><h3>xmlSecPtrListSetDefaultAllocMode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListSetDefaultAllocMode (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECALLOCMODE"><span class="TYPE">xmlSecAllocMode</span></a> defAllocMode</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> defInitialSize</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-list.description"></a><h2>Description</h2>
+<p>
+Generic list structure implementation.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-list.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecPtrListSetDefaultAllocMode"></a><h3>xmlSecPtrListSetDefaultAllocMode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListSetDefaultAllocMode (<em class="parameter"><code><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode"><span class="type">xmlSecAllocMode</span></a> defAllocMode</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> defInitialSize</code></em>);</pre>
 <p>Sets new default allocation mode and minimal initial list size.</p>
-<div class="REFSECT3">
-<a name="AEN15025"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15027"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListSetDefaultAllocMode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>defAllocMode</p></td>
-<td><p>the new default memory allocation mode.</p></td>
-<td> </td>
+<td class="parameter_name"><p>defAllocMode</p></td>
+<td class="parameter_description"><p>the new default memory allocation mode.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>defInitialSize</p></td>
-<td><p>the new default minimal initial size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>defInitialSize</p></td>
+<td class="parameter_description"><p>the new default minimal initial size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTINITIALIZE"></a><h3>xmlSecPtrListInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPtrListInitialize (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">xmlSecPtrListId</span></font> id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListInitialize"></a><h3>xmlSecPtrListInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPtrListInitialize (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecPtrListId</span></font> id</code></em>);</pre>
 <p>Initializes the list of given klass. Caller is responsible
-for cleaning up by calling <a href="xmlsec-list.html#XMLSECPTRLISTFINALIZE"><span class="TYPE">xmlSecPtrListFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN15058"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15060"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+for cleaning up by calling <a class="link" href="xmlsec-list.html#xmlSecPtrListFinalize" title="xmlSecPtrListFinalize ()"><span class="type">xmlSecPtrListFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecPtrListInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the list klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the list klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15075"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListInitialize.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="XMLSECPTRLISTFINALIZE"></a><h3>xmlSecPtrListFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListFinalize (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>);</pre>
-<p>Cleans up the list initialized with <a href="xmlsec-list.html#XMLSECPTRLISTINITIALIZE"><span class="TYPE">xmlSecPtrListInitialize</span></a>
+<div class="refsect2">
+<a name="xmlSecPtrListFinalize"></a><h3>xmlSecPtrListFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListFinalize (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>);</pre>
+<p>Cleans up the list initialized with <a class="link" href="xmlsec-list.html#xmlSecPtrListInitialize" title="xmlSecPtrListInitialize ()"><span class="type">xmlSecPtrListInitialize</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN15091"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15093"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTCREATE"></a><h3>xmlSecPtrListCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a>
-xmlSecPtrListCreate (<code class="PARAMETER"><font><span class="TYPE">xmlSecPtrListId</span></font> id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListCreate"></a><h3>xmlSecPtrListCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+xmlSecPtrListCreate (<em class="parameter"><code><font><span class="type">xmlSecPtrListId</span></font> id</code></em>);</pre>
 <p>Creates new list object. Caller is responsible for freeing returned list
-by calling <a href="xmlsec-list.html#XMLSECPTRLISTDESTROY"><span class="TYPE">xmlSecPtrListDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN15115"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15117"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+by calling <a class="link" href="xmlsec-list.html#xmlSecPtrListDestroy" title="xmlSecPtrListDestroy ()"><span class="type">xmlSecPtrListDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecPtrListCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the list klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the list klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN15126"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated list or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTDESTROY"></a><h3>xmlSecPtrListDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListDestroy (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>);</pre>
-<p>Destroys <code class="PARAMETER">list</code>
- created with <a href="xmlsec-list.html#XMLSECPTRLISTCREATE"><span class="TYPE">xmlSecPtrListCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN15143"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15145"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecPtrListDestroy"></a><h3>xmlSecPtrListDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListDestroy (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>);</pre>
+<p>Destroys <em class="parameter"><code>list</code></em>
+ created with <a class="link" href="xmlsec-list.html#xmlSecPtrListCreate" title="xmlSecPtrListCreate ()"><span class="type">xmlSecPtrListCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecPtrListDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTEMPTY"></a><h3>xmlSecPtrListEmpty ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListEmpty (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>);</pre>
-<p>Remove all items from <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecPtrListEmpty"></a><h3>xmlSecPtrListEmpty ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListEmpty (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>);</pre>
+<p>Remove all items from <em class="parameter"><code>list</code></em>
  (if any).</p>
-<div class="REFSECT3">
-<a name="AEN15166"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15168"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListEmpty.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTCOPY"></a><h3>xmlSecPtrListCopy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPtrListCopy (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> dst</code>,
-                   <code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> src</code>);</pre>
-<p>Copies <code class="PARAMETER">src</code>
- list items to <code class="PARAMETER">dst</code>
- list using <font><span class="TYPE">duplicateItem</span></font> method
-of the list klass. If <font><span class="TYPE">duplicateItem</span></font> method is NULL then
+<div class="refsect2">
+<a name="xmlSecPtrListCopy"></a><h3>xmlSecPtrListCopy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPtrListCopy (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> dst</code></em>,
+                   <em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> src</code></em>);</pre>
+<p>Copies <em class="parameter"><code>src</code></em>
+ list items to <em class="parameter"><code>dst</code></em>
+ list using <font><span class="type">duplicateItem</span></font> method
+of the list klass. If <font><span class="type">duplicateItem</span></font> method is NULL then
 we jsut copy pointers to items.</p>
-<div class="REFSECT3">
-<a name="AEN15197"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15199"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListCopy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN15214"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListCopy.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="XMLSECPTRLISTDUPLICATE"></a><h3>xmlSecPtrListDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a>
-xmlSecPtrListDuplicate (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>);</pre>
-<p>Creates a new copy of <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecPtrListDuplicate"></a><h3>xmlSecPtrListDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+xmlSecPtrListDuplicate (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>);</pre>
+<p>Creates a new copy of <em class="parameter"><code>list</code></em>
  and all its items.</p>
-<div class="REFSECT3">
-<a name="AEN15229"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15231"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15240"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListDuplicate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated list or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTGETSIZE"></a><h3>xmlSecPtrListGetSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecPtrListGetSize (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListGetSize"></a><h3>xmlSecPtrListGetSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecPtrListGetSize (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>);</pre>
 <p>Gets list size.</p>
-<div class="REFSECT3">
-<a name="AEN15254"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15256"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListGetSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15265"></a><h4>Returns</h4>
-<p> the number of itmes in <code class="PARAMETER">list</code>
+<div class="refsect3">
+<a name="xmlSecPtrListGetSize.returns"></a><h4>Returns</h4>
+<p> the number of itmes in <em class="parameter"><code>list</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTGETITEM"></a><h3>xmlSecPtrListGetItem ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtr</span></font>
-xmlSecPtrListGetItem (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListGetItem"></a><h3>xmlSecPtrListGetItem ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+xmlSecPtrListGetItem (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets item from the list.</p>
-<div class="REFSECT3">
-<a name="AEN15283"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15285"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListGetItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the item position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the item position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN15300"></a><h4>Returns</h4>
-<p> the list item at position <code class="PARAMETER">pos</code>
-or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecPtrListGetItem.returns"></a><h4>Returns</h4>
+<p> the list item at position <em class="parameter"><code>pos</code></em>
+or NULL if <em class="parameter"><code>pos</code></em>
 is greater
 than the number of items in the list or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTADD"></a><h3>xmlSecPtrListAdd ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPtrListAdd (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                  <code class="PARAMETER"><font><span class="TYPE">xmlSecPtr</span></font> item</code>);</pre>
-<p>Adds <code class="PARAMETER">item</code>
- to the end of the <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecPtrListAdd"></a><h3>xmlSecPtrListAdd ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPtrListAdd (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> item</code></em>);</pre>
+<p>Adds <em class="parameter"><code>item</code></em>
+ to the end of the <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15321"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15323"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListAdd.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>item</p></td>
-<td><p>the item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>item</p></td>
+<td class="parameter_description"><p>the item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15338"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListAdd.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="XMLSECPTRLISTSET"></a><h3>xmlSecPtrListSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPtrListSet (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                  <code class="PARAMETER"><font><span class="TYPE">xmlSecPtr</span></font> item</code>,
-                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
-<p>Sets the value of list item at position <code class="PARAMETER">pos</code>
+<div class="refsect2">
+<a name="xmlSecPtrListSet"></a><h3>xmlSecPtrListSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPtrListSet (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> item</code></em>,
+                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Sets the value of list item at position <em class="parameter"><code>pos</code></em>
 . The old value
 is destroyed.</p>
-<div class="REFSECT3">
-<a name="AEN15359"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15361"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>item</p></td>
-<td><p>the item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>item</p></td>
+<td class="parameter_description"><p>the item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the pos.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the pos.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15382"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListSet.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="XMLSECPTRLISTREMOVE"></a><h3>xmlSecPtrListRemove ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPtrListRemove (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                     <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
-<p>Destroys list item at the position <code class="PARAMETER">pos</code>
+<div class="refsect2">
+<a name="xmlSecPtrListRemove"></a><h3>xmlSecPtrListRemove ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPtrListRemove (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                     <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Destroys list item at the position <em class="parameter"><code>pos</code></em>
  and sets it value to NULL.</p>
-<div class="REFSECT3">
-<a name="AEN15400"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15402"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListRemove.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN15417"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListRemove.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="XMLSECPTRLISTREMOVEANDRETURN"></a><h3>xmlSecPtrListRemoveAndReturn ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtr</span></font>
-xmlSecPtrListRemoveAndReturn (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
-<p>Remove the list item at the position <code class="PARAMETER">pos</code>
+<div class="refsect2">
+<a name="xmlSecPtrListRemoveAndReturn"></a><h3>xmlSecPtrListRemoveAndReturn ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+xmlSecPtrListRemoveAndReturn (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
+<p>Remove the list item at the position <em class="parameter"><code>pos</code></em>
  and return it back.</p>
-<div class="REFSECT3">
-<a name="AEN15435"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15437"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListRemoveAndReturn.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15452"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrListRemoveAndReturn.returns"></a><h4>Returns</h4>
 <p> the pointer to the list item.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTDEBUGDUMP"></a><h3>xmlSecPtrListDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListDebugDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">list</code>
- to the <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecPtrListDebugDump"></a><h3>xmlSecPtrListDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListDebugDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                        <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>list</code></em>
+ to the <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15471"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15473"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTDEBUGXMLDUMP"></a><h3>xmlSecPtrListDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecPtrListDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">list</code>
- to the <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecPtrListDebugXmlDump"></a><h3>xmlSecPtrListDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecPtrListDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                           <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>list</code></em>
+ to the <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN15504"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15506"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTGETNAME"></a><h3>xmlSecPtrListGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecPtrListGetName(list)</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListGetName"></a><h3>xmlSecPtrListGetName()</h3>
+<pre class="programlisting">#define             xmlSecPtrListGetName(list)</pre>
 <p>Macro. Returns lists's name.</p>
-<div class="REFSECT3">
-<a name="AEN15527"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15529"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the ponter to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the ponter to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTISVALID"></a><h3>xmlSecPtrListIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecPtrListIsValid(list)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">list</code>
- is not NULL and <code class="PARAMETER">list->id</code>
+<div class="refsect2">
+<a name="xmlSecPtrListIsValid"></a><h3>xmlSecPtrListIsValid()</h3>
+<pre class="programlisting">#define             xmlSecPtrListIsValid(list)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>list</code></em>
+ is not NULL and <em class="parameter"><code>list->id</code></em>
  is not NULL
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN15546"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15548"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTCHECKID"></a><h3>xmlSecPtrListCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecPtrListCheckId(list, dataId)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">list</code>
- is valid and <code class="PARAMETER">list</code>
-'s id is equal to <code class="PARAMETER">dataId</code>
+<div class="refsect2">
+<a name="xmlSecPtrListCheckId"></a><h3>xmlSecPtrListCheckId()</h3>
+<pre class="programlisting">#define             xmlSecPtrListCheckId(list, dataId)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>list</code></em>
+ is valid and <em class="parameter"><code>list</code></em>
+'s id is equal to <em class="parameter"><code>dataId</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15566"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15568"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataId</p></td>
-<td><p>the list Id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataId</p></td>
+<td class="parameter_description"><p>the list Id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRDUPLICATEITEMMETHOD"></a><h3>xmlSecPtrDuplicateItemMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtr</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecPtrDuplicateItemMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecPtr</span></font> ptr</code>);</pre>
-<p>Duplicates item <code class="PARAMETER">ptr</code>
+<div class="refsect2">
+<a name="xmlSecPtrDuplicateItemMethod"></a><h3>xmlSecPtrDuplicateItemMethod ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="returnvalue">xmlSecPtr</span></a>
+<span class="c_punctuation">(</span>*xmlSecPtrDuplicateItemMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> ptr</code></em>);</pre>
+<p>Duplicates item <em class="parameter"><code>ptr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15597"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15599"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrDuplicateItemMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ptr</p></td>
-<td><p>the poinetr to list item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ptr</p></td>
+<td class="parameter_description"><p>the poinetr to list item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN15608"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPtrDuplicateItemMethod.returns"></a><h4>Returns</h4>
 <p> pointer to new item copy or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRDESTROYITEMMETHOD"></a><h3>xmlSecPtrDestroyItemMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecPtrDestroyItemMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecPtr</span></font> ptr</code>);</pre>
-<p>Destroys list item <code class="PARAMETER">ptr</code>
+<div class="refsect2">
+<a name="xmlSecPtrDestroyItemMethod"></a><h3>xmlSecPtrDestroyItemMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecPtrDestroyItemMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> ptr</code></em>);</pre>
+<p>Destroys list item <em class="parameter"><code>ptr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15625"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15627"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrDestroyItemMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ptr</p></td>
-<td><p>the poinetr to list item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ptr</p></td>
+<td class="parameter_description"><p>the poinetr to list item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRDEBUGDUMPITEMMETHOD"></a><h3>xmlSecPtrDebugDumpItemMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecPtrDebugDumpItemMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><font><span class="TYPE">xmlSecPtr</span></font> ptr</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">item</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecPtrDebugDumpItemMethod"></a><h3>xmlSecPtrDebugDumpItemMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecPtrDebugDumpItemMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> ptr</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>item</code></em>
+ to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN15654"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15656"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrDebugDumpItemMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ptr</p></td>
-<td><p>the poinetr to list item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ptr</p></td>
+<td class="parameter_description"><p>the poinetr to list item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTKLASSGETNAME"></a><h3>xmlSecPtrListKlassGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecPtrListKlassGetName(klass)</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListKlassGetName"></a><h3>xmlSecPtrListKlassGetName()</h3>
+<pre class="programlisting">#define             xmlSecPtrListKlassGetName(klass)</pre>
 <p>Macro. Returns the list klass name.</p>
-<div class="REFSECT3">
-<a name="AEN15677"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15679"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListKlassGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>klass</p></td>
-<td><p>the list klass.
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>the list klass.
 2</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSTRINGLISTGETKLASS"></a><h3>xmlSecStringListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecStringListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecStringListGetKlass"></a><h3>xmlSecStringListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecStringListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The strins list class.</p>
-<div class="REFSECT3">
-<a name="AEN15698"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecStringListGetKlass.returns"></a><h4>Returns</h4>
 <p> strings list klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-LIST.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECPTRLIST"></a><h3>struct xmlSecPtrList</h3>
-<pre class="PROGRAMLISTING">struct xmlSecPtrList {
+<div class="refsect1">
+<a name="xmlsec-list.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecPtrList"></a><h3>struct xmlSecPtrList</h3>
+<pre class="programlisting">struct xmlSecPtrList {
     xmlSecPtrListId             id;
 
     xmlSecPtr*                  data;
     xmlSecSize                  use;
     xmlSecSize                  max;
     xmlSecAllocMode             allocMode;
-};</pre>
+};
+</pre>
 <p>The pointers list.</p>
-<div class="REFSECT3">
-<a name="AEN15709"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15711"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrList.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecPtrListId</span></font> <code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the list items description.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecPtrListId</span></font> <em class="structfield"><code><a name="xmlSecPtrList.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the list items description.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlSecPtr</span></font> *<code class="STRUCTFIELD">data</code>;</p></td>
-<td><p>the list data.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr"><span class="type">xmlSecPtr</span></a> *<em class="structfield"><code><a name="xmlSecPtrList.data"></a>data</code></em>;</p></td>
+<td class="struct_member_description"><p>the list data.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">use</code>;</p></td>
-<td><p>the current list size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecPtrList.use"></a>use</code></em>;</p></td>
+<td class="struct_member_description"><p>the current list size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">max</code>;</p></td>
-<td><p>the max (allocated) list size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecPtrList.max"></a>max</code></em>;</p></td>
+<td class="struct_member_description"><p>the max (allocated) list size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECALLOCMODE"><span class="TYPE">xmlSecAllocMode</span></a> <code class="STRUCTFIELD">allocMode</code>;</p></td>
-<td><p>the memory allocation mode.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-buffer.html#xmlSecAllocMode" title="enum xmlSecAllocMode"><span class="type">xmlSecAllocMode</span></a> <em class="structfield"><code><a name="xmlSecPtrList.allocMode"></a>allocMode</code></em>;</p></td>
+<td class="struct_member_description"><p>the memory allocation mode.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTIDUNKNOWN"></a><h3>xmlSecPtrListIdUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecPtrListIdUnknown                  NULL</pre>
+<div class="refsect2">
+<a name="xmlSecPtrListIdUnknown"></a><h3>xmlSecPtrListIdUnknown</h3>
+<pre class="programlisting">#define xmlSecPtrListIdUnknown                  NULL
+</pre>
 <p>The "unknown" id.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPTRLISTKLASS"></a><h3>struct xmlSecPtrListKlass</h3>
-<pre class="PROGRAMLISTING">struct xmlSecPtrListKlass {
+<div class="refsect2">
+<a name="xmlSecPtrListKlass"></a><h3>struct xmlSecPtrListKlass</h3>
+<pre class="programlisting">struct xmlSecPtrListKlass {
     const xmlChar*                      name;
     xmlSecPtrDuplicateItemMethod        duplicateItem;
     xmlSecPtrDestroyItemMethod          destroyItem;
     xmlSecPtrDebugDumpItemMethod        debugDumpItem;
     xmlSecPtrDebugDumpItemMethod        debugXmlDumpItem;
-};</pre>
+};
+</pre>
 <p>List klass.</p>
-<div class="REFSECT3">
-<a name="AEN15771"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15773"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPtrListKlass.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the list klass name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecPtrListKlass.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the list klass name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRDUPLICATEITEMMETHOD"><span class="TYPE">xmlSecPtrDuplicateItemMethod</span></a> <code class="STRUCTFIELD">duplicateItem</code>;</p></td>
-<td><p>the duplciate item method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDuplicateItemMethod" title="xmlSecPtrDuplicateItemMethod ()"><span class="type">xmlSecPtrDuplicateItemMethod</span></a> <em class="structfield"><code><a name="xmlSecPtrListKlass.duplicateItem"></a>duplicateItem</code></em>;</p></td>
+<td class="struct_member_description"><p>the duplciate item method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRDESTROYITEMMETHOD"><span class="TYPE">xmlSecPtrDestroyItemMethod</span></a> <code class="STRUCTFIELD">destroyItem</code>;</p></td>
-<td><p>the destroy item method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDestroyItemMethod" title="xmlSecPtrDestroyItemMethod ()"><span class="type">xmlSecPtrDestroyItemMethod</span></a> <em class="structfield"><code><a name="xmlSecPtrListKlass.destroyItem"></a>destroyItem</code></em>;</p></td>
+<td class="struct_member_description"><p>the destroy item method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD"><span class="TYPE">xmlSecPtrDebugDumpItemMethod</span></a> <code class="STRUCTFIELD">debugDumpItem</code>;</p></td>
-<td><p>the debug dump item method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDebugDumpItemMethod" title="xmlSecPtrDebugDumpItemMethod ()"><span class="type">xmlSecPtrDebugDumpItemMethod</span></a> <em class="structfield"><code><a name="xmlSecPtrListKlass.debugDumpItem"></a>debugDumpItem</code></em>;</p></td>
+<td class="struct_member_description"><p>the debug dump item method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRDEBUGDUMPITEMMETHOD"><span class="TYPE">xmlSecPtrDebugDumpItemMethod</span></a> <code class="STRUCTFIELD">debugXmlDumpItem</code>;</p></td>
-<td><p>the debug dump item in xml format method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrDebugDumpItemMethod" title="xmlSecPtrDebugDumpItemMethod ()"><span class="type">xmlSecPtrDebugDumpItemMethod</span></a> <em class="structfield"><code><a name="xmlSecPtrListKlass.debugXmlDumpItem"></a>debugXmlDumpItem</code></em>;</p></td>
+<td class="struct_member_description"><p>the debug dump item in xml format method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSTRINGLISTID"></a><h3>xmlSecStringListId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecStringListId</pre>
+<div class="refsect2">
+<a name="xmlSecStringListId"></a><h3>xmlSecStringListId</h3>
+<pre class="programlisting">#define             xmlSecStringListId</pre>
 <p>Strings list klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-keysmngr.html"><b><<< keysmngr</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-membuf.html"><b>membuf >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-membuf.html b/docs/api/xmlsec-membuf.html
index 9761b68..154f978 100644
--- a/docs/api/xmlsec-membuf.html
+++ b/docs/api/xmlsec-membuf.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>membuf</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="list" href="xmlsec-list.html">
-<link rel="NEXT" title="nodeset" href="xmlsec-nodeset.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>membuf: 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-list.html" title="list">
+<link rel="next" href="xmlsec-nodeset.html" title="nodeset">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,114 +73,121 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-list.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-membuf.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-list.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nodeset.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MEMBUF"></a>membuf</h1>
-<div class="REFNAMEDIV">
-<a name="AEN15832"></a><h2>Name</h2>membuf -- Memory buffer transform implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MEMBUF.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15837"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-membuf"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-membuf.top_of_page"></a>membuf</span></h2>
+<p>membuf — Memory buffer transform implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-membuf.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFGETKLASS">xmlSecTransformMemBufGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufGetKlass" title="xmlSecTransformMemBufGetKlass ()">xmlSecTransformMemBufGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFGETBUFFER">xmlSecTransformMemBufGetBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufGetBuffer" title="xmlSecTransformMemBufGetBuffer ()">xmlSecTransformMemBufGetBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MEMBUF.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15856"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refsect1">
+<a name="xmlsec-membuf.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-membuf.html#XMLSECTRANSFORMMEMBUFID">xmlSecTransformMemBufId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-membuf.html#xmlSecTransformMemBufId" title="xmlSecTransformMemBufId">xmlSecTransformMemBufId</a></td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-membuf.description"></a><h2>Description</h2>
+<p>
+Memory buffer transform implementation.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MEMBUF.DESCRIPTION"></a><h2>Description</h2>
-<p>Memory buffer transform implementation.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MEMBUF.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMEMBUFGETKLASS"></a><h3>xmlSecTransformMemBufGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformMemBufGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-membuf.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecTransformMemBufGetKlass"></a><h3>xmlSecTransformMemBufGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformMemBufGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The memory buffer transorm (used to store the data that go through it).</p>
-<div class="REFSECT3">
-<a name="AEN15878"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformMemBufGetKlass.returns"></a><h4>Returns</h4>
 <p> memory buffer transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMEMBUFGETBUFFER"></a><h3>xmlSecTransformMemBufGetBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
-xmlSecTransformMemBufGetBuffer (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformMemBufGetBuffer"></a><h3>xmlSecTransformMemBufGetBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
+xmlSecTransformMemBufGetBuffer (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
 <p>Gets the pointer to memory buffer transform buffer.</p>
-<div class="REFSECT3">
-<a name="AEN15892"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15894"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformMemBufGetBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to memory buffer transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to memory buffer transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect3">
+<a name="xmlSecTransformMemBufGetBuffer.returns"></a><h4>Returns</h4>
+<p> pointer to the transform's <a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="type">xmlSecBuffer</span></a>.</p>
 </div>
-<div class="REFSECT3">
-<a name="AEN15903"></a><h4>Returns</h4>
-<p> pointer to the transform's <a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBuffer</span></a>.</p>
 </div>
 </div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MEMBUF.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMEMBUFID"></a><h3>xmlSecTransformMemBufId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformMemBufId</pre>
+<div class="refsect1">
+<a name="xmlsec-membuf.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecTransformMemBufId"></a><h3>xmlSecTransformMemBufId</h3>
+<pre class="programlisting">#define             xmlSecTransformMemBufId</pre>
 <p>The Memory Buffer transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-list.html"><b><<< list</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nodeset.html"><b>nodeset >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-app.html b/docs/api/xmlsec-mscrypto-app.html
index 6bc441b..c4d6d4f 100644
--- a/docs/api/xmlsec-mscrypto-app.html
+++ b/docs/api/xmlsec-mscrypto-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="PREVIOUS" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="NEXT" title="certkeys" href="xmlsec-mscrypto-certkeys.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="next" href="xmlsec-mscrypto-certkeys.html" title="certkeys">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1051 +73,1062 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-mscrypto-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-certkeys.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MSCRYPTO-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN42067"></a><h2>Name</h2>app -- Application functions implementation for MS Crypto.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42072"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-mscrypto-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-mscrypto-app.top_of_page"></a>app</span></h2>
+<p>app — Application functions implementation for MS Crypto.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPINIT">xmlSecMSCryptoAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppInit" title="xmlSecMSCryptoAppInit ()">xmlSecMSCryptoAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPSHUTDOWN">xmlSecMSCryptoAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppShutdown" title="xmlSecMSCryptoAppShutdown ()">xmlSecMSCryptoAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">LPCTSTR</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPGETCERTSTORENAME">xmlSecMSCryptoAppGetCertStoreName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">LPCTSTR</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppGetCertStoreName" title="xmlSecMSCryptoAppGetCertStoreName ()">xmlSecMSCryptoAppGetCertStoreName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRINIT">xmlSecMSCryptoAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrInit" title="xmlSecMSCryptoAppDefaultKeysMngrInit ()">xmlSecMSCryptoAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecMSCryptoAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptKey" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptKey ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRLOAD">xmlSecMSCryptoAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrLoad" title="xmlSecMSCryptoAppDefaultKeysMngrLoad ()">xmlSecMSCryptoAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSAVE">xmlSecMSCryptoAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrSave" title="xmlSecMSCryptoAppDefaultKeysMngrSave ()">xmlSecMSCryptoAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPRIVATEKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPUBLICKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSYMKEYLOAD">xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad" title="xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad ()">xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEYSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTTRUSTEDSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTUNTRUSTEDSTORE">xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore" title="xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore ()">xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYSMNGRCERTLOAD">xmlSecMSCryptoAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeysMngrCertLoad" title="xmlSecMSCryptoAppKeysMngrCertLoad ()">xmlSecMSCryptoAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYSMNGRCERTLOADMEMORY">xmlSecMSCryptoAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeysMngrCertLoadMemory" title="xmlSecMSCryptoAppKeysMngrCertLoadMemory ()">xmlSecMSCryptoAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYLOAD">xmlSecMSCryptoAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyLoad" title="xmlSecMSCryptoAppKeyLoad ()">xmlSecMSCryptoAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYLOADMEMORY">xmlSecMSCryptoAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyLoadMemory" title="xmlSecMSCryptoAppKeyLoadMemory ()">xmlSecMSCryptoAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPPKCS12LOAD">xmlSecMSCryptoAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppPkcs12Load" title="xmlSecMSCryptoAppPkcs12Load ()">xmlSecMSCryptoAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPPKCS12LOADMEMORY">xmlSecMSCryptoAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppPkcs12LoadMemory" title="xmlSecMSCryptoAppPkcs12LoadMemory ()">xmlSecMSCryptoAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYCERTLOAD">xmlSecMSCryptoAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyCertLoad" title="xmlSecMSCryptoAppKeyCertLoad ()">xmlSecMSCryptoAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPKEYCERTLOADMEMORY">xmlSecMSCryptoAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppKeyCertLoadMemory" title="xmlSecMSCryptoAppKeyCertLoadMemory ()">xmlSecMSCryptoAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPGETDEFAULTPWDCALLBACK">xmlSecMSCryptoAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppGetDefaultPwdCallback" title="xmlSecMSCryptoAppGetDefaultPwdCallback ()">xmlSecMSCryptoAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Application functions implementation for MS Crypto.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPINIT"></a><h3>xmlSecMSCryptoAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-app.description"></a><h2>Description</h2>
+<p>
+Application functions implementation for MS Crypto.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppInit"></a><h3>xmlSecMSCryptoAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN42246"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42248"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the name of another then the default ms certificate store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the name of another then the default ms certificate store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42257"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPSHUTDOWN"></a><h3>xmlSecMSCryptoAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppShutdown"></a><h3>xmlSecMSCryptoAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN42271"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPGETCERTSTORENAME"></a><h3>xmlSecMSCryptoAppGetCertStoreName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">LPCTSTR</span></font>
-xmlSecMSCryptoAppGetCertStoreName (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>Gets the MS Crypto certs store name set by <code class="PARAMETER">xmlSecMSCryptoAppInit</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppGetCertStoreName"></a><h3>xmlSecMSCryptoAppGetCertStoreName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">LPCTSTR</span></font>
+xmlSecMSCryptoAppGetCertStoreName (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>Gets the MS Crypto certs store name set by <em class="parameter"><code>xmlSecMSCryptoAppInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN42285"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppGetCertStoreName.returns"></a><h4>Returns</h4>
 <p> the MS Crypto certs name used by xmlsec-mscrypto.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with simple keys store <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID"><span class="TYPE">xmlSecSimpleKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrInit"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with simple keys store <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId"><span class="type">xmlSecSimpleKeysStoreId</span></a>
 and a default MSCrypto crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN42302"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42304"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42313"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrAdoptKey
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecMSCryptoAppDefaultKeysMngrInit</span></a>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrInit" title="xmlSecMSCryptoAppDefaultKeysMngrInit ()"><span class="type">xmlSecMSCryptoAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN42334"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42336"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42351"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrLoad"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-mscrypto-app.html#XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecMSCryptoAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN42372"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42374"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-mscrypto-app.html#xmlSecMSCryptoAppDefaultKeysMngrInit" title="xmlSecMSCryptoAppDefaultKeysMngrInit ()"><span class="type">xmlSecMSCryptoAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42389"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                      <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSave"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                      <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN42410"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42412"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42433"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPRIVATEKEYLOAD"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCRYPTKEY</span></font> hKey</code>);</pre>
-<p>Adds private key <code class="PARAMETER">hKey</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCRYPTKEY</span></font> hKey</code></em>);</pre>
+<p>Adds private key <em class="parameter"><code>hKey</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42452"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42454"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>hKey</p></td>
-<td><p>the key handle.</p></td>
-<td> </td>
+<td class="parameter_name"><p>hKey</p></td>
+<td class="parameter_description"><p>the key handle.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42469"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPrivateKeyLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRPUBLICKEYLOAD"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCRYPTKEY</span></font> hKey</code>);</pre>
-<p>Adds public key <code class="PARAMETER">hKey</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCRYPTKEY</span></font> hKey</code></em>);</pre>
+<p>Adds public key <em class="parameter"><code>hKey</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42488"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42490"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>hKey</p></td>
-<td><p>the key handle.</p></td>
-<td> </td>
+<td class="parameter_name"><p>hKey</p></td>
+<td class="parameter_description"><p>the key handle.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42505"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrPublicKeyLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRSYMKEYLOAD"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCRYPTKEY</span></font> hKey</code>);</pre>
-<p>Adds symmetric key <code class="PARAMETER">hKey</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCRYPTKEY</span></font> hKey</code></em>);</pre>
+<p>Adds symmetric key <em class="parameter"><code>hKey</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42524"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42526"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>hKey</p></td>
-<td><p>the key handle.</p></td>
-<td> </td>
+<td class="parameter_name"><p>hKey</p></td>
+<td class="parameter_description"><p>the key handle.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42541"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrSymKeyLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTKEYSTORE"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> keyStore</code>);</pre>
-<p>Adds <code class="PARAMETER">keyStore</code>
- to the list of key stores in the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> keyStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>keyStore</code></em>
+ to the list of key stores in the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42560"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42562"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyStore</p></td>
-<td><p>the pointer to keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyStore</p></td>
+<td class="parameter_description"><p>the pointer to keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42577"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore.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="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTTRUSTEDSTORE"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> trustedStore</code>);</pre>
-<p>Adds <code class="PARAMETER">trustedStore</code>
- to the list of trusted cert stores in the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> trustedStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>trustedStore</code></em>
+ to the list of trusted cert stores in the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42596"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42598"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>trustedStore</p></td>
-<td><p>the pointer to certs store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>trustedStore</p></td>
+<td class="parameter_description"><p>the pointer to certs store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42613"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore.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="XMLSECMSCRYPTOAPPDEFAULTKEYSMNGRADOPTUNTRUSTEDSTORE"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore"></a><h3>xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> untrustedStore</code>);</pre>
-<p>Adds <code class="PARAMETER">trustedStore</code>
- to the list of un-trusted cert stores in the keys manager <code class="PARAMETER">mngr</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> untrustedStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>trustedStore</code></em>
+ to the list of un-trusted cert stores in the keys manager <em class="parameter"><code>mngr</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42632"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42634"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>untrustedStore</p></td>
-<td><p>the pointer to certs store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>untrustedStore</p></td>
+<td class="parameter_description"><p>the pointer to certs store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42649"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore.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="XMLSECMSCRYPTOAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecMSCryptoAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                   <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoad"></a><h3>xmlSecMSCryptoAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                   <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                   <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                   <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
  (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN42674"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42676"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42704"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecMSCryptoAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoadMemory"></a><h3>xmlSecMSCryptoAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoAppKeysMngrCertLoadMemory
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">data</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN42732"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42734"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>size of binary certificate (data)</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>size of binary certificate (data)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42768"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPKEYLOAD"></a><h3>xmlSecMSCryptoAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecMSCryptoAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                          <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                          <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeyLoad"></a><h3>xmlSecMSCryptoAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecMSCryptoAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                          <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                          <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                          <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                          <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN42794"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42796"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42829"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPKEYLOADMEMORY"></a><h3>xmlSecMSCryptoAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecMSCryptoAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeyLoadMemory"></a><h3>xmlSecMSCryptoAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecMSCryptoAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN42858"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42860"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the key binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the key data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the key data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42899"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPPKCS12LOAD"></a><h3>xmlSecMSCryptoAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecMSCryptoAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppPkcs12Load"></a><h3>xmlSecMSCryptoAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecMSCryptoAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                             <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                             <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file</p>
-<div class="REFSECT3">
-<a name="AEN42922"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42924"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN42951"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPPKCS12LOADMEMORY"></a><h3>xmlSecMSCryptoAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecMSCryptoAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                   <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppPkcs12LoadMemory"></a><h3>xmlSecMSCryptoAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecMSCryptoAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                   <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                   <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 binary</p>
-<div class="REFSECT3">
-<a name="AEN42977"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42979"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary PKCS12 key in data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary PKCS12 key in data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>size of binary pkcs12 data</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>size of binary pkcs12 data</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN43012"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPKEYCERTLOAD"></a><h3>xmlSecMSCryptoAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeyCertLoad"></a><h3>xmlSecMSCryptoAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN43033"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43035"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN43056"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPKEYCERTLOADMEMORY"></a><h3>xmlSecMSCryptoAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                    <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppKeyCertLoadMemory"></a><h3>xmlSecMSCryptoAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>data</code></em>
  and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN43080"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43082"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>size of certificate binary (data)</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>size of certificate binary (data)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43109"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecMSCryptoAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
+<div class="refsect2">
+<a name="xmlSecMSCryptoAppGetDefaultPwdCallback"></a><h3>xmlSecMSCryptoAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
 xmlSecMSCryptoAppGetDefaultPwdCallback
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN43122"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-app.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-ref.html"><b><<< XML Security Library for MSCrypto API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-certkeys.html"><b>certkeys >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-certkeys.html b/docs/api/xmlsec-mscrypto-certkeys.html
index 3df1040..a2a9104 100644
--- a/docs/api/xmlsec-mscrypto-certkeys.html
+++ b/docs/api/xmlsec-mscrypto-certkeys.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>certkeys</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-mscrypto-app.html">
-<link rel="NEXT" title="crypto" href="xmlsec-mscrypto-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>certkeys: 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-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-app.html" title="app">
+<link rel="next" href="xmlsec-mscrypto-crypto.html" title="crypto">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,319 +73,346 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-mscrypto-certkeys.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MSCRYPTO-CERTKEYS"></a>certkeys</h1>
-<div class="REFNAMEDIV">
-<a name="AEN43133"></a><h2>Name</h2>certkeys -- MS Crypto certificates helper functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CERTKEYS.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43138"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-mscrypto-certkeys"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-mscrypto-certkeys.top_of_page"></a>certkeys</span></h2>
+<p>certkeys — MS Crypto certificates helper functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-certkeys.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETCERT">xmlSecMSCryptoKeyDataGetCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetCert" title="xmlSecMSCryptoKeyDataGetCert ()">xmlSecMSCryptoKeyDataGetCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">HCRYPTKEY</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETKEY">xmlSecMSCryptoKeyDataGetKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">HCRYPTKEY</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetKey" title="xmlSecMSCryptoKeyDataGetKey ()">xmlSecMSCryptoKeyDataGetKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">HCRYPTKEY</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETDECRYPTKEY">xmlSecMSCryptoKeyDataGetDecryptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">HCRYPTKEY</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetDecryptKey" title="xmlSecMSCryptoKeyDataGetDecryptKey ()">xmlSecMSCryptoKeyDataGetDecryptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOCERTDUP">xmlSecMSCryptoCertDup</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoCertDup" title="xmlSecMSCryptoCertDup ()">xmlSecMSCryptoCertDup</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOCERTADOPT">xmlSecMSCryptoCertAdopt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoCertAdopt" title="xmlSecMSCryptoCertAdopt ()">xmlSecMSCryptoCertAdopt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">HCRYPTPROV</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDER">xmlSecMSCryptoKeyDataGetMSCryptoProvider</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">HCRYPTPROV</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoProvider" title="xmlSecMSCryptoKeyDataGetMSCryptoProvider ()">xmlSecMSCryptoKeyDataGetMSCryptoProvider</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">DWORD</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOKEYSPEC">xmlSecMSCryptoKeyDataGetMSCryptoKeySpec</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">DWORD</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoKeySpec" title="xmlSecMSCryptoKeyDataGetMSCryptoKeySpec ()">xmlSecMSCryptoKeyDataGetMSCryptoKeySpec</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">PCRYPT_KEY_PROV_INFO</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-certkeys.html#XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDERINFO">xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCRYPT_KEY_PROV_INFO</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-certkeys.html#xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo" title="xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo ()">xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CERTKEYS.DESCRIPTION"></a><h2>Description</h2>
-<p>MS Crypto certificates helper functions.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CERTKEYS.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETCERT"></a><h3>xmlSecMSCryptoKeyDataGetCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font>
-xmlSecMSCryptoKeyDataGetCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-certkeys.description"></a><h2>Description</h2>
+<p>
+MS Crypto certificates helper functions.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-certkeys.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetCert"></a><h3>xmlSecMSCryptoKeyDataGetCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+xmlSecMSCryptoKeyDataGetCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Native MSCrypto certificate retrieval from xmlsec keydata. The
 returned PCCERT_CONTEXT must not be released by the caller.</p>
-<div class="REFSECT3">
-<a name="AEN43213"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43215"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the key data to retrieve certificate from.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data to retrieve certificate from.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43224"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetCert.returns"></a><h4>Returns</h4>
 <p> PCCERT_CONTEXT on success or NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETKEY"></a><h3>xmlSecMSCryptoKeyDataGetKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">HCRYPTKEY</span></font>
-xmlSecMSCryptoKeyDataGetKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                             <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetKey"></a><h3>xmlSecMSCryptoKeyDataGetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">HCRYPTKEY</span></font>
+xmlSecMSCryptoKeyDataGetKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Native MSCrypto key retrieval from xmlsec keydata. The
 returned HKEY must not be destroyed by the caller.</p>
-<div class="REFSECT3">
-<a name="AEN43241"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43243"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the key data to retrieve certificate from.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data to retrieve certificate from.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>type of key requested (public/private)</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>type of key requested (public/private)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43258"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetKey.returns"></a><h4>Returns</h4>
 <p> HKEY on success or NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETDECRYPTKEY"></a><h3>xmlSecMSCryptoKeyDataGetDecryptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">HCRYPTKEY</span></font>
-xmlSecMSCryptoKeyDataGetDecryptKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetDecryptKey"></a><h3>xmlSecMSCryptoKeyDataGetDecryptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">HCRYPTKEY</span></font>
+xmlSecMSCryptoKeyDataGetDecryptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Native MSCrypto decrypt key retrieval from xmlsec keydata. The
 returned HKEY must not be destroyed by the caller.</p>
-<div class="REFSECT3">
-<a name="AEN43272"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43274"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetDecryptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the key data pointer</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data pointer</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN43283"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetDecryptKey.returns"></a><h4>Returns</h4>
 <p> HKEY on success or NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCERTDUP"></a><h3>xmlSecMSCryptoCertDup ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font>
-xmlSecMSCryptoCertDup (<code class="PARAMETER"><font><span class="TYPE">PCCERT_CONTEXT</span></font> pCert</code>);</pre>
-<p>Duplicates the <code class="PARAMETER">pCert</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoCertDup"></a><h3>xmlSecMSCryptoCertDup ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+xmlSecMSCryptoCertDup (<em class="parameter"><code><font><span class="type">PCCERT_CONTEXT</span></font> pCert</code></em>);</pre>
+<p>Duplicates the <em class="parameter"><code>pCert</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN43298"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43300"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoCertDup.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>pCert</p></td>
-<td><p>the pointer to cert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pCert</p></td>
+<td class="parameter_description"><p>the pointer to cert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43309"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoCertDup.returns"></a><h4>Returns</h4>
 <p> pointer to newly created PCCERT_CONTEXT object or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCERTADOPT"></a><h3>xmlSecMSCryptoCertAdopt ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecMSCryptoCertAdopt (<code class="PARAMETER"><font><span class="TYPE">PCCERT_CONTEXT</span></font> pCert</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoCertAdopt"></a><h3>xmlSecMSCryptoCertAdopt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecMSCryptoCertAdopt (<em class="parameter"><code><font><span class="type">PCCERT_CONTEXT</span></font> pCert</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Creates key data value from the cert.</p>
-<div class="REFSECT3">
-<a name="AEN43326"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43328"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoCertAdopt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>pCert</p></td>
-<td><p>the pointer to cert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pCert</p></td>
+<td class="parameter_description"><p>the pointer to cert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the expected key type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the expected key type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43343"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoCertAdopt.returns"></a><h4>Returns</h4>
 <p> pointer to newly created xmlsec key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDER"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoProvider ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">HCRYPTPROV</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProvider"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoProvider ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">HCRYPTPROV</span></font>
 xmlSecMSCryptoKeyDataGetMSCryptoProvider
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets crypto provider handle</p>
-<div class="REFSECT3">
-<a name="AEN43357"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43359"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProvider.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the key data</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN43368"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProvider.returns"></a><h4>Returns</h4>
 <p> the crypto provider handler or 0 if there is an error.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETMSCRYPTOKEYSPEC"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoKeySpec ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">DWORD</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoKeySpec"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoKeySpec ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">DWORD</span></font>
 xmlSecMSCryptoKeyDataGetMSCryptoKeySpec
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets key spec info.</p>
-<div class="REFSECT3">
-<a name="AEN43382"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43384"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoKeySpec.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the key data</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43393"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoKeySpec.returns"></a><h4>Returns</h4>
 <p> the key spec info from key data</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGETMSCRYPTOPROVIDERINFO"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCRYPT_KEY_PROV_INFO</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo"></a><h3>xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCRYPT_KEY_PROV_INFO</span></font>
 xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p></p>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets key provider info.</p>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key data</p></td>
+<td class="parameter_annotations"> </td>
+</tr></tbody>
+</table></div>
 </div>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo.returns"></a><h4>Returns</h4>
+<p> the key provider info.</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CERTKEYS.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-crypto.html"><b>crypto >>></b></a></td>
-</tr></table>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-certkeys.other_details"></a><h2>Types and Values</h2>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-crypto.html b/docs/api/xmlsec-mscrypto-crypto.html
index 9bed684..92d6b92 100644
--- a/docs/api/xmlsec-mscrypto-crypto.html
+++ b/docs/api/xmlsec-mscrypto-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>crypto</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="PREVIOUS" title="certkeys" href="xmlsec-mscrypto-certkeys.html">
-<link rel="NEXT" title="keysstore" href="xmlsec-mscrypto-keysstore.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>crypto: 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-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-certkeys.html" title="certkeys">
+<link rel="next" href="xmlsec-mscrypto-keysstore.html" title="keysstore">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1577 +73,1654 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-certkeys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-mscrypto-crypto.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-certkeys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-keysstore.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MSCRYPTO-CRYPTO"></a>crypto</h1>
-<div class="REFNAMEDIV">
-<a name="AEN43415"></a><h2>Name</h2>crypto -- Crypto transforms implementation for MS Crypto.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CRYPTO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43420"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-mscrypto-crypto"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-mscrypto-crypto.top_of_page"></a>crypto</span></h2>
+<p>crypto — Crypto transforms implementation for MS Crypto.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-crypto.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECCRYPTOGETFUNCTIONS-MSCRYPTO">xmlSecCryptoGetFunctions_mscrypto</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecCryptoGetFunctions-mscrypto" title="xmlSecCryptoGetFunctions_mscrypto ()">xmlSecCryptoGetFunctions_mscrypto</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOINIT">xmlSecMSCryptoInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoInit" title="xmlSecMSCryptoInit ()">xmlSecMSCryptoInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOSHUTDOWN">xmlSecMSCryptoShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoShutdown" title="xmlSecMSCryptoShutdown ()">xmlSecMSCryptoShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYSMNGRINIT">xmlSecMSCryptoKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeysMngrInit" title="xmlSecMSCryptoKeysMngrInit ()">xmlSecMSCryptoKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOGENERATERANDOM">xmlSecMSCryptoGenerateRandom</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoGenerateRandom" title="xmlSecMSCryptoGenerateRandom ()">xmlSecMSCryptoGenerateRandom</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOERRORSDEFAULTCALLBACK">xmlSecMSCryptoErrorsDefaultCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoErrorsDefaultCallback" title="xmlSecMSCryptoErrorsDefaultCallback ()">xmlSecMSCryptoErrorsDefaultCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">LPWSTR</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTLOCALETOUNICODE">xmlSecMSCryptoConvertLocaleToUnicode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">LPWSTR</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertLocaleToUnicode" title="xmlSecMSCryptoConvertLocaleToUnicode ()">xmlSecMSCryptoConvertLocaleToUnicode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">LPWSTR</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOUNICODE">xmlSecMSCryptoConvertUtf8ToUnicode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">LPWSTR</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToUnicode" title="xmlSecMSCryptoConvertUtf8ToUnicode ()">xmlSecMSCryptoConvertUtf8ToUnicode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUNICODETOUTF8">xmlSecMSCryptoConvertUnicodeToUtf8</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUnicodeToUtf8" title="xmlSecMSCryptoConvertUnicodeToUtf8 ()">xmlSecMSCryptoConvertUnicodeToUtf8</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTLOCALETOUTF8">xmlSecMSCryptoConvertLocaleToUtf8</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertLocaleToUtf8" title="xmlSecMSCryptoConvertLocaleToUtf8 ()">xmlSecMSCryptoConvertLocaleToUtf8</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">char</span></font> *</td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOLOCALE">xmlSecMSCryptoConvertUtf8ToLocale</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">char</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToLocale" title="xmlSecMSCryptoConvertUtf8ToLocale ()">xmlSecMSCryptoConvertUtf8ToLocale</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTTSTRTOUTF8">xmlSecMSCryptoConvertTstrToUtf8</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertTstrToUtf8" title="xmlSecMSCryptoConvertTstrToUtf8 ()">xmlSecMSCryptoConvertTstrToUtf8</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">LPTSTR</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOCONVERTUTF8TOTSTR">xmlSecMSCryptoConvertUtf8ToTstr</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">LPTSTR</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoConvertUtf8ToTstr" title="xmlSecMSCryptoConvertUtf8ToTstr ()">xmlSecMSCryptoConvertUtf8ToTstr</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADSAGETKLASS">xmlSecMSCryptoKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDsaGetKlass" title="xmlSecMSCryptoKeyDataDsaGetKlass ()">xmlSecMSCryptoKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDSASHA1GETKLASS">xmlSecMSCryptoTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDsaSha1GetKlass" title="xmlSecMSCryptoTransformDsaSha1GetKlass ()">xmlSecMSCryptoTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAGOST2001GETKLASS">xmlSecMSCryptoKeyDataGost2001GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataGost2001GetKlass" title="xmlSecMSCryptoKeyDataGost2001GetKlass ()">xmlSecMSCryptoKeyDataGost2001GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMGOST2001GOSTR3411-94GETKLASS">xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass" title="xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass ()">xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATARSAGETKLASS">xmlSecMSCryptoKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataRsaGetKlass" title="xmlSecMSCryptoKeyDataRsaGetKlass ()">xmlSecMSCryptoKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAMD5GETKLASS">xmlSecMSCryptoTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaMd5GetKlass" title="xmlSecMSCryptoTransformRsaMd5GetKlass ()">xmlSecMSCryptoTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA1GETKLASS">xmlSecMSCryptoTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha1GetKlass" title="xmlSecMSCryptoTransformRsaSha1GetKlass ()">xmlSecMSCryptoTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA256GETKLASS">xmlSecMSCryptoTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha256GetKlass" title="xmlSecMSCryptoTransformRsaSha256GetKlass ()">xmlSecMSCryptoTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA384GETKLASS">xmlSecMSCryptoTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha384GetKlass" title="xmlSecMSCryptoTransformRsaSha384GetKlass ()">xmlSecMSCryptoTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA512GETKLASS">xmlSecMSCryptoTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha512GetKlass" title="xmlSecMSCryptoTransformRsaSha512GetKlass ()">xmlSecMSCryptoTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAPKCS1GETKLASS">xmlSecMSCryptoTransformRsaPkcs1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaPkcs1GetKlass" title="xmlSecMSCryptoTransformRsaPkcs1GetKlass ()">xmlSecMSCryptoTransformRsaPkcs1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAOAEPGETKLASS">xmlSecMSCryptoTransformRsaOaepGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaOaepGetKlass" title="xmlSecMSCryptoTransformRsaOaepGetKlass ()">xmlSecMSCryptoTransformRsaOaepGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMMD5GETKLASS">xmlSecMSCryptoTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformMd5GetKlass" title="xmlSecMSCryptoTransformMd5GetKlass ()">xmlSecMSCryptoTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA1GETKLASS">xmlSecMSCryptoTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha1GetKlass" title="xmlSecMSCryptoTransformSha1GetKlass ()">xmlSecMSCryptoTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA256GETKLASS">xmlSecMSCryptoTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha256GetKlass" title="xmlSecMSCryptoTransformSha256GetKlass ()">xmlSecMSCryptoTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA384GETKLASS">xmlSecMSCryptoTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha384GetKlass" title="xmlSecMSCryptoTransformSha384GetKlass ()">xmlSecMSCryptoTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA512GETKLASS">xmlSecMSCryptoTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha512GetKlass" title="xmlSecMSCryptoTransformSha512GetKlass ()">xmlSecMSCryptoTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMGOSTR3411-94GETKLASS">xmlSecMSCryptoTransformGostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformGostR3411-94GetKlass" title="xmlSecMSCryptoTransformGostR3411_94GetKlass ()">xmlSecMSCryptoTransformGostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESGETKLASS">xmlSecMSCryptoKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesGetKlass" title="xmlSecMSCryptoKeyDataAesGetKlass ()">xmlSecMSCryptoKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESSET">xmlSecMSCryptoKeyDataAesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesSet" title="xmlSecMSCryptoKeyDataAesSet ()">xmlSecMSCryptoKeyDataAesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES128CBCGETKLASS">xmlSecMSCryptoTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes128CbcGetKlass" title="xmlSecMSCryptoTransformAes128CbcGetKlass ()">xmlSecMSCryptoTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES192CBCGETKLASS">xmlSecMSCryptoTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes192CbcGetKlass" title="xmlSecMSCryptoTransformAes192CbcGetKlass ()">xmlSecMSCryptoTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES256CBCGETKLASS">xmlSecMSCryptoTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes256CbcGetKlass" title="xmlSecMSCryptoTransformAes256CbcGetKlass ()">xmlSecMSCryptoTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES128GETKLASS">xmlSecMSCryptoTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes128GetKlass" title="xmlSecMSCryptoTransformKWAes128GetKlass ()">xmlSecMSCryptoTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES192GETKLASS">xmlSecMSCryptoTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes192GetKlass" title="xmlSecMSCryptoTransformKWAes192GetKlass ()">xmlSecMSCryptoTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES256GETKLASS">xmlSecMSCryptoTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes256GetKlass" title="xmlSecMSCryptoTransformKWAes256GetKlass ()">xmlSecMSCryptoTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADESGETKLASS">xmlSecMSCryptoKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDesGetKlass" title="xmlSecMSCryptoKeyDataDesGetKlass ()">xmlSecMSCryptoKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDES3CBCGETKLASS">xmlSecMSCryptoTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDes3CbcGetKlass" title="xmlSecMSCryptoTransformDes3CbcGetKlass ()">xmlSecMSCryptoTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWDES3GETKLASS">xmlSecMSCryptoTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWDes3GetKlass" title="xmlSecMSCryptoTransformKWDes3GetKlass ()">xmlSecMSCryptoTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOHMACGETMINOUTPUTLENGTH">xmlSecMSCryptoHmacGetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoHmacGetMinOutputLength" title="xmlSecMSCryptoHmacGetMinOutputLength ()">xmlSecMSCryptoHmacGetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOHMACSETMINOUTPUTLENGTH">xmlSecMSCryptoHmacSetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoHmacSetMinOutputLength" title="xmlSecMSCryptoHmacSetMinOutputLength ()">xmlSecMSCryptoHmacSetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACGETKLASS">xmlSecMSCryptoKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacGetKlass" title="xmlSecMSCryptoKeyDataHmacGetKlass ()">xmlSecMSCryptoKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACSET">xmlSecMSCryptoKeyDataHmacSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacSet" title="xmlSecMSCryptoKeyDataHmacSet ()">xmlSecMSCryptoKeyDataHmacSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACMD5GETKLASS">xmlSecMSCryptoTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacMd5GetKlass" title="xmlSecMSCryptoTransformHmacMd5GetKlass ()">xmlSecMSCryptoTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA1GETKLASS">xmlSecMSCryptoTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha1GetKlass" title="xmlSecMSCryptoTransformHmacSha1GetKlass ()">xmlSecMSCryptoTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA256GETKLASS">xmlSecMSCryptoTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha256GetKlass" title="xmlSecMSCryptoTransformHmacSha256GetKlass ()">xmlSecMSCryptoTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA384GETKLASS">xmlSecMSCryptoTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha384GetKlass" title="xmlSecMSCryptoTransformHmacSha384GetKlass ()">xmlSecMSCryptoTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA512GETKLASS">xmlSecMSCryptoTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha512GetKlass" title="xmlSecMSCryptoTransformHmacSha512GetKlass ()">xmlSecMSCryptoTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CRYPTO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43782"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-crypto.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADSAID">xmlSecMSCryptoKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDsaId" title="xmlSecMSCryptoKeyDataDsaId">xmlSecMSCryptoKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDSASHA1ID">xmlSecMSCryptoTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDsaSha1Id" title="xmlSecMSCryptoTransformDsaSha1Id">xmlSecMSCryptoTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAGOST2001ID">xmlSecMSCryptoKeyDataGost2001Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataGost2001Id" title="xmlSecMSCryptoKeyDataGost2001Id">xmlSecMSCryptoKeyDataGost2001Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMGOST2001GOSTR3411-94ID">xmlSecMSCryptoTransformGost2001GostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformGost2001GostR3411-94Id" title="xmlSecMSCryptoTransformGost2001GostR3411_94Id">xmlSecMSCryptoTransformGost2001GostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATARSAID">xmlSecMSCryptoKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataRsaId" title="xmlSecMSCryptoKeyDataRsaId">xmlSecMSCryptoKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAMD5ID">xmlSecMSCryptoTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaMd5Id" title="xmlSecMSCryptoTransformRsaMd5Id">xmlSecMSCryptoTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA1ID">xmlSecMSCryptoTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha1Id" title="xmlSecMSCryptoTransformRsaSha1Id">xmlSecMSCryptoTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA256ID">xmlSecMSCryptoTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha256Id" title="xmlSecMSCryptoTransformRsaSha256Id">xmlSecMSCryptoTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA384ID">xmlSecMSCryptoTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha384Id" title="xmlSecMSCryptoTransformRsaSha384Id">xmlSecMSCryptoTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSASHA512ID">xmlSecMSCryptoTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaSha512Id" title="xmlSecMSCryptoTransformRsaSha512Id">xmlSecMSCryptoTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAPKCS1ID">xmlSecMSCryptoTransformRsaPkcs1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaPkcs1Id" title="xmlSecMSCryptoTransformRsaPkcs1Id">xmlSecMSCryptoTransformRsaPkcs1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMRSAOAEPID">xmlSecMSCryptoTransformRsaOaepId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformRsaOaepId" title="xmlSecMSCryptoTransformRsaOaepId">xmlSecMSCryptoTransformRsaOaepId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMMD5ID">xmlSecMSCryptoTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformMd5Id" title="xmlSecMSCryptoTransformMd5Id">xmlSecMSCryptoTransformMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA1ID">xmlSecMSCryptoTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha1Id" title="xmlSecMSCryptoTransformSha1Id">xmlSecMSCryptoTransformSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA256ID">xmlSecMSCryptoTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha256Id" title="xmlSecMSCryptoTransformSha256Id">xmlSecMSCryptoTransformSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA384ID">xmlSecMSCryptoTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha384Id" title="xmlSecMSCryptoTransformSha384Id">xmlSecMSCryptoTransformSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMSHA512ID">xmlSecMSCryptoTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformSha512Id" title="xmlSecMSCryptoTransformSha512Id">xmlSecMSCryptoTransformSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMGOSTR3411-94ID">xmlSecMSCryptoTransformGostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformGostR3411-94Id" title="xmlSecMSCryptoTransformGostR3411_94Id">xmlSecMSCryptoTransformGostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAAESID">xmlSecMSCryptoKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataAesId" title="xmlSecMSCryptoKeyDataAesId">xmlSecMSCryptoKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES128CBCID">xmlSecMSCryptoTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes128CbcId" title="xmlSecMSCryptoTransformAes128CbcId">xmlSecMSCryptoTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES192CBCID">xmlSecMSCryptoTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes192CbcId" title="xmlSecMSCryptoTransformAes192CbcId">xmlSecMSCryptoTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMAES256CBCID">xmlSecMSCryptoTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformAes256CbcId" title="xmlSecMSCryptoTransformAes256CbcId">xmlSecMSCryptoTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES128ID">xmlSecMSCryptoTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes128Id" title="xmlSecMSCryptoTransformKWAes128Id">xmlSecMSCryptoTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES192ID">xmlSecMSCryptoTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes192Id" title="xmlSecMSCryptoTransformKWAes192Id">xmlSecMSCryptoTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWAES256ID">xmlSecMSCryptoTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWAes256Id" title="xmlSecMSCryptoTransformKWAes256Id">xmlSecMSCryptoTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATADESID">xmlSecMSCryptoKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataDesId" title="xmlSecMSCryptoKeyDataDesId">xmlSecMSCryptoKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMDES3CBCID">xmlSecMSCryptoTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformDes3CbcId" title="xmlSecMSCryptoTransformDes3CbcId">xmlSecMSCryptoTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMKWDES3ID">xmlSecMSCryptoTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformKWDes3Id" title="xmlSecMSCryptoTransformKWDes3Id">xmlSecMSCryptoTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOKEYDATAHMACID">xmlSecMSCryptoKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoKeyDataHmacId" title="xmlSecMSCryptoKeyDataHmacId">xmlSecMSCryptoKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACMD5ID">xmlSecMSCryptoTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacMd5Id" title="xmlSecMSCryptoTransformHmacMd5Id">xmlSecMSCryptoTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA1ID">xmlSecMSCryptoTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha1Id" title="xmlSecMSCryptoTransformHmacSha1Id">xmlSecMSCryptoTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA256ID">xmlSecMSCryptoTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha256Id" title="xmlSecMSCryptoTransformHmacSha256Id">xmlSecMSCryptoTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA384ID">xmlSecMSCryptoTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha384Id" title="xmlSecMSCryptoTransformHmacSha384Id">xmlSecMSCryptoTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-crypto.html#XMLSECMSCRYPTOTRANSFORMHMACSHA512ID">xmlSecMSCryptoTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-crypto.html#xmlSecMSCryptoTransformHmacSha512Id" title="xmlSecMSCryptoTransformHmacSha512Id">xmlSecMSCryptoTransformHmacSha512Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CRYPTO.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto transforms implementation for MS Crypto.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CRYPTO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOGETFUNCTIONS-MSCRYPTO"></a><h3>xmlSecCryptoGetFunctions_mscrypto ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoGetFunctions_mscrypto (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-crypto.description"></a><h2>Description</h2>
+<p>
+Crypto transforms implementation for MS Crypto.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-crypto.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoGetFunctions-mscrypto"></a><h3>xmlSecCryptoGetFunctions_mscrypto ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoGetFunctions_mscrypto (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets MSCrypto specific functions table.</p>
-<div class="REFSECT3">
-<a name="AEN43936"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoGetFunctions-mscrypto.returns"></a><h4>Returns</h4>
 <p> xmlsec-mscrypto functions table.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOINIT"></a><h3>xmlSecMSCryptoInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoInit"></a><h3>xmlSecMSCryptoInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN43949"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOSHUTDOWN"></a><h3>xmlSecMSCryptoShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoShutdown"></a><h3>xmlSecMSCryptoShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN43962"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYSMNGRINIT"></a><h3>xmlSecMSCryptoKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysMngrInit"></a><h3>xmlSecMSCryptoKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds MSCrypto specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN43976"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN43978"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN43987"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOGENERATERANDOM"></a><h3>xmlSecMSCryptoGenerateRandom ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoGenerateRandom (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buffer</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">size_t</span></font> size</code>);</pre>
-<p>Generates <code class="PARAMETER">size</code>
- random bytes and puts result in <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoGenerateRandom"></a><h3>xmlSecMSCryptoGenerateRandom ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoGenerateRandom (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buffer</code></em>,
+                              <em class="parameter"><code><font><span class="type">size_t</span></font> size</code></em>);</pre>
+<p>Generates <em class="parameter"><code>size</code></em>
+ random bytes and puts result in <em class="parameter"><code>buffer</code></em>
 
 (not implemented yet).</p>
-<div class="REFSECT3">
-<a name="AEN44006"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44008"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoGenerateRandom.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the destination buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the destination buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the numer of bytes to generate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the numer of bytes to generate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN44023"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoGenerateRandom.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOERRORSDEFAULTCALLBACK"></a><h3>xmlSecMSCryptoErrorsDefaultCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecMSCryptoErrorsDefaultCallback (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-                                     <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-                                     <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>);</pre>
-<p>The default errors reporting callback function.</p>
-<div class="REFSECT3">
-<a name="AEN44055"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44057"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecMSCryptoErrorsDefaultCallback"></a><h3>xmlSecMSCryptoErrorsDefaultCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecMSCryptoErrorsDefaultCallback (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+                                     <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+                                     <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>);</pre>
+<p>The default errors reporting callback function. Just a pass through to the default callback.</p>
+<div class="refsect3">
+<a name="xmlSecMSCryptoErrorsDefaultCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location file name (__FILE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location file name (__FILE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function name (__FUNCTION__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function name (__FUNCTION__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the additional error message.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the additional error message.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTLOCALETOUNICODE"></a><h3>xmlSecMSCryptoConvertLocaleToUnicode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">LPWSTR</span></font>
-xmlSecMSCryptoConvertLocaleToUnicode (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertLocaleToUnicode"></a><h3>xmlSecMSCryptoConvertLocaleToUnicode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">LPWSTR</span></font>
+xmlSecMSCryptoConvertLocaleToUnicode (<em class="parameter"><code>const <font><span class="type">char</span></font> *str</code></em>);</pre>
 <p>Converts input string from current system locale to Unicode.</p>
-<div class="REFSECT3">
-<a name="AEN44113"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44115"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertLocaleToUnicode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN44124"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertLocaleToUnicode.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTUTF8TOUNICODE"></a><h3>xmlSecMSCryptoConvertUtf8ToUnicode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">LPWSTR</span></font>
-xmlSecMSCryptoConvertUtf8ToUnicode (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertUtf8ToUnicode"></a><h3>xmlSecMSCryptoConvertUtf8ToUnicode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">LPWSTR</span></font>
+xmlSecMSCryptoConvertUtf8ToUnicode (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
 <p>Converts input string from UTF8 to Unicode.</p>
-<div class="REFSECT3">
-<a name="AEN44138"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44140"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToUnicode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN44149"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToUnicode.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTUNICODETOUTF8"></a><h3>xmlSecMSCryptoConvertUnicodeToUtf8 ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecMSCryptoConvertUnicodeToUtf8 (<code class="PARAMETER"><font><span class="TYPE">LPCWSTR</span></font> str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertUnicodeToUtf8"></a><h3>xmlSecMSCryptoConvertUnicodeToUtf8 ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
+xmlSecMSCryptoConvertUnicodeToUtf8 (<em class="parameter"><code><font><span class="type">LPCWSTR</span></font> str</code></em>);</pre>
 <p>Converts input string from Unicode to UTF8.</p>
-<div class="REFSECT3">
-<a name="AEN44163"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44165"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUnicodeToUtf8.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN44174"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUnicodeToUtf8.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTLOCALETOUTF8"></a><h3>xmlSecMSCryptoConvertLocaleToUtf8 ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecMSCryptoConvertLocaleToUtf8 (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertLocaleToUtf8"></a><h3>xmlSecMSCryptoConvertLocaleToUtf8 ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
+xmlSecMSCryptoConvertLocaleToUtf8 (<em class="parameter"><code>const <font><span class="type">char</span></font> *str</code></em>);</pre>
 <p>Converts input string from locale to UTF8.</p>
-<div class="REFSECT3">
-<a name="AEN44188"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44190"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertLocaleToUtf8.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN44199"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertLocaleToUtf8.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTUTF8TOLOCALE"></a><h3>xmlSecMSCryptoConvertUtf8ToLocale ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">char</span></font> *
-xmlSecMSCryptoConvertUtf8ToLocale (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertUtf8ToLocale"></a><h3>xmlSecMSCryptoConvertUtf8ToLocale ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">char</span></font> *
+xmlSecMSCryptoConvertUtf8ToLocale (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
 <p>Converts input string from UTF8 to locale.</p>
-<div class="REFSECT3">
-<a name="AEN44213"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44215"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToLocale.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN44224"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToLocale.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTTSTRTOUTF8"></a><h3>xmlSecMSCryptoConvertTstrToUtf8 ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecMSCryptoConvertTstrToUtf8 (<code class="PARAMETER"><font><span class="TYPE">LPCTSTR</span></font> str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertTstrToUtf8"></a><h3>xmlSecMSCryptoConvertTstrToUtf8 ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
+xmlSecMSCryptoConvertTstrToUtf8 (<em class="parameter"><code><font><span class="type">LPCTSTR</span></font> str</code></em>);</pre>
 <p>Converts input string from TSTR (locale or Unicode) to UTF8.</p>
-<div class="REFSECT3">
-<a name="AEN44238"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44240"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertTstrToUtf8.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN44249"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertTstrToUtf8.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOCONVERTUTF8TOTSTR"></a><h3>xmlSecMSCryptoConvertUtf8ToTstr ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">LPTSTR</span></font>
-xmlSecMSCryptoConvertUtf8ToTstr (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoConvertUtf8ToTstr"></a><h3>xmlSecMSCryptoConvertUtf8ToTstr ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">LPTSTR</span></font>
+xmlSecMSCryptoConvertUtf8ToTstr (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
 <p>Converts input string from UTF8 to TSTR (locale or Unicode).</p>
-<div class="REFSECT3">
-<a name="AEN44263"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44265"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToTstr.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to convert.</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to convert.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN44274"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoConvertUtf8ToTstr.returns"></a><h4>Returns</h4>
 <p> a pointer to newly allocated string (must be freed with xmlFree) or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATADSAGETKLASS"></a><h3>xmlSecMSCryptoKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataDsaGetKlass"></a><h3>xmlSecMSCryptoKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44287"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to DSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecMSCryptoTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformDsaSha1GetKlass"></a><h3>xmlSecMSCryptoTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformDsaSha1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44300"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGOST2001GETKLASS"></a><h3>xmlSecMSCryptoKeyDataGost2001GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataGost2001GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGost2001GetKlass"></a><h3>xmlSecMSCryptoKeyDataGost2001GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataGost2001GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001 key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44313"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataGost2001GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST2001 key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMGOST2001GOSTR3411-94GETKLASS"></a><h3>xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass"></a><h3>xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformGost2001GostR3411_94GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001-GOSTR3411_94 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44326"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformGost2001GostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST2001-GOSTR3411_94 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATARSAGETKLASS"></a><h3>xmlSecMSCryptoKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataRsaGetKlass"></a><h3>xmlSecMSCryptoKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The MSCrypto RSA CertKey data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44339"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MSCrypto RSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaMd5GetKlass"></a><h3>xmlSecMSCryptoTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44352"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha1GetKlass"></a><h3>xmlSecMSCryptoTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaSha1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44365"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha256GetKlass"></a><h3>xmlSecMSCryptoTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44378"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha384GetKlass"></a><h3>xmlSecMSCryptoTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44391"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha512GetKlass"></a><h3>xmlSecMSCryptoTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44404"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAPKCS1GETKLASS"></a><h3>xmlSecMSCryptoTransformRsaPkcs1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaPkcs1GetKlass"></a><h3>xmlSecMSCryptoTransformRsaPkcs1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaPkcs1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-PKCS1 key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44417"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaPkcs1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-PKCS1 key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAOAEPGETKLASS"></a><h3>xmlSecMSCryptoTransformRsaOaepGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaOaepGetKlass"></a><h3>xmlSecMSCryptoTransformRsaOaepGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformRsaOaepGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-OAEP key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44430"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformRsaOaepGetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-OAEP key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMMD5GETKLASS"></a><h3>xmlSecMSCryptoTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformMd5GetKlass"></a><h3>xmlSecMSCryptoTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44443"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA1GETKLASS"></a><h3>xmlSecMSCryptoTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha1GetKlass"></a><h3>xmlSecMSCryptoTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44456"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA256GETKLASS"></a><h3>xmlSecMSCryptoTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha256GetKlass"></a><h3>xmlSecMSCryptoTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44469"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-256 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA384GETKLASS"></a><h3>xmlSecMSCryptoTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha384GetKlass"></a><h3>xmlSecMSCryptoTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44482"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-384 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA512GETKLASS"></a><h3>xmlSecMSCryptoTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha512GetKlass"></a><h3>xmlSecMSCryptoTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44495"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-512 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMGOSTR3411-94GETKLASS"></a><h3>xmlSecMSCryptoTransformGostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformGostR3411-94GetKlass"></a><h3>xmlSecMSCryptoTransformGostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformGostR3411_94GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOSTR3411_94 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44508"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformGostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOSTR3411_94 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAAESGETKLASS"></a><h3>xmlSecMSCryptoKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataAesGetKlass"></a><h3>xmlSecMSCryptoKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44521"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAAESSET"></a><h3>xmlSecMSCryptoKeyDataAesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeyDataAesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                             <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                             <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataAesSet"></a><h3>xmlSecMSCryptoKeyDataAesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeyDataAesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                             <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of AES key data.</p>
-<div class="REFSECT3">
-<a name="AEN44541"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44543"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataAesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to AES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to AES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN44564"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataAesSet.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="XMLSECMSCRYPTOTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecMSCryptoTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes128CbcGetKlass"></a><h3>xmlSecMSCryptoTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformAes128CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44577"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecMSCryptoTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes192CbcGetKlass"></a><h3>xmlSecMSCryptoTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformAes192CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44590"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecMSCryptoTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes256CbcGetKlass"></a><h3>xmlSecMSCryptoTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformAes256CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44603"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecMSCryptoTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes128GetKlass"></a><h3>xmlSecMSCryptoTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformKWAes128GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44616"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecMSCryptoTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes192GetKlass"></a><h3>xmlSecMSCryptoTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformKWAes192GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44629"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecMSCryptoTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes256GetKlass"></a><h3>xmlSecMSCryptoTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformKWAes256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44642"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATADESGETKLASS"></a><h3>xmlSecMSCryptoKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataDesGetKlass"></a><h3>xmlSecMSCryptoKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44655"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecMSCryptoTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformDes3CbcGetKlass"></a><h3>xmlSecMSCryptoTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformDes3CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44668"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecMSCryptoTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecMSCryptoTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWDes3GetKlass"></a><h3>xmlSecMSCryptoTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecMSCryptoTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44681"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOHMACGETMINOUTPUTLENGTH"></a><h3>xmlSecMSCryptoHmacGetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoHmacGetMinOutputLength (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoHmacGetMinOutputLength"></a><h3>xmlSecMSCryptoHmacGetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoHmacGetMinOutputLength (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the value of min HMAC length.</p>
-<div class="REFSECT3">
-<a name="AEN44694"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoHmacGetMinOutputLength.returns"></a><h4>Returns</h4>
 <p> the min HMAC output length</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOHMACSETMINOUTPUTLENGTH"></a><h3>xmlSecMSCryptoHmacSetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecMSCryptoHmacSetMinOutputLength (<code class="PARAMETER"><font><span class="TYPE">int</span></font> min_length</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoHmacSetMinOutputLength"></a><h3>xmlSecMSCryptoHmacSetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecMSCryptoHmacSetMinOutputLength (<em class="parameter"><code><font><span class="type">int</span></font> min_length</code></em>);</pre>
 <p>Sets the min HMAC output length</p>
-<div class="REFSECT3">
-<a name="AEN44708"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44710"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoHmacSetMinOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>min_length</p></td>
-<td><p>the new min length</p></td>
-<td> </td>
+<td class="parameter_name"><p>min_length</p></td>
+<td class="parameter_description"><p>the new min length</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAHMACGETKLASS"></a><h3>xmlSecMSCryptoKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataHmacGetKlass"></a><h3>xmlSecMSCryptoKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN44729"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAHMACSET"></a><h3>xmlSecMSCryptoKeyDataHmacSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeyDataHmacSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                              <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataHmacSet"></a><h3>xmlSecMSCryptoKeyDataHmacSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeyDataHmacSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                              <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of HMAC key data.</p>
-<div class="REFSECT3">
-<a name="AEN44749"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN44751"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataHmacSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to HMAC key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to HMAC key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN44772"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataHmacSet.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="XMLSECMSCRYPTOTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecMSCryptoTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacMd5GetKlass"></a><h3>xmlSecMSCryptoTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformHmacMd5GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44785"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecMSCryptoTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha1GetKlass"></a><h3>xmlSecMSCryptoTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformHmacSha1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44798"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecMSCryptoTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha256GetKlass"></a><h3>xmlSecMSCryptoTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformHmacSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44811"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecMSCryptoTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha384GetKlass"></a><h3>xmlSecMSCryptoTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformHmacSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44824"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecMSCryptoTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha512GetKlass"></a><h3>xmlSecMSCryptoTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecMSCryptoTransformHmacSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN44837"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-CRYPTO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATADSAID"></a><h3>xmlSecMSCryptoKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataDsaId</pre>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-crypto.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataDsaId"></a><h3>xmlSecMSCryptoKeyDataDsaId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataDsaId</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMDSASHA1ID"></a><h3>xmlSecMSCryptoTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformDsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformDsaSha1Id"></a><h3>xmlSecMSCryptoTransformDsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformDsaSha1Id</pre>
 <p>The DSA SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAGOST2001ID"></a><h3>xmlSecMSCryptoKeyDataGost2001Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataGost2001Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataGost2001Id"></a><h3>xmlSecMSCryptoKeyDataGost2001Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataGost2001Id</pre>
 <p>The GOST2001 key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMGOST2001GOSTR3411-94ID"></a><h3>xmlSecMSCryptoTransformGost2001GostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformGost2001GostR3411_94Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformGost2001GostR3411-94Id"></a><h3>xmlSecMSCryptoTransformGost2001GostR3411_94Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformGost2001GostR3411_94Id</pre>
 <p>The GOST2001 GOSTR3411_94 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATARSAID"></a><h3>xmlSecMSCryptoKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataRsaId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataRsaId"></a><h3>xmlSecMSCryptoKeyDataRsaId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataRsaId</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAMD5ID"></a><h3>xmlSecMSCryptoTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaMd5Id"></a><h3>xmlSecMSCryptoTransformRsaMd5Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaMd5Id</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA1ID"></a><h3>xmlSecMSCryptoTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha1Id"></a><h3>xmlSecMSCryptoTransformRsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaSha1Id</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA256ID"></a><h3>xmlSecMSCryptoTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha256Id"></a><h3>xmlSecMSCryptoTransformRsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaSha256Id</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA384ID"></a><h3>xmlSecMSCryptoTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha384Id"></a><h3>xmlSecMSCryptoTransformRsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaSha384Id</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSASHA512ID"></a><h3>xmlSecMSCryptoTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaSha512Id"></a><h3>xmlSecMSCryptoTransformRsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaSha512Id</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAPKCS1ID"></a><h3>xmlSecMSCryptoTransformRsaPkcs1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaPkcs1Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaPkcs1Id"></a><h3>xmlSecMSCryptoTransformRsaPkcs1Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaPkcs1Id</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMRSAOAEPID"></a><h3>xmlSecMSCryptoTransformRsaOaepId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformRsaOaepId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformRsaOaepId"></a><h3>xmlSecMSCryptoTransformRsaOaepId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformRsaOaepId</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMMD5ID"></a><h3>xmlSecMSCryptoTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformMd5Id"></a><h3>xmlSecMSCryptoTransformMd5Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformMd5Id</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA1ID"></a><h3>xmlSecMSCryptoTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha1Id"></a><h3>xmlSecMSCryptoTransformSha1Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformSha1Id</pre>
 <p>The SHA1 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA256ID"></a><h3>xmlSecMSCryptoTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha256Id"></a><h3>xmlSecMSCryptoTransformSha256Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformSha256Id</pre>
 <p>The SHA256 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA384ID"></a><h3>xmlSecMSCryptoTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha384Id"></a><h3>xmlSecMSCryptoTransformSha384Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformSha384Id</pre>
 <p>The SHA384 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMSHA512ID"></a><h3>xmlSecMSCryptoTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformSha512Id"></a><h3>xmlSecMSCryptoTransformSha512Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformSha512Id</pre>
 <p>The SHA512 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMGOSTR3411-94ID"></a><h3>xmlSecMSCryptoTransformGostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformGostR3411_94Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformGostR3411-94Id"></a><h3>xmlSecMSCryptoTransformGostR3411_94Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformGostR3411_94Id</pre>
 <p>The GOSTR3411_94 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAAESID"></a><h3>xmlSecMSCryptoKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataAesId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataAesId"></a><h3>xmlSecMSCryptoKeyDataAesId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataAesId</pre>
 <p>The AES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMAES128CBCID"></a><h3>xmlSecMSCryptoTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformAes128CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes128CbcId"></a><h3>xmlSecMSCryptoTransformAes128CbcId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformAes128CbcId</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMAES192CBCID"></a><h3>xmlSecMSCryptoTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformAes192CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes192CbcId"></a><h3>xmlSecMSCryptoTransformAes192CbcId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformAes192CbcId</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMAES256CBCID"></a><h3>xmlSecMSCryptoTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformAes256CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformAes256CbcId"></a><h3>xmlSecMSCryptoTransformAes256CbcId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformAes256CbcId</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES128ID"></a><h3>xmlSecMSCryptoTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformKWAes128Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes128Id"></a><h3>xmlSecMSCryptoTransformKWAes128Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformKWAes128Id</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES192ID"></a><h3>xmlSecMSCryptoTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformKWAes192Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes192Id"></a><h3>xmlSecMSCryptoTransformKWAes192Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformKWAes192Id</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWAES256ID"></a><h3>xmlSecMSCryptoTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformKWAes256Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWAes256Id"></a><h3>xmlSecMSCryptoTransformKWAes256Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformKWAes256Id</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATADESID"></a><h3>xmlSecMSCryptoKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataDesId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataDesId"></a><h3>xmlSecMSCryptoKeyDataDesId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataDesId</pre>
 <p>The DES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMDES3CBCID"></a><h3>xmlSecMSCryptoTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformDes3CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformDes3CbcId"></a><h3>xmlSecMSCryptoTransformDes3CbcId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformDes3CbcId</pre>
 <p>The DES3 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMKWDES3ID"></a><h3>xmlSecMSCryptoTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformKWDes3Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformKWDes3Id"></a><h3>xmlSecMSCryptoTransformKWDes3Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformKWDes3Id</pre>
 <p>The DES3 KW transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAHMACID"></a><h3>xmlSecMSCryptoKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataHmacId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataHmacId"></a><h3>xmlSecMSCryptoKeyDataHmacId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataHmacId</pre>
 <p>The DHMAC key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACMD5ID"></a><h3>xmlSecMSCryptoTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformHmacMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacMd5Id"></a><h3>xmlSecMSCryptoTransformHmacMd5Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformHmacMd5Id</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA1ID"></a><h3>xmlSecMSCryptoTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformHmacSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha1Id"></a><h3>xmlSecMSCryptoTransformHmacSha1Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformHmacSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA256ID"></a><h3>xmlSecMSCryptoTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformHmacSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha256Id"></a><h3>xmlSecMSCryptoTransformHmacSha256Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformHmacSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA384ID"></a><h3>xmlSecMSCryptoTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformHmacSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha384Id"></a><h3>xmlSecMSCryptoTransformHmacSha384Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformHmacSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOTRANSFORMHMACSHA512ID"></a><h3>xmlSecMSCryptoTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoTransformHmacSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoTransformHmacSha512Id"></a><h3>xmlSecMSCryptoTransformHmacSha512Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoTransformHmacSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-certkeys.html"><b><<< certkeys</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-keysstore.html"><b>keysstore >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-keysstore.html b/docs/api/xmlsec-mscrypto-keysstore.html
index 584b476..31b39d2 100644
--- a/docs/api/xmlsec-mscrypto-keysstore.html
+++ b/docs/api/xmlsec-mscrypto-keysstore.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keysstore</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="PREVIOUS" title="crypto" href="xmlsec-mscrypto-crypto.html">
-<link rel="NEXT" title="x509" href="xmlsec-mscrypto-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keysstore: 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-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-crypto.html" title="crypto">
+<link rel="next" href="xmlsec-mscrypto-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,221 +73,229 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-mscrypto-keysstore.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE"></a>keysstore</h1>
-<div class="REFNAMEDIV">
-<a name="AEN45051"></a><h2>Name</h2>keysstore -- Keys store implementation for MS Crypto.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45056"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-mscrypto-keysstore"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-mscrypto-keysstore.top_of_page"></a>keysstore</span></h2>
+<p>keysstore — Keys store implementation for MS Crypto.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-keysstore.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREGETKLASS">xmlSecMSCryptoKeysStoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreGetKlass" title="xmlSecMSCryptoKeysStoreGetKlass ()">xmlSecMSCryptoKeysStoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREADOPTKEY">xmlSecMSCryptoKeysStoreAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreAdoptKey" title="xmlSecMSCryptoKeysStoreAdoptKey ()">xmlSecMSCryptoKeysStoreAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTORELOAD">xmlSecMSCryptoKeysStoreLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreLoad" title="xmlSecMSCryptoKeysStoreLoad ()">xmlSecMSCryptoKeysStoreLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTORESAVE">xmlSecMSCryptoKeysStoreSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreSave" title="xmlSecMSCryptoKeysStoreSave ()">xmlSecMSCryptoKeysStoreSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45089"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-keysstore.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-keysstore.html#XMLSECMSCRYPTOKEYSSTOREID">xmlSecMSCryptoKeysStoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-keysstore.html#xmlSecMSCryptoKeysStoreId" title="xmlSecMSCryptoKeysStoreId">xmlSecMSCryptoKeysStoreId</a></td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE.DESCRIPTION"></a><h2>Description</h2>
-<p>Keys store implementation for MS Crypto.</p>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-keysstore.description"></a><h2>Description</h2>
+<p>
+Keys store implementation for MS Crypto.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYSSTOREGETKLASS"></a><h3>xmlSecMSCryptoKeysStoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font>
-xmlSecMSCryptoKeysStoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-keysstore.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysStoreGetKlass"></a><h3>xmlSecMSCryptoKeysStoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+xmlSecMSCryptoKeysStoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The MSCrypto list based keys store klass.</p>
-<div class="REFSECT3">
-<a name="AEN45111"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreGetKlass.returns"></a><h4>Returns</h4>
 <p> MSCrypto list based keys store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYSSTOREADOPTKEY"></a><h3>xmlSecMSCryptoKeysStoreAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeysStoreAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysStoreAdoptKey"></a><h3>xmlSecMSCryptoKeysStoreAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeysStoreAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN45130"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45132"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to MSCrypto keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to MSCrypto keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45147"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreAdoptKey.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="XMLSECMSCRYPTOKEYSSTORELOAD"></a><h3>xmlSecMSCryptoKeysStoreLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeysStoreLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>,
-                             <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysStoreLoad"></a><h3>xmlSecMSCryptoKeysStoreLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeysStoreLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>,
+                             <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Reads keys from an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN45167"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45169"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to MSCrypto keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to MSCrypto keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to associated keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to associated keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45190"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreLoad.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="XMLSECMSCRYPTOKEYSSTORESAVE"></a><h3>xmlSecMSCryptoKeysStoreSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeysStoreSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                             <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Writes keys from <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysStoreSave"></a><h3>xmlSecMSCryptoKeysStoreSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeysStoreSave (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Writes keys from <em class="parameter"><code>store</code></em>
  to an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN45211"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45213"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to MSCrypto keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to MSCrypto keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the saved keys type (public, private, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the saved keys type (public, private, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45234"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeysStoreSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-KEYSSTORE.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYSSTOREID"></a><h3>xmlSecMSCryptoKeysStoreId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecMSCryptoKeysStoreId       xmlSecMSCryptoKeysStoreGetKlass()</pre>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-keysstore.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeysStoreId"></a><h3>xmlSecMSCryptoKeysStoreId</h3>
+<pre class="programlisting">#define xmlSecMSCryptoKeysStoreId       xmlSecMSCryptoKeysStoreGetKlass()
+</pre>
 <p>A MSCrypto keys store klass id.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-crypto.html"><b><<< crypto</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-x509.html"><b>x509 >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-ref.html b/docs/api/xmlsec-mscrypto-ref.html
index 1d71e0e..fb1c150 100644
--- a/docs/api/xmlsec-mscrypto-ref.html
+++ b/docs/api/xmlsec-mscrypto-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library for MSCrypto API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="x509" href="xmlsec-nss-x509.html">
-<link rel="NEXT" title="app" href="xmlsec-mscrypto-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library for MSCrypto API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-nss-x509.html" title="x509">
+<link rel="next" href="xmlsec-mscrypto-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,37 +73,39 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-MSCRYPTO-REF"></a>XML Security Library for MSCrypto API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-mscrypto-ref"></a>XML Security Library for MSCrypto API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-mscrypto-app.html">app</a> -- Application functions implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-certkeys.html">certkeys</a> -- MS Crypto certificates helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-certkeys.html">certkeys</a></span><span class="refpurpose"> — MS Crypto certificates helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-crypto.html">crypto</a> -- Crypto transforms implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-keysstore.html">keysstore</a> -- Keys store implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for MS Crypto.</span>
+</dt>
 <dt>
-<a href="xmlsec-mscrypto-x509.html">x509</a> -- X509 certificates support implementation for MS Crypto.</dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for MS Crypto.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec-mscrypto. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-x509.html"><b><<< x509</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-mscrypto-x509.html b/docs/api/xmlsec-mscrypto-x509.html
index 63e2bcb..57c8167 100644
--- a/docs/api/xmlsec-mscrypto-x509.html
+++ b/docs/api/xmlsec-mscrypto-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>x509</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<link rel="PREVIOUS" title="keysstore" href="xmlsec-mscrypto-keysstore.html">
-<link rel="NEXT" title="XML Security Library Reference Index" href="xmlsec-index.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>x509: 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-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<link rel="prev" href="xmlsec-mscrypto-keysstore.html" title="keysstore">
+<link rel="next" href="xmlsec-index.html" title="XML Security Library Reference Index">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,679 +73,690 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-mscrypto-keysstore.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-mscrypto-x509.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-mscrypto-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-mscrypto-keysstore.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-index.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-MSCRYPTO-X509"></a>x509</h1>
-<div class="REFNAMEDIV">
-<a name="AEN45250"></a><h2>Name</h2>x509 -- X509 certificates support implementation for MS Crypto.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-X509.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45255"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-mscrypto-x509"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-mscrypto-x509.top_of_page"></a>x509</span></h2>
+<p>x509 — X509 certificates support implementation for MS Crypto.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-x509.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETKLASS">xmlSecMSCryptoKeyDataX509GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetKlass" title="xmlSecMSCryptoKeyDataX509GetKlass ()">xmlSecMSCryptoKeyDataX509GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETKEYCERT">xmlSecMSCryptoKeyDataX509GetKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetKeyCert" title="xmlSecMSCryptoKeyDataX509GetKeyCert ()">xmlSecMSCryptoKeyDataX509GetKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTKEYCERT">xmlSecMSCryptoKeyDataX509AdoptKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptKeyCert" title="xmlSecMSCryptoKeyDataX509AdoptKeyCert ()">xmlSecMSCryptoKeyDataX509AdoptKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTCERT">xmlSecMSCryptoKeyDataX509AdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptCert" title="xmlSecMSCryptoKeyDataX509AdoptCert ()">xmlSecMSCryptoKeyDataX509AdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCERT">xmlSecMSCryptoKeyDataX509GetCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCert" title="xmlSecMSCryptoKeyDataX509GetCert ()">xmlSecMSCryptoKeyDataX509GetCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCERTSSIZE">xmlSecMSCryptoKeyDataX509GetCertsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCertsSize" title="xmlSecMSCryptoKeyDataX509GetCertsSize ()">xmlSecMSCryptoKeyDataX509GetCertsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ADOPTCRL">xmlSecMSCryptoKeyDataX509AdoptCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509AdoptCrl" title="xmlSecMSCryptoKeyDataX509AdoptCrl ()">xmlSecMSCryptoKeyDataX509AdoptCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">PCCRL_CONTEXT</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCRL">xmlSecMSCryptoKeyDataX509GetCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PCCRL_CONTEXT</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCrl" title="xmlSecMSCryptoKeyDataX509GetCrl ()">xmlSecMSCryptoKeyDataX509GetCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509GETCRLSSIZE">xmlSecMSCryptoKeyDataX509GetCrlsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509GetCrlsSize" title="xmlSecMSCryptoKeyDataX509GetCrlsSize ()">xmlSecMSCryptoKeyDataX509GetCrlsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATARAWX509CERTGETKLASS">xmlSecMSCryptoKeyDataRawX509CertGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataRawX509CertGetKlass" title="xmlSecMSCryptoKeyDataRawX509CertGetKlass ()">xmlSecMSCryptoKeyDataRawX509CertGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREGETKLASS">xmlSecMSCryptoX509StoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreGetKlass" title="xmlSecMSCryptoX509StoreGetKlass ()">xmlSecMSCryptoX509StoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTCERT">xmlSecMSCryptoX509StoreAdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptCert" title="xmlSecMSCryptoX509StoreAdoptCert ()">xmlSecMSCryptoX509StoreAdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTKEYSTORE">xmlSecMSCryptoX509StoreAdoptKeyStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptKeyStore" title="xmlSecMSCryptoX509StoreAdoptKeyStore ()">xmlSecMSCryptoX509StoreAdoptKeyStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTTRUSTEDSTORE">xmlSecMSCryptoX509StoreAdoptTrustedStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptTrustedStore" title="xmlSecMSCryptoX509StoreAdoptTrustedStore ()">xmlSecMSCryptoX509StoreAdoptTrustedStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREADOPTUNTRUSTEDSTORE">xmlSecMSCryptoX509StoreAdoptUntrustedStore</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreAdoptUntrustedStore" title="xmlSecMSCryptoX509StoreAdoptUntrustedStore ()">xmlSecMSCryptoX509StoreAdoptUntrustedStore</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREENABLESYSTEMTRUSTEDCERTS">xmlSecMSCryptoX509StoreEnableSystemTrustedCerts</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreEnableSystemTrustedCerts" title="xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()">xmlSecMSCryptoX509StoreEnableSystemTrustedCerts</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-X509.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45372"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-x509.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATAX509ID">xmlSecMSCryptoKeyDataX509Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataX509Id" title="xmlSecMSCryptoKeyDataX509Id">xmlSecMSCryptoKeyDataX509Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOKEYDATARAWX509CERTID">xmlSecMSCryptoKeyDataRawX509CertId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoKeyDataRawX509CertId" title="xmlSecMSCryptoKeyDataRawX509CertId">xmlSecMSCryptoKeyDataRawX509CertId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-mscrypto-x509.html#XMLSECMSCRYPTOX509STOREID">xmlSecMSCryptoX509StoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-mscrypto-x509.html#xmlSecMSCryptoX509StoreId" title="xmlSecMSCryptoX509StoreId">xmlSecMSCryptoX509StoreId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-X509.DESCRIPTION"></a><h2>Description</h2>
-<p>X509 certificates support implementation for MS Crypto.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-X509.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509GETKLASS"></a><h3>xmlSecMSCryptoKeyDataX509GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecMSCryptoKeyDataX509GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The MSCrypto X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-X509Data</span></font>).</p>
-<div class="REFSECT3">
-<a name="AEN45404"></a><h4>Returns</h4>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-x509.description"></a><h2>Description</h2>
+<p>
+X509 certificates support implementation for MS Crypto.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-x509.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetKlass"></a><h3>xmlSecMSCryptoKeyDataX509GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecMSCryptoKeyDataX509GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The MSCrypto X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-X509Data</span></font>).</p>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetKlass.returns"></a><h4>Returns</h4>
 <p> the X509 data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509GETKEYCERT"></a><h3>xmlSecMSCryptoKeyDataX509GetKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font>
-xmlSecMSCryptoKeyDataX509GetKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetKeyCert"></a><h3>xmlSecMSCryptoKeyDataX509GetKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+xmlSecMSCryptoKeyDataX509GetKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the certificate from which the key was extracted.</p>
-<div class="REFSECT3">
-<a name="AEN45418"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45420"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45429"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetKeyCert.returns"></a><h4>Returns</h4>
 <p> the key's certificate or NULL if key data was not used for key
 extraction or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509ADOPTKEYCERT"></a><h3>xmlSecMSCryptoKeyDataX509AdoptKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeyDataX509AdoptKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">PCCERT_CONTEXT</span></font> cert</code>);</pre>
-<p>Sets the key's certificate in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509AdoptKeyCert"></a><h3>xmlSecMSCryptoKeyDataX509AdoptKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeyDataX509AdoptKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                       <em class="parameter"><code><font><span class="type">PCCERT_CONTEXT</span></font> cert</code></em>);</pre>
+<p>Sets the key's certificate in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN45447"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45449"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to MSCRYPTO X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to MSCRYPTO X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45464"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptKeyCert.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="XMLSECMSCRYPTOKEYDATAX509ADOPTCERT"></a><h3>xmlSecMSCryptoKeyDataX509AdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeyDataX509AdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">PCCERT_CONTEXT</span></font> cert</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCert"></a><h3>xmlSecMSCryptoKeyDataX509AdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeyDataX509AdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                    <em class="parameter"><code><font><span class="type">PCCERT_CONTEXT</span></font> cert</code></em>);</pre>
 <p>Adds certificate to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN45481"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45483"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to MSCRYPTO X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to MSCRYPTO X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45498"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCert.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="XMLSECMSCRYPTOKEYDATAX509GETCERT"></a><h3>xmlSecMSCryptoKeyDataX509GetCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCCERT_CONTEXT</span></font>
-xmlSecMSCryptoKeyDataX509GetCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetCert"></a><h3>xmlSecMSCryptoKeyDataX509GetCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCCERT_CONTEXT</span></font>
+xmlSecMSCryptoKeyDataX509GetCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a certificate from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN45515"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45517"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired certificate position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired certificate position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45532"></a><h4>Returns</h4>
-<p> the pointer to certificate or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCert.returns"></a><h4>Returns</h4>
+<p> the pointer to certificate or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of certificates in <code class="PARAMETER">data</code>
+number of certificates in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509GETCERTSSIZE"></a><h3>xmlSecMSCryptoKeyDataX509GetCertsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecMSCryptoKeyDataX509GetCertsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetCertsSize"></a><h3>xmlSecMSCryptoKeyDataX509GetCertsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecMSCryptoKeyDataX509GetCertsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN45549"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45551"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCertsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45560"></a><h4>Returns</h4>
-<p> te number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCertsSize.returns"></a><h4>Returns</h4>
+<p> te number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509ADOPTCRL"></a><h3>xmlSecMSCryptoKeyDataX509AdoptCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoKeyDataX509AdoptCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">PCCRL_CONTEXT</span></font> crl</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCrl"></a><h3>xmlSecMSCryptoKeyDataX509AdoptCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoKeyDataX509AdoptCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                   <em class="parameter"><code><font><span class="type">PCCRL_CONTEXT</span></font> crl</code></em>);</pre>
 <p>Adds CRL to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN45578"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45580"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>crl</p></td>
-<td><p>the pointer to MSCrypto X509 CRL.</p></td>
-<td> </td>
+<td class="parameter_name"><p>crl</p></td>
+<td class="parameter_description"><p>the pointer to MSCrypto X509 CRL.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45595"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509AdoptCrl.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="XMLSECMSCRYPTOKEYDATAX509GETCRL"></a><h3>xmlSecMSCryptoKeyDataX509GetCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PCCRL_CONTEXT</span></font>
-xmlSecMSCryptoKeyDataX509GetCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetCrl"></a><h3>xmlSecMSCryptoKeyDataX509GetCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PCCRL_CONTEXT</span></font>
+xmlSecMSCryptoKeyDataX509GetCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a CRL from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN45612"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45614"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired CRL position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired CRL position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45629"></a><h4>Returns</h4>
-<p> the pointer to CRL or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCrl.returns"></a><h4>Returns</h4>
+<p> the pointer to CRL or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of CRLs in <code class="PARAMETER">data</code>
+number of CRLs in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509GETCRLSSIZE"></a><h3>xmlSecMSCryptoKeyDataX509GetCrlsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecMSCryptoKeyDataX509GetCrlsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509GetCrlsSize"></a><h3>xmlSecMSCryptoKeyDataX509GetCrlsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecMSCryptoKeyDataX509GetCrlsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN45646"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45648"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCrlsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45657"></a><h4>Returns</h4>
-<p> te number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataX509GetCrlsSize.returns"></a><h4>Returns</h4>
+<p> te number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATARAWX509CERTGETKLASS"></a><h3>xmlSecMSCryptoKeyDataRawX509CertGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataRawX509CertGetKlass"></a><h3>xmlSecMSCryptoKeyDataRawX509CertGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecMSCryptoKeyDataRawX509CertGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The raw X509 certificates key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN45671"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoKeyDataRawX509CertGetKlass.returns"></a><h4>Returns</h4>
 <p> raw X509 certificates key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOX509STOREGETKLASS"></a><h3>xmlSecMSCryptoX509StoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font>
-xmlSecMSCryptoX509StoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreGetKlass"></a><h3>xmlSecMSCryptoX509StoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+xmlSecMSCryptoX509StoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The MSCrypto X509 certificates key data store klass.</p>
-<div class="REFSECT3">
-<a name="AEN45684"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MSCrypto X509 certificates key data store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOX509STOREADOPTCERT"></a><h3>xmlSecMSCryptoX509StoreAdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoX509StoreAdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">PCCERT_CONTEXT</span></font> cert</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreAdoptCert"></a><h3>xmlSecMSCryptoX509StoreAdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoX509StoreAdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                  <em class="parameter"><code><font><span class="type">PCCERT_CONTEXT</span></font> cert</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Adds trusted (root) or untrusted certificate to the store.</p>
-<div class="REFSECT3">
-<a name="AEN45704"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45706"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to PCCERT_CONTEXT X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to PCCERT_CONTEXT X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45727"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptCert.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="XMLSECMSCRYPTOX509STOREADOPTKEYSTORE"></a><h3>xmlSecMSCryptoX509StoreAdoptKeyStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecMSCryptoX509StoreAdoptKeyStore (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> keyStore</code>);</pre>
-<p>Adds <code class="PARAMETER">keyStore</code>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreAdoptKeyStore"></a><h3>xmlSecMSCryptoX509StoreAdoptKeyStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecMSCryptoX509StoreAdoptKeyStore (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                      <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> keyStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>keyStore</code></em>
  to the list of key stores.</p>
-<div class="REFSECT3">
-<a name="AEN45745"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45747"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptKeyStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyStore</p></td>
-<td><p>the pointer to keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyStore</p></td>
+<td class="parameter_description"><p>the pointer to keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45762"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptKeyStore.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="XMLSECMSCRYPTOX509STOREADOPTTRUSTEDSTORE"></a><h3>xmlSecMSCryptoX509StoreAdoptTrustedStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreAdoptTrustedStore"></a><h3>xmlSecMSCryptoX509StoreAdoptTrustedStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoX509StoreAdoptTrustedStore
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> trustedStore</code>);</pre>
-<p>Adds <code class="PARAMETER">trustedStore</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> trustedStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>trustedStore</code></em>
  to the list of trusted certs stores.</p>
-<div class="REFSECT3">
-<a name="AEN45780"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45782"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptTrustedStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>trustedStore</p></td>
-<td><p>the pointer to certs store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>trustedStore</p></td>
+<td class="parameter_description"><p>the pointer to certs store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45797"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptTrustedStore.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="XMLSECMSCRYPTOX509STOREADOPTUNTRUSTEDSTORE"></a><h3>xmlSecMSCryptoX509StoreAdoptUntrustedStore ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreAdoptUntrustedStore"></a><h3>xmlSecMSCryptoX509StoreAdoptUntrustedStore ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecMSCryptoX509StoreAdoptUntrustedStore
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">HCERTSTORE</span></font> untrustedStore</code>);</pre>
-<p>Adds <code class="PARAMETER">trustedStore</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">HCERTSTORE</span></font> untrustedStore</code></em>);</pre>
+<p>Adds <em class="parameter"><code>trustedStore</code></em>
  to the list of un-trusted certs stores.</p>
-<div class="REFSECT3">
-<a name="AEN45815"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45817"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptUntrustedStore.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>untrustedStore</p></td>
-<td><p>the pointer to certs store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>untrustedStore</p></td>
+<td class="parameter_description"><p>the pointer to certs store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN45832"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreAdoptUntrustedStore.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="XMLSECMSCRYPTOX509STOREENABLESYSTEMTRUSTEDCERTS"></a><h3>xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreEnableSystemTrustedCerts"></a><h3>xmlSecMSCryptoX509StoreEnableSystemTrustedCerts ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
 xmlSecMSCryptoX509StoreEnableSystemTrustedCerts
-                               (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">int</span></font> val</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">int</span></font> val</code></em>);</pre>
 <p>Enables/disables the system trusted certs.</p>
-<div class="REFSECT3">
-<a name="AEN45849"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN45851"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecMSCryptoX509StoreEnableSystemTrustedCerts.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>val</p></td>
-<td><p>the enable/disable flag</p></td>
-<td> </td>
+<td class="parameter_name"><p>val</p></td>
+<td class="parameter_description"><p>the enable/disable flag</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-MSCRYPTO-X509.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATAX509ID"></a><h3>xmlSecMSCryptoKeyDataX509Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataX509Id</pre>
+<div class="refsect1">
+<a name="xmlsec-mscrypto-x509.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataX509Id"></a><h3>xmlSecMSCryptoKeyDataX509Id</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataX509Id</pre>
 <p>The MSCrypto X509 data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOKEYDATARAWX509CERTID"></a><h3>xmlSecMSCryptoKeyDataRawX509CertId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoKeyDataRawX509CertId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoKeyDataRawX509CertId"></a><h3>xmlSecMSCryptoKeyDataRawX509CertId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoKeyDataRawX509CertId</pre>
 <p>The MSCrypto raw X509 certificate klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECMSCRYPTOX509STOREID"></a><h3>xmlSecMSCryptoX509StoreId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecMSCryptoX509StoreId</pre>
+<div class="refsect2">
+<a name="xmlSecMSCryptoX509StoreId"></a><h3>xmlSecMSCryptoX509StoreId</h3>
+<pre class="programlisting">#define             xmlSecMSCryptoX509StoreId</pre>
 <p>The MSCrypto X509 store klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-mscrypto-keysstore.html"><b><<< keysstore</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-index.html"><b>XML Security Library Reference Index >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nodeset.html b/docs/api/xmlsec-nodeset.html
index 4d4e831..4fdfce4 100644
--- a/docs/api/xmlsec-nodeset.html
+++ b/docs/api/xmlsec-nodeset.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>nodeset</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="membuf" href="xmlsec-membuf.html">
-<link rel="NEXT" title="parser" href="xmlsec-parser.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>nodeset: 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-membuf.html" title="membuf">
+<link rel="next" href="xmlsec-parser.html" title="parser">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,699 +73,720 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-membuf.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nodeset.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-membuf.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-parser.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NODESET"></a>nodeset</h1>
-<div class="REFNAMEDIV">
-<a name="AEN15921"></a><h2>Name</h2>nodeset -- Nodeset object implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NODESET.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN15926"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nodeset"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nodeset.top_of_page"></a>nodeset</span></h2>
+<p>nodeset — Nodeset object implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nodeset.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-nodeset.html#XMLSECNODESETWALKCALLBACK">*xmlSecNodeSetWalkCallback</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetWalkCallback" title="xmlSecNodeSetWalkCallback ()">*xmlSecNodeSetWalkCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETCREATE">xmlSecNodeSetCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetCreate" title="xmlSecNodeSetCreate ()">xmlSecNodeSetCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETDESTROY">xmlSecNodeSetDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDestroy" title="xmlSecNodeSetDestroy ()">xmlSecNodeSetDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETDOCDESTROY">xmlSecNodeSetDocDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDocDestroy" title="xmlSecNodeSetDocDestroy ()">xmlSecNodeSetDocDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETCONTAINS">xmlSecNodeSetContains</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetContains" title="xmlSecNodeSetContains ()">xmlSecNodeSetContains</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETADD">xmlSecNodeSetAdd</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetAdd" title="xmlSecNodeSetAdd ()">xmlSecNodeSetAdd</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETADDLIST">xmlSecNodeSetAddList</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetAddList" title="xmlSecNodeSetAddList ()">xmlSecNodeSetAddList</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETGETCHILDREN">xmlSecNodeSetGetChildren</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetGetChildren" title="xmlSecNodeSetGetChildren ()">xmlSecNodeSetGetChildren</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETWALK">xmlSecNodeSetWalk</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetWalk" title="xmlSecNodeSetWalk ()">xmlSecNodeSetWalk</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETDUMPTEXTNODES">xmlSecNodeSetDumpTextNodes</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDumpTextNodes" title="xmlSecNodeSetDumpTextNodes ()">xmlSecNodeSetDumpTextNodes</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-nodeset.html#XMLSECNODESETDEBUGDUMP">xmlSecNodeSetDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDebugDump" title="xmlSecNodeSetDebugDump ()">xmlSecNodeSetDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NODESET.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16010"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nodeset.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESETTYPE">xmlSecNodeSetType</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetType" title="enum xmlSecNodeSetType">xmlSecNodeSetType</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESETOP">xmlSecNodeSetOp</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetOp" title="enum xmlSecNodeSetOp">xmlSecNodeSetOp</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-nodeset.html#XMLSECNODESET">xmlSecNodeSet</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSet" title="struct xmlSecNodeSet">xmlSecNodeSet</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NODESET.DESCRIPTION"></a><h2>Description</h2>
-<p>Nodeset object implementation.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NODESET.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNODESETWALKCALLBACK"></a><h3>xmlSecNodeSetWalkCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecNodeSetWalkCallback<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *data</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nodeset.description"></a><h2>Description</h2>
+<p>
+Nodeset object implementation.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nodeset.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNodeSetWalkCallback"></a><h3>xmlSecNodeSetWalkCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecNodeSetWalkCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *data</code></em>);</pre>
 <p>The callback function called once per each node in the nodes set.</p>
-<div class="REFSECT3">
-<a name="AEN16052"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16054"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetWalkCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to <a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSet</span></a> structure.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to <a class="link" href="xmlsec-nodeset.html#xmlSecNodeSet" title="struct xmlSecNodeSet"><span class="type">xmlSecNodeSet</span></a> structure.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer current XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the pointer current XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to the <code class="PARAMETER">cur</code>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to the <em class="parameter"><code>cur</code></em>
 parent node.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to application specific data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to application specific data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16084"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetWalkCallback.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value if an error occurs
 an walk procedure should be interrupted.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETCREATE"></a><h3>xmlSecNodeSetCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a>
-xmlSecNodeSetCreate (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">xmlNodeSetPtr</span></font> nodes</code>,
-                     <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESETTYPE"><span class="TYPE">xmlSecNodeSetType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNodeSetCreate"></a><h3>xmlSecNodeSetCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+xmlSecNodeSetCreate (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlNodeSetPtr</span></font> nodes</code></em>,
+                     <em class="parameter"><code><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetType" title="enum xmlSecNodeSetType"><span class="type">xmlSecNodeSetType</span></a> type</code></em>);</pre>
 <p>Creates new nodes set. Caller is responsible for freeing returned object
-by calling <a href="xmlsec-nodeset.html#XMLSECNODESETDESTROY"><span class="TYPE">xmlSecNodeSetDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN16106"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16108"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+by calling <a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetDestroy" title="xmlSecNodeSetDestroy ()"><span class="type">xmlSecNodeSetDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecNodeSetCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to parent XML document.</p></td>
-<td> </td>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to parent XML document.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the list of nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the list of nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the nodes set type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the nodes set type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16129"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated node set or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETDESTROY"></a><h3>xmlSecNodeSetDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecNodeSetDestroy (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>);</pre>
-<p>Destroys the nodes set created with <a href="xmlsec-nodeset.html#XMLSECNODESETCREATE"><span class="TYPE">xmlSecNodeSetCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN16145"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16147"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecNodeSetDestroy"></a><h3>xmlSecNodeSetDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecNodeSetDestroy (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>);</pre>
+<p>Destroys the nodes set created with <a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetCreate" title="xmlSecNodeSetCreate ()"><span class="type">xmlSecNodeSetCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecNodeSetDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETDOCDESTROY"></a><h3>xmlSecNodeSetDocDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecNodeSetDocDestroy (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNodeSetDocDestroy"></a><h3>xmlSecNodeSetDocDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecNodeSetDocDestroy (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>);</pre>
 <p>Instructs node set to destroy nodes parent doc when node set is destroyed.</p>
-<div class="REFSECT3">
-<a name="AEN16167"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16169"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetDocDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETCONTAINS"></a><h3>xmlSecNodeSetContains ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNodeSetContains (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> parent</code>);</pre>
-<p>Checks whether the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetContains"></a><h3>xmlSecNodeSetContains ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNodeSetContains (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> parent</code></em>);</pre>
+<p>Checks whether the <em class="parameter"><code>node</code></em>
  is in the nodes set or not.</p>
-<div class="REFSECT3">
-<a name="AEN16196"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16198"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetContains.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to XML node to check.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to XML node to check.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to <code class="PARAMETER">node</code>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to <em class="parameter"><code>node</code></em>
 parent node.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN16220"></a><h4>Returns</h4>
-<p> 1 if the <code class="PARAMETER">node</code>
-is in the nodes set <code class="PARAMETER">nset</code>
+<div class="refsect3">
+<a name="xmlSecNodeSetContains.returns"></a><h4>Returns</h4>
+<p> 1 if the <em class="parameter"><code>node</code></em>
+is in the nodes set <em class="parameter"><code>nset</code></em>
 , 0 if it is not
 and a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETADD"></a><h3>xmlSecNodeSetAdd ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a>
-xmlSecNodeSetAdd (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                  <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> newNSet</code>,
-                  <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESETOP"><span class="TYPE">xmlSecNodeSetOp</span></a> op</code>);</pre>
-<p>Adds <code class="PARAMETER">newNSet</code>
- to the <code class="PARAMETER">nset</code>
- using operation <code class="PARAMETER">op</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetAdd"></a><h3>xmlSecNodeSetAdd ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+xmlSecNodeSetAdd (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                  <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> newNSet</code></em>,
+                  <em class="parameter"><code><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetOp" title="enum xmlSecNodeSetOp"><span class="type">xmlSecNodeSetOp</span></a> op</code></em>);</pre>
+<p>Adds <em class="parameter"><code>newNSet</code></em>
+ to the <em class="parameter"><code>nset</code></em>
+ using operation <em class="parameter"><code>op</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN16245"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16247"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetAdd.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to currrent nodes set (or NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to currrent nodes set (or NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNSet</p></td>
-<td><p>the pointer to new nodes set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNSet</p></td>
+<td class="parameter_description"><p>the pointer to new nodes set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>op</p></td>
-<td><p>the operation type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>op</p></td>
+<td class="parameter_description"><p>the operation type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN16268"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetAdd.returns"></a><h4>Returns</h4>
 <p> the pointer to combined nodes set or NULL if an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETADDLIST"></a><h3>xmlSecNodeSetAddList ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a>
-xmlSecNodeSetAddList (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                      <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> newNSet</code>,
-                      <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESETOP"><span class="TYPE">xmlSecNodeSetOp</span></a> op</code>);</pre>
-<p>Adds <code class="PARAMETER">newNSet</code>
- to the <code class="PARAMETER">nset</code>
- as child using operation <code class="PARAMETER">op</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetAddList"></a><h3>xmlSecNodeSetAddList ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+xmlSecNodeSetAddList (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> newNSet</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetOp" title="enum xmlSecNodeSetOp"><span class="type">xmlSecNodeSetOp</span></a> op</code></em>);</pre>
+<p>Adds <em class="parameter"><code>newNSet</code></em>
+ to the <em class="parameter"><code>nset</code></em>
+ as child using operation <em class="parameter"><code>op</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN16291"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16293"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetAddList.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to currrent nodes set (or NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to currrent nodes set (or NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNSet</p></td>
-<td><p>the pointer to new nodes set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNSet</p></td>
+<td class="parameter_description"><p>the pointer to new nodes set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>op</p></td>
-<td><p>the operation type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>op</p></td>
+<td class="parameter_description"><p>the operation type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN16314"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetAddList.returns"></a><h4>Returns</h4>
 <p> the pointer to combined nodes set or NULL if an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETGETCHILDREN"></a><h3>xmlSecNodeSetGetChildren ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="RETURNVALUE">xmlSecNodeSetPtr</span></a>
-xmlSecNodeSetGetChildren (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-                          <code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">int</span></font> withComments</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">int</span></font> invert</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNodeSetGetChildren"></a><h3>xmlSecNodeSetGetChildren ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecNodeSetPtr</span></font>
+xmlSecNodeSetGetChildren (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+                          <em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                          <em class="parameter"><code><font><span class="type">int</span></font> withComments</code></em>,
+                          <em class="parameter"><code><font><span class="type">int</span></font> invert</code></em>);</pre>
 <p>Creates a new nodes set that contains:</p>
-<p></p>
-<ul>
-<li><p>if <code class="PARAMETER">withComments</code>
- is not 0 and <code class="PARAMETER">invert</code>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>if <em class="parameter"><code>withComments</code></em>
+ is not 0 and <em class="parameter"><code>invert</code></em>
  is 0:
-all nodes in the <code class="PARAMETER">parent</code>
+all nodes in the <em class="parameter"><code>parent</code></em>
  subtree;</p></li>
-<li><p>if <code class="PARAMETER">withComments</code>
- is 0 and <code class="PARAMETER">invert</code>
+<li class="listitem"><p>if <em class="parameter"><code>withComments</code></em>
+ is 0 and <em class="parameter"><code>invert</code></em>
  is 0:
-all nodes in the <code class="PARAMETER">parent</code>
+all nodes in the <em class="parameter"><code>parent</code></em>
  subtree except comment nodes;</p></li>
-<li><p>if <code class="PARAMETER">withComments</code>
- is not 0 and <code class="PARAMETER">invert</code>
+<li class="listitem"><p>if <em class="parameter"><code>withComments</code></em>
+ is not 0 and <em class="parameter"><code>invert</code></em>
  not is 0:
-all nodes in the <code class="PARAMETER">doc</code>
- except nodes in the <code class="PARAMETER">parent</code>
+all nodes in the <em class="parameter"><code>doc</code></em>
+ except nodes in the <em class="parameter"><code>parent</code></em>
  subtree;</p></li>
-<li><p>if <code class="PARAMETER">withComments</code>
- is 0 and <code class="PARAMETER">invert</code>
+<li class="listitem"><p>if <em class="parameter"><code>withComments</code></em>
+ is 0 and <em class="parameter"><code>invert</code></em>
  is 0:
-all nodes in the <code class="PARAMETER">doc</code>
- except nodes in the <code class="PARAMETER">parent</code>
+all nodes in the <em class="parameter"><code>doc</code></em>
+ except nodes in the <em class="parameter"><code>parent</code></em>
  subtree
 and comment nodes.</p></li>
-</ul>
-<div class="REFSECT3">
-<a name="AEN16360"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16362"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+</ul></div>
+<div class="refsect3">
+<a name="xmlSecNodeSetGetChildren.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to an XML document.</p></td>
-<td> </td>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to an XML document.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to parent XML node or NULL if we want to include all document nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to parent XML node or NULL if we want to include all document nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>withComments</p></td>
-<td><p>the flag include  comments or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>withComments</p></td>
+<td class="parameter_description"><p>the flag include  comments or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>invert</p></td>
-<td><p>the "invert" flag.</p></td>
-<td> </td>
+<td class="parameter_name"><p>invert</p></td>
+<td class="parameter_description"><p>the "invert" flag.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16389"></a><h4>Returns</h4>
-<p> pointer to the newly created <a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSet</span></a> structure
+<div class="refsect3">
+<a name="xmlSecNodeSetGetChildren.returns"></a><h4>Returns</h4>
+<p> pointer to the newly created <a class="link" href="xmlsec-nodeset.html#xmlSecNodeSet" title="struct xmlSecNodeSet"><span class="type">xmlSecNodeSet</span></a> structure
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETWALK"></a><h3>xmlSecNodeSetWalk ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNodeSetWalk (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                   <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESETWALKCALLBACK"><span class="TYPE">xmlSecNodeSetWalkCallback</span></a> walkFunc</code>,
-                   <code class="PARAMETER"><font><span class="TYPE">void</span></font> *data</code>);</pre>
-<p>Calls the function <code class="PARAMETER">walkFunc</code>
- once per each node in the nodes set <code class="PARAMETER">nset</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetWalk"></a><h3>xmlSecNodeSetWalk ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNodeSetWalk (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                   <em class="parameter"><code><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetWalkCallback" title="xmlSecNodeSetWalkCallback ()"><span class="type">xmlSecNodeSetWalkCallback</span></a> walkFunc</code></em>,
+                   <em class="parameter"><code><font><span class="type">void</span></font> *data</code></em>);</pre>
+<p>Calls the function <em class="parameter"><code>walkFunc</code></em>
+ once per each node in the nodes set <em class="parameter"><code>nset</code></em>
 .
-If the <code class="PARAMETER">walkFunc</code>
+If the <em class="parameter"><code>walkFunc</code></em>
  returns a negative value, then the walk procedure
 is interrupted.</p>
-<div class="REFSECT3">
-<a name="AEN16414"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16416"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetWalk.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>walkFunc</p></td>
-<td><p>the callback functions.</p></td>
-<td> </td>
+<td class="parameter_name"><p>walkFunc</p></td>
+<td class="parameter_description"><p>the callback functions.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the application specific data passed to the <code class="PARAMETER">walkFunc</code>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the application specific data passed to the <em class="parameter"><code>walkFunc</code></em>
 .</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16438"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetWalk.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="XMLSECNODESETDUMPTEXTNODES"></a><h3>xmlSecNodeSetDumpTextNodes ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNodeSetDumpTextNodes (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlOutputBufferPtr</span></font> out</code>);</pre>
-<p>Dumps content of all the text nodes from <code class="PARAMETER">nset</code>
- to <code class="PARAMETER">out</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetDumpTextNodes"></a><h3>xmlSecNodeSetDumpTextNodes ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNodeSetDumpTextNodes (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlOutputBufferPtr</span></font> out</code></em>);</pre>
+<p>Dumps content of all the text nodes from <em class="parameter"><code>nset</code></em>
+ to <em class="parameter"><code>out</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN16457"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16459"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetDumpTextNodes.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>out</p></td>
-<td><p>the output buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>out</p></td>
+<td class="parameter_description"><p>the output buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16474"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeSetDumpTextNodes.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETDEBUGDUMP"></a><h3>xmlSecNodeSetDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecNodeSetDebugDump (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nset</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints information about <code class="PARAMETER">nset</code>
- to the <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecNodeSetDebugDump"></a><h3>xmlSecNodeSetDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecNodeSetDebugDump (<em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nset</code></em>,
+                        <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints information about <em class="parameter"><code>nset</code></em>
+ to the <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN16493"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16495"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>nset</p></td>
-<td><p>the pointer to node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nset</p></td>
+<td class="parameter_description"><p>the pointer to node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NODESET.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECNODESETTYPE"></a><h3>enum xmlSecNodeSetType</h3>
+<div class="refsect1">
+<a name="xmlsec-nodeset.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecNodeSetType"></a><h3>enum xmlSecNodeSetType</h3>
 <p>The basic nodes sets types.</p>
-<div class="REFSECT3">
-<a name="AEN16517"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16519"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetType.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecNodeSetNormal</p></td>
-<td><p>nodes set = nodes in the list.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetNormal"></a>xmlSecNodeSetNormal</p></td>
+<td class="enum_member_description">
+<p>nodes set = nodes in the list.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetInvert</p></td>
-<td><p>nodes set = all document nodes minus nodes in the list.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetInvert"></a>xmlSecNodeSetInvert</p></td>
+<td class="enum_member_description">
+<p>nodes set = all document nodes minus nodes in the list.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetTree</p></td>
-<td><p>nodes set = nodes in the list and all their subtress.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetTree"></a>xmlSecNodeSetTree</p></td>
+<td class="enum_member_description">
+<p>nodes set = nodes in the list and all their subtress.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetTreeWithoutComments</p></td>
-<td><p>nodes set = nodes in the list and
-                             all their subtress but no comment nodes.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetTreeWithoutComments"></a>xmlSecNodeSetTreeWithoutComments</p></td>
+<td class="enum_member_description">
+<p>nodes set = nodes in the list and
+                             all their subtress but no comment nodes.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetTreeInvert</p></td>
-<td><p>nodes set = all document nodes minus nodes in the
-                             list and all their subtress.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetTreeInvert"></a>xmlSecNodeSetTreeInvert</p></td>
+<td class="enum_member_description">
+<p>nodes set = all document nodes minus nodes in the
+                             list and all their subtress.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetTreeWithoutCommentsInvert</p></td>
-<td><p>nodes set = all document nodes
+<td class="enum_member_name"><p><a name="xmlSecNodeSetTreeWithoutCommentsInvert"></a>xmlSecNodeSetTreeWithoutCommentsInvert</p></td>
+<td class="enum_member_description">
+<p>nodes set = all document nodes
                              minus (nodes in the list and all their subtress
-                             plus all comment nodes).</p></td>
-<td> </td>
+                             plus all comment nodes).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetList</p></td>
-<td><p>nodes set = all nodes in the chidren list of nodes sets.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetList"></a>xmlSecNodeSetList</p></td>
+<td class="enum_member_description">
+<p>nodes set = all nodes in the chidren list of nodes sets.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESETOP"></a><h3>enum xmlSecNodeSetOp</h3>
+<div class="refsect2">
+<a name="xmlSecNodeSetOp"></a><h3>enum xmlSecNodeSetOp</h3>
 <p>The simple nodes sets operations.</p>
-<div class="REFSECT3">
-<a name="AEN16569"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16571"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSetOp.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecNodeSetIntersection</p></td>
-<td><p>intersection.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetIntersection"></a>xmlSecNodeSetIntersection</p></td>
+<td class="enum_member_description">
+<p>intersection.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetSubtraction</p></td>
-<td><p>subtraction.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetSubtraction"></a>xmlSecNodeSetSubtraction</p></td>
+<td class="enum_member_description">
+<p>subtraction.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecNodeSetUnion</p></td>
-<td><p>union.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecNodeSetUnion"></a>xmlSecNodeSetUnion</p></td>
+<td class="enum_member_description">
+<p>union.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNODESET"></a><h3>struct xmlSecNodeSet</h3>
-<pre class="PROGRAMLISTING">struct xmlSecNodeSet {
+<div class="refsect2">
+<a name="xmlSecNodeSet"></a><h3>struct xmlSecNodeSet</h3>
+<pre class="programlisting">struct xmlSecNodeSet {
     xmlNodeSetPtr       nodes;
     xmlDocPtr           doc;
     int                 destroyDoc;
@@ -801,71 +795,69 @@ xmlSecNodeSetDebugDump (<code class="PARAMETER"><a href="xmlsec-nodeset.html#XML
     xmlSecNodeSetPtr    next;
     xmlSecNodeSetPtr    prev;
     xmlSecNodeSetPtr    children;
-};</pre>
+};
+</pre>
 <p>The enchanced nodes set.</p>
-<div class="REFSECT3">
-<a name="AEN16598"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16600"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeSet.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlNodeSetPtr</span></font> <code class="STRUCTFIELD">nodes</code>;</p></td>
-<td><p>the nodes list.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.nodes"></a>nodes</code></em>;</p></td>
+<td class="struct_member_description"><p>the nodes list.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlDocPtr</span></font> <code class="STRUCTFIELD">doc</code>;</p></td>
-<td><p>the parent XML document.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlDocPtr</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.doc"></a>doc</code></em>;</p></td>
+<td class="struct_member_description"><p>the parent XML document.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">destroyDoc</code>;</p></td>
-<td><p>the flag: if set to 1 then <code class="PARAMETER">doc</code>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.destroyDoc"></a>destroyDoc</code></em>;</p></td>
+<td class="struct_member_description"><p>the flag: if set to 1 then <em class="parameter"><code>doc</code></em>
 will
 be destroyed when node set is destroyed.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESETTYPE"><span class="TYPE">xmlSecNodeSetType</span></a> <code class="STRUCTFIELD">type</code>;</p></td>
-<td><p>the nodes set type.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetType" title="enum xmlSecNodeSetType"><span class="type">xmlSecNodeSetType</span></a> <em class="structfield"><code><a name="xmlSecNodeSet.type"></a>type</code></em>;</p></td>
+<td class="struct_member_description"><p>the nodes set type.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESETOP"><span class="TYPE">xmlSecNodeSetOp</span></a> <code class="STRUCTFIELD">op</code>;</p></td>
-<td><p>the operation type.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetOp" title="enum xmlSecNodeSetOp"><span class="type">xmlSecNodeSetOp</span></a> <em class="structfield"><code><a name="xmlSecNodeSet.op"></a>op</code></em>;</p></td>
+<td class="struct_member_description"><p>the operation type.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> <code class="STRUCTFIELD">next</code>;</p></td>
-<td><p>the next nodes set.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.next"></a>next</code></em>;</p></td>
+<td class="struct_member_description"><p>the next nodes set.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> <code class="STRUCTFIELD">prev</code>;</p></td>
-<td><p>the previous nodes set.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.prev"></a>prev</code></em>;</p></td>
+<td class="struct_member_description"><p>the previous nodes set.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> <code class="STRUCTFIELD">children</code>;</p></td>
-<td><p>the children list (valid only if type
-equal to <a href="xmlsec-nodeset.html#XMLSECNODESETLIST"><span class="TYPE">xmlSecNodeSetList</span></a>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecNodeSet.children"></a>children</code></em>;</p></td>
+<td class="struct_member_description"><p>the children list (valid only if type
+equal to <a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetList"><span class="type">xmlSecNodeSetList</span></a>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-membuf.html"><b><<< membuf</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-parser.html"><b>parser >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-compiling-others.html b/docs/api/xmlsec-notes-compiling-others.html
index f97242d..2b6260a 100644
--- a/docs/api/xmlsec-notes-compiling-others.html
+++ b/docs/api/xmlsec-notes-compiling-others.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Compiling and linking on other systems.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<link rel="PREVIOUS" title="Compiling and linking on Windows." href="xmlsec-notes-compiling-windows.html">
-<link rel="NEXT" title="Initialization and shutdown." href="xmlsec-notes-init-shutdown.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Compiling and linking on other systems.: 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-notes-compiling.html" title="Building the application with XML Security Library.">
+<link rel="prev" href="xmlsec-notes-compiling-windows.html" title="Compiling and linking on Windows.">
+<link rel="next" href="xmlsec-notes-init-shutdown.html" title="Initialization and shutdown.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,15 +73,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-compiling-windows.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-compiling-windows.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-init-shutdown.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-COMPILING-OTHERS">Compiling and linking on other systems.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-compiling-others"></a>Compiling and linking on other systems.</h2></div></div></div>
 <p>Well, nothing is impossible, it's only software (you managed to 
 	compile the library itself, do you?). 
 	I'll be happy to include in this manual your expirience with
@@ -116,10 +90,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	on other platforms (if you would like to share it).
 	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-compiling-windows.html"><b><<< Compiling and linking on Windows.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-init-shutdown.html"><b>Initialization and shutdown. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-compiling-unix.html b/docs/api/xmlsec-notes-compiling-unix.html
index bd7d6be..ab5209a 100644
--- a/docs/api/xmlsec-notes-compiling-unix.html
+++ b/docs/api/xmlsec-notes-compiling-unix.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Compiling and linking on Unix.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<link rel="PREVIOUS" title="Include files." href="xmlsec-notes-include-files.html">
-<link rel="NEXT" title="Compiling and linking on Windows." href="xmlsec-notes-compiling-windows.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Compiling and linking on Unix.: 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-notes-compiling.html" title="Building the application with XML Security Library.">
+<link rel="prev" href="xmlsec-notes-include-files.html" title="Include files.">
+<link rel="next" href="xmlsec-notes-compiling-windows.html" title="Compiling and linking on Windows.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,60 +73,67 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-include-files.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-include-files.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-compiling-windows.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-COMPILING-UNIX">Compiling and linking on Unix.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-compiling-unix"></a>Compiling and linking on Unix.</h2></div></div></div>
 <p>There are several ways to get necessary compilation
 	and linking information on Unix and application can use
 	any of these methods to do crypto engine selection either
 	at linking or run time.
 	
 	</p>
-<p></p>
-<ul>
-<li>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
 <p>PKG_CHECK_MODULES() macro
 		</p>
-<div class="EXAMPLE">
-<a name="AEN70"></a><p><b>Example 2. Using PKG_CHECK_MODULES() macro in a configure.in file
+<div class="example">
+<a name="id-1.2.4.4.2.1.1.1.1"></a><p class="title"><b>Example 2. Using PKG_CHECK_MODULES() macro in a configure.in file
 		    to select crypto engine (openssl) at linking time.</b></p>
-<pre class="PROGRAMLISTING">dnl 
+<div class="example-contents"><pre class="programlisting">
+dnl 
 dnl Check for xmlsec and friends
 dnl
 PKG_CHECK_MODULES(XMLSEC, xmlsec1-openssl >= 1.0.0 xml2 libxslt,,exit)
 CFLAGS="$CFLAGS $XMLSEC_CFLAGS"
 CPPFLAGS="$CPPFLAGS $XMLSEC_CFLAGS"
 LDFLAGS="$LDFLAGS $XMLSEC_LIBS"
-		    </pre>
+		    </pre></div>
 </div>
+<p><br class="example-break">
 
-		<div class="EXAMPLE">
-<a name="AEN73"></a><p><b>Example 3. Using PKG_CHECK_MODULES() macro in a configure.in file
+		</p>
+<div class="example">
+<a name="id-1.2.4.4.2.1.1.1.2"></a><p class="title"><b>Example 3. Using PKG_CHECK_MODULES() macro in a configure.in file
 		    to enable dynamical loading of xmlsec-crypto library.</b></p>
-<pre class="PROGRAMLISTING">dnl 
+<div class="example-contents"><pre class="programlisting">
+dnl 
 dnl Check for xmlsec and friends
 dnl
 PKG_CHECK_MODULES(XMLSEC, xmlsec1 >= 1.0.0 xml2 libxslt,,exit)
 CFLAGS="$CFLAGS $XMLSEC_CFLAGS"
 CPPFLAGS="$CPPFLAGS $XMLSEC_CFLAGS"
 LDFLAGS="$LDFLAGS $XMLSEC_LIBS"
-		    </pre>
+		    </pre></div>
 </div>
+<p><br class="example-break">
 
-	    </li>
-<li>
+	    </p>
+</li>
+<li class="listitem">
 <p>pkg-config script
 		</p>
-<div class="EXAMPLE">
-<a name="AEN78"></a><p><b>Example 4. Using pkg-config script in a Makefile
+<div class="example">
+<a name="id-1.2.4.4.2.1.2.1.1"></a><p class="title"><b>Example 4. Using pkg-config script in a Makefile
 		    to select crypto engine (nss) at linking time.</b></p>
-<pre class="PROGRAMLISTING">PROGRAM = test
+<div class="example-contents"><pre class="programlisting">
+PROGRAM = test
 PROGRAM_FILES = test.c
 
 CFLAGS	+= -g $(shell pkg-config --cflags xmlsec1-nss)
@@ -167,14 +147,17 @@ all: $(PROGRAM)
 
 clean:
 	@rm -rf $(PROGRAM)
-		    </pre>
+		    </pre></div>
 </div>
+<p><br class="example-break">
 
 
-		<div class="EXAMPLE">
-<a name="AEN81"></a><p><b>Example 5. Using pkg-config script in a Makefile
+		</p>
+<div class="example">
+<a name="id-1.2.4.4.2.1.2.1.2"></a><p class="title"><b>Example 5. Using pkg-config script in a Makefile
 		    to enable dynamical loading of xmlsec-crypto library.</b></p>
-<pre class="PROGRAMLISTING">PROGRAM = test
+<div class="example-contents"><pre class="programlisting">
+PROGRAM = test
 PROGRAM_FILES = test.c
 
 CFLAGS	+= -g $(shell pkg-config --cflags xmlsec1)
@@ -188,17 +171,20 @@ all: $(PROGRAM)
 
 clean:
 	@rm -rf $(PROGRAM)
-		    </pre>
+		    </pre></div>
 </div>
+<p><br class="example-break">
 
-	    </li>
-<li>
+	    </p>
+</li>
+<li class="listitem">
 <p>xmlsec1-config script
 		</p>
-<div class="EXAMPLE">
-<a name="AEN86"></a><p><b>Example 6. Using xmlsec1-config script in a Makefile
+<div class="example">
+<a name="id-1.2.4.4.2.1.3.1.1"></a><p class="title"><b>Example 6. Using xmlsec1-config script in a Makefile
 		    to select crypto engine (e.g. gnutls) at linking time.</b></p>
-<pre class="PROGRAMLISTING">PROGRAM = test
+<div class="example-contents"><pre class="programlisting">
+PROGRAM = test
 PROGRAM_FILES = test.c
 
 CFLAGS	+= -g $(shell xmlsec1-config --crypto gnutls --cflags)
@@ -212,13 +198,16 @@ all: $(PROGRAM)
 
 clean:
 	@rm -rf $(PROGRAM)
-		    </pre>
+		    </pre></div>
 </div>
+<p><br class="example-break">
 
-		<div class="EXAMPLE">
-<a name="AEN89"></a><p><b>Example 7. Using xmlsec1-config script in a Makefile
+		</p>
+<div class="example">
+<a name="id-1.2.4.4.2.1.3.1.2"></a><p class="title"><b>Example 7. Using xmlsec1-config script in a Makefile
 		    to enable dynamical loading of xmlsec-crypto library.</b></p>
-<pre class="PROGRAMLISTING">PROGRAM = test
+<div class="example-contents"><pre class="programlisting">
+PROGRAM = test
 PROGRAM_FILES = test.c
 
 CFLAGS	+= -g $(shell xmlsec1-config --cflags)
@@ -232,15 +221,17 @@ all: $(PROGRAM)
 
 clean:
 	@rm -rf $(PROGRAM)
-		    </pre>
+		    </pre></div>
 </div>
-		</li>
-</ul>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-include-files.html"><b><<< Include files.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-compiling-windows.html"><b>Compiling and linking on Windows. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+		</p>
+</li>
+</ul></div>
+<p>
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-compiling-windows.html b/docs/api/xmlsec-notes-compiling-windows.html
index 2a3c46f..51a94ab 100644
--- a/docs/api/xmlsec-notes-compiling-windows.html
+++ b/docs/api/xmlsec-notes-compiling-windows.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Compiling and linking on Windows.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<link rel="PREVIOUS" title="Compiling and linking on Unix." href="xmlsec-notes-compiling-unix.html">
-<link rel="NEXT" title="Compiling and linking on other systems." href="xmlsec-notes-compiling-others.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Compiling and linking on Windows.: 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-notes-compiling.html" title="Building the application with XML Security Library.">
+<link rel="prev" href="xmlsec-notes-compiling-unix.html" title="Compiling and linking on Unix.">
+<link rel="next" href="xmlsec-notes-compiling-others.html" title="Compiling and linking on other systems.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,62 +73,62 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-compiling-unix.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-compiling-unix.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-compiling-others.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-COMPILING-WINDOWS">Compiling and linking on Windows.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-compiling-windows"></a>Compiling and linking on Windows.</h2></div></div></div>
 <p>On Windows there is no such simple and elegant solution.
-	Please check <tt class="FILENAME">README</tt> file in <tt class="FILENAME">win32</tt>
+	Please check <code class="filename">README</code> file in <code class="filename">win32</code>
 	folder of the library package for latest instructions.
 	However, there are few general things, that you need to remember:
 	</p>
-<p></p>
-<ul>
-<li><p>	
-	     <span class="emphasis"><i class="EMPHASIS">All libraries linked to your application must be compiled
-	    with the same Microsoft Runtime Libraries.</i></span>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>	
+	     <span class="emphasis"><em>All libraries linked to your application must be compiled
+	    with the same Microsoft Runtime Libraries.</em></span>
 	    </p></li>
-<li>
+<li class="listitem">
 <p>	
-	     <span class="emphasis"><i class="EMPHASIS">Static linking with XML Security Library requires 
-	     additional global defines:</i></span>
+	     <span class="emphasis"><em>Static linking with XML Security Library requires 
+	     additional global defines:</em></span>
 	      </p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN104"></a><pre class="PROGRAMLISTING">#define LIBXML_STATIC
+<div class="informalexample"><pre class="programlisting">
+#define LIBXML_STATIC
 #define LIBXSLT_STATIC
 #define XMLSEC_STATIC	    
-	     </pre>
-<p></p>
-</div>
-	    </li>
-<li><p>	    If you do not want to dynamicaly load xmlsec-crypto library
+	     </pre></div>
+<p>
+	    </p>
+</li>
+<li class="listitem"><p>
+	    If you do not want to dynamicaly load xmlsec-crypto library
 	    and prefer to select crypto engine at linking then you should
 	    link your application with xmlsec and at least one of 
 	    xmlsec-crypto libraries.
 	    </p></li>
-<li>
-<p>	    In order to enable dynamic loading for xmlsec-crypto library
+<li class="listitem">
+<p>
+	    In order to enable dynamic loading for xmlsec-crypto library
 	    you should add additional global define:
 	      </p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN110"></a><pre class="PROGRAMLISTING">#define XMLSEC_CRYPTO_DYNAMIC_LOADING
-	     </pre>
-<p></p>
-</div>	    
-	    </li>
-</ul>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-compiling-unix.html"><b><<< Compiling and linking on Unix.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-compiling-others.html"><b>Compiling and linking on other systems. >>></b></a></td>
-</tr></table>
+<div class="informalexample"><pre class="programlisting">
+#define XMLSEC_CRYPTO_DYNAMIC_LOADING
+	     </pre></div>
+<p>	    
+	    </p>
+</li>
+</ul></div>
+<p>
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-compiling.html b/docs/api/xmlsec-notes-compiling.html
index 6f1ed9a..68a4e3f 100644
--- a/docs/api/xmlsec-notes-compiling.html
+++ b/docs/api/xmlsec-notes-compiling.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Building the application with XML Security Library.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="XML Security Library Structure." href="xmlsec-notes-structure.html">
-<link rel="NEXT" title="Include files." href="xmlsec-notes-include-files.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Building the application with XML Security Library.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-structure.html" title="XML Security Library Structure.">
+<link rel="next" href="xmlsec-notes-include-files.html" title="Include files.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,26 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-structure.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-structure.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-include-files.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-COMPILING"></a>Building the application with XML Security Library.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-compiling.html#XMLSEC-NOTES-COMPILING-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-include-files.html">Include files.</a></dt>
-<dt><a href="xmlsec-notes-compiling-unix.html">Compiling and linking on Unix.</a></dt>
-<dt><a href="xmlsec-notes-compiling-windows.html">Compiling and linking on Windows.</a></dt>
-<dt><a href="xmlsec-notes-compiling-others.html">Compiling and linking on other systems.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-compiling"></a>Building the application with XML Security Library.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-compiling.html#xmlsec-notes-compiling-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-include-files.html">Include files.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-unix.html">Compiling and linking on Unix.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-windows.html">Compiling and linking on Windows.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-others.html">Compiling and linking on other systems.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-COMPILING-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-compiling-overview"></a>Overview.</h2></div></div></div>
 <p>Compiling and linking application with XML Security
 	Library requires specifying correct compilation flags, library files 
         and paths to include and library files. As we discussed before, 
@@ -131,10 +104,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-structure.html"><b><<< XML Security Library Structure.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-include-files.html"><b>Include files. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-contexts.html b/docs/api/xmlsec-notes-contexts.html
index 85a0801..b5601aa 100644
--- a/docs/api/xmlsec-notes-contexts.html
+++ b/docs/api/xmlsec-notes-contexts.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Using context objects.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Transforms and transforms chain." href="xmlsec-notes-transforms.html">
-<link rel="NEXT" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Using context objects.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-transforms.html" title="Transforms and transforms chain.">
+<link rel="next" href="xmlsec-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,16 +73,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-CONTEXTS"></a>Using context objects.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-contexts"></a>Using context objects.</h2></div></div></div>
 <p>The great flexibility of XML Digital Signature and XML Encryption
     specification is one of the most interesting and in the same time,
     most dangerouse feature for an application developer.
@@ -125,19 +98,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     enable or disable particular features, return the result
     data and the information collected during the processing.
     Also all the context objects defined in XML Security library have 
-    a special <code class="STRUCTFIELD">userData</code> member which could 
+    a special <em class="structfield"><code>userData</code></em> member which could 
     be used by application to pass application specific data around.
     XML Security Library never use this field.
     The application creates a new 
-    <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>
-    or <a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a> object for each 
+    <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a>
+    or <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a> object for each 
     operation, sets necessary options and consumes result returned
     in the context after signature, verification, encryption or decryption.
     </p>
-<p>	</p>
-<div class="EXAMPLE">
-<a name="AEN489"></a><p><b>Example 1. SAML signature validation.</b></p>
-<pre class="PROGRAMLISTING">/** 
+<p>
+	</p>
+<div class="example">
+<a name="id-1.2.13.3.1"></a><p class="title"><b>Example 24. SAML signature validation.</b></p>
+<div class="example-contents"><pre class="programlisting">
+/** 
  * verify_file:
  * @mngr:		the pointer to keys manager.
  * @xml_file:		the signed XML file name.
@@ -240,13 +215,13 @@ done:
     return(res);
 }
 
-	    </pre>
+	    </pre></div>
 </div>
-    </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-transforms.html"><b><<< Transforms and transforms chain.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto.html"><b>Adding support for new cryptographic library. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+    </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-custom-keys-store.html b/docs/api/xmlsec-notes-custom-keys-store.html
index b12dd6c..8294a29 100644
--- a/docs/api/xmlsec-notes-custom-keys-store.html
+++ b/docs/api/xmlsec-notes-custom-keys-store.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Implementing a custom keys store.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<link rel="PREVIOUS" title="Using keys manager for verification/decryption." href="xmlsec-notes-keys-mngr-verify-decrypt.html">
-<link rel="NEXT" title="Using X509 Certificates." href="xmlsec-notes-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Implementing a custom keys store.: 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-notes-keysmngr.html" title="Keys manager.">
+<link rel="prev" href="xmlsec-notes-keys-mngr-verify-decrypt.html" title="Using keys manager for verification/decryption.">
+<link rel="next" href="xmlsec-notes-x509.html" title="Using X509 Certificates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,24 +73,28 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-keys-mngr-verify-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-keys-mngr-verify-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-CUSTOM-KEYS-STORE">Implementing a custom keys store.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-custom-keys-store"></a>Implementing a custom keys store.</h2></div></div></div>
 <p>In many cases, a default built-in list based keys store
 	is not good enough. For example, XML Security Library (and 
 	the built-in default keys store) have no synchronization and 
 	you'll need to implement a custom keys store if you want to 
 	add or remove keys while other threads use the store.</p>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN400"></a><p><b>Example 4. Creating a custom keys manager.</b></p>
-<pre class="PROGRAMLISTING">/**
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.10.6.3.1"></a><p class="title"><b>Example 19. Creating a custom keys manager.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * create_files_keys_mngr:
  *  
  * Creates a files based keys manager: we assume that key name is 
@@ -261,13 +238,14 @@ files_keys_store_find_key(xmlSecKeyStorePtr store, const xmlChar* name, xmlSecKe
     return(key);
 }
 		</pre>
-<p><a href="xmlsec-custom-keys-manager.html#XMLSEC-EXAMPLE-DECRYPT3">Full program listing</a></p>
+<p><a class="link" href="xmlsec-custom-keys-manager.html#xmlsec-example-decrypt3" title="decrypt3.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-keys-mngr-verify-decrypt.html"><b><<< Using keys manager for verification/decryption.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-x509.html"><b>Using X509 Certificates. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-decrypt.html b/docs/api/xmlsec-notes-decrypt.html
index 5298c6b..9084835 100644
--- a/docs/api/xmlsec-notes-decrypt.html
+++ b/docs/api/xmlsec-notes-decrypt.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Decrypting an encrypted document</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Verifing and decrypting documents." href="xmlsec-notes-verify-decrypt.html">
-<link rel="PREVIOUS" title="Verifying a signed document" href="xmlsec-notes-verify.html">
-<link rel="NEXT" title="Keys." href="xmlsec-notes-keys.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Decrypting an encrypted document: 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-notes-verify-decrypt.html" title="Verifing and decrypting documents.">
+<link rel="prev" href="xmlsec-notes-verify.html" title="Verifying a signed document">
+<link rel="next" href="xmlsec-notes-keys.html" title="Keys.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,43 +73,54 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-verify.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-verify-decrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-verify-decrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-verify.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-keys.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-DECRYPT">Decrypting an encrypted document</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-decrypt"></a>Decrypting an encrypted document</h2></div></div></div>
 <p>The typical decryption process includes following steps:
 	  </p>
-<p></p>
-<ul>
-<li><p>		Load keys, X509 certificates, etc. in the <a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">keys manager</a> .
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+		Load keys, X509 certificates, etc. in the <a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">keys manager</a> .
 	    </p></li>
-<li><p>		Create encryption context <a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a>
-		using <a href="xmlsec-xmlenc.html#XMLSECENCCTXCREATE">xmlSecEncCtxCreate</a> or
-		<a href="xmlsec-xmlenc.html#XMLSECENCCTXINITIALIZE">xmlSecEncCtxInitialize</a>
+<li class="listitem"><p>
+		Create encryption context <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a>
+		using <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()">xmlSecEncCtxCreate</a> or
+		<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxInitialize" title="xmlSecEncCtxInitialize ()">xmlSecEncCtxInitialize</a>
 		functions.
 	    </p></li>
-<li><p>		Select start decryption <enc:EncryptedData> node.
+<li class="listitem"><p>
+		Select start decryption <enc:EncryptedData> node.
 	    </p></li>
-<li><p>		Decrypt by calling <a href="xmlsec-xmlenc.html#XMLSECENCCTXDECRYPT">xmlSecencCtxDecrypt</a> 
+<li class="listitem"><p>
+		Decrypt by calling <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecrypt" title="xmlSecEncCtxDecrypt ()">xmlSecencCtxDecrypt</a> 
 		function.
 	    </p></li>
-<li><p>		Check returned value and if necessary consume encrypted data.
+<li class="listitem"><p>
+		Check returned value and if necessary consume encrypted data.
 	    </p></li>
-<li><p>		Destroy encryption context <a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a>
-		using <a href="xmlsec-xmlenc.html#XMLSECENCCTXDESTROY">xmlSecEncCtxDestroy</a> or
-		<a href="xmlsec-xmlenc.html#XMLSECENCCTXFINALIZE">xmlSecEncCtxFinalize</a>
+<li class="listitem"><p>
+		Destroy encryption context <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a>
+		using <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()">xmlSecEncCtxDestroy</a> or
+		<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()">xmlSecEncCtxFinalize</a>
 		functions.
 	    </p></li>
-</ul>
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN333"></a><p><b>Example 2. Decrypting a document.</b></p>
-<pre class="PROGRAMLISTING">int 
+</ul></div>
+<p>
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.8.4.3.1"></a><p class="title"><b>Example 15. Decrypting a document.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+int 
 decrypt_file(const char* enc_file, const char* key_file) {
     xmlDocPtr doc = NULL;
     xmlNodePtr node = NULL;
@@ -216,13 +200,14 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-decrypt-with-signle-key.html#XMLSEC-EXAMPLE-DECRYPT1">Full Program Listing</a></p>
+<p><a class="link" href="xmlsec-decrypt-with-signle-key.html#xmlsec-example-decrypt1" title="decrypt1.c">Full Program Listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-verify.html"><b><<< Verifying a signed document</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-keys.html"><b>Keys. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-dynamic-encryption-templates.html b/docs/api/xmlsec-notes-dynamic-encryption-templates.html
index a1ca1de..b149cae 100644
--- a/docs/api/xmlsec-notes-dynamic-encryption-templates.html
+++ b/docs/api/xmlsec-notes-dynamic-encryption-templates.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Creating dynamic encryption templates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Creating dynamic templates." href="xmlsec-notes-templates.html">
-<link rel="PREVIOUS" title="Creating dynamic signature templates." href="xmlsec-notes-dynamic-signature-templates.html">
-<link rel="NEXT" title="Verifing and decrypting documents." href="xmlsec-notes-verify-decrypt.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Creating dynamic encryption templates.: 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-notes-templates.html" title="Creating dynamic templates.">
+<link rel="prev" href="xmlsec-notes-dynamic-signature-templates.html" title="Creating dynamic signature templates.">
+<link rel="next" href="xmlsec-notes-verify-decrypt.html" title="Verifing and decrypting documents.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,28 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-dynamic-signature-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-templates.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-templates.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-dynamic-signature-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-verify-decrypt.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-DYNAMIC-ENCRYPTION-TEMPLATES">Creating dynamic encryption templates.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-dynamic-encryption-templates"></a>Creating dynamic encryption templates.</h2></div></div></div>
 <p>The encryption template has structure similar 
 	to the XML Encryption structure as it is described in 
-	<a href="http://www.w3.org/TR/xmlenc-core" target="_top">specification</a>.
+	<a class="ulink" href="" target="_top">specification</a>.
 	The only difference is that some nodes (for example,
 	<enc:CipherValue/>)
 	are empty. The XML Security Library sets the content of these
 	nodes after doing necessary calculations.
 	</p>
-<div class="FIGURE">
-<a name="AEN256"></a><p><b>Figure 2. XML Encryption structure</b></p>
-<pre class="PROGRAMLISTING"><enc:EncryptedData Id? Type? MimeType? Encoding?>
+<div class="figure">
+<a name="id-1.2.7.4.3"></a><p class="title"><b>Figure 4. XML Encryption structure</b></p>
+<div class="figure-contents"><pre class="programlisting">
+<enc:EncryptedData Id? Type? MimeType? Encoding?>
     <enc:EncryptionMethod Algorithm />?
     (<dsig:KeyInfo>
 	<dsig:KeyName>?
@@ -139,12 +114,15 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     </enc:CipherData>
     <enc:EncryptionProperties>?
 </enc:EncryptedData>	
-	    </pre>
+	    </pre></div>
 </div>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN260"></a><p><b>Example 2. Creating dynamic encrytion template.</b></p>
-<pre class="PROGRAMLISTING">/**
+<br class="figure-break"><p>
+	     </p>
+<div class="example">
+<a name="id-1.2.7.4.4.1"></a><p class="title"><b>Example 13. Creating dynamic encrytion template.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * encrypt_file:
  * @xml_file:		the encryption template file name.
  * @key_file:		the Triple DES key file.
@@ -251,13 +229,14 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-encrypt-dynamic-template.html#XMLSEC-EXAMPLE-ENCRYPT2">Full program listing</a></p>
+<p><a class="link" href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2" title="encrypt2.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-dynamic-signature-templates.html"><b><<< Creating dynamic signature templates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-verify-decrypt.html"><b>Verifing and decrypting documents. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-dynamic-signature-templates.html b/docs/api/xmlsec-notes-dynamic-signature-templates.html
index b01f735..c3eeba3 100644
--- a/docs/api/xmlsec-notes-dynamic-signature-templates.html
+++ b/docs/api/xmlsec-notes-dynamic-signature-templates.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Creating dynamic signature templates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Creating dynamic templates." href="xmlsec-notes-templates.html">
-<link rel="PREVIOUS" title="Creating dynamic templates." href="xmlsec-notes-templates.html">
-<link rel="NEXT" title="Creating dynamic encryption templates." href="xmlsec-notes-dynamic-encryption-templates.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Creating dynamic signature templates.: 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-notes-templates.html" title="Creating dynamic templates.">
+<link rel="prev" href="xmlsec-notes-templates.html" title="Creating dynamic templates.">
+<link rel="next" href="xmlsec-notes-dynamic-encryption-templates.html" title="Creating dynamic encryption templates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,28 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-templates.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-templates.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-dynamic-encryption-templates.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-DYNAMIC-SIGNATURE-TEMPLATES">Creating dynamic signature templates.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-dynamic-signature-templates"></a>Creating dynamic signature templates.</h2></div></div></div>
 <p>The signature template has structure similar 
 	to the XML Digital Signature structure as it is described in 
-	<a href="http://www.w3.org/TR/xmldsig-core" target="_top">specification</a>.
+	<a class="ulink" href="" target="_top">specification</a>.
 	The only difference is that some nodes (for example,
 	<dsig:DigestValue/> or <SignatureValue/>)
 	are empty. The XML Security Library sets the content of these
 	nodes after doing necessary calculations.
 	</p>
-<div class="FIGURE">
-<a name="AEN243"></a><p><b>Figure 1. XML Digital Signature structure</b></p>
-<pre class="PROGRAMLISTING"><dsig:Signature ID?> 
+<div class="figure">
+<a name="id-1.2.7.3.3"></a><p class="title"><b>Figure 3. XML Digital Signature structure</b></p>
+<div class="figure-contents"><pre class="programlisting">
+<dsig:Signature ID?> 
     <dsig:SignedInfo>
         <dsig:CanonicalizationMethod Algorithm />
         <dsig:SignatureMethod Algorithm />
@@ -146,12 +121,15 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     </dsig:KeyInfo>)?
     (<dsig:Object ID?>)*
 </dsig:Signature>
-	    </pre>
+	    </pre></div>
 </div>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN247"></a><p><b>Example 1. Creating dynamic signature template.</b></p>
-<pre class="PROGRAMLISTING">/** 
+<br class="figure-break"><p>
+	     </p>
+<div class="example">
+<a name="id-1.2.7.3.4.1"></a><p class="title"><b>Example 12. Creating dynamic signature template.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/** 
  * sign_file:
  * @xml_file:		the XML file name.
  * @key_file:		the PEM private key file name.
@@ -261,13 +239,14 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-examples-sign-dynamimc-template.html#XMLSEC-EXAMPLE-SIGN2">Full program listing</a></p>
+<p><a class="link" href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2" title="sign2.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-templates.html"><b><<< Creating dynamic templates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-dynamic-encryption-templates.html"><b>Creating dynamic encryption templates. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-encrypt.html b/docs/api/xmlsec-notes-encrypt.html
index 56d12eb..72ae657 100644
--- a/docs/api/xmlsec-notes-encrypt.html
+++ b/docs/api/xmlsec-notes-encrypt.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Encrypting data.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Signing and encrypting documents." href="xmlsec-notes-sign-encrypt.html">
-<link rel="PREVIOUS" title="Signing a document." href="xmlsec-notes-sign.html">
-<link rel="NEXT" title="Creating dynamic templates." href="xmlsec-notes-templates.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Encrypting data.: 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-notes-sign-encrypt.html" title="Signing and encrypting documents.">
+<link rel="prev" href="xmlsec-notes-sign.html" title="Signing a document.">
+<link rel="next" href="xmlsec-notes-templates.html" title="Creating dynamic templates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,59 +73,75 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-sign.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-sign-encrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-sign-encrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-sign.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-templates.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-ENCRYPT">Encrypting data.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-encrypt"></a>Encrypting data.</h2></div></div></div>
 <p>The typical encryption process includes following steps:
 	  </p>
-<p></p>
-<ul>
-<li><p>		Prepare data for encryption.
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+		Prepare data for encryption.
 	    </p></li>
-<li><p>		Create or load encryption template and select start
+<li class="listitem"><p>
+		Create or load encryption template and select start
 		<enc:EncryptedData/> node.
 	    </p></li>
-<li><p>		Create encryption context <a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a>
-		using <a href="xmlsec-xmlenc.html#XMLSECENCCTXCREATE">xmlSecEncCtxCreate</a> or
-		<a href="xmlsec-xmlenc.html#XMLSECENCCTXINITIALIZE">xmlSecEncCtxInitialize</a>
+<li class="listitem"><p>
+		Create encryption context <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a>
+		using <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()">xmlSecEncCtxCreate</a> or
+		<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxInitialize" title="xmlSecEncCtxInitialize ()">xmlSecEncCtxInitialize</a>
 		functions.
 	    </p></li>
-<li><p>		Load encryption key in <a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">keys manager</a> 
+<li class="listitem"><p>
+		Load encryption key in <a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">keys manager</a> 
 		or generate a session key and set it in the encryption context
-		(<code class="STRUCTFIELD">encKey</code> member of 
-		<a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a> structure).
+		(<em class="structfield"><code>encKey</code></em> member of 
+		<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a> structure).
 	    </p></li>
-<li>
-<p>		Encrypt data by calling one of the following functions:
+<li class="listitem">
+<p>
+		Encrypt data by calling one of the following functions:
 		</p>
-<p></p>
-<ul>
-<li><p>			<a href="xmlsec-xmlenc.html#XMLSECENCCTXBINARYENCRYPT">xmlSecEncCtxBinaryEncrypt</a>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
+<li class="listitem"><p>
+			<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxBinaryEncrypt" title="xmlSecEncCtxBinaryEncrypt ()">xmlSecEncCtxBinaryEncrypt</a>
 		    </p></li>
-<li><p>			<a href="xmlsec-xmlenc.html#XMLSECENCCTXXMLENCRYPT">xmlSecEncCtxXmlEncrypt</a>
+<li class="listitem"><p>
+			<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxXmlEncrypt" title="xmlSecEncCtxXmlEncrypt ()">xmlSecEncCtxXmlEncrypt</a>
 		    </p></li>
-<li><p>			<a href="xmlsec-xmlenc.html#XMLSECENCCTXURIENCRYPT">xmlSecEncCtxUriEncrypt</a>
+<li class="listitem"><p>
+			<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxUriEncrypt" title="xmlSecEncCtxUriEncrypt ()">xmlSecEncCtxUriEncrypt</a>
 		    </p></li>
-</ul>
-	    </li>
-<li><p>		Check returned value and if necessary consume encrypted data.
+</ul></div>
+<p>
+	    </p>
+</li>
+<li class="listitem"><p>
+		Check returned value and if necessary consume encrypted data.
 	    </p></li>
-<li><p>		Destroy encryption context <a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a>
-		using <a href="xmlsec-xmlenc.html#XMLSECENCCTXDESTROY">xmlSecEncCtxDestroy</a> or
-		<a href="xmlsec-xmlenc.html#XMLSECENCCTXFINALIZE">xmlSecEncCtxFinalize</a>
+<li class="listitem"><p>
+		Destroy encryption context <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a>
+		using <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()">xmlSecEncCtxDestroy</a> or
+		<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()">xmlSecEncCtxFinalize</a>
 		functions.
 	    </p></li>
-</ul>
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN227"></a><p><b>Example 2. Encrypting binary data with a template.</b></p>
-<pre class="PROGRAMLISTING">/**
+</ul></div>
+<p>
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.6.4.3.1"></a><p class="title"><b>Example 11. Encrypting binary data with a template.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * encrypt_file:
  * @tmpl_file:		the encryption template file name.
  * @key_file:		the Triple DES key file.
@@ -233,14 +222,15 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-encrypt-template-file.html#XMLSEC-EXAMPLE-ENCRYPT1">Full program listing</a></p>
-<p><a href="xmlsec-encrypt-template-file.html#XMLSEC-EXAMPLE-ENCRYPT1-TMPL">Simple encryption template file</a></p>
+<p><a class="link" href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1" title="encrypt1.c">Full program listing</a></p>
+<p><a class="link" href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-tmpl" title="encrypt1-tmpl.xml">Simple encryption template file</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-sign.html"><b><<< Signing a document.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-templates.html"><b>Creating dynamic templates. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-include-files.html b/docs/api/xmlsec-notes-include-files.html
index 09928b6..cadf3bb 100644
--- a/docs/api/xmlsec-notes-include-files.html
+++ b/docs/api/xmlsec-notes-include-files.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Include files.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<link rel="PREVIOUS" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<link rel="NEXT" title="Compiling and linking on Unix." href="xmlsec-notes-compiling-unix.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Include files.: 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-notes-compiling.html" title="Building the application with XML Security Library.">
+<link rel="prev" href="xmlsec-notes-compiling.html" title="Building the application with XML Security Library.">
+<link rel="next" href="xmlsec-notes-compiling-unix.html" title="Compiling and linking on Unix.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,45 +73,49 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-compiling.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-compiling.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-compiling.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-compiling-unix.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-INCLUDE-FILES">Include files.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-include-files"></a>Include files.</h2></div></div></div>
 <p>In order to use XML Security Library an application should include 
 	one or more of the following files:
 	</p>
-<p></p>
-<ul>
-<li><p><a href="xmlsec-xmlsec.html">xmlsec/xmlsec.h</a> -
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p><font>xmlsec/xmlsec.h</font> -
 		XML Security Library initialization and shutdown functions;
 		</p></li>
-<li><p><a href="xmlsec-xmldsig.html">xmlsec/xmldsig.h</a> - 
+<li class="listitem"><p><font>xmlsec/xmldsig.h</font> - 
 		XML Digital Signature functions;</p></li>
-<li><p><a href="xmlsec-xmlenc.html">xmlsec/xmlenc.h</a> - 
+<li class="listitem"><p><font>xmlsec/xmlenc.h</font> - 
 		XML Encryption functions;</p></li>
-<li><p><a href="xmlsec-xmltree.html">xmlsec/xmltree.h</a> -
+<li class="listitem"><p><font>xmlsec/xmltree.h</font> -
 		helper functions for XML documents manipulation;
 		</p></li>
-<li><p><a href="xmlsec-templates.html">xmlsec/templates.h</a> -
+<li class="listitem"><p><font>xmlsec/templates.h</font> -
 		helper functions for dynamic XML Digital Signature and 
 		XML Encryption templates creation;
 		</p></li>
-<li><p><font>xmlsec/crypto.h</font> -
+<li class="listitem"><p><font>xmlsec/crypto.h</font> -
 		automatic XML Security Crypto Library selection.
 		</p></li>
-</ul>
-	<p>If necessary, the application should also include LibXML, 
+</ul></div>
+<p>
+	</p>
+<p>If necessary, the application should also include LibXML, 
 	LibXSLT and crypto library header files.
 	</p>
-<p>	</p>
-<div class="EXAMPLE">
-<a name="AEN61"></a><p><b>Example 1. Example includes file section.</b></p>
-<pre class="PROGRAMLISTING">#include <libxml/tree.h>
+<p>
+	</p>
+<div class="example">
+<a name="id-1.2.4.3.4.1"></a><p class="title"><b>Example 1. Example includes file section.</b></p>
+<div class="example-contents"><pre class="programlisting">
+#include <libxml/tree.h>
 #include <libxml/xmlmemory.h>
 #include <libxml/parser.h>
 
@@ -152,13 +129,13 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 #include <xmlsec/xmlenc.h>
 #include <xmlsec/templates.h>
 #include <xmlsec/crypto.h>
-	    </pre>
+	    </pre></div>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-compiling.html"><b><<< Building the application with XML Security Library.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-compiling-unix.html"><b>Compiling and linking on Unix. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-init-shutdown.html b/docs/api/xmlsec-notes-init-shutdown.html
index fe65905..9bd433a 100644
--- a/docs/api/xmlsec-notes-init-shutdown.html
+++ b/docs/api/xmlsec-notes-init-shutdown.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Initialization and shutdown.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Compiling and linking on other systems." href="xmlsec-notes-compiling-others.html">
-<link rel="NEXT" title="Signing and encrypting documents." href="xmlsec-notes-sign-encrypt.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Initialization and shutdown.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-compiling-others.html" title="Compiling and linking on other systems.">
+<link rel="next" href="xmlsec-notes-sign-encrypt.html" title="Signing and encrypting documents.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,47 +73,50 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-compiling-others.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-compiling-others.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-sign-encrypt.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-INIT-SHUTDOWN"></a>Initialization and shutdown.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-init-shutdown"></a>Initialization and shutdown.</h2></div></div></div>
 <p>XML Security Library initialization/shutdown 
 	process includes initialization and shutdown of the
 	dependent libraries:
 	</p>
-<p></p>
-<ul>
-<li><p>libxml library;</p></li>
-<li><p>libxslt library;</p></li>
-<li><p>crypto library (OpenSSL, GnuTLS, GCrypt, NSS, ...);</p></li>
-<li><p>xmlsec library 
-		(<a href="xmlsec-xmlsec.html#XMLSECINIT">xmlSecInit</a> 
-		and <a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN">xmlSecShutdown</a> 
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>libxml library;</p></li>
+<li class="listitem"><p>libxslt library;</p></li>
+<li class="listitem"><p>crypto library (OpenSSL, GnuTLS, GCrypt, NSS, ...);</p></li>
+<li class="listitem"><p>xmlsec library 
+		(<a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()">xmlSecInit</a> 
+		and <a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()">xmlSecShutdown</a> 
 		functions);
 	    </p></li>
-<li><p>xmlsec-crypto library
-		(<a href="xmlsec-dl.html#XMLSECCRYPTODLLOADLIBRARY">xmlSecCryptoDLLoadLibrary</a> 
+<li class="listitem"><p>xmlsec-crypto library
+		(<a class="link" href="xmlsec-dl.html#xmlSecCryptoDLLoadLibrary" title="xmlSecCryptoDLLoadLibrary ()">xmlSecCryptoDLLoadLibrary</a> 
 		to load xmlsec-crypto library dynamicaly if needed, 
-		<a href="xmlsec-app.html#XMLSECCRYPTOINIT">xmlSecCryptoInit</a> 
-		and <a href="xmlsec-app.html#XMLSECCRYPTOSHUTDOWN">xmlSecCryptoShutdown</a> 
+		<a class="link" href="xmlsec-app.html#xmlSecCryptoInit" title="xmlSecCryptoInit ()">xmlSecCryptoInit</a> 
+		and <a class="link" href="xmlsec-app.html#xmlSecCryptoShutdown" title="xmlSecCryptoShutdown ()">xmlSecCryptoShutdown</a> 
 		functions);
 	    </p></li>
-</ul>
+</ul></div>
+<p>
 	xmlsec-crypto library also provides a convinient functions 
 	<font>xmlSecAppCryptoInit</font> 
 	and <font>xmlSecAppCryptoShutdown</font> 
 	to initialize the crypto library itself but application can do it 
 	by itself.
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN137"></a><p><b>Example 1. Initializing application.</b></p>
-<pre class="PROGRAMLISTING">    /* Init libxml and libxslt libraries */
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.5.3.1"></a><p class="title"><b>Example 8. Initializing application.</b></p>
+<div class="example-contents"><pre class="programlisting">
+    /* Init libxml and libxslt libraries */
     xmlInitParser();
     LIBXML_TEST_VERSION
     xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
@@ -186,12 +162,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	fprintf(stderr, "Error: xmlsec-crypto initialization failed.\n");
 	return(-1);
     }
-		</pre>
+		</pre></div>
 </div>
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN141"></a><p><b>Example 2. Shutting down application.</b></p>
-<pre class="PROGRAMLISTING">    /* Shutdown xmlsec-crypto library */
+<p><br class="example-break">
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.5.4.1"></a><p class="title"><b>Example 9. Shutting down application.</b></p>
+<div class="example-contents"><pre class="programlisting">
+    /* Shutdown xmlsec-crypto library */
     xmlSecCryptoShutdown();
     
     /* Shutdown crypto library */
@@ -205,13 +185,13 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     xsltCleanupGlobals();            
 #endif /* XMLSEC_NO_XSLT */
     xmlCleanupParser();		
-		</pre>
+		</pre></div>
 </div>
-    </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-compiling-others.html"><b><<< Compiling and linking on other systems.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-sign-encrypt.html"><b>Signing and encrypting documents. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+    </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-keys-manager-sign-enc.html b/docs/api/xmlsec-notes-keys-manager-sign-enc.html
index a697fd5..f93050e 100644
--- a/docs/api/xmlsec-notes-keys-manager-sign-enc.html
+++ b/docs/api/xmlsec-notes-keys-manager-sign-enc.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Using keys manager for signatures/encryption.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<link rel="PREVIOUS" title="Simple keys store." href="xmlsec-notes-simple-keys-store.html">
-<link rel="NEXT" title="Using keys manager for verification/decryption." href="xmlsec-notes-keys-mngr-verify-decrypt.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Using keys manager for signatures/encryption.: 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-notes-keysmngr.html" title="Keys manager.">
+<link rel="prev" href="xmlsec-notes-simple-keys-store.html" title="Simple keys store.">
+<link rel="next" href="xmlsec-notes-keys-mngr-verify-decrypt.html" title="Using keys manager for verification/decryption.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,34 +73,38 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-simple-keys-store.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-simple-keys-store.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-keys-mngr-verify-decrypt.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-KEYS-MANAGER-SIGN-ENC">Using keys manager for signatures/encryption.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-keys-manager-sign-enc"></a>Using keys manager for signatures/encryption.</h2></div></div></div>
 <p>Instead of specifiying signature or encryption key in the 
-	corresponding context object (<code class="STRUCTFIELD">signKey</code> 
-	member of <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a> 
-	structure or <code class="STRUCTFIELD">encKey</code> member of 
-	<a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a> structure), 
+	corresponding context object (<em class="structfield"><code>signKey</code></em> 
+	member of <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a> 
+	structure or <em class="structfield"><code>encKey</code></em> member of 
+	<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a> structure), 
 	the application can use keys manager to select the
 	signature or encryption key. This is especialy useful
 	when you are encrypting or signing something with a session key
 	which is by itself should be encrypted. The key for the 
 	session key encryption in the 
-	<a href="http://www.w3.org/TR/xmlenc-core/#sec-EncryptedKey" target="_top"><EncryptedKey/></a>
+	<a class="ulink" href="" target="_top"><EncryptedKey/></a>
 	node could be selected using
-	<a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a> 
+	<a class="ulink" href="" target="_top"><dsig:KeyName/></a> 
 	node in the template.
 	</p>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN378"></a><p><b>Example 2. Encrypting file using a session key and a permanent key from keys manager.</b></p>
-<pre class="PROGRAMLISTING">/**
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.10.4.3.1"></a><p class="title"><b>Example 17. Encrypting file using a session key and a permanent key from keys manager.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * load_rsa_keys:
  * @key_file:		the key filename.
  *
@@ -318,13 +295,14 @@ done:
 }
 
 		</pre>
-<p><a href="xmlsec-encrypt-with-session-key.html#XMLSEC-EXAMPLE-ENCRYPT3">Full program listing</a></p>
+<p><a class="link" href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3" title="encrypt3.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-simple-keys-store.html"><b><<< Simple keys store.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-keys-mngr-verify-decrypt.html"><b>Using keys manager for verification/decryption. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-keys-mngr-verify-decrypt.html b/docs/api/xmlsec-notes-keys-mngr-verify-decrypt.html
index 6c64c90..8033921 100644
--- a/docs/api/xmlsec-notes-keys-mngr-verify-decrypt.html
+++ b/docs/api/xmlsec-notes-keys-mngr-verify-decrypt.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Using keys manager for verification/decryption.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<link rel="PREVIOUS" title="Using keys manager for signatures/encryption." href="xmlsec-notes-keys-manager-sign-enc.html">
-<link rel="NEXT" title="Implementing a custom keys store." href="xmlsec-notes-custom-keys-store.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Using keys manager for verification/decryption.: 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-notes-keysmngr.html" title="Keys manager.">
+<link rel="prev" href="xmlsec-notes-keys-manager-sign-enc.html" title="Using keys manager for signatures/encryption.">
+<link rel="next" href="xmlsec-notes-custom-keys-store.html" title="Implementing a custom keys store.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,28 +73,32 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-keys-manager-sign-enc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-keys-manager-sign-enc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-custom-keys-store.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-KEYS-MNGR-VERIFY-DECRYPT">Using keys manager for verification/decryption.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-keys-mngr-verify-decrypt"></a>Using keys manager for verification/decryption.</h2></div></div></div>
 <p>If more than one key could be used for signature or encryption,
-	then using <code class="STRUCTFIELD">signKey</code> member of 
-	<a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a> structure or 
-	<code class="STRUCTFIELD">encKey</code> member of 
-	<a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a> structure 
+	then using <em class="structfield"><code>signKey</code></em> member of 
+	<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a> structure or 
+	<em class="structfield"><code>encKey</code></em> member of 
+	<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a> structure 
 	is not possible. Instead, the application should load known keys in 
 	the keys manager and use <dsig:KeyName/> element to specify 
 	the key name.
 	</p>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN391"></a><p><b>Example 3. Initializing keys manager and loading DES keys from binary files.</b></p>
-<pre class="PROGRAMLISTING">/**
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.10.5.3.1"></a><p class="title"><b>Example 18. Initializing keys manager and loading DES keys from binary files.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * load_des_keys:
  * @files:		the list of filenames.
  * @files_size:		the number of filenames in #files.
@@ -190,13 +167,14 @@ load_des_keys(char** files, int files_size) {
     return(mngr);
 }
 		</pre>
-<p><a href="xmlsec-decrypt-with-keys-mngr.html#XMLSEC-EXAMPLE-DECRYPT2">Full program listing</a></p>
+<p><a class="link" href="xmlsec-decrypt-with-keys-mngr.html#xmlsec-example-decrypt2" title="decrypt2.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-keys-manager-sign-enc.html"><b><<< Using keys manager for signatures/encryption.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-custom-keys-store.html"><b>Implementing a custom keys store. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-keys.html b/docs/api/xmlsec-notes-keys.html
index 5f543f1..d42253f 100644
--- a/docs/api/xmlsec-notes-keys.html
+++ b/docs/api/xmlsec-notes-keys.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Keys.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Decrypting an encrypted document" href="xmlsec-notes-decrypt.html">
-<link rel="NEXT" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Keys.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-decrypt.html" title="Decrypting an encrypted document">
+<link rel="next" href="xmlsec-notes-keysmngr.html" title="Keys manager.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,18 +73,18 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-keysmngr.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-KEYS"></a>Keys.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-keys"></a>Keys.</h2></div></div></div>
 <p>A key in XML Security Library is a representation of the 
-	<a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a>
+	<a class="ulink" href="" target="_top"><dsig:KeyInfo/></a>
 	element and consist of several key data objects. 
 	The "value" key data usually contains raw key material (or handlers to 
 	key material) required to execute particular crypto transform. Other 
@@ -122,22 +95,20 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	have a DSA key "value" and two key data objects for X509 certificate 
 	and PGP key data.
     </p>
-<div class="FIGURE">
-<a name="AEN342"></a><p><b>Figure 1. The key structure.</b></p>
-<p><img src="images/key.png" align="CENTER"></p>
+<div class="figure">
+<a name="id-1.2.9.3"></a><p class="title"><b>Figure 6. The key structure.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/key.png" align="middle" alt="The key structure."></div></div>
 </div>
-<p>XML Security Library has several "invisible" key data classes. 
+<br class="figure-break"><p>XML Security Library has several "invisible" key data classes. 
 	These classes never show up in the keys data list of a key but are used for 
-	<a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a>
-	children processing (<a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a>, 
+	<a class="ulink" href="" target="_top"><dsig:KeyInfo/></a>
+	children processing (<a class="ulink" href="" target="_top"><dsig:KeyName/></a>, 
 	<enc:EncryptedKey/>, ...). As with transforms, application might 
 	add any new key data objects or replace the default ones.
     </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-decrypt.html"><b><<< Decrypting an encrypted document</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-keysmngr.html"><b>Keys manager. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-keysmngr.html b/docs/api/xmlsec-notes-keysmngr.html
index ec5969e..cf64483 100644
--- a/docs/api/xmlsec-notes-keysmngr.html
+++ b/docs/api/xmlsec-notes-keysmngr.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Keys manager.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Keys." href="xmlsec-notes-keys.html">
-<link rel="NEXT" title="Simple keys store." href="xmlsec-notes-simple-keys-store.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Keys manager.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-keys.html" title="Keys.">
+<link rel="next" href="xmlsec-notes-simple-keys-store.html" title="Simple keys store.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,26 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-simple-keys-store.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-KEYSMNGR"></a>Keys manager.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-keysmngr.html#XMLSEC-NOTES-KEYSMNGR-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-simple-keys-store.html">Simple keys store.</a></dt>
-<dt><a href="xmlsec-notes-keys-manager-sign-enc.html">Using keys manager for signatures/encryption.</a></dt>
-<dt><a href="xmlsec-notes-keys-mngr-verify-decrypt.html">Using keys manager for verification/decryption.</a></dt>
-<dt><a href="xmlsec-notes-custom-keys-store.html">Implementing a custom keys store.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-keysmngr"></a>Keys manager.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-keysmngr.html#xmlsec-notes-keysmngr-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-simple-keys-store.html">Simple keys store.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-manager-sign-enc.html">Using keys manager for signatures/encryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-mngr-verify-decrypt.html">Using keys manager for verification/decryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-custom-keys-store.html">Implementing a custom keys store.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-KEYSMNGR-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-keysmngr-overview"></a>Overview.</h2></div></div></div>
 <p>Processing some of the key data objects require additional 
 	information which is global across the application (or in the 
 	particular area of the application). For example, X509 certificates 
@@ -128,15 +101,15 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	for key data processing in a a collection of key data stores called 
 	"keys manager".
         </p>
-<div class="FIGURE">
-<a name="AEN353"></a><p><b>Figure 1. The keys manager structure.</b></p>
-<p><img src="images/keysmngr.png" align="CENTER"></p>
+<div class="figure">
+<a name="id-1.2.10.2.3"></a><p class="title"><b>Figure 7. The keys manager structure.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/keysmngr.png" align="middle" alt="The keys manager structure."></div></div>
 </div>
-<p>Keys manager has a special "keys store" which lists the keys 
+<br class="figure-break"><p>Keys manager has a special "keys store" which lists the keys 
 	known to the application. This "keys store" is used by XML Security 
 	Library to lookup keys by name, type and crypto algorithm (for example,
 	during 
-    	<a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyName" target="_top"><dsig:KeyName/></a>
+    	<a class="ulink" href="" target="_top"><dsig:KeyName/></a>
 	processing). The XML Security Library 
 	provides default simple "flat list" based implementation of a default keys 
 	store. The application can replace it with any other keys store 
@@ -154,10 +127,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-keys.html"><b><<< Keys.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-simple-keys-store.html"><b>Simple keys store. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-functions.html b/docs/api/xmlsec-notes-new-crypto-functions.html
index 170f5b6..228577f 100644
--- a/docs/api/xmlsec-notes-new-crypto-functions.html
+++ b/docs/api/xmlsec-notes-new-crypto-functions.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>xmlSecCryptoApp* functions.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Creating a framework from the skeleton." href="xmlsec-notes-new-crypto-skeleton.html">
-<link rel="NEXT" title="Klasses and objects." href="xmlsec-notes-new-crypto-klasses.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>xmlSecCryptoApp* functions.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-skeleton.html" title="Creating a framework from the skeleton.">
+<link rel="next" href="xmlsec-notes-new-crypto-klasses.html" title="Klasses and objects.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,16 +73,18 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-skeleton.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-skeleton.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-klasses.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-FUNCTIONS">xmlSecCryptoApp* functions.</a></h1>
-<p>	The XML Security Library allows application to load multiple
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-functions"></a>xmlSecCryptoApp* functions.</h2></div></div></div>
+<p>
+	The XML Security Library allows application to load multiple
 	"xmlsec-<crypto> libraries. To prevent symbol conflicts, 
 	all "xmlsec-mycrypto" library names MUST start with "xmlSecMyCrypto". 
 	However, in some applications (for example, the xmlsec command line
@@ -119,7 +94,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	include files do the magic by mapping "xmlSecMyCrypto*" to 
 	"xmlSecCrypto*" names using "XMLSEC_CRYPTO_*" defines.
 	</p>
-<p>	In order to build xmlsec command line utility, the 
+<p>
+	In order to build xmlsec command line utility, the 
 	"xmlsec-<crypto>" library must implement several functions.
 	The stubs for all these functions are provided in the "skeleton"
 	we've created. While these functions are not required to be
@@ -127,14 +103,17 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	doing so (if possible) to simplify testing (thru xmlsec command line
 	utility) and application development.
 	</p>
-<p>	In adition to xmlSecCryptoApp* functions, the xmlsec-<crypto>
+<p>
+	In adition to xmlSecCryptoApp* functions, the xmlsec-<crypto>
 	library MUST implement following xmlSecCrypto* functions:
 	</p>
-<div class="TABLE">
-<a name="AEN540"></a><p><b>Table 1. xmlSecCrypto* functions.</b></p>
-<table border="1" class="CALSTABLE">
+<div class="table">
+<a name="id-1.2.14.4.4.1"></a><p class="title"><b>Table 1. xmlSecCrypto* functions.</b></p>
+<div class="table-contents"><table class="table" summary="xmlSecCrypto* functions." border="1">
+<colgroup>
 <col>
 <col>
+</colgroup>
 <tbody>
 <tr>
 <td>xmlSecCryptoInit()</td>
@@ -162,13 +141,13 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	</td>
 </tr>
 </tbody>
-</table>
+</table></div>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-skeleton.html"><b><<< Creating a framework from the skeleton.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-klasses.html"><b>Klasses and objects. >>></b></a></td>
-</tr></table>
+<p><br class="table-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-key-stores.html b/docs/api/xmlsec-notes-new-crypto-key-stores.html
index af2c5f0..fee3c18 100644
--- a/docs/api/xmlsec-notes-new-crypto-key-stores.html
+++ b/docs/api/xmlsec-notes-new-crypto-key-stores.html
@@ -59,6 +59,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/api/xmlsec-notes-new-crypto-keys.html b/docs/api/xmlsec-notes-new-crypto-keys.html
index 2ab33bc..1adade2 100644
--- a/docs/api/xmlsec-notes-new-crypto-keys.html
+++ b/docs/api/xmlsec-notes-new-crypto-keys.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Keys data and keys data stores.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Cryptographic transforms." href="xmlsec-notes-new-crypto-transforms.html">
-<link rel="NEXT" title="Default keys manager." href="xmlsec-notes-new-crypto-simple-keys-mngr.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Keys data and keys data stores.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-transforms.html" title="Cryptographic transforms.">
+<link rel="next" href="xmlsec-notes-new-crypto-simple-keys-mngr.html" title="Default keys manager.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,27 +73,27 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-simple-keys-mngr.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-KEYS">Keys data and keys data stores.</a></h1>
-<p>	There are two key data types: key value data (for example, AES, DES, DSA, 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-keys"></a>Keys data and keys data stores.</h2></div></div></div>
+<p>
+	There are two key data types: key value data (for example, AES, DES, DSA, 
 	HMAC or RSA key data) and others (for example, key name, X509 or PGP data).
 	The key data implementation should implement at least one of 
-	<a href="xmlsec-keysdata.html#XMLSECKEYDATAXMLREADMETHOD">xmlRead</a>
-	or <a href="xmlsec-keysdata.html#XMLSECKEYDATABINREADMETHOD">binRead</a> methods.
+	<a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataXmlReadMethod" title="xmlSecKeyDataXmlReadMethod ()">xmlRead</a>
+	or <a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataBinReadMethod" title="xmlSecKeyDataBinReadMethod ()">binRead</a> methods.
 	</p>
 <p>TODO</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-transforms.html"><b><<< Cryptographic transforms.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-simple-keys-mngr.html"><b>Default keys manager. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-klasses.html b/docs/api/xmlsec-notes-new-crypto-klasses.html
index 9c0e7f8..e9d496f 100644
--- a/docs/api/xmlsec-notes-new-crypto-klasses.html
+++ b/docs/api/xmlsec-notes-new-crypto-klasses.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Klasses and objects.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="xmlSecCryptoApp* functions." href="xmlsec-notes-new-crypto-functions.html">
-<link rel="NEXT" title="Cryptographic transforms." href="xmlsec-notes-new-crypto-transforms.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Klasses and objects.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-functions.html" title="xmlSecCryptoApp* functions.">
+<link rel="next" href="xmlsec-notes-new-crypto-transforms.html" title="Cryptographic transforms.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,19 +73,20 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-functions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-functions.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-transforms.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-KLASSES">Klasses and objects.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-klasses"></a>Klasses and objects.</h2></div></div></div>
 <p>The XML Security Library is written in C but it uses some OOP techniques:
 	the objects in the library have "klasses" and there is "klasses" inheritance.
-	(see <a href="xmlsec-signature-klasses.html">signature</a> and
-	<a href="xmlsec-encryption-klasses.html">encryption</a> klasses 
+	(see <a class="link" href="xmlsec-signature-klasses.html" title="APPENDIX A. XML Security Library Signature Klasses.">signature</a> and
+	<a class="link" href="xmlsec-encryption-klasses.html" title="APPENDIX B. XML Security Library Encryption Klasses.">encryption</a> klasses 
 	diagrams). The "klass" is different from C++ "class" (btw, this is 
 	one of the reasons why it is spelled differently). The idea of "klasses" 
 	used in XML Security Library are close to one in the GLIB/GTK/GNOME
@@ -121,16 +95,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	</p>
 <p>XML Security Library "klass" includes three main parts:
 	</p>
-<p></p>
-<ul>
-<li>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
 <p>"Klass" declaration structure that defines "klass" interfaces
 	and global constant data (for example, the human-readable name of 
 	the "klass").
 	</p>
-<div class="EXAMPLE">
-<a name="AEN562"></a><p><b>Example 6. Base transform "klass" and its child XPath transform "klass" structure.</b></p>
-<pre class="PROGRAMLISTING">struct _xmlSecTransformKlass {
+<div class="example">
+<a name="id-1.2.14.5.3.1.1.1.1"></a><p class="title"><b>Example 30. Base transform "klass" and its child XPath transform "klass" structure.</b></p>
+<div class="example-contents"><pre class="programlisting">
+struct _xmlSecTransformKlass {
     /* data */
     size_t				klassSize;
     size_t				objSize;
@@ -166,17 +140,20 @@ static xmlSecTransformKlass xmlSecTransformXPathKlass = {
     
     ...
 };
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-<li>
+<p><br class="example-break">
+	</p>
+</li>
+<li class="listitem">
 <p>"Klass" id which is simply a pointer to the "klass"
 	declaration strucutre. "Klass" id is used to bind "klass" objects 
 	to the "klass" declaration and to pass "klass" strucutre to functions.
 	</p>
-<div class="EXAMPLE">
-<a name="AEN567"></a><p><b>Example 7. Base transform "klass" id declaration and its child XPath transform "klass" id implementation.</b></p>
-<pre class="PROGRAMLISTING">typedef const struct _xmlSecTransformKlass		xmlSecTransformKlass, *xmlSecTransformId;
+<div class="example">
+<a name="id-1.2.14.5.3.1.2.1.1"></a><p class="title"><b>Example 31. Base transform "klass" id declaration and its child XPath transform "klass" id implementation.</b></p>
+<div class="example-contents"><pre class="programlisting">
+typedef const struct _xmlSecTransformKlass		xmlSecTransformKlass, *xmlSecTransformId;
 
 ...
 
@@ -188,17 +165,20 @@ xmlSecTransformId
 xmlSecTransformXPathGetKlass(void) {
     return(&xmlSecTransformXPathKlass);
 }
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-<li>
+<p><br class="example-break">
+	</p>
+</li>
+<li class="listitem">
 <p>"Klass" object structure that contains object specific
 	data. The child object specific data are placed after the parent "klass"
 	object data.
 	</p>
-<div class="EXAMPLE">
-<a name="AEN572"></a><p><b>Example 8. Base transform object strucutre and its child XPath transform object.</b></p>
-<pre class="PROGRAMLISTING">struct _xmlSecTransform {
+<div class="example">
+<a name="id-1.2.14.5.3.1.3.1.1"></a><p class="title"><b>Example 32. Base transform object strucutre and its child XPath transform object.</b></p>
+<div class="example-contents"><pre class="programlisting">
+struct _xmlSecTransform {
     xmlSecTransformId 			id; 
     xmlSecTransformOperation		operation;
     xmlSecTransformStatus		status;
@@ -226,15 +206,17 @@ xmlSecTransformXPathGetKlass(void) {
     ((xmlSecTransformCheckSize((transform), xmlSecXPathTransformSize)) ? \
 	(xmlSecPtrListPtr)(((unsigned char*)(transform)) + sizeof(xmlSecTransform)) : \
 	(xmlSecPtrListPtr)NULL)
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-</ul>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-functions.html"><b><<< xmlSecCryptoApp* functions.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-transforms.html"><b>Cryptographic transforms. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+	</p>
+</li>
+</ul></div>
+<p>
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-sharing-results.html b/docs/api/xmlsec-notes-new-crypto-sharing-results.html
index e39d41e..c4dc194 100644
--- a/docs/api/xmlsec-notes-new-crypto-sharing-results.html
+++ b/docs/api/xmlsec-notes-new-crypto-sharing-results.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Sharing the results.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Default keys manager." href="xmlsec-notes-new-crypto-simple-keys-mngr.html">
-<link rel="NEXT" title="Examples." href="xmlsec-examples.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Sharing the results.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-simple-keys-mngr.html" title="Default keys manager.">
+<link rel="next" href="xmlsec-examples.html" title="Examples.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,15 +73,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-simple-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-simple-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-examples.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-SHARING-RESULTS">Sharing the results.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-sharing-results"></a>Sharing the results.</h2></div></div></div>
 <p>If you implemented support for new cryptographic library
 	(or extended an existing one) and both you and your company/university/...
 	are willing to share the code I would be glad to add your work
@@ -117,14 +91,12 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	for your work.
 	</p>
 <p>The best way to submit your enchancements is to send a pull request
-	through <a href="https://github.com/lsh123/xmlsec" target="_top">GitHub</a>.
+	through <a class="ulink" href="" target="_top">GitHub</a>.
     I will try to review and merge your pool request as soon as possible.
 	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-simple-keys-mngr.html"><b><<< Default keys manager.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-examples.html"><b>Examples. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-simple-keys-mngr.html b/docs/api/xmlsec-notes-new-crypto-simple-keys-mngr.html
index 2a2371e..233da68 100644
--- a/docs/api/xmlsec-notes-new-crypto-simple-keys-mngr.html
+++ b/docs/api/xmlsec-notes-new-crypto-simple-keys-mngr.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Default keys manager.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Keys data and keys data stores." href="xmlsec-notes-new-crypto-keys.html">
-<link rel="NEXT" title="Sharing the results." href="xmlsec-notes-new-crypto-sharing-results.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Default keys manager.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-keys.html" title="Keys data and keys data stores.">
+<link rel="next" href="xmlsec-notes-new-crypto-sharing-results.html" title="Sharing the results.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,25 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-keys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-sharing-results.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-SIMPLE-KEYS-MNGR">Default keys manager.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-simple-keys-mngr"></a>Default keys manager.</h2></div></div></div>
 <p>Any "xmlsec-<crypto>" library implementation must provide
 	a default keys store. The XML Security Library 	has a built-in flat 
-	list based <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID">simple keys 
+	list based <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId">simple keys 
 	store</a> which could be used if cryptographic library does not
 	have one itself.
 	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-keys.html"><b><<< Keys data and keys data stores.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-sharing-results.html"><b>Sharing the results. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-skeleton.html b/docs/api/xmlsec-notes-new-crypto-skeleton.html
index e9cda62..c33cfc9 100644
--- a/docs/api/xmlsec-notes-new-crypto-skeleton.html
+++ b/docs/api/xmlsec-notes-new-crypto-skeleton.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Creating a framework from the skeleton.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="NEXT" title="xmlSecCryptoApp* functions." href="xmlsec-notes-new-crypto-functions.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Creating a framework from the skeleton.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="next" href="xmlsec-notes-new-crypto-functions.html" title="xmlSecCryptoApp* functions.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,55 +73,66 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-functions.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-SKELETON">Creating a framework from the skeleton.</a></h1>
-<p>	The XML Security Library contains a "skeleton" for creating new
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-skeleton"></a>Creating a framework from the skeleton.</h2></div></div></div>
+<p>
+	The XML Security Library contains a "skeleton" for creating new
 	"xmlsec-<crypto>" libraries. In order to create "xmlsec-mycrypto"
 	library framework, do the following (this example assumes that you 
 	are using *nix system, adjust the commands if you are using something else):
 	</p>
-<p></p>
-<ul>
-<li>
-<p>	Copy src/skeleton and include/xmlsec/skeleton folders to src/mycrypto and
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem">
+<p>
+	Copy src/skeleton and include/xmlsec/skeleton folders to src/mycrypto and
 	include/xmlsec/mycrypto folders:
 	</p>
-<div class="EXAMPLE">
-<a name="AEN512"></a><p><b>Example 1. Coping skeleton folders:</b></p>
-<pre class="PROGRAMLISTING">cp -r src/skeleton src/mycrypto
+<div class="example">
+<a name="id-1.2.14.3.2.1.1.1.1"></a><p class="title"><b>Example 25. Coping skeleton folders:</b></p>
+<div class="example-contents"><pre class="programlisting">
+cp -r src/skeleton src/mycrypto
 cp -r include/xmlsec/skeleton include/xmlsec/mycrypto
-	    </pre>
-</div>	
-	</li>
-<li>
-<p>	Replace "skeleton" with "mycrypto" in the copied files (note that there
+	    </pre></div>
+</div>
+<p><br class="example-break">	
+	</p>
+</li>
+<li class="listitem">
+<p>
+	Replace "skeleton" with "mycrypto" in the copied files (note that there
 	are different possible cases here):
 	</p>
-<div class="EXAMPLE">
-<a name="AEN517"></a><p><b>Example 2. Replacing "skeleton" with "mycrypto".</b></p>
-<pre class="PROGRAMLISTING">for i in `ls include/xmlsec/mycrypto/* src/mycrypto/*`;  do 
+<div class="example">
+<a name="id-1.2.14.3.2.1.2.1.1"></a><p class="title"><b>Example 26. Replacing "skeleton" with "mycrypto".</b></p>
+<div class="example-contents"><pre class="programlisting">
+for i in `ls include/xmlsec/mycrypto/* src/mycrypto/*`;  do 
     echo Processing $i ..;
     sed 's/skeleton/mycrypto/g' $i | \
     sed 's/SKELETON/MYCRYPTO/g' | \
     sed 's/Skeleton/MyCrypto/g' > $i.tmp;
     mv $i.tmp $i;
 done
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-<li>
-<p>	Add "xmlsec-mycrypto" library to the "include/xmlsec/crypto.h" file:
+<p><br class="example-break">
+	</p>
+</li>
+<li class="listitem">
+<p>
+	Add "xmlsec-mycrypto" library to the "include/xmlsec/crypto.h" file:
 	</p>
-<div class="EXAMPLE">
-<a name="AEN522"></a><p><b>Example 3. Modifying include/xmlsec/crypto.h file.</b></p>
-<pre class="PROGRAMLISTING">...	    
+<div class="example">
+<a name="id-1.2.14.3.2.1.3.1.1"></a><p class="title"><b>Example 27. Modifying include/xmlsec/crypto.h file.</b></p>
+<div class="example-contents"><pre class="programlisting">
+...	    
 #ifdef XMLSEC_CRYPTO_MYCRYPTO
 #include <xmlsec/mycrypto/app.h>
 #include <xmlsec/mycrypto/crypto.h>
@@ -157,17 +141,21 @@ done
 ...
 #endif /* XMLSEC_CRYPTO_MYCRYPTO */
 ...
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-<li>
-<p>	Add "xmlsec-crypto" library to the configure.in file (for *nix systems;
+<p><br class="example-break">
+	</p>
+</li>
+<li class="listitem">
+<p>
+	Add "xmlsec-crypto" library to the configure.in file (for *nix systems;
 	for Windows you need to modify win32/confgure.js and win32/Makefile.msvc
 	files, see win32/README.txt for details):
 	</p>
-<div class="EXAMPLE">
-<a name="AEN527"></a><p><b>Example 4. Modifying configure.in file.</b></p>
-<pre class="PROGRAMLISTING">dnl ==========================================================================
+<div class="example">
+<a name="id-1.2.14.3.2.1.4.1.1"></a><p class="title"><b>Example 28. Modifying configure.in file.</b></p>
+<div class="example-contents"><pre class="programlisting">
+dnl ==========================================================================
 dnl See if we can find MyCrypto
 dnl ==========================================================================
 XMLSEC_MYCRYPTO_DEFINES=""
@@ -240,30 +228,35 @@ include/xmlsec/mycrypto/Makefile
 src/mycrypto/Makefile
 ...
 ])
-	    </pre>
+	    </pre></div>
 </div>
-	</li>
-<li><p>Modify "xmlsec.spec.in" file to create "xmlsec-mycrypto"
+<p><br class="example-break">
+	</p>
+</li>
+<li class="listitem"><p>Modify "xmlsec.spec.in" file to create "xmlsec-mycrypto"
 	RPM (if necessary).
 	</p></li>
-</ul>
+</ul></div>
+<p>
 	
 	By now you should be able to sucessfuly compile XML Security Library
 	with MyCrypto library (we disable all other libraries to make sure
 	that xmlsec command line utility is linked against xmlsec-mycrypto
 	library):
-	<div class="EXAMPLE">
-<a name="AEN532"></a><p><b>Example 5. Compiling the results.</b></p>
-<pre class="PROGRAMLISTING">./autogen.sh --without-openssl --without-nss --without-gnutls --without-gcrypt \
+	</p>
+<div class="example">
+<a name="id-1.2.14.3.2.2"></a><p class="title"><b>Example 29. Compiling the results.</b></p>
+<div class="example-contents"><pre class="programlisting">
+./autogen.sh --without-openssl --without-nss --without-gnutls --without-gcrypt \
     	     --with-mycrypto=$HOME --disable-tmpl-tests
 make	
-	    </pre>
+	    </pre></div>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto.html"><b><<< Adding support for new cryptographic library.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-functions.html"><b>xmlSecCryptoApp* functions. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto-transforms.html b/docs/api/xmlsec-notes-new-crypto-transforms.html
index 1209013..ab9da62 100644
--- a/docs/api/xmlsec-notes-new-crypto-transforms.html
+++ b/docs/api/xmlsec-notes-new-crypto-transforms.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Cryptographic transforms.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Adding support for new cryptographic library." href="xmlsec-notes-new-crypto.html">
-<link rel="PREVIOUS" title="Klasses and objects." href="xmlsec-notes-new-crypto-klasses.html">
-<link rel="NEXT" title="Keys data and keys data stores." href="xmlsec-notes-new-crypto-keys.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Cryptographic transforms.: 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-notes-new-crypto.html" title="Adding support for new cryptographic library.">
+<link rel="prev" href="xmlsec-notes-new-crypto-klasses.html" title="Klasses and objects.">
+<link rel="next" href="xmlsec-notes-new-crypto-keys.html" title="Keys data and keys data stores.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,52 +73,55 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-new-crypto-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-new-crypto.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-new-crypto-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-keys.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-TRANSFORMS">Cryptographic transforms.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-transforms"></a>Cryptographic transforms.</h2></div></div></div>
 <p>The cryptographic transforms (digests, signatures and encryption)
 	implementation is the main goal of "xmlsec-<crypto>" library.
-	Most of the cryptographic <a href="xmlsec-notes-transforms.html">transforms</a> 
-	use default <code class="STRUCTFIELD">pushBin</code> and <code class="STRUCTFIELD">popBin</code> 
-	methods and provide custom <a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a> method. 
-	The binary transform <a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a> method 
+	Most of the cryptographic <a class="link" href="xmlsec-notes-transforms.html" title="Transforms and transforms chain.">transforms</a> 
+	use default <em class="structfield"><code>pushBin</code></em> and <em class="structfield"><code>popBin</code></em> 
+	methods and provide custom <a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a> method. 
+	The binary transform <a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a> method 
 	processes data from the input buffer
-	<code class="STRUCTFIELD">inBuf</code> and pushes results to
-	<code class="STRUCTFIELD">outBuf</code>. The transform should try to
-	consume and remove data from <code class="STRUCTFIELD">inBuf</code> buffer
+	<em class="structfield"><code>inBuf</code></em> and pushes results to
+	<em class="structfield"><code>outBuf</code></em>. The transform should try to
+	consume and remove data from <em class="structfield"><code>inBuf</code></em> buffer
 	as soon as the data became available. However, it might happen
 	that current data size in the input buffer is not enough (for example,
 	RSA-PKCS1 algorithm requires that all the data are available in 
 	one buffer). In this case, transform might keep the data in the 
 	input buffer till the next call to 
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a>
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a>
 	method. The "last" parameter of the 
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a>
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a>
 	indicates that transform MUST process all the data in the input buffer
 	and return as much as possible in the output buffer. The 
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a> method 
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a> method 
 	might be called multiple times with non-zero "last" parameter until 
 	the transforms returns nothing
 	in the output buffer. In addition, the transform implementation is 
-	responsible for managing the transform <code class="STRUCTFIELD">status</code> 
+	responsible for managing the transform <em class="structfield"><code>status</code></em> 
 	variable.
 	</p>
-<div class="TABLE">
-<a name="AEN590"></a><p><b>Table 2. Typical transform status managing.</b></p>
-<table border="1" class="CALSTABLE">
+<div class="table">
+<a name="id-1.2.14.6.2.13"></a><p class="title"><b>Table 2. Typical transform status managing.</b></p>
+<div class="table-contents"><table class="table" summary="Typical transform status managing." border="1">
+<colgroup>
 <col>
 <col>
+</colgroup>
 <tbody>
 <tr>
 <td>xmlSecTransformStatusNone</td>
 <td>Transform initializes itself (for example, cipher transform 
-	generates or reads IV) and sets <code class="STRUCTFIELD">status</code> 
+	generates or reads IV) and sets <em class="structfield"><code>status</code></em> 
 	variable to xmlSecTransformStatusWorking.</td>
 </tr>
 <tr>
@@ -153,7 +129,7 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 <td>Transform process the next (if "last" parameter is zero) or
 	last block of data (if "last" parameter is non-zero).
 	When transform returns all the data, it sets the 
-	<code class="STRUCTFIELD">status</code> variable to 
+	<em class="structfield"><code>status</code></em> variable to 
 	xmlSecTransformStatusFinished.</td>
 </tr>
 <tr>
@@ -162,32 +138,32 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	processing.</td>
 </tr>
 </tbody>
-</table>
-</div>	
-	<p>In adition to <a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a>
+</table></div>
+</div>
+<p><br class="table-break">	
+	</p>
+<p>In adition to <a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a>
 	methods, signature, hmac or digest transforms 
-	MUST implement <a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD">verify</a> method. 
-	The <a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD">verify</a> method is called
+	MUST implement <a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()">verify</a> method. 
+	The <a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()">verify</a> method is called
 	after transform execution is finished. The 
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD">verify</a> method implementation 
-	must set the "status" member to <a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUSOK">xmlSecTransformStatusOk</a>
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()">verify</a> method implementation 
+	must set the "status" member to <a class="link" href="xmlsec-transforms.html#xmlSecTransformStatusOk">xmlSecTransformStatusOk</a>
 	if signature, hmac or digest is successfuly verified or to
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUSFAIL">xmlSecTransformStatusFail</a>
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformStatusFail">xmlSecTransformStatusFail</a>
 	otherwise.
 	</p>
 <p>The transforms that require a key (signature or encryption 
 	transforms, for example) MUST imlpement 
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQUIREMENTSMETHOD">setKeyReq</a> 
-	(prepares the <a href="xmlsec-keys.html#XMLSECKEYREQ">key requirements</a>
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyRequirementsMethod" title="xmlSecTransformSetKeyRequirementsMethod ()">setKeyReq</a> 
+	(prepares the <a class="link" href="xmlsec-keys.html#xmlSecKeyReq" title="struct xmlSecKeyReq">key requirements</a>
 	for key search) and
-	<a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYMETHOD">setKey</a> 
+	<a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyMethod" title="xmlSecTransformSetKeyMethod ()">setKey</a> 
 	(sets the key in the transform) methods. 
 	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-new-crypto-klasses.html"><b><<< Klasses and objects.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-keys.html"><b>Keys data and keys data stores. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-new-crypto.html b/docs/api/xmlsec-notes-new-crypto.html
index c1b49d9..542b8b0 100644
--- a/docs/api/xmlsec-notes-new-crypto.html
+++ b/docs/api/xmlsec-notes-new-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Adding support for new cryptographic library.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Using context objects." href="xmlsec-notes-contexts.html">
-<link rel="NEXT" title="Creating a framework from the skeleton." href="xmlsec-notes-new-crypto-skeleton.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Adding support for new cryptographic library.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-contexts.html" title="Using context objects.">
+<link rel="next" href="xmlsec-notes-new-crypto-skeleton.html" title="Creating a framework from the skeleton.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,29 +73,29 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-contexts.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-contexts.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-new-crypto-skeleton.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-NEW-CRYPTO"></a>Adding support for new cryptographic library.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-new-crypto.html#XMLSEC-NOTES-NEW-CRYPTO-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-skeleton.html">Creating a framework from the skeleton.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-functions.html">xmlSecCryptoApp* functions.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-klasses.html">Klasses and objects.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-transforms.html">Cryptographic transforms.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-keys.html">Keys data and keys data stores.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-simple-keys-mngr.html">Default keys manager.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto-sharing-results.html">Sharing the results.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-new-crypto"></a>Adding support for new cryptographic library.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto.html#xmlsec-notes-new-crypto-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-skeleton.html">Creating a framework from the skeleton.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-functions.html">xmlSecCryptoApp* functions.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-klasses.html">Klasses and objects.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-transforms.html">Cryptographic transforms.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-keys.html">Keys data and keys data stores.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-simple-keys-mngr.html">Default keys manager.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-sharing-results.html">Sharing the results.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-NEW-CRYPTO-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-new-crypto-overview"></a>Overview.</h2></div></div></div>
 <p>XML Security Library can support practicaly any cryptographic
     library. Currently, it has "out-of-the-box" support for OpenSSL,
     MSCrypto, NSS, GnuTLS and GCrypt. If your favorite library is not supported yet then
@@ -130,30 +103,33 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     (university, ...) are willing to share the results of your work I would 
     be happy to add support for new libraries to the main XML Security 
     Library distribution.</p>
-<p>    The XML Security Library 
-    <a href="xmlsec-notes-structure.html">separates</a> 
+<p>
+    The XML Security Library 
+    <a class="link" href="xmlsec-notes-structure.html" title="XML Security Library Structure.">separates</a> 
     the cryptographic library (engine) 
     specific code in an "xmlsec-<crypto>" library (where "<crypto>" is 
     "openssl", "mscrypt", "gnutls", "gcrypt", "nss", etc.) which includes following items:
     </p>
-<p></p>
-<ul>
-<li><p>    xmlSecCryptoApp* functions.
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+    xmlSecCryptoApp* functions.
     </p></li>
-<li><p>    Cryptographic transforms and keys data implementation.
+<li class="listitem"><p>
+    Cryptographic transforms and keys data implementation.
     </p></li>
-<li><p>    Keys store support (X509, PGP, etc.).
+<li class="listitem"><p>
+    Keys store support (X509, PGP, etc.).
     </p></li>
-</ul>    
+</ul></div>
+<p>    
     In this chapter, we will discuss
     a task of creating "xmlsec-mycrypto" library that provides support
     for your favorite "MyCrypto" cryptographic library. 
-    </div>
+    </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-contexts.html"><b><<< Using context objects.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-new-crypto-skeleton.html"><b>Creating a framework from the skeleton. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-overview.html b/docs/api/xmlsec-notes-overview.html
index dd8ea31..6fe2f48 100644
--- a/docs/api/xmlsec-notes-overview.html
+++ b/docs/api/xmlsec-notes-overview.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Overview.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="NEXT" title="XML Security Library Structure." href="xmlsec-notes-structure.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Overview.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="next" href="xmlsec-notes-structure.html" title="XML Security Library Structure.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-structure.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-OVERVIEW"></a>Overview.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-overview"></a>Overview.</h2></div></div></div>
 <p>XML Security Library provides support for XML Digital Signature 
 	and XML Encryption. It is based on LibXML/LibXSLT and can use
 	practicaly any crypto library (currently there is "out of the box" 
 	support for OpenSSL, MSCrypto, GnuTLS, GCrypt and NSS).
 	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes.html"><b><<< XML Security Library Tutorial</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-structure.html"><b>XML Security Library Structure. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-sign-encrypt.html b/docs/api/xmlsec-notes-sign-encrypt.html
index 83b3ece..29a01ea 100644
--- a/docs/api/xmlsec-notes-sign-encrypt.html
+++ b/docs/api/xmlsec-notes-sign-encrypt.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing and encrypting documents.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Initialization and shutdown." href="xmlsec-notes-init-shutdown.html">
-<link rel="NEXT" title="Signing a document." href="xmlsec-notes-sign.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing and encrypting documents.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-init-shutdown.html" title="Initialization and shutdown.">
+<link rel="next" href="xmlsec-notes-sign.html" title="Signing a document.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,24 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-init-shutdown.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-init-shutdown.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-sign.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-SIGN-ENCRYPT"></a>Signing and encrypting documents.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-sign-encrypt.html#XMLSEC-NOTES-SIGN-ENCRYPT-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-sign.html">Signing a document.</a></dt>
-<dt><a href="xmlsec-notes-encrypt.html">Encrypting data.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-sign-encrypt"></a>Signing and encrypting documents.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-sign-encrypt.html#xmlsec-notes-sign-encrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign.html">Signing a document.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-encrypt.html">Encrypting data.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-SIGN-ENCRYPT-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-sign-encrypt-overview"></a>Overview.</h2></div></div></div>
 <p>XML Security Library performs signature or encryption by processing 
 	input xml or binary data and a template that specifies a signature or 
 	encryption skeleton: the transforms, algorithms, the key selection 
@@ -128,16 +101,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	the template. Signature or encryption context controls the whole 
 	process and stores the required temporary data.
 	  </p>
-<div class="FIGURE">
-<a name="AEN149"></a><p><b>Figure 1. The signature or encryption processing model.</b></p>
-<p><img src="images/sign-enc-model.png" align="CENTER"></p>
+<div class="figure">
+<a name="id-1.2.6.2.2.1"></a><p class="title"><b>Figure 2. The signature or encryption processing model.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/sign-enc-model.png" align="middle" alt="The signature or encryption processing model."></div></div>
 </div>
-	</div>
+<p><br class="figure-break">
+	</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-init-shutdown.html"><b><<< Initialization and shutdown.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-sign.html"><b>Signing a document. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-sign-x509.html b/docs/api/xmlsec-notes-sign-x509.html
index 7a91e2f..2c2ae2e 100644
--- a/docs/api/xmlsec-notes-sign-x509.html
+++ b/docs/api/xmlsec-notes-sign-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing data with X509 certificate.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Using X509 Certificates." href="xmlsec-notes-x509.html">
-<link rel="PREVIOUS" title="Using X509 Certificates." href="xmlsec-notes-x509.html">
-<link rel="NEXT" title="Verifing document signed with X509 certificates." href="xmlsec-notes-verify-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing data with X509 certificate.: 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-notes-x509.html" title="Using X509 Certificates.">
+<link rel="prev" href="xmlsec-notes-x509.html" title="Using X509 Certificates.">
+<link rel="next" href="xmlsec-notes-verify-x509.html" title="Verifing document signed with X509 certificates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,34 +73,41 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-x509.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-x509.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-verify-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-SIGN-X509">Signing data with X509 certificate.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-sign-x509"></a>Signing data with X509 certificate.</h2></div></div></div>
 <p>To sign a file using X509 certificate, 
 	an application need to associate the certificate (or certificates) 
 	with the private key using one of the following functions:
 	</p>
-<p></p>
-<ul>
-<li><p>	    <a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOAD">xmlSecOpenSSLAppKeyCertLoad</a> - loads
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+	    <a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoad" title="xmlSecOpenSSLAppKeyCertLoad ()">xmlSecOpenSSLAppKeyCertLoad</a> - loads
 	    certificate from a file and adds to the key;
 	    </p></li>
-<li><p>	    <a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOAD">xmlSecOpenSSLAppPkcs12Load</a> -
+<li class="listitem"><p>
+	    <a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12Load" title="xmlSecOpenSSLAppPkcs12Load ()">xmlSecOpenSSLAppPkcs12Load</a> -
 	    loads private key and all the certificates associated with it from a PKCS12 file;
 	    </p></li>
-<li><p>	    <a href="xmlsec-keys.html#XMLSECKEYADOPTDATA">xmlSecKeyAdoptData</a> - low level
+<li class="listitem"><p>
+	    <a class="link" href="xmlsec-keys.html#xmlSecKeyAdoptData" title="xmlSecKeyAdoptData ()">xmlSecKeyAdoptData</a> - low level
 	    function to add key data (including X509 key data) to the key.
 	    </p></li>
-</ul>	    
-	<div class="EXAMPLE">
-<a name="AEN423"></a><p><b>Example 1. Loading private key and X509 certificate.</b></p>
-<pre class="PROGRAMLISTING">    /* load private key, assuming that there is not password */
+</ul></div>
+<p>	    
+	</p>
+<div class="example">
+<a name="id-1.2.11.3.2.2"></a><p class="title"><b>Example 20. Loading private key and X509 certificate.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+    /* load private key, assuming that there is not password */
     key = xmlSecCryptoAppKeyLoad(key_file, xmlSecKeyDataFormatPem, NULL, NULL, NULL);
     if(key == NULL) {
         fprintf(stderr,"Error: failed to load private pem key from \"%s\"\n", key_file);
@@ -140,17 +120,22 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	goto done;
     }
 	    </pre>
-<p><a href="xmlsec-examples-sign-x509.html#XMLSEC-EXAMPLE-SIGN3">Full program listing</a></p>
+<p><a class="link" href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3" title="sign3.c">Full program listing</a></p>
 </div>
-	<p>Next step is to prepare signature template with <dsig:X509Data/>
+</div>
+<p><br class="example-break">
+	</p>
+<p>Next step is to prepare signature template with <dsig:X509Data/>
 	child of the <dsig:KeyInfo/> element. When XML Security Library finds
 	this node in the template, it automaticaly creates <dsig:X509Certificate/> 
 	children of the <dsig:X509Data/> element and writes to result XML document
 	all the certificates associated with the signature key. 
 	</p>
-<div class="EXAMPLE">
-<a name="AEN429"></a><p><b>Example 2. Dynamicaly creating a signature template for signing document using X509 certificate.</b></p>
-<pre class="PROGRAMLISTING">    /* create signature template for RSA-SHA1 enveloped signature */
+<div class="example">
+<a name="id-1.2.11.3.3.1"></a><p class="title"><b>Example 21. Dynamicaly creating a signature template for signing document using X509 certificate.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+    /* create signature template for RSA-SHA1 enveloped signature */
     signNode = xmlSecTmplSignatureCreate(doc, xmlSecTransformExclC14NId,
 				         xmlSecTransformRsaSha1Id, NULL);
     if(signNode == NULL) {
@@ -187,13 +172,14 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	goto done;		
     }
 	    </pre>
-<p><a href="xmlsec-examples-sign-x509.html#XMLSEC-EXAMPLE-SIGN3">Full program listing</a></p>
+<p><a class="link" href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3" title="sign3.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-x509.html"><b><<< Using X509 Certificates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-verify-x509.html"><b>Verifing document signed with X509 certificates. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-sign.html b/docs/api/xmlsec-notes-sign.html
index 5b4dac5..09df177 100644
--- a/docs/api/xmlsec-notes-sign.html
+++ b/docs/api/xmlsec-notes-sign.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Signing a document.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Signing and encrypting documents." href="xmlsec-notes-sign-encrypt.html">
-<link rel="PREVIOUS" title="Signing and encrypting documents." href="xmlsec-notes-sign-encrypt.html">
-<link rel="NEXT" title="Encrypting data." href="xmlsec-notes-encrypt.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Signing a document.: 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-notes-sign-encrypt.html" title="Signing and encrypting documents.">
+<link rel="prev" href="xmlsec-notes-sign-encrypt.html" title="Signing and encrypting documents.">
+<link rel="next" href="xmlsec-notes-encrypt.html" title="Encrypting data.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,50 +73,62 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-sign-encrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-sign-encrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-sign-encrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-sign-encrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-encrypt.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-SIGN">Signing a document.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-sign"></a>Signing a document.</h2></div></div></div>
 <p>The typical signature process includes following steps:
 	  </p>
-<p></p>
-<ul>
-<li><p>		Prepare data for signature.
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+		Prepare data for signature.
 	    </p></li>
-<li><p>		Create or load signature template and select start
-    		<a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a>
+<li class="listitem"><p>
+		Create or load signature template and select start
+    		<a class="ulink" href="" target="_top"><dsig:Signature/></a>
 		node.
 	    </p></li>
-<li><p>		Create signature context <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>
-		using <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE">xmlSecDSigCtxCreate</a> or
-		<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE">xmlSecDSigCtxInitialize</a>
+<li class="listitem"><p>
+		Create signature context <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a>
+		using <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxCreate" title="xmlSecDSigCtxCreate ()">xmlSecDSigCtxCreate</a> or
+		<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxInitialize" title="xmlSecDSigCtxInitialize ()">xmlSecDSigCtxInitialize</a>
 		functions.
 	    </p></li>
-<li><p>		Load signature key in <a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">keys manager</a> 
+<li class="listitem"><p>
+		Load signature key in <a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">keys manager</a> 
 		or generate a session key and set it in the signature context 
-		(<code class="STRUCTFIELD">signKey</code> member of 
-		<a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a> structure).
+		(<em class="structfield"><code>signKey</code></em> member of 
+		<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a> structure).
 	    </p></li>
-<li><p>		Sign data by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN">xmlSecDSigCtxSign</a> 
+<li class="listitem"><p>
+		Sign data by calling <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxSign" title="xmlSecDSigCtxSign ()">xmlSecDSigCtxSign</a> 
 		function.
 	    </p></li>
-<li><p>		Check returned value and consume signed data.
+<li class="listitem"><p>
+		Check returned value and consume signed data.
 	    </p></li>
-<li><p>		Destroy signature context <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>
-		using <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY">xmlSecDSigCtxDestroy</a> or
-		<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE">xmlSecDSigCtxFinalize</a>
+<li class="listitem"><p>
+		Destroy signature context <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a>
+		using <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDestroy" title="xmlSecDSigCtxDestroy ()">xmlSecDSigCtxDestroy</a> or
+		<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxFinalize" title="xmlSecDSigCtxFinalize ()">xmlSecDSigCtxFinalize</a>
 		functions.
 	    </p></li>
-</ul>
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN182"></a><p><b>Example 1. Signing a template.</b></p>
-<pre class="PROGRAMLISTING">/** 
+</ul></div>
+<p>
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.6.3.3.1"></a><p class="title"><b>Example 10. Signing a template.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/** 
  * sign_file:
  * @tmpl_file:		the signature template file name.
  * @key_file:		the PEM private key file name.
@@ -220,14 +205,15 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-examples-sign-template-file.html#XMLSEC-EXAMPLE-SIGN1">Full program listing</a></p>
-<p><a href="xmlsec-examples-sign-template-file.html#XMLSEC-EXAMPLE-SIGN1-TMPL">Simple signature template file</a></p>
+<p><a class="link" href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1" title="sign1.c">Full program listing</a></p>
+<p><a class="link" href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-tmpl" title="sign1-tmpl.xml">Simple signature template file</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-sign-encrypt.html"><b><<< Signing and encrypting documents.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-encrypt.html"><b>Encrypting data. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-simple-keys-store.html b/docs/api/xmlsec-notes-simple-keys-store.html
index d66797e..86f01fc 100644
--- a/docs/api/xmlsec-notes-simple-keys-store.html
+++ b/docs/api/xmlsec-notes-simple-keys-store.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Simple keys store.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<link rel="PREVIOUS" title="Keys manager." href="xmlsec-notes-keysmngr.html">
-<link rel="NEXT" title="Using keys manager for signatures/encryption." href="xmlsec-notes-keys-manager-sign-enc.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Simple keys store.: 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-notes-keysmngr.html" title="Keys manager.">
+<link rel="prev" href="xmlsec-notes-keysmngr.html" title="Keys manager.">
+<link rel="next" href="xmlsec-notes-keys-manager-sign-enc.html" title="Using keys manager for signatures/encryption.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,31 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-keysmngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-keysmngr.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-keysmngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-keys-manager-sign-enc.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-SIMPLE-KEYS-STORE">Simple keys store.</a></h1>
-<p>	XML Security Library has a built-in simple keys store 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-simple-keys-store"></a>Simple keys store.</h2></div></div></div>
+<p>
+	XML Security Library has a built-in simple keys store 
 	implemented using a keys list. You can use it in your application
 	if you have a small number of keys. However, this might be not a 
 	best option from performance point of view if you have a lot of keys.
 	In this case, you probably should implement your own keys store
 	using an SQL database or some other keys storage.
 	</p>
-<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN363"></a><p><b>Example 1. Initializing keys manager and loading keys from PEM files.</b></p>
-<pre class="PROGRAMLISTING">/**
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.10.3.3.1"></a><p class="title"><b>Example 16. Initializing keys manager and loading keys from PEM files.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * load_keys:
  * @files:		the list of filenames.
  * @files_size:		the number of filenames in #files.
@@ -188,13 +166,14 @@ load_keys(char** files, int files_size) {
     return(mngr);
 }
 		</pre>
-<p><a href="xmlsec-verify-with-keys-mngr.html#XMLSEC-EXAMPLE-VERIFY2">Full program listing</a></p>
+<p><a class="link" href="xmlsec-verify-with-keys-mngr.html#xmlsec-example-verify2" title="verify2.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-keysmngr.html"><b><<< Keys manager.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-keys-manager-sign-enc.html"><b>Using keys manager for signatures/encryption. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-structure.html b/docs/api/xmlsec-notes-structure.html
index af17a3a..d1eed6b 100644
--- a/docs/api/xmlsec-notes-structure.html
+++ b/docs/api/xmlsec-notes-structure.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library Structure.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Overview." href="xmlsec-notes-overview.html">
-<link rel="NEXT" title="Building the application with XML Security Library." href="xmlsec-notes-compiling.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library Structure.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-overview.html" title="Overview.">
+<link rel="next" href="xmlsec-notes-compiling.html" title="Building the application with XML Security Library.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,26 +73,28 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-overview.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-overview.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-compiling.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-STRUCTURE"></a>XML Security Library Structure.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-structure"></a>XML Security Library Structure.</h2></div></div></div>
 <p>In order to provide the an ability to use different crypto engines, 
 	the XML Security Library is splitted in two parts: core library (xmlsec)
 	and crypto library (xmlsec-openssl, xmlsec-mscrypt, xmlsec-gnutls, 
 	xmlsec-gcrypt, xmlsec-nss, ...).
 	</p>
-<div class="FIGURE">
-<a name="AEN28"></a><p><b>Figure 1. The library structure and dependencies.</b></p>
-<p><img src="images/structure.png" align="CENTER"></p>
-</div>	 
-	<p>The core library has no dependency on any crypto library and provides 
+<div class="figure">
+<a name="id-1.2.3.2.1"></a><p class="title"><b>Figure 1. The library structure and dependencies.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/structure.png" align="middle" alt="The library structure and dependencies."></div></div>
+</div>
+<p><br class="figure-break">	 
+	</p>
+<p>The core library has no dependency on any crypto library and provides 
 	implementation of all the engines as well as support for all the non 
 	crypto transforms (xml parser, c14n transforms, xpath and xslt 
 	transforms,...). The XML Security Crypto library provides 
@@ -129,10 +104,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	code might be general enough so switching crypto engine would be 
 	a matter of changing several #include directives.</p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-overview.html"><b><<< Overview.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-compiling.html"><b>Building the application with XML Security Library. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-templates.html b/docs/api/xmlsec-notes-templates.html
index fa495e8..ee5b60c 100644
--- a/docs/api/xmlsec-notes-templates.html
+++ b/docs/api/xmlsec-notes-templates.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Creating dynamic templates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Encrypting data." href="xmlsec-notes-encrypt.html">
-<link rel="NEXT" title="Creating dynamic signature templates." href="xmlsec-notes-dynamic-signature-templates.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Creating dynamic templates.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-encrypt.html" title="Encrypting data.">
+<link rel="next" href="xmlsec-notes-dynamic-signature-templates.html" title="Creating dynamic signature templates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,24 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-encrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-encrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-dynamic-signature-templates.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-TEMPLATES"></a>Creating dynamic templates.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-templates.html#XMLSEC-NOTES-TEMPLATES-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-dynamic-signature-templates.html">Creating dynamic signature templates.</a></dt>
-<dt><a href="xmlsec-notes-dynamic-encryption-templates.html">Creating dynamic encryption templates.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-templates"></a>Creating dynamic templates.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-templates.html#xmlsec-notes-templates-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-signature-templates.html">Creating dynamic signature templates.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-encryption-templates.html">Creating dynamic encryption templates.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-TEMPLATES-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-templates-overview"></a>Overview.</h2></div></div></div>
 <p>The XML Security Library uses templates to describe
         how and what data should be signed or encrypted. The template
         is a regular XML file. You can create templates in advance
@@ -128,10 +101,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
         inside your application.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-encrypt.html"><b><<< Encrypting data.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-dynamic-signature-templates.html"><b>Creating dynamic signature templates. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-transforms.html b/docs/api/xmlsec-notes-transforms.html
index 2df51ec..691e6e4 100644
--- a/docs/api/xmlsec-notes-transforms.html
+++ b/docs/api/xmlsec-notes-transforms.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Transforms and transforms chain.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Verifing document signed with X509 certificates." href="xmlsec-notes-verify-x509.html">
-<link rel="NEXT" title="Using context objects." href="xmlsec-notes-contexts.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Transforms and transforms chain.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-verify-x509.html" title="Verifing document signed with X509 certificates.">
+<link rel="next" href="xmlsec-notes-contexts.html" title="Using context objects.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,16 +73,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-verify-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-verify-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-contexts.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-TRANSFORMS"></a>Transforms and transforms chain.</h1>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-transforms"></a>Transforms and transforms chain.</h2></div></div></div>
 <p>XML Digital Signature and XML Encryption standards are 
 	very flexible and provide an XML developer many different ways to 
 	sign or encrypt any part (or even parts) of an XML document. 
@@ -121,18 +94,23 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	calculation digest, encrypting or decrypting. Each XML Security Library
 	transform provides at least one of the following callbacks: 
 	    </p>
-<p></p>
-<ul>
-<li><p>		    <a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBINMETHOD">push binary data</a>;
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+		    <a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBinMethod" title="xmlSecTransformPushBinMethod ()">push binary data</a>;
 		</p></li>
-<li><p>		    <a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXMLMETHOD">push xml data</a>;
+<li class="listitem"><p>
+		    <a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXmlMethod" title="xmlSecTransformPushXmlMethod ()">push xml data</a>;
 		</p></li>
-<li><p>		    <a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBINMETHOD">pop binary data</a>;
+<li class="listitem"><p>
+		    <a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBinMethod" title="xmlSecTransformPopBinMethod ()">pop binary data</a>;
 		</p></li>
-<li><p>		    <a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXMLMETHOD">pop xml data</a>.
+<li class="listitem"><p>
+		    <a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXmlMethod" title="xmlSecTransformPopXmlMethod ()">pop xml data</a>.
     		</p></li>
-</ul>
-    <p>One additional <a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">execute</a>
+</ul></div>
+<p>
+    </p>
+<p>One additional <a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">execute</a>
 	callback was added to simplify the development and reduce code size. 
 	This callback is used by default
 	implementations of the four external callbacks from the list above.
@@ -141,11 +119,11 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	binary data callbacks. However, in some cases using push/pop callbacks 
 	directly is more efficient.
     </p>
-<div class="FIGURE">
-<a name="AEN470"></a><p><b>Figure 1. The XML Security Library transform.</b></p>
-<p><img src="images/transform.png" align="CENTER"></p>
+<div class="figure">
+<a name="id-1.2.12.4"></a><p class="title"><b>Figure 9. The XML Security Library transform.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/transform.png" align="middle" alt="The XML Security Library transform."></div></div>
 </div>
-<p>XML Security Library constructs transforms chain according to the 
+<br class="figure-break"><p>XML Security Library constructs transforms chain according to the 
 	signature/encryption template or signed/encrypted document. 
 	If necessary, XML Security Library inserts XML parser or defaul
 	canonicalization to ensure that the output data type (binary or XML) 
@@ -157,21 +135,23 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	processes this chunk and pushes the result to the next transform 
 	in the chain. 
     </p>
-<div class="FIGURE">
-<a name="AEN475"></a><p><b>Figure 2. Transforms chain created for <dsig:Reference/> element processing.</b></p>
-<p><img src="images/transforms-chain.png" align="CENTER"></p>
+<div class="figure">
+<a name="id-1.2.12.7"></a><p class="title"><b>Figure 10. Transforms chain created for <dsig:Reference/> element processing.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/transforms-chain.png" align="middle" alt="Transforms chain created for <dsig:Reference/> element processing."></div></div>
 </div>
-<p>	</p>
-<div class="EXAMPLE">
-<a name="AEN479"></a><p><b>Example 1. Walking through transforms chain.</b></p>
-<pre class="PROGRAMLISTING">TODO
-	    </pre>
+<br class="figure-break"><p>
+	</p>
+<div class="example">
+<a name="id-1.2.12.8.1"></a><p class="title"><b>Example 23. Walking through transforms chain.</b></p>
+<div class="example-contents"><pre class="programlisting">
+TODO
+	    </pre></div>
 </div>
-    </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-verify-x509.html"><b><<< Verifing document signed with X509 certificates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-contexts.html"><b>Using context objects. >>></b></a></td>
-</tr></table>
+<p><br class="example-break">
+    </p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-verify-decrypt.html b/docs/api/xmlsec-notes-verify-decrypt.html
index 60a58d1..074304d 100644
--- a/docs/api/xmlsec-notes-verify-decrypt.html
+++ b/docs/api/xmlsec-notes-verify-decrypt.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifing and decrypting documents.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Creating dynamic encryption templates." href="xmlsec-notes-dynamic-encryption-templates.html">
-<link rel="NEXT" title="Verifying a signed document" href="xmlsec-notes-verify.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifing and decrypting documents.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-dynamic-encryption-templates.html" title="Creating dynamic encryption templates.">
+<link rel="next" href="xmlsec-notes-verify.html" title="Verifying a signed document">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,24 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-dynamic-encryption-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-dynamic-encryption-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-verify.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-VERIFY-DECRYPT"></a>Verifing and decrypting documents.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-verify-decrypt.html#XMLSEC-NOTES-VERIFY-DECRYPT-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-verify.html">Verifying a signed document</a></dt>
-<dt><a href="xmlsec-notes-decrypt.html">Decrypting an encrypted document</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-verify-decrypt"></a>Verifing and decrypting documents.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-verify-decrypt.html#xmlsec-notes-verify-decrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify.html">Verifying a signed document</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-decrypt.html">Decrypting an encrypted document</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-VERIFY-DECRYPT-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-verify-decrypt-overview"></a>Overview.</h2></div></div></div>
 <p>Since the template is just an XML file, it might be created in advance 
 	and saved in a file. It's also possible for application to create 
 	templates without using XML Security Library functions. Also in some 
@@ -128,16 +101,16 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	because all the necessary information is provided in the signed or 
 	encrypted document.
     	  </p>
-<div class="FIGURE">
-<a name="AEN271"></a><p><b>Figure 1. The verification or decryption processing model.</b></p>
-<p><img src="images/verif-dec-model.png" align="CENTER"></p>
-</div>	 
-	</div>
+<div class="figure">
+<a name="id-1.2.8.2.3.1"></a><p class="title"><b>Figure 5. The verification or decryption processing model.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/verif-dec-model.png" align="middle" alt="The verification or decryption processing model."></div></div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-dynamic-encryption-templates.html"><b><<< Creating dynamic encryption templates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-verify.html"><b>Verifying a signed document >>></b></a></td>
-</tr></table>
+<p><br class="figure-break">	 
+	</p>
+</div>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-verify-x509.html b/docs/api/xmlsec-notes-verify-x509.html
index 9506c48..67cfeb4 100644
--- a/docs/api/xmlsec-notes-verify-x509.html
+++ b/docs/api/xmlsec-notes-verify-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifing document signed with X509 certificates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Using X509 Certificates." href="xmlsec-notes-x509.html">
-<link rel="PREVIOUS" title="Signing data with X509 certificate." href="xmlsec-notes-sign-x509.html">
-<link rel="NEXT" title="Transforms and transforms chain." href="xmlsec-notes-transforms.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifing document signed with X509 certificates.: 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-notes-x509.html" title="Using X509 Certificates.">
+<link rel="prev" href="xmlsec-notes-sign-x509.html" title="Signing data with X509 certificate.">
+<link rel="next" href="xmlsec-notes-transforms.html" title="Transforms and transforms chain.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,38 +73,45 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-sign-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-x509.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-x509.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-sign-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-transforms.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-VERIFY-X509">Verifing document signed with X509 certificates.</a></h1>
-<p>	If the document is signed with an X509 certificate then the signature
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-verify-x509"></a>Verifing document signed with X509 certificates.</h2></div></div></div>
+<p>
+	If the document is signed with an X509 certificate then the signature
 	verification consist of two steps:
 	</p>
-<p></p>
-<ul>
-<li><p>Creating and verifing X509 certificates chain.
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>Creating and verifing X509 certificates chain.
 	    </p></li>
-<li><p>Verifing signature itself using key exrtacted from 
+<li class="listitem"><p>Verifing signature itself using key exrtacted from 
 	    a certificate verified on previous step.
 	    </p></li>
-</ul>
+</ul></div>
+<p>
 	Certificates chain is constructed from certificates in a way that
 	each certificate in the chain is signed with previous one:
-	<div class="FIGURE">
-<a name="AEN442"></a><p><b>Figure 1. Certificates chain.</b></p>
-<pre class="PROGRAMLISTING">Certificate A (signed with B) <- Certificate B (signed with C) <- ... <- Root Certificate (signed by itself)
-	    </pre>
+	</p>
+<div class="figure">
+<a name="id-1.2.11.4.2.2"></a><p class="title"><b>Figure 8. Certificates chain.</b></p>
+<div class="figure-contents"><pre class="programlisting">
+Certificate A (signed with B) <- Certificate B (signed with C) <- ... <- Root Certificate (signed by itself)
+	    </pre></div>
 </div>
+<p><br class="figure-break">
 	At the end of the chain there is a "Root Certificate" which
 	is signed by itself. There is no way to verify the validity of the
 	root certificate and application have to "trust" it
 	(another name for root certificates is "trusted" certificates).
-	<p>	Application can use <a href="xmlsec-app.html#XMLSECCRYPTOAPPKEYSMNGRCERTLOAD">xmlSecCryptoAppKeysMngrCertLoad</a>
+	</p>
+<p>
+	Application can use <a class="link" href="xmlsec-app.html#xmlSecCryptoAppKeysMngrCertLoad" title="xmlSecCryptoAppKeysMngrCertLoad ()">xmlSecCryptoAppKeysMngrCertLoad</a>
 	function to load both "trusted" and "un-trusted"
 	certificates. However, the selection of "trusted"
 	certificates is very sensitive process and this function might be
@@ -140,9 +120,11 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	or specified in crypto engine configuration files.
 	Check XML Security Library API reference for more details. 
 	</p>
-<div class="EXAMPLE">
-<a name="AEN447"></a><p><b>Example 3. Loading trusted X509 certificate.</b></p>
-<pre class="PROGRAMLISTING">/**
+<div class="example">
+<a name="id-1.2.11.4.3.2"></a><p class="title"><b>Example 22. Loading trusted X509 certificate.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/**
  * load_trusted_certs:
  * @files:		the list of filenames.
  * @files_size:		the number of filenames in #files.
@@ -191,13 +173,14 @@ load_trusted_certs(char** files, int files_size) {
     return(mngr);
 }
 	    </pre>
-<p><a href="xmlsec-verify-with-x509.html#XMLSEC-EXAMPLE-VERIFY3">Full program listing</a></p>
+<p><a class="link" href="xmlsec-verify-with-x509.html#xmlsec-example-verify3" title="verify3.c">Full program listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-sign-x509.html"><b><<< Signing data with X509 certificate.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-transforms.html"><b>Transforms and transforms chain. >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-verify.html b/docs/api/xmlsec-notes-verify.html
index 716d77d..753bb1f 100644
--- a/docs/api/xmlsec-notes-verify.html
+++ b/docs/api/xmlsec-notes-verify.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifying a signed document</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Verifing and decrypting documents." href="xmlsec-notes-verify-decrypt.html">
-<link rel="PREVIOUS" title="Verifing and decrypting documents." href="xmlsec-notes-verify-decrypt.html">
-<link rel="NEXT" title="Decrypting an encrypted document" href="xmlsec-notes-decrypt.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifying a signed document: 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-notes-verify-decrypt.html" title="Verifing and decrypting documents.">
+<link rel="prev" href="xmlsec-notes-verify-decrypt.html" title="Verifing and decrypting documents.">
+<link rel="next" href="xmlsec-notes-decrypt.html" title="Decrypting an encrypted document">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,47 +73,58 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-verify-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes-verify-decrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes-verify-decrypt.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-verify-decrypt.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-decrypt.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-VERIFY">Verifying a signed document</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-verify"></a>Verifying a signed document</h2></div></div></div>
 <p>The typical signature verification process includes following steps:
 	  </p>
-<p></p>
-<ul>
-<li><p>		Load keys, X509 certificates, etc. in the <a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR">keys manager</a> .
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>
+		Load keys, X509 certificates, etc. in the <a class="link" href="xmlsec-keysmngr.html#xmlSecKeysMngr" title="struct xmlSecKeysMngr">keys manager</a> .
 	    </p></li>
-<li><p>		Create signature context <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>
-		using <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE">xmlSecDSigCtxCreate</a> or
-		<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE">xmlSecDSigCtxInitialize</a>
+<li class="listitem"><p>
+		Create signature context <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a>
+		using <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxCreate" title="xmlSecDSigCtxCreate ()">xmlSecDSigCtxCreate</a> or
+		<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxInitialize" title="xmlSecDSigCtxInitialize ()">xmlSecDSigCtxInitialize</a>
 		functions.
 	    </p></li>
-<li><p>		Select start verification 
-    		<a href="http://www.w3.org/TR/xmldsig-core/#sec-Signature" target="_top"><dsig:Signature/></a>
+<li class="listitem"><p>
+		Select start verification 
+    		<a class="ulink" href="" target="_top"><dsig:Signature/></a>
 		node in the signed XML document.
 	    </p></li>
-<li><p>		Verify signature by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY">xmlSecDSigCtxVerify</a> 
+<li class="listitem"><p>
+		Verify signature by calling <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxVerify" title="xmlSecDSigCtxVerify ()">xmlSecDSigCtxVerify</a> 
 		function.
 	    </p></li>
-<li><p>		Check returned value and verification status (<code class="STRUCTFIELD">status</code>
-		member of <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a> structure).
-		If necessary, consume returned data from the <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">context</a>.
+<li class="listitem"><p>
+		Check returned value and verification status (<em class="structfield"><code>status</code></em>
+		member of <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a> structure).
+		If necessary, consume returned data from the <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">context</a>.
 	    </p></li>
-<li><p>		Destroy signature context <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a>
-		using <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY">xmlSecDSigCtxDestroy</a> or
-		<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE">xmlSecDSigCtxFinalize</a>
+<li class="listitem"><p>
+		Destroy signature context <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a>
+		using <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDestroy" title="xmlSecDSigCtxDestroy ()">xmlSecDSigCtxDestroy</a> or
+		<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxFinalize" title="xmlSecDSigCtxFinalize ()">xmlSecDSigCtxFinalize</a>
 		functions.
 	    </p></li>
-</ul>
-	<p>	     </p>
-<div class="EXAMPLE">
-<a name="AEN303"></a><p><b>Example 1. Verifying a document.</b></p>
-<pre class="PROGRAMLISTING">/** 
+</ul></div>
+<p>
+	</p>
+<p>
+	     </p>
+<div class="example">
+<a name="id-1.2.8.3.3.1"></a><p class="title"><b>Example 14. Verifying a document.</b></p>
+<div class="example-contents">
+<pre class="programlisting">
+/** 
  * verify_file:
  * @xml_file:		the signed XML file name.
  * @key_file:		the PEM public key file name.
@@ -221,13 +205,14 @@ done:
     return(res);
 }
 		</pre>
-<p><a href="xmlsec-verify-with-key.html#XMLSEC-EXAMPLE-VERIFY1">Full Program Listing</a></p>
+<p><a class="link" href="xmlsec-verify-with-key.html#xmlsec-example-verify1" title="verify1.c">Full Program Listing</a></p>
 </div>
-	</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-verify-decrypt.html"><b><<< Verifing and decrypting documents.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-decrypt.html"><b>Decrypting an encrypted document >>></b></a></td>
-</tr></table>
+</div>
+<p><br class="example-break">
+	</p>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes-x509.html b/docs/api/xmlsec-notes-x509.html
index c58f772..1738427 100644
--- a/docs/api/xmlsec-notes-x509.html
+++ b/docs/api/xmlsec-notes-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Using X509 Certificates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Implementing a custom keys store." href="xmlsec-notes-custom-keys-store.html">
-<link rel="NEXT" title="Signing data with X509 certificate." href="xmlsec-notes-sign-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Using X509 Certificates.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-notes-custom-keys-store.html" title="Implementing a custom keys store.">
+<link rel="next" href="xmlsec-notes-sign-x509.html" title="Signing data with X509 certificate.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,24 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-notes-custom-keys-store.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-notes-custom-keys-store.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-sign-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NOTES-X509"></a>Using X509 Certificates.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-x509.html#XMLSEC-NOTES-X509-OVERVIEW">Overview.</a></dt>
-<dt><a href="xmlsec-notes-sign-x509.html">Signing data with X509 certificate.</a></dt>
-<dt><a href="xmlsec-notes-verify-x509.html">Verifing document signed with X509 certificates.</a></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-notes-x509"></a>Using X509 Certificates.</h2></div></div></div>
+<div class="toc"><dl class="toc">
+<dt><span class="sect1"><a href="xmlsec-notes-x509.html#xmlsec-notes-x509-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign-x509.html">Signing data with X509 certificate.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify-x509.html">Verifing document signed with X509 certificates.</a></span></dt>
 </dl></div>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-NOTES-X509-OVERVIEW">Overview.</a></h1>
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-notes-x509-overview"></a>Overview.</h2></div></div></div>
 <p>X509 certificate is one of many possible keys data object that can be
         associated with a key. Application may read and write X509 data
 	from/to XML file. The X509 certificates management policies significantly
@@ -128,10 +101,8 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 	</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-notes-custom-keys-store.html"><b><<< Implementing a custom keys store.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-sign-x509.html"><b>Signing data with X509 certificate. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-notes.html b/docs/api/xmlsec-notes.html
index 88c9b6f..1976753 100644
--- a/docs/api/xmlsec-notes.html
+++ b/docs/api/xmlsec-notes.html
@@ -1,40 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library Tutorial</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="PREVIOUS" title="XML Security Library Reference Manual" href="index.html">
-<link rel="NEXT" title="Overview." href="xmlsec-notes-overview.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Part I. XML Security Library Tutorial: 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="index.html" title="XML Security Library Reference Manual">
+<link rel="prev" href="index.html" title="XML Security Library Reference Manual">
+<link rel="next" href="xmlsec-notes-overview.html" title="Overview.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -99,40 +73,143 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-notes-overview.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="PART">
-<a name="XMLSEC-NOTES"></a><div class="TITLEPAGE">
-<h1 class="TITLE">I. XML Security Library Tutorial</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-notes-overview.html">Overview.</a></dt>
-<dt><a href="xmlsec-notes-structure.html">XML Security Library Structure.</a></dt>
-<dt><a href="xmlsec-notes-compiling.html">Building the application with XML Security Library.</a></dt>
-<dt><a href="xmlsec-notes-init-shutdown.html">Initialization and shutdown.</a></dt>
-<dt><a href="xmlsec-notes-sign-encrypt.html">Signing and encrypting documents.</a></dt>
-<dt><a href="xmlsec-notes-templates.html">Creating dynamic templates.</a></dt>
-<dt><a href="xmlsec-notes-verify-decrypt.html">Verifing and decrypting documents.</a></dt>
-<dt><a href="xmlsec-notes-keys.html">Keys.</a></dt>
-<dt><a href="xmlsec-notes-keysmngr.html">Keys manager.</a></dt>
-<dt><a href="xmlsec-notes-x509.html">Using X509 Certificates.</a></dt>
-<dt><a href="xmlsec-notes-transforms.html">Transforms and transforms chain.</a></dt>
-<dt><a href="xmlsec-notes-contexts.html">Using context objects.</a></dt>
-<dt><a href="xmlsec-notes-new-crypto.html">Adding support for new cryptographic library.</a></dt>
-<dt><a href="xmlsec-examples.html">Examples.</a></dt>
-<dt><a href="xmlsec-signature-klasses.html">APPENDIX A. XML Security Library Signature Klasses.</a></dt>
-<dt><a href="xmlsec-encryption-klasses.html">APPENDIX B. XML Security Library Encryption Klasses.</a></dt>
-</dl></div>
+<div class="part">
+<div class="titlepage"><div><div><h1 class="title">
+<a name="xmlsec-notes"></a>Part I. XML Security Library Tutorial</h1></div></div></div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl class="toc">
+<dt><span class="chapter"><a href="xmlsec-notes-overview.html">Overview.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-structure.html">XML Security Library Structure.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-compiling.html">Building the application with XML Security Library.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling.html#xmlsec-notes-compiling-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-include-files.html">Include files.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-unix.html">Compiling and linking on Unix.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-windows.html">Compiling and linking on Windows.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-compiling-others.html">Compiling and linking on other systems.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-init-shutdown.html">Initialization and shutdown.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-sign-encrypt.html">Signing and encrypting documents.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-sign-encrypt.html#xmlsec-notes-sign-encrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign.html">Signing a document.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-encrypt.html">Encrypting data.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-templates.html">Creating dynamic templates.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-templates.html#xmlsec-notes-templates-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-signature-templates.html">Creating dynamic signature templates.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-dynamic-encryption-templates.html">Creating dynamic encryption templates.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-verify-decrypt.html">Verifing and decrypting documents.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-verify-decrypt.html#xmlsec-notes-verify-decrypt-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify.html">Verifying a signed document</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-decrypt.html">Decrypting an encrypted document</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-keys.html">Keys.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-keysmngr.html">Keys manager.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-keysmngr.html#xmlsec-notes-keysmngr-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-simple-keys-store.html">Simple keys store.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-manager-sign-enc.html">Using keys manager for signatures/encryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-keys-mngr-verify-decrypt.html">Using keys manager for verification/decryption.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-custom-keys-store.html">Implementing a custom keys store.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-x509.html">Using X509 Certificates.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-x509.html#xmlsec-notes-x509-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-sign-x509.html">Signing data with X509 certificate.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-verify-x509.html">Verifing document signed with X509 certificates.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-notes-transforms.html">Transforms and transforms chain.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-contexts.html">Using context objects.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-notes-new-crypto.html">Adding support for new cryptographic library.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto.html#xmlsec-notes-new-crypto-overview">Overview.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-skeleton.html">Creating a framework from the skeleton.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-functions.html">xmlSecCryptoApp* functions.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-klasses.html">Klasses and objects.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-transforms.html">Cryptographic transforms.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-keys.html">Keys data and keys data stores.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-simple-keys-mngr.html">Default keys manager.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-notes-new-crypto-sharing-results.html">Sharing the results.</a></span></dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-examples.html">Examples.</a></span></dt>
+<dd><dl>
+<dt><span class="sect1"><a href="xmlsec-examples.html#xmlsec-examples-overview">XML Security Library Examples.</a></span></dt>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-template-file.html">Signing a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1">sign1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-tmpl">sign1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-template-file.html#xmlsec-example-sign1-res">sign1-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-dynamimc-template.html">Signing a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2">sign2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-doc">sign2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-dynamimc-template.html#xmlsec-example-sign2-res">sign2-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-examples-sign-x509.html">Signing with X509 certificate.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3">sign3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-doc">sign3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-examples-sign-x509.html#xmlsec-example-sign3-res">sign3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-key.html">Verifying a signature with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-key.html#xmlsec-example-verify1">verify1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-keys-mngr.html">Verifying a signature with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-keys-mngr.html#xmlsec-example-verify2">verify2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-x509.html">Verifying a signature with X509 certificates.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-verify-with-x509.html#xmlsec-example-verify3">verify3.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-verify-with-restrictions.html">Verifying a signature with additional restrictions.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4">verify4.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-tmpl">verify4-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-res">verify4-res.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-tmpl">verify4-bad-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-verify-with-restrictions.html#xmlsec-example-verify4-bad-res">verify4-bad-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-template-file.html">Encrypting data with a template file.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1">encrypt1.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-tmpl">encrypt1-tmpl.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-template-file.html#xmlsec-example-encrypt1-res">encrypt1-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-dynamic-template.html">Encrypting data with a dynamicaly created template.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2">encrypt2.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-doc">encrypt2-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-dynamic-template.html#xmlsec-example-encrypt2-res">encrypt2-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-encrypt-with-session-key.html">Encrypting data with a session key.</a></span></dt>
+<dd><dl>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3">encrypt3.c</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-doc">encrypt3-doc.xml</a></span></dt>
+<dt><span class="sect2"><a href="xmlsec-encrypt-with-session-key.html#xmlsec-example-encrypt3-res">encrypt3-res.xml</a></span></dt>
+</dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-signle-key.html">Decrypting data with a single key.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-signle-key.html#xmlsec-example-decrypt1">decrypt1.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-decrypt-with-keys-mngr.html">Decrypting data with keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-decrypt-with-keys-mngr.html#xmlsec-example-decrypt2">decrypt2.c</a></span></dt></dl></dd>
+<dt><span class="sect1"><a href="xmlsec-custom-keys-manager.html">Writing a custom keys manager.</a></span></dt>
+<dd><dl><dt><span class="sect2"><a href="xmlsec-custom-keys-manager.html#xmlsec-example-decrypt3">decrypt3.c</a></span></dt></dl></dd>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-signature-klasses.html">APPENDIX A. XML Security Library Signature Klasses.</a></span></dt>
+<dt><span class="chapter"><a href="xmlsec-encryption-klasses.html">APPENDIX B. XML Security Library Encryption Klasses.</a></span></dt>
+</dl>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="index.html"><b><<< XML Security Library Reference Manual</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-notes-overview.html"><b>Overview. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-app.html b/docs/api/xmlsec-nss-app.html
index 8464729..7d2eba2 100644
--- a/docs/api/xmlsec-nss-app.html
+++ b/docs/api/xmlsec-nss-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="NEXT" title="bignum" href="xmlsec-nss-bignum.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="next" href="xmlsec-nss-bignum.html" title="bignum">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1026 +73,1038 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-bignum.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN38411"></a><h2>Name</h2>app -- Application functions implementation for NSS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38416"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-app.top_of_page"></a>app</span></h2>
+<p>app — Application functions implementation for NSS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPINIT">xmlSecNssAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppInit" title="xmlSecNssAppInit ()">xmlSecNssAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPSHUTDOWN">xmlSecNssAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppShutdown" title="xmlSecNssAppShutdown ()">xmlSecNssAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRINIT">xmlSecNssAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrInit" title="xmlSecNssAppDefaultKeysMngrInit ()">xmlSecNssAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecNssAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrAdoptKey" title="xmlSecNssAppDefaultKeysMngrAdoptKey ()">xmlSecNssAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRLOAD">xmlSecNssAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrLoad" title="xmlSecNssAppDefaultKeysMngrLoad ()">xmlSecNssAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRSAVE">xmlSecNssAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrSave" title="xmlSecNssAppDefaultKeysMngrSave ()">xmlSecNssAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOAD">xmlSecNssAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoad" title="xmlSecNssAppKeysMngrCertLoad ()">xmlSecNssAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOADMEMORY">xmlSecNssAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoadMemory" title="xmlSecNssAppKeysMngrCertLoadMemory ()">xmlSecNssAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYSMNGRCERTLOADSECITEM">xmlSecNssAppKeysMngrCertLoadSECItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeysMngrCertLoadSECItem" title="xmlSecNssAppKeysMngrCertLoadSECItem ()">xmlSecNssAppKeysMngrCertLoadSECItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOAD">xmlSecNssAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoad" title="xmlSecNssAppKeyLoad ()">xmlSecNssAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOADMEMORY">xmlSecNssAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoadMemory" title="xmlSecNssAppKeyLoadMemory ()">xmlSecNssAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYLOADSECITEM">xmlSecNssAppKeyLoadSECItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyLoadSECItem" title="xmlSecNssAppKeyLoadSECItem ()">xmlSecNssAppKeyLoadSECItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOAD">xmlSecNssAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12Load" title="xmlSecNssAppPkcs12Load ()">xmlSecNssAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOADMEMORY">xmlSecNssAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12LoadMemory" title="xmlSecNssAppPkcs12LoadMemory ()">xmlSecNssAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPPKCS12LOADSECITEM">xmlSecNssAppPkcs12LoadSECItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppPkcs12LoadSECItem" title="xmlSecNssAppPkcs12LoadSECItem ()">xmlSecNssAppPkcs12LoadSECItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOAD">xmlSecNssAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoad" title="xmlSecNssAppKeyCertLoad ()">xmlSecNssAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOADMEMORY">xmlSecNssAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoadMemory" title="xmlSecNssAppKeyCertLoadMemory ()">xmlSecNssAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYCERTLOADSECITEM">xmlSecNssAppKeyCertLoadSECItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyCertLoadSECItem" title="xmlSecNssAppKeyCertLoadSECItem ()">xmlSecNssAppKeyCertLoadSECItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPKEYFROMCERTLOADSECITEM">xmlSecNssAppKeyFromCertLoadSECItem</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppKeyFromCertLoadSECItem" title="xmlSecNssAppKeyFromCertLoadSECItem ()">xmlSecNssAppKeyFromCertLoadSECItem</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-nss-app.html#XMLSECNSSAPPGETDEFAULTPWDCALLBACK">xmlSecNssAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-app.html#xmlSecNssAppGetDefaultPwdCallback" title="xmlSecNssAppGetDefaultPwdCallback ()">xmlSecNssAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Application functions implementation for NSS.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPINIT"></a><h3>xmlSecNssAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-app.description"></a><h2>Description</h2>
+<p>
+Application functions implementation for NSS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNssAppInit"></a><h3>xmlSecNssAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN38576"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38578"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the path to NSS database files.</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the path to NSS database files.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN38587"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPSHUTDOWN"></a><h3>xmlSecNssAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppShutdown"></a><h3>xmlSecNssAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN38601"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecNssAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with NSS keys store <a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREID"><span class="TYPE">xmlSecNssKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecNssAppDefaultKeysMngrInit"></a><h3>xmlSecNssAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with NSS keys store <a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreId" title="xmlSecNssKeysStoreId"><span class="type">xmlSecNssKeysStoreId</span></a>
 and a default NSS crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN38618"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38620"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN38629"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecNssAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppDefaultKeysMngrAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecNssAppDefaultKeysMngrInit</span></a>
+<div class="refsect2">
+<a name="xmlSecNssAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecNssAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppDefaultKeysMngrAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                     <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrInit" title="xmlSecNssAppDefaultKeysMngrInit ()"><span class="type">xmlSecNssAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN38650"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38652"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38667"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecNssAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecNssAppDefaultKeysMngrLoad"></a><h3>xmlSecNssAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-nss-app.html#XMLSECNSSAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecNssAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN38688"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38690"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-nss-app.html#xmlSecNssAppDefaultKeysMngrInit" title="xmlSecNssAppDefaultKeysMngrInit ()"><span class="type">xmlSecNssAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38705"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecNssAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecNssAppDefaultKeysMngrSave"></a><h3>xmlSecNssAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN38726"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38728"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38749"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecNssAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeysMngrCertLoad"></a><h3>xmlSecNssAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code></p>
-<div class="REFSECT3">
-<a name="AEN38774"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38776"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+untrusted certs in <em class="parameter"><code>store</code></em>
+</p>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format (PEM or DER).</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format (PEM or DER).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN38803"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecNssAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeysMngrCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                    <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeysMngrCertLoadMemory"></a><h3>xmlSecNssAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeysMngrCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code></p>
-<div class="REFSECT3">
-<a name="AEN38831"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38833"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+untrusted certs in <em class="parameter"><code>store</code></em>
+</p>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the key binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the key binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the key binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate format (PEM or DER).</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate format (PEM or DER).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN38866"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYSMNGRCERTLOADSECITEM"></a><h3>xmlSecNssAppKeysMngrCertLoadSECItem ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeysMngrCertLoadSECItem (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                     <code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *secItem</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">secItem</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeysMngrCertLoadSECItem"></a><h3>xmlSecNssAppKeysMngrCertLoadSECItem ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeysMngrCertLoadSECItem (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                     <em class="parameter"><code><font><span class="type">SECItem</span></font> *secItem</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>secItem</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code></p>
-<div class="REFSECT3">
-<a name="AEN38891"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38893"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+untrusted certs in <em class="parameter"><code>store</code></em>
+</p>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoadSECItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>secItem</p></td>
-<td><p>the pointer to SECItem.</p></td>
-<td> </td>
+<td class="parameter_name"><p>secItem</p></td>
+<td class="parameter_description"><p>the pointer to SECItem.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate format (PEM or DER).</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate format (PEM or DER).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38920"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeysMngrCertLoadSECItem.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYLOAD"></a><h3>xmlSecNssAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyLoad"></a><h3>xmlSecNssAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                     <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                     <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                     <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from a file</p>
-<div class="REFSECT3">
-<a name="AEN38946"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN38948"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN38981"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYLOADMEMORY"></a><h3>xmlSecNssAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                           <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
-<p>Reads key from a binary <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyLoadMemory"></a><h3>xmlSecNssAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                           <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
+<p>Reads key from a binary <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN39011"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39013"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the key binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the key binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the key binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key data format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key data format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key data2 password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key data2 password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN39052"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYLOADSECITEM"></a><h3>xmlSecNssAppKeyLoadSECItem ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppKeyLoadSECItem (<code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *secItem</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyLoadSECItem"></a><h3>xmlSecNssAppKeyLoadSECItem ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppKeyLoadSECItem (<em class="parameter"><code><font><span class="type">SECItem</span></font> *secItem</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from a file</p>
-<div class="REFSECT3">
-<a name="AEN39078"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39080"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoadSECItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>secItem</p></td>
-<td><p>the pointer to sec item.</p></td>
-<td> </td>
+<td class="parameter_name"><p>secItem</p></td>
+<td class="parameter_description"><p>the pointer to sec item.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39113"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyLoadSECItem.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPPKCS12LOAD"></a><h3>xmlSecNssAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppPkcs12Load"></a><h3>xmlSecNssAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                        <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file.
 For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN39136"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39138"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39165"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPPKCS12LOADMEMORY"></a><h3>xmlSecNssAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppPkcs12LoadMemory"></a><h3>xmlSecNssAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                              <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 binary data.
 For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN39191"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39193"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the key binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the key binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the key binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN39226"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPPKCS12LOADSECITEM"></a><h3>xmlSecNssAppPkcs12LoadSECItem ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppPkcs12LoadSECItem (<code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *secItem</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppPkcs12LoadSECItem"></a><h3>xmlSecNssAppPkcs12LoadSECItem ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppPkcs12LoadSECItem (<em class="parameter"><code><font><span class="type">SECItem</span></font> *secItem</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 SECItem.
 For uniformity, call xmlSecNssAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN39249"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39251"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12LoadSECItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>secItem</p></td>
-<td><p>the <code class="PARAMETER">SECItem</code>
+<td class="parameter_name"><p>secItem</p></td>
+<td class="parameter_description"><p>the <em class="parameter"><code>SECItem</code></em>
 object.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN39279"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppPkcs12LoadSECItem.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYCERTLOAD"></a><h3>xmlSecNssAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyCertLoad"></a><h3>xmlSecNssAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key</p>
-<div class="REFSECT3">
-<a name="AEN39300"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39302"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN39323"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYCERTLOADMEMORY"></a><h3>xmlSecNssAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                               <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyCertLoadMemory"></a><h3>xmlSecNssAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from <em class="parameter"><code>data</code></em>
  and adds it to key</p>
-<div class="REFSECT3">
-<a name="AEN39347"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39349"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the key binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the key binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the key binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the key binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39376"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYCERTLOADSECITEM"></a><h3>xmlSecNssAppKeyCertLoadSECItem ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssAppKeyCertLoadSECItem (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *secItem</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from <code class="PARAMETER">secItem</code>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyCertLoadSECItem"></a><h3>xmlSecNssAppKeyCertLoadSECItem ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssAppKeyCertLoadSECItem (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                <em class="parameter"><code><font><span class="type">SECItem</span></font> *secItem</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from <em class="parameter"><code>secItem</code></em>
  and adds it to key</p>
-<div class="REFSECT3">
-<a name="AEN39397"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39399"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoadSECItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>secItem</p></td>
-<td><p>the pointer to SECItem.</p></td>
-<td> </td>
+<td class="parameter_name"><p>secItem</p></td>
+<td class="parameter_description"><p>the pointer to SECItem.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39420"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyCertLoadSECItem.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPKEYFROMCERTLOADSECITEM"></a><h3>xmlSecNssAppKeyFromCertLoadSECItem ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecNssAppKeyFromCertLoadSECItem (<code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *secItem</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppKeyFromCertLoadSECItem"></a><h3>xmlSecNssAppKeyFromCertLoadSECItem ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecNssAppKeyFromCertLoadSECItem (<em class="parameter"><code><font><span class="type">SECItem</span></font> *secItem</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Loads public key from cert.</p>
-<div class="REFSECT3">
-<a name="AEN39437"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39439"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyFromCertLoadSECItem.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>secItem</p></td>
-<td><p>the <code class="PARAMETER">SECItem</code>
+<td class="parameter_name"><p>secItem</p></td>
+<td class="parameter_description"><p>the <em class="parameter"><code>SECItem</code></em>
 object.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the cert format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the cert format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN39455"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppKeyFromCertLoadSECItem.returns"></a><h4>Returns</h4>
 <p> pointer to key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecNssAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
-xmlSecNssAppGetDefaultPwdCallback (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssAppGetDefaultPwdCallback"></a><h3>xmlSecNssAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
+xmlSecNssAppGetDefaultPwdCallback (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN39468"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-nss-app.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-ref.html"><b><<< XML Security Library for NSS API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-bignum.html"><b>bignum >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-bignum.html b/docs/api/xmlsec-nss-bignum.html
index 5b91538..41f6d98 100644
--- a/docs/api/xmlsec-nss-bignum.html
+++ b/docs/api/xmlsec-nss-bignum.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>bignum</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-nss-app.html">
-<link rel="NEXT" title="crypto" href="xmlsec-nss-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>bignum: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-app.html" title="app">
+<link rel="next" href="xmlsec-nss-crypto.html" title="crypto">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,151 +73,156 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-bignum.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-BIGNUM"></a>bignum</h1>
-<div class="REFNAMEDIV">
-<a name="AEN39479"></a><h2>Name</h2>bignum -- Big numbers helper functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-BIGNUM.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39484"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-bignum"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-bignum.top_of_page"></a>bignum</span></h2>
+<p>bignum — Big numbers helper functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-bignum.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td>
-<font><span class="RETURNVALUE">SECItem</span></font> *</td>
-<td>
-<a href="xmlsec-nss-bignum.html#XMLSECNSSNODEGETBIGNUMVALUE">xmlSecNssNodeGetBigNumValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">SECItem</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-bignum.html#xmlSecNssNodeGetBigNumValue" title="xmlSecNssNodeGetBigNumValue ()">xmlSecNssNodeGetBigNumValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-bignum.html#XMLSECNSSNODESETBIGNUMVALUE">xmlSecNssNodeSetBigNumValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-bignum.html#xmlSecNssNodeSetBigNumValue" title="xmlSecNssNodeSetBigNumValue ()">xmlSecNssNodeSetBigNumValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-nss-bignum.description"></a><h2>Description</h2>
+<p>
+Big numbers helper functions.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-BIGNUM.DESCRIPTION"></a><h2>Description</h2>
-<p>Big numbers helper functions.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-BIGNUM.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSNODEGETBIGNUMVALUE"></a><h3>xmlSecNssNodeGetBigNumValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">SECItem</span></font> *
-xmlSecNssNodeGetBigNumValue (<code class="PARAMETER"><font><span class="TYPE">PRArenaPool</span></font> *arena</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">SECItem</span></font> *a</code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-bignum.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNssNodeGetBigNumValue"></a><h3>xmlSecNssNodeGetBigNumValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">SECItem</span></font> *
+xmlSecNssNodeGetBigNumValue (<em class="parameter"><code><font><span class="type">PRArenaPool</span></font> *arena</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                             <em class="parameter"><code><font><span class="type">SECItem</span></font> *a</code></em>);</pre>
 <p>Converts the node content from CryptoBinary format
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-CryptoBinary</span></font>)
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-CryptoBinary</span></font>)
 to a SECItem. If no SECItem object provided then a new
 one is created (caller is responsible for freeing it).</p>
-<div class="REFSECT3">
-<a name="AEN39525"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39527"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssNodeGetBigNumValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>arena</p></td>
-<td><p>the arena from which to allocate memory</p></td>
-<td> </td>
+<td class="parameter_name"><p>arena</p></td>
+<td class="parameter_description"><p>the arena from which to allocate memory</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cur</p></td>
-<td><p>the poitner to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the poitner to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>a</p></td>
-<td><p>a SECItem object to hold the BigNum value</p></td>
-<td> </td>
+<td class="parameter_name"><p>a</p></td>
+<td class="parameter_description"><p>a SECItem object to hold the BigNum value</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39548"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssNodeGetBigNumValue.returns"></a><h4>Returns</h4>
 <p> a pointer to SECItem produced from CryptoBinary string
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSNODESETBIGNUMVALUE"></a><h3>xmlSecNssNodeSetBigNumValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssNodeSetBigNumValue (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">SECItem</span></font> *a</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">int</span></font> addLineBreaks</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssNodeSetBigNumValue"></a><h3>xmlSecNssNodeSetBigNumValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssNodeSetBigNumValue (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">SECItem</span></font> *a</code></em>,
+                             <em class="parameter"><code><font><span class="type">int</span></font> addLineBreaks</code></em>);</pre>
 <p>Converts SECItem to CryptoBinary string
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-CryptoBinary</span></font>)
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-CryptoBinary</span></font>)
 and sets it as the content of the given node. If the
 addLineBreaks is set then line breaks are added
 before and after the CryptoBinary string.</p>
-<div class="REFSECT3">
-<a name="AEN39570"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39572"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssNodeSetBigNumValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<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><p>a</p></td>
-<td><p>a SECItem containing the BigNum value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>a</p></td>
+<td class="parameter_description"><p>a SECItem containing the BigNum value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>addLineBreaks</p></td>
-<td><p>if the flag is equal to 1 then
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN39593"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssNodeSetBigNumValue.returns"></a><h4>Returns</h4>
 <p> 0 on success or -1 otherwise.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-BIGNUM.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-nss-bignum.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-crypto.html"><b>crypto >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-crypto.html b/docs/api/xmlsec-nss-crypto.html
index f0b83ea..0542e2f 100644
--- a/docs/api/xmlsec-nss-crypto.html
+++ b/docs/api/xmlsec-nss-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>crypto</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="bignum" href="xmlsec-nss-bignum.html">
-<link rel="NEXT" title="keysstore" href="xmlsec-nss-keysstore.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>crypto: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-bignum.html" title="bignum">
+<link rel="next" href="xmlsec-nss-keysstore.html" title="keysstore">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1326 +73,1524 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-bignum.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-crypto.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-bignum.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-keysstore.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-CRYPTO"></a>crypto</h1>
-<div class="REFNAMEDIV">
-<a name="AEN39604"></a><h2>Name</h2>crypto -- Crypto transforms implementation for NSS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-CRYPTO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39609"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-crypto"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-crypto.top_of_page"></a>crypto</span></h2>
+<p>crypto — Crypto transforms implementation for NSS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-crypto.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECCRYPTOGETFUNCTIONS-NSS">xmlSecCryptoGetFunctions_nss</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecCryptoGetFunctions-nss" title="xmlSecCryptoGetFunctions_nss ()">xmlSecCryptoGetFunctions_nss</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSINIT">xmlSecNssInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssInit" title="xmlSecNssInit ()">xmlSecNssInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSSHUTDOWN">xmlSecNssShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssShutdown" title="xmlSecNssShutdown ()">xmlSecNssShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYSMNGRINIT">xmlSecNssKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeysMngrInit" title="xmlSecNssKeysMngrInit ()">xmlSecNssKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSGENERATERANDOM">xmlSecNssGenerateRandom</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssGenerateRandom" title="xmlSecNssGenerateRandom ()">xmlSecNssGenerateRandom</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSERRORSDEFAULTCALLBACK">xmlSecNssErrorsDefaultCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssErrorsDefaultCallback" title="xmlSecNssErrorsDefaultCallback ()">xmlSecNssErrorsDefaultCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">PK11SlotInfo</span></font> *</td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSGETINTERNALKEYSLOT">xmlSecNssGetInternalKeySlot</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">PK11SlotInfo</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssGetInternalKeySlot" title="xmlSecNssGetInternalKeySlot ()">xmlSecNssGetInternalKeySlot</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESGETKLASS">xmlSecNssKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesGetKlass" title="xmlSecNssKeyDataAesGetKlass ()">xmlSecNssKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESSET">xmlSecNssKeyDataAesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesSet" title="xmlSecNssKeyDataAesSet ()">xmlSecNssKeyDataAesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES128CBCGETKLASS">xmlSecNssTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes128CbcGetKlass" title="xmlSecNssTransformAes128CbcGetKlass ()">xmlSecNssTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES192CBCGETKLASS">xmlSecNssTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes192CbcGetKlass" title="xmlSecNssTransformAes192CbcGetKlass ()">xmlSecNssTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES256CBCGETKLASS">xmlSecNssTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes256CbcGetKlass" title="xmlSecNssTransformAes256CbcGetKlass ()">xmlSecNssTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES128GETKLASS">xmlSecNssTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes128GetKlass" title="xmlSecNssTransformKWAes128GetKlass ()">xmlSecNssTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES192GETKLASS">xmlSecNssTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes192GetKlass" title="xmlSecNssTransformKWAes192GetKlass ()">xmlSecNssTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES256GETKLASS">xmlSecNssTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes256GetKlass" title="xmlSecNssTransformKWAes256GetKlass ()">xmlSecNssTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESGETKLASS">xmlSecNssKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesGetKlass" title="xmlSecNssKeyDataDesGetKlass ()">xmlSecNssKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESSET">xmlSecNssKeyDataDesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesSet" title="xmlSecNssKeyDataDesSet ()">xmlSecNssKeyDataDesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDES3CBCGETKLASS">xmlSecNssTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDes3CbcGetKlass" title="xmlSecNssTransformDes3CbcGetKlass ()">xmlSecNssTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWDES3GETKLASS">xmlSecNssTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWDes3GetKlass" title="xmlSecNssTransformKWDes3GetKlass ()">xmlSecNssTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADSAGETKLASS">xmlSecNssKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDsaGetKlass" title="xmlSecNssKeyDataDsaGetKlass ()">xmlSecNssKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDSASHA1GETKLASS">xmlSecNssTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDsaSha1GetKlass" title="xmlSecNssTransformDsaSha1GetKlass ()">xmlSecNssTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSHMACGETMINOUTPUTLENGTH">xmlSecNssHmacGetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataEcdsaGetKlass" title="xmlSecNssKeyDataEcdsaGetKlass ()">xmlSecNssKeyDataEcdsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSHMACSETMINOUTPUTLENGTH">xmlSecNssHmacSetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha1GetKlass" title="xmlSecNssTransformEcdsaSha1GetKlass ()">xmlSecNssTransformEcdsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACGETKLASS">xmlSecNssKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha256GetKlass" title="xmlSecNssTransformEcdsaSha256GetKlass ()">xmlSecNssTransformEcdsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACSET">xmlSecNssKeyDataHmacSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha512GetKlass" title="xmlSecNssTransformEcdsaSha512GetKlass ()">xmlSecNssTransformEcdsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACMD5GETKLASS">xmlSecNssTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssHmacGetMinOutputLength" title="xmlSecNssHmacGetMinOutputLength ()">xmlSecNssHmacGetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACRIPEMD160GETKLASS">xmlSecNssTransformHmacRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssHmacSetMinOutputLength" title="xmlSecNssHmacSetMinOutputLength ()">xmlSecNssHmacSetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA1GETKLASS">xmlSecNssTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacGetKlass" title="xmlSecNssKeyDataHmacGetKlass ()">xmlSecNssKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA256GETKLASS">xmlSecNssTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacSet" title="xmlSecNssKeyDataHmacSet ()">xmlSecNssKeyDataHmacSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA384GETKLASS">xmlSecNssTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacMd5GetKlass" title="xmlSecNssTransformHmacMd5GetKlass ()">xmlSecNssTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA512GETKLASS">xmlSecNssTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacRipemd160GetKlass" title="xmlSecNssTransformHmacRipemd160GetKlass ()">xmlSecNssTransformHmacRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATARSAGETKLASS">xmlSecNssKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha1GetKlass" title="xmlSecNssTransformHmacSha1GetKlass ()">xmlSecNssTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAMD5GETKLASS">xmlSecNssTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha256GetKlass" title="xmlSecNssTransformHmacSha256GetKlass ()">xmlSecNssTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA1GETKLASS">xmlSecNssTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha384GetKlass" title="xmlSecNssTransformHmacSha384GetKlass ()">xmlSecNssTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA256GETKLASS">xmlSecNssTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha512GetKlass" title="xmlSecNssTransformHmacSha512GetKlass ()">xmlSecNssTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA384GETKLASS">xmlSecNssTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataRsaGetKlass" title="xmlSecNssKeyDataRsaGetKlass ()">xmlSecNssKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA512GETKLASS">xmlSecNssTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaMd5GetKlass" title="xmlSecNssTransformRsaMd5GetKlass ()">xmlSecNssTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAPKCS1GETKLASS">xmlSecNssTransformRsaPkcs1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha1GetKlass" title="xmlSecNssTransformRsaSha1GetKlass ()">xmlSecNssTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAOAEPGETKLASS">xmlSecNssTransformRsaOaepGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha256GetKlass" title="xmlSecNssTransformRsaSha256GetKlass ()">xmlSecNssTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA1GETKLASS">xmlSecNssTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha384GetKlass" title="xmlSecNssTransformRsaSha384GetKlass ()">xmlSecNssTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA256GETKLASS">xmlSecNssTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha512GetKlass" title="xmlSecNssTransformRsaSha512GetKlass ()">xmlSecNssTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA384GETKLASS">xmlSecNssTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaPkcs1GetKlass" title="xmlSecNssTransformRsaPkcs1GetKlass ()">xmlSecNssTransformRsaPkcs1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA512GETKLASS">xmlSecNssTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaOaepGetKlass" title="xmlSecNssTransformRsaOaepGetKlass ()">xmlSecNssTransformRsaOaepGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMMD5GETKLASS">xmlSecNssTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha1GetKlass" title="xmlSecNssTransformSha1GetKlass ()">xmlSecNssTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha256GetKlass" title="xmlSecNssTransformSha256GetKlass ()">xmlSecNssTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha384GetKlass" title="xmlSecNssTransformSha384GetKlass ()">xmlSecNssTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha512GetKlass" title="xmlSecNssTransformSha512GetKlass ()">xmlSecNssTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
+</td>
+</tr>
+<tr>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformMd5GetKlass" title="xmlSecNssTransformMd5GetKlass ()">xmlSecNssTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-CRYPTO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN39922"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-crypto.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAAESID">xmlSecNssKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataAesId" title="xmlSecNssKeyDataAesId">xmlSecNssKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES128CBCID">xmlSecNssTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes128CbcId" title="xmlSecNssTransformAes128CbcId">xmlSecNssTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES192CBCID">xmlSecNssTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes192CbcId" title="xmlSecNssTransformAes192CbcId">xmlSecNssTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMAES256CBCID">xmlSecNssTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformAes256CbcId" title="xmlSecNssTransformAes256CbcId">xmlSecNssTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES128ID">xmlSecNssTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes128Id" title="xmlSecNssTransformKWAes128Id">xmlSecNssTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES192ID">xmlSecNssTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes192Id" title="xmlSecNssTransformKWAes192Id">xmlSecNssTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWAES256ID">xmlSecNssTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWAes256Id" title="xmlSecNssTransformKWAes256Id">xmlSecNssTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADESID">xmlSecNssKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDesId" title="xmlSecNssKeyDataDesId">xmlSecNssKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDES3CBCID">xmlSecNssTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDes3CbcId" title="xmlSecNssTransformDes3CbcId">xmlSecNssTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMKWDES3ID">xmlSecNssTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformKWDes3Id" title="xmlSecNssTransformKWDes3Id">xmlSecNssTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATADSAID">xmlSecNssKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataDsaId" title="xmlSecNssKeyDataDsaId">xmlSecNssKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMDSASHA1ID">xmlSecNssTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformDsaSha1Id" title="xmlSecNssTransformDsaSha1Id">xmlSecNssTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATAHMACID">xmlSecNssKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataEcdsaId" title="xmlSecNssKeyDataEcdsaId">xmlSecNssKeyDataEcdsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACMD5ID">xmlSecNssTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha1Id" title="xmlSecNssTransformEcdsaSha1Id">xmlSecNssTransformEcdsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACRIPEMD160ID">xmlSecNssTransformHmacRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha256Id" title="xmlSecNssTransformEcdsaSha256Id">xmlSecNssTransformEcdsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA1ID">xmlSecNssTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformEcdsaSha512Id" title="xmlSecNssTransformEcdsaSha512Id">xmlSecNssTransformEcdsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA256ID">xmlSecNssTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataHmacId" title="xmlSecNssKeyDataHmacId">xmlSecNssKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA384ID">xmlSecNssTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacMd5Id" title="xmlSecNssTransformHmacMd5Id">xmlSecNssTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMHMACSHA512ID">xmlSecNssTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacRipemd160Id" title="xmlSecNssTransformHmacRipemd160Id">xmlSecNssTransformHmacRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSKEYDATARSAID">xmlSecNssKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha1Id" title="xmlSecNssTransformHmacSha1Id">xmlSecNssTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAMD5ID">xmlSecNssTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha256Id" title="xmlSecNssTransformHmacSha256Id">xmlSecNssTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA1ID">xmlSecNssTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha384Id" title="xmlSecNssTransformHmacSha384Id">xmlSecNssTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA256ID">xmlSecNssTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformHmacSha512Id" title="xmlSecNssTransformHmacSha512Id">xmlSecNssTransformHmacSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA384ID">xmlSecNssTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssKeyDataRsaId" title="xmlSecNssKeyDataRsaId">xmlSecNssKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSASHA512ID">xmlSecNssTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaMd5Id" title="xmlSecNssTransformRsaMd5Id">xmlSecNssTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAPKCS1ID">xmlSecNssTransformRsaPkcs1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha1Id" title="xmlSecNssTransformRsaSha1Id">xmlSecNssTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMRSAOAEPID">xmlSecNssTransformRsaOaepId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha256Id" title="xmlSecNssTransformRsaSha256Id">xmlSecNssTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA1ID">xmlSecNssTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha384Id" title="xmlSecNssTransformRsaSha384Id">xmlSecNssTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA256ID">xmlSecNssTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaSha512Id" title="xmlSecNssTransformRsaSha512Id">xmlSecNssTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA384ID">xmlSecNssTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaPkcs1Id" title="xmlSecNssTransformRsaPkcs1Id">xmlSecNssTransformRsaPkcs1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMSHA512ID">xmlSecNssTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformRsaOaepId" title="xmlSecNssTransformRsaOaepId">xmlSecNssTransformRsaOaepId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-crypto.html#XMLSECNSSTRANSFORMMD5ID">xmlSecNssTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha1Id" title="xmlSecNssTransformSha1Id">xmlSecNssTransformSha1Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha256Id" title="xmlSecNssTransformSha256Id">xmlSecNssTransformSha256Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha384Id" title="xmlSecNssTransformSha384Id">xmlSecNssTransformSha384Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformSha512Id" title="xmlSecNssTransformSha512Id">xmlSecNssTransformSha512Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-crypto.html#xmlSecNssTransformMd5Id" title="xmlSecNssTransformMd5Id">xmlSecNssTransformMd5Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-CRYPTO.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto transforms implementation for NSS.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-CRYPTO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOGETFUNCTIONS-NSS"></a><h3>xmlSecCryptoGetFunctions_nss ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoGetFunctions_nss (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-crypto.description"></a><h2>Description</h2>
+<p>
+Crypto transforms implementation for NSS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-crypto.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoGetFunctions-nss"></a><h3>xmlSecCryptoGetFunctions_nss ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoGetFunctions_nss (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the pointer to xmlsec-nss functions table.</p>
-<div class="REFSECT3">
-<a name="AEN40068"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoGetFunctions-nss.returns"></a><h4>Returns</h4>
 <p> the xmlsec-nss functions table or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSINIT"></a><h3>xmlSecNssInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssInit"></a><h3>xmlSecNssInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN40081"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSSHUTDOWN"></a><h3>xmlSecNssShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssShutdown"></a><h3>xmlSecNssShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN40094"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYSMNGRINIT"></a><h3>xmlSecNssKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeysMngrInit"></a><h3>xmlSecNssKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds NSS specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN40108"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40110"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN40119"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSGENERATERANDOM"></a><h3>xmlSecNssGenerateRandom ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssGenerateRandom (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buffer</code>,
-                         <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Generates <code class="PARAMETER">size</code>
- random bytes and puts result in <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecNssGenerateRandom"></a><h3>xmlSecNssGenerateRandom ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssGenerateRandom (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buffer</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>Generates <em class="parameter"><code>size</code></em>
+ random bytes and puts result in <em class="parameter"><code>buffer</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN40138"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40140"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssGenerateRandom.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the destination buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the destination buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the numer of bytes to generate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the numer of bytes to generate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN40155"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssGenerateRandom.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSERRORSDEFAULTCALLBACK"></a><h3>xmlSecNssErrorsDefaultCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecNssErrorsDefaultCallback (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>);</pre>
-<p>The default errors reporting callback function.</p>
-<div class="REFSECT3">
-<a name="AEN40187"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40189"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecNssErrorsDefaultCallback"></a><h3>xmlSecNssErrorsDefaultCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecNssErrorsDefaultCallback (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+                                <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+                                <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>);</pre>
+<p>The errors reporting callback function. Just a pass through to the default callback.</p>
+<div class="refsect3">
+<a name="xmlSecNssErrorsDefaultCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location file name (__FILE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location file name (__FILE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function name (__FUNCTION__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function name (__FUNCTION__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the additional error message.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the additional error message.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSGETINTERNALKEYSLOT"></a><h3>xmlSecNssGetInternalKeySlot ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">PK11SlotInfo</span></font> *
-xmlSecNssGetInternalKeySlot (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssGetInternalKeySlot"></a><h3>xmlSecNssGetInternalKeySlot ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">PK11SlotInfo</span></font> *
+xmlSecNssGetInternalKeySlot (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets internal NSS key slot.</p>
-<div class="REFSECT3">
-<a name="AEN40244"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssGetInternalKeySlot.returns"></a><h4>Returns</h4>
 <p> internal key slot and initializes it if needed.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAAESGETKLASS"></a><h3>xmlSecNssKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataAesGetKlass"></a><h3>xmlSecNssKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN40257"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAAESSET"></a><h3>xmlSecNssKeyDataAesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataAesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                        <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataAesSet"></a><h3>xmlSecNssKeyDataAesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataAesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                        <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of AES key data.</p>
-<div class="REFSECT3">
-<a name="AEN40277"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40279"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataAesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to AES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to AES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN40300"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataAesSet.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="XMLSECNSSTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecNssTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformAes128CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes128CbcGetKlass"></a><h3>xmlSecNssTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformAes128CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40313"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecNssTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformAes192CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes192CbcGetKlass"></a><h3>xmlSecNssTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformAes192CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40326"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecNssTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformAes256CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes256CbcGetKlass"></a><h3>xmlSecNssTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformAes256CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40339"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecNssTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformKWAes128GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes128GetKlass"></a><h3>xmlSecNssTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformKWAes128GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40352"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecNssTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformKWAes192GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes192GetKlass"></a><h3>xmlSecNssTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformKWAes192GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40365"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecNssTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformKWAes256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes256GetKlass"></a><h3>xmlSecNssTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformKWAes256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40378"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATADESGETKLASS"></a><h3>xmlSecNssKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataDesGetKlass"></a><h3>xmlSecNssKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN40391"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATADESSET"></a><h3>xmlSecNssKeyDataDesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataDesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                        <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataDesSet"></a><h3>xmlSecNssKeyDataDesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataDesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                        <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of DES key data.</p>
-<div class="REFSECT3">
-<a name="AEN40411"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40413"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataDesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN40434"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataDesSet.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="XMLSECNSSTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecNssTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformDes3CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformDes3CbcGetKlass"></a><h3>xmlSecNssTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformDes3CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40447"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecNssTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWDes3GetKlass"></a><h3>xmlSecNssTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40460"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATADSAGETKLASS"></a><h3>xmlSecNssKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataDsaGetKlass"></a><h3>xmlSecNssKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN40473"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to DSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecNssTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformDsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformDsaSha1GetKlass"></a><h3>xmlSecNssTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformDsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40486"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSHMACGETMINOUTPUTLENGTH"></a><h3>xmlSecNssHmacGetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssHmacGetMinOutputLength (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataEcdsaGetKlass"></a><h3>xmlSecNssKeyDataEcdsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataEcdsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The ECDSA key data klass.</p>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataEcdsaGetKlass.returns"></a><h4>Returns</h4>
+<p> pointer to ECDSA key data klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha1GetKlass"></a><h3>xmlSecNssTransformEcdsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformEcdsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The ECDSA-SHA1 signature transform klass.</p>
+<div class="refsect3">
+<a name="xmlSecNssTransformEcdsaSha1GetKlass.returns"></a><h4>Returns</h4>
+<p> ECDSA-SHA1 signature transform klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha256GetKlass"></a><h3>xmlSecNssTransformEcdsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformEcdsaSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The ECDSA-SHA256 signature transform klass.</p>
+<div class="refsect3">
+<a name="xmlSecNssTransformEcdsaSha256GetKlass.returns"></a><h4>Returns</h4>
+<p> ECDSA-SHA256 signature transform klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha512GetKlass"></a><h3>xmlSecNssTransformEcdsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformEcdsaSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The ECDSA-SHA512 signature transform klass.</p>
+<div class="refsect3">
+<a name="xmlSecNssTransformEcdsaSha512GetKlass.returns"></a><h4>Returns</h4>
+<p> ECDSA-SHA512 signature transform klass.</p>
+</div>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssHmacGetMinOutputLength"></a><h3>xmlSecNssHmacGetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssHmacGetMinOutputLength (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the value of min HMAC length.</p>
-<div class="REFSECT3">
-<a name="AEN40499"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssHmacGetMinOutputLength.returns"></a><h4>Returns</h4>
 <p> the min HMAC output length</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSHMACSETMINOUTPUTLENGTH"></a><h3>xmlSecNssHmacSetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecNssHmacSetMinOutputLength (<code class="PARAMETER"><font><span class="TYPE">int</span></font> min_length</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssHmacSetMinOutputLength"></a><h3>xmlSecNssHmacSetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecNssHmacSetMinOutputLength (<em class="parameter"><code><font><span class="type">int</span></font> min_length</code></em>);</pre>
 <p>Sets the min HMAC output length</p>
-<div class="REFSECT3">
-<a name="AEN40513"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40515"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssHmacSetMinOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>min_length</p></td>
-<td><p>the new min length</p></td>
-<td> </td>
+<td class="parameter_name"><p>min_length</p></td>
+<td class="parameter_description"><p>the new min length</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAHMACGETKLASS"></a><h3>xmlSecNssKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataHmacGetKlass"></a><h3>xmlSecNssKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN40534"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAHMACSET"></a><h3>xmlSecNssKeyDataHmacSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataHmacSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                         <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                         <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataHmacSet"></a><h3>xmlSecNssKeyDataHmacSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataHmacSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                         <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of HMAC key data.</p>
-<div class="REFSECT3">
-<a name="AEN40554"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN40556"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataHmacSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to HMAC key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to HMAC key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN40577"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataHmacSet.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="XMLSECNSSTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecNssTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformHmacMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacMd5GetKlass"></a><h3>xmlSecNssTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformHmacMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40590"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACRIPEMD160GETKLASS"></a><h3>xmlSecNssTransformHmacRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacRipemd160GetKlass"></a><h3>xmlSecNssTransformHmacRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecNssTransformHmacRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-RIPEMD160 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40603"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-RIPEMD160 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecNssTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformHmacSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha1GetKlass"></a><h3>xmlSecNssTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformHmacSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40616"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecNssTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformHmacSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha256GetKlass"></a><h3>xmlSecNssTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformHmacSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40629"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecNssTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformHmacSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha384GetKlass"></a><h3>xmlSecNssTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformHmacSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40642"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecNssTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformHmacSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha512GetKlass"></a><h3>xmlSecNssTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformHmacSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40655"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATARSAGETKLASS"></a><h3>xmlSecNssKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataRsaGetKlass"></a><h3>xmlSecNssKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN40668"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to RSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecNssTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaMd5GetKlass"></a><h3>xmlSecNssTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40681"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecNssTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha1GetKlass"></a><h3>xmlSecNssTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40694"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecNssTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha256GetKlass"></a><h3>xmlSecNssTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40707"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecNssTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha384GetKlass"></a><h3>xmlSecNssTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40720"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecNssTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha512GetKlass"></a><h3>xmlSecNssTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40733"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAPKCS1GETKLASS"></a><h3>xmlSecNssTransformRsaPkcs1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaPkcs1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaPkcs1GetKlass"></a><h3>xmlSecNssTransformRsaPkcs1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaPkcs1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-PKCS1 key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40746"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaPkcs1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-PKCS1 key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAOAEPGETKLASS"></a><h3>xmlSecNssTransformRsaOaepGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformRsaOaepGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaOaepGetKlass"></a><h3>xmlSecNssTransformRsaOaepGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformRsaOaepGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-PKCS1 key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40759"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformRsaOaepGetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-PKCS1 key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA1GETKLASS"></a><h3>xmlSecNssTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha1GetKlass"></a><h3>xmlSecNssTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40772"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA256GETKLASS"></a><h3>xmlSecNssTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha256GetKlass"></a><h3>xmlSecNssTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40785"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA256 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA384GETKLASS"></a><h3>xmlSecNssTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha384GetKlass"></a><h3>xmlSecNssTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40798"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA384 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA512GETKLASS"></a><h3>xmlSecNssTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha512GetKlass"></a><h3>xmlSecNssTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40811"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA512 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMMD5GETKLASS"></a><h3>xmlSecNssTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecNssTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformMd5GetKlass"></a><h3>xmlSecNssTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecNssTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>MD5 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN40824"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MD5 digest transform klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-CRYPTO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAAESID"></a><h3>xmlSecNssKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataAesId</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-crypto.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataAesId"></a><h3>xmlSecNssKeyDataAesId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataAesId</pre>
 <p>The AES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMAES128CBCID"></a><h3>xmlSecNssTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformAes128CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes128CbcId"></a><h3>xmlSecNssTransformAes128CbcId</h3>
+<pre class="programlisting">#define             xmlSecNssTransformAes128CbcId</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMAES192CBCID"></a><h3>xmlSecNssTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformAes192CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes192CbcId"></a><h3>xmlSecNssTransformAes192CbcId</h3>
+<pre class="programlisting">#define             xmlSecNssTransformAes192CbcId</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMAES256CBCID"></a><h3>xmlSecNssTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformAes256CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformAes256CbcId"></a><h3>xmlSecNssTransformAes256CbcId</h3>
+<pre class="programlisting">#define             xmlSecNssTransformAes256CbcId</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES128ID"></a><h3>xmlSecNssTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformKWAes128Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes128Id"></a><h3>xmlSecNssTransformKWAes128Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformKWAes128Id</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES192ID"></a><h3>xmlSecNssTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformKWAes192Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes192Id"></a><h3>xmlSecNssTransformKWAes192Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformKWAes192Id</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWAES256ID"></a><h3>xmlSecNssTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformKWAes256Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWAes256Id"></a><h3>xmlSecNssTransformKWAes256Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformKWAes256Id</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATADESID"></a><h3>xmlSecNssKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataDesId</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataDesId"></a><h3>xmlSecNssKeyDataDesId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataDesId</pre>
 <p>The DES key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMDES3CBCID"></a><h3>xmlSecNssTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformDes3CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformDes3CbcId"></a><h3>xmlSecNssTransformDes3CbcId</h3>
+<pre class="programlisting">#define             xmlSecNssTransformDes3CbcId</pre>
 <p>The Triple DES CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMKWDES3ID"></a><h3>xmlSecNssTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformKWDes3Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformKWDes3Id"></a><h3>xmlSecNssTransformKWDes3Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformKWDes3Id</pre>
 <p>The DES3 KW transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATADSAID"></a><h3>xmlSecNssKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataDsaId</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataDsaId"></a><h3>xmlSecNssKeyDataDsaId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataDsaId</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMDSASHA1ID"></a><h3>xmlSecNssTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformDsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformDsaSha1Id"></a><h3>xmlSecNssTransformDsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformDsaSha1Id</pre>
 <p>The DSA SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAHMACID"></a><h3>xmlSecNssKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataHmacId</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataEcdsaId"></a><h3>xmlSecNssKeyDataEcdsaId</h3>
+<pre class="programlisting">#define xmlSecNssKeyDataEcdsaId xmlSecNssKeyDataEcdsaGetKlass()
+</pre>
+<p>The ECDSA key klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha1Id"></a><h3>xmlSecNssTransformEcdsaSha1Id</h3>
+<pre class="programlisting">#define xmlSecNssTransformEcdsaSha1Id xmlSecNssTransformEcdsaSha1GetKlass()
+</pre>
+<p>The ECDSA SHA1 signature transform klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha256Id"></a><h3>xmlSecNssTransformEcdsaSha256Id</h3>
+<pre class="programlisting">#define xmlSecNssTransformEcdsaSha256Id xmlSecNssTransformEcdsaSha256GetKlass()
+</pre>
+<p>The ECDSA SHA256 signature transform klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssTransformEcdsaSha512Id"></a><h3>xmlSecNssTransformEcdsaSha512Id</h3>
+<pre class="programlisting">#define xmlSecNssTransformEcdsaSha512Id xmlSecNssTransformEcdsaSha512GetKlass()
+</pre>
+<p>The ECDSA SHA512 signature transform klass.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataHmacId"></a><h3>xmlSecNssKeyDataHmacId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataHmacId</pre>
 <p>The DHMAC key data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACMD5ID"></a><h3>xmlSecNssTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacMd5Id"></a><h3>xmlSecNssTransformHmacMd5Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacMd5Id</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACRIPEMD160ID"></a><h3>xmlSecNssTransformHmacRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacRipemd160Id"></a><h3>xmlSecNssTransformHmacRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacRipemd160Id</pre>
 <p>The HMAC with RipeMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA1ID"></a><h3>xmlSecNssTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha1Id"></a><h3>xmlSecNssTransformHmacSha1Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA256ID"></a><h3>xmlSecNssTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha256Id"></a><h3>xmlSecNssTransformHmacSha256Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA384ID"></a><h3>xmlSecNssTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha384Id"></a><h3>xmlSecNssTransformHmacSha384Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMHMACSHA512ID"></a><h3>xmlSecNssTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformHmacSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformHmacSha512Id"></a><h3>xmlSecNssTransformHmacSha512Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformHmacSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATARSAID"></a><h3>xmlSecNssKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataRsaId</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataRsaId"></a><h3>xmlSecNssKeyDataRsaId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataRsaId</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAMD5ID"></a><h3>xmlSecNssTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaMd5Id"></a><h3>xmlSecNssTransformRsaMd5Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaMd5Id</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA1ID"></a><h3>xmlSecNssTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha1Id"></a><h3>xmlSecNssTransformRsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaSha1Id</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA256ID"></a><h3>xmlSecNssTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha256Id"></a><h3>xmlSecNssTransformRsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaSha256Id</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA384ID"></a><h3>xmlSecNssTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha384Id"></a><h3>xmlSecNssTransformRsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaSha384Id</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSASHA512ID"></a><h3>xmlSecNssTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaSha512Id"></a><h3>xmlSecNssTransformRsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaSha512Id</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAPKCS1ID"></a><h3>xmlSecNssTransformRsaPkcs1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaPkcs1Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaPkcs1Id"></a><h3>xmlSecNssTransformRsaPkcs1Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaPkcs1Id</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMRSAOAEPID"></a><h3>xmlSecNssTransformRsaOaepId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformRsaOaepId</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformRsaOaepId"></a><h3>xmlSecNssTransformRsaOaepId</h3>
+<pre class="programlisting">#define             xmlSecNssTransformRsaOaepId</pre>
 <p>The RSA OAEP key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA1ID"></a><h3>xmlSecNssTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha1Id"></a><h3>xmlSecNssTransformSha1Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformSha1Id</pre>
 <p>The SHA1 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA256ID"></a><h3>xmlSecNssTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha256Id"></a><h3>xmlSecNssTransformSha256Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformSha256Id</pre>
 <p>The SHA256 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA384ID"></a><h3>xmlSecNssTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha384Id"></a><h3>xmlSecNssTransformSha384Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformSha384Id</pre>
 <p>The SHA384 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMSHA512ID"></a><h3>xmlSecNssTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformSha512Id"></a><h3>xmlSecNssTransformSha512Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformSha512Id</pre>
 <p>The SHA512 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSTRANSFORMMD5ID"></a><h3>xmlSecNssTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssTransformMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecNssTransformMd5Id"></a><h3>xmlSecNssTransformMd5Id</h3>
+<pre class="programlisting">#define             xmlSecNssTransformMd5Id</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-bignum.html"><b><<< bignum</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-keysstore.html"><b>keysstore >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-keysstore.html b/docs/api/xmlsec-nss-keysstore.html
index e50265c..2c4a708 100644
--- a/docs/api/xmlsec-nss-keysstore.html
+++ b/docs/api/xmlsec-nss-keysstore.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>keysstore</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="crypto" href="xmlsec-nss-crypto.html">
-<link rel="NEXT" title="pkikeys" href="xmlsec-nss-pkikeys.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>keysstore: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-crypto.html" title="crypto">
+<link rel="next" href="xmlsec-nss-pkikeys.html" title="pkikeys">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,221 +73,229 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-keysstore.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-pkikeys.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-KEYSSTORE"></a>keysstore</h1>
-<div class="REFNAMEDIV">
-<a name="AEN41026"></a><h2>Name</h2>keysstore -- Keys store implementation for NSS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-KEYSSTORE.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41031"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-keysstore"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-keysstore.top_of_page"></a>keysstore</span></h2>
+<p>keysstore — Keys store implementation for NSS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-keysstore.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font></td>
-<td>
-<a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREGETKLASS">xmlSecNssKeysStoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreGetKlass" title="xmlSecNssKeysStoreGetKlass ()">xmlSecNssKeysStoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREADOPTKEY">xmlSecNssKeysStoreAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreAdoptKey" title="xmlSecNssKeysStoreAdoptKey ()">xmlSecNssKeysStoreAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTORELOAD">xmlSecNssKeysStoreLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreLoad" title="xmlSecNssKeysStoreLoad ()">xmlSecNssKeysStoreLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTORESAVE">xmlSecNssKeysStoreSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreSave" title="xmlSecNssKeysStoreSave ()">xmlSecNssKeysStoreSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-KEYSSTORE.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41064"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refsect1">
+<a name="xmlsec-nss-keysstore.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-keysstore.html#XMLSECNSSKEYSSTOREID">xmlSecNssKeysStoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-keysstore.html#xmlSecNssKeysStoreId" title="xmlSecNssKeysStoreId">xmlSecNssKeysStoreId</a></td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-KEYSSTORE.DESCRIPTION"></a><h2>Description</h2>
-<p>Keys store implementation for NSS.</p>
+<div class="refsect1">
+<a name="xmlsec-nss-keysstore.description"></a><h2>Description</h2>
+<p>
+Keys store implementation for NSS.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-KEYSSTORE.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYSSTOREGETKLASS"></a><h3>xmlSecNssKeysStoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyStoreId</span></font>
-xmlSecNssKeysStoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-keysstore.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNssKeysStoreGetKlass"></a><h3>xmlSecNssKeysStoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyStoreId</span></font>
+xmlSecNssKeysStoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Nss list based keys store klass.</p>
-<div class="REFSECT3">
-<a name="AEN41086"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreGetKlass.returns"></a><h4>Returns</h4>
 <p> Nss list based keys store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYSSTOREADOPTKEY"></a><h3>xmlSecNssKeysStoreAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeysStoreAdoptKey (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecNssKeysStoreAdoptKey"></a><h3>xmlSecNssKeysStoreAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeysStoreAdoptKey (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN41105"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41107"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to Nss keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to Nss keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41122"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreAdoptKey.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="XMLSECNSSKEYSSTORELOAD"></a><h3>xmlSecNssKeysStoreLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeysStoreLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeysStoreLoad"></a><h3>xmlSecNssKeysStoreLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeysStoreLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Reads keys from an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN41142"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41144"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to Nss keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to Nss keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to associated keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to associated keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41165"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreLoad.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="XMLSECNSSKEYSSTORESAVE"></a><h3>xmlSecNssKeysStoreSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeysStoreSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSTORE"><span class="TYPE">xmlSecKeyStorePtr</span></a> store</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Writes keys from <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecNssKeysStoreSave"></a><h3>xmlSecNssKeysStoreSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeysStoreSave (<em class="parameter"><code><font><span class="type">xmlSecKeyStorePtr</span></font> store</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                        <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Writes keys from <em class="parameter"><code>store</code></em>
  to an XML file.</p>
-<div class="REFSECT3">
-<a name="AEN41186"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41188"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to Nss keys store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to Nss keys store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the saved keys type (public, private, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the saved keys type (public, private, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41209"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeysStoreSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-KEYSSTORE.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYSSTOREID"></a><h3>xmlSecNssKeysStoreId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecNssKeysStoreId            xmlSecNssKeysStoreGetKlass()</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-keysstore.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecNssKeysStoreId"></a><h3>xmlSecNssKeysStoreId</h3>
+<pre class="programlisting">#define xmlSecNssKeysStoreId            xmlSecNssKeysStoreGetKlass()
+</pre>
 <p>A Nss keys store klass id.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-crypto.html"><b><<< crypto</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-pkikeys.html"><b>pkikeys >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-pkikeys.html b/docs/api/xmlsec-nss-pkikeys.html
index 0ae0e8f..f7dcfa9 100644
--- a/docs/api/xmlsec-nss-pkikeys.html
+++ b/docs/api/xmlsec-nss-pkikeys.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>pkikeys</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="keysstore" href="xmlsec-nss-keysstore.html">
-<link rel="NEXT" title="x509" href="xmlsec-nss-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>pkikeys: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-keysstore.html" title="keysstore">
+<link rel="next" href="xmlsec-nss-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,235 +73,239 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-keysstore.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-pkikeys.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-keysstore.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-PKIKEYS"></a>pkikeys</h1>
-<div class="REFNAMEDIV">
-<a name="AEN41225"></a><h2>Name</h2>pkikeys -- PKI keys data implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-PKIKEYS.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41230"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-pkikeys"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-pkikeys.top_of_page"></a>pkikeys</span></h2>
+<p>pkikeys — PKI keys data implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-pkikeys.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIADOPTKEY">xmlSecNssPKIAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIAdoptKey" title="xmlSecNssPKIAdoptKey ()">xmlSecNssPKIAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">SECKEYPublicKey</span></font> *</td>
-<td>
-<a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETPUBKEY">xmlSecNssPKIKeyDataGetPubKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">SECKEYPublicKey</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetPubKey" title="xmlSecNssPKIKeyDataGetPubKey ()">xmlSecNssPKIKeyDataGetPubKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">SECKEYPrivateKey</span></font> *</td>
-<td>
-<a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETPRIVKEY">xmlSecNssPKIKeyDataGetPrivKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">SECKEYPrivateKey</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetPrivKey" title="xmlSecNssPKIKeyDataGetPrivKey ()">xmlSecNssPKIKeyDataGetPrivKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">KeyType</span></font></td>
-<td>
-<a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATAGETKEYTYPE">xmlSecNssPKIKeyDataGetKeyType</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">KeyType</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataGetKeyType" title="xmlSecNssPKIKeyDataGetKeyType ()">xmlSecNssPKIKeyDataGetKeyType</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-pkikeys.html#XMLSECNSSPKIKEYDATADUPLICATE">xmlSecNssPKIKeyDataDuplicate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-pkikeys.html#xmlSecNssPKIKeyDataDuplicate" title="xmlSecNssPKIKeyDataDuplicate ()">xmlSecNssPKIKeyDataDuplicate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-nss-pkikeys.description"></a><h2>Description</h2>
+<p>
+PKI keys data implementation.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-PKIKEYS.DESCRIPTION"></a><h2>Description</h2>
-<p>PKI keys data implementation.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-PKIKEYS.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSPKIADOPTKEY"></a><h3>xmlSecNssPKIAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecNssPKIAdoptKey (<code class="PARAMETER"><font><span class="TYPE">SECKEYPrivateKey</span></font> *privkey</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">SECKEYPublicKey</span></font> *pubkey</code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-pkikeys.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNssPKIAdoptKey"></a><h3>xmlSecNssPKIAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecNssPKIAdoptKey (<em class="parameter"><code><font><span class="type">SECKEYPrivateKey</span></font> *privkey</code></em>,
+                      <em class="parameter"><code><font><span class="type">SECKEYPublicKey</span></font> *pubkey</code></em>);</pre>
 <p>Build a KeyData object from the given Private Key and Public
 Key handles.</p>
-<div class="REFSECT3">
-<a name="AEN41287"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41289"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssPKIAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>privkey</p></td>
-<td><p>the NSS Private Key handle</p></td>
-<td> </td>
+<td class="parameter_name"><p>privkey</p></td>
+<td class="parameter_description"><p>the NSS Private Key handle</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pubkey</p></td>
-<td><p>the NSS Public Key handle</p></td>
-<td> </td>
+<td class="parameter_name"><p>pubkey</p></td>
+<td class="parameter_description"><p>the NSS Public Key handle</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41304"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssPKIAdoptKey.returns"></a><h4>Returns</h4>
 <p> pointer to KeyData object or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSPKIKEYDATAGETPUBKEY"></a><h3>xmlSecNssPKIKeyDataGetPubKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">SECKEYPublicKey</span></font> *
-xmlSecNssPKIKeyDataGetPubKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssPKIKeyDataGetPubKey"></a><h3>xmlSecNssPKIKeyDataGetPubKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">SECKEYPublicKey</span></font> *
+xmlSecNssPKIKeyDataGetPubKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the Public Key from the key data.</p>
-<div class="REFSECT3">
-<a name="AEN41318"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41320"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetPubKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to NSS Key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to NSS Key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41329"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetPubKey.returns"></a><h4>Returns</h4>
 <p> pointer to SECKEYPublicKey or NULL if an error occurs.
 Caller is responsible for freeing the key when done</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSPKIKEYDATAGETPRIVKEY"></a><h3>xmlSecNssPKIKeyDataGetPrivKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">SECKEYPrivateKey</span></font> *
-xmlSecNssPKIKeyDataGetPrivKey (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssPKIKeyDataGetPrivKey"></a><h3>xmlSecNssPKIKeyDataGetPrivKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">SECKEYPrivateKey</span></font> *
+xmlSecNssPKIKeyDataGetPrivKey (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the Private Key from the key data.</p>
-<div class="REFSECT3">
-<a name="AEN41343"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41345"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetPrivKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to NSS Key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to NSS Key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41354"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetPrivKey.returns"></a><h4>Returns</h4>
 <p> pointer to SECKEYPrivateKey or NULL if an error occurs.
 Caller is responsible for freeing the key when done</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSPKIKEYDATAGETKEYTYPE"></a><h3>xmlSecNssPKIKeyDataGetKeyType ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">KeyType</span></font>
-xmlSecNssPKIKeyDataGetKeyType (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssPKIKeyDataGetKeyType"></a><h3>xmlSecNssPKIKeyDataGetKeyType ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">KeyType</span></font>
+xmlSecNssPKIKeyDataGetKeyType (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the Key Type from the key data.</p>
-<div class="REFSECT3">
-<a name="AEN41368"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41370"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetKeyType.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to NSS Key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to NSS Key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41379"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataGetKeyType.returns"></a><h4>Returns</h4>
 <p> Key Type</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSPKIKEYDATADUPLICATE"></a><h3>xmlSecNssPKIKeyDataDuplicate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssPKIKeyDataDuplicate (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> dst</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> src</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssPKIKeyDataDuplicate"></a><h3>xmlSecNssPKIKeyDataDuplicate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssPKIKeyDataDuplicate (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> dst</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> src</code></em>);</pre>
 <p>Duplicates the keydata from src to dst</p>
-<div class="REFSECT3">
-<a name="AEN41396"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41398"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataDuplicate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to NSS Key data to copy to.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to NSS Key data to copy to.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to NSS Key data to copy from.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to NSS Key data to copy from.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN41413"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssPKIKeyDataDuplicate.returns"></a><h4>Returns</h4>
 <p> -1 on error, 0 on success</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-PKIKEYS.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-nss-pkikeys.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-keysstore.html"><b><<< keysstore</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-x509.html"><b>x509 >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-ref.html b/docs/api/xmlsec-nss-ref.html
index 79b3d60..36e9726 100644
--- a/docs/api/xmlsec-nss-ref.html
+++ b/docs/api/xmlsec-nss-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library for NSS API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="crypto" href="xmlsec-gcrypt-crypto.html">
-<link rel="NEXT" title="app" href="xmlsec-nss-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library for NSS API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-gcrypt-crypto.html" title="crypto">
+<link rel="next" href="xmlsec-nss-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,39 +73,42 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-gcrypt-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-gcrypt-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-nss-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-NSS-REF"></a>XML Security Library for NSS API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-nss-ref"></a>XML Security Library for NSS API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-nss-app.html">app</a> -- Application functions implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-bignum.html">bignum</a> -- Big numbers helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-bignum.html">bignum</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-crypto.html">crypto</a> -- Crypto transforms implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-keysstore.html">keysstore</a> -- Keys store implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for NSS.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-pkikeys.html">pkikeys</a> -- PKI keys data implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-pkikeys.html">pkikeys</a></span><span class="refpurpose"> — PKI keys data implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-nss-x509.html">x509</a> -- X509 certificates support implementation for NSS.</dt>
+<span class="refentrytitle"><a href="xmlsec-nss-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for NSS.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec-nss. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-gcrypt-crypto.html"><b><<< crypto</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-nss-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-nss-x509.html b/docs/api/xmlsec-nss-x509.html
index 3d7191b..457fb99 100644
--- a/docs/api/xmlsec-nss-x509.html
+++ b/docs/api/xmlsec-nss-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>x509</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for NSS API Reference." href="xmlsec-nss-ref.html">
-<link rel="PREVIOUS" title="pkikeys" href="xmlsec-nss-pkikeys.html">
-<link rel="NEXT" title="XML Security Library for MSCrypto API Reference." href="xmlsec-mscrypto-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>x509: 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-nss-ref.html" title="XML Security Library for NSS API Reference.">
+<link rel="prev" href="xmlsec-nss-pkikeys.html" title="pkikeys">
+<link rel="next" href="xmlsec-mscrypto-ref.html" title="XML Security Library for MSCrypto API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,666 +73,672 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nss-pkikeys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-nss-x509.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-nss-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-nss-pkikeys.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-mscrypto-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-NSS-X509"></a>x509</h1>
-<div class="REFNAMEDIV">
-<a name="AEN41424"></a><h2>Name</h2>x509 -- X509 certificates support implementation for NSS.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-X509.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41429"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-nss-x509"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-nss-x509.top_of_page"></a>x509</span></h2>
+<p>x509 — X509 certificates support implementation for NSS.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-nss-x509.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETKLASS">xmlSecNssKeyDataX509GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetKlass" title="xmlSecNssKeyDataX509GetKlass ()">xmlSecNssKeyDataX509GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">CERTCertificate</span></font> *</td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETKEYCERT">xmlSecNssKeyDataX509GetKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">CERTCertificate</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetKeyCert" title="xmlSecNssKeyDataX509GetKeyCert ()">xmlSecNssKeyDataX509GetKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTKEYCERT">xmlSecNssKeyDataX509AdoptKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptKeyCert" title="xmlSecNssKeyDataX509AdoptKeyCert ()">xmlSecNssKeyDataX509AdoptKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTCERT">xmlSecNssKeyDataX509AdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptCert" title="xmlSecNssKeyDataX509AdoptCert ()">xmlSecNssKeyDataX509AdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">CERTCertificate</span></font> *</td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCERT">xmlSecNssKeyDataX509GetCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">CERTCertificate</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCert" title="xmlSecNssKeyDataX509GetCert ()">xmlSecNssKeyDataX509GetCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCERTSSIZE">xmlSecNssKeyDataX509GetCertsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-nss-x509.html#xmlSecNssKeyDataX509GetCertsSize" title="xmlSecNssKeyDataX509GetCertsSize ()">xmlSecNssKeyDataX509GetCertsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ADOPTCRL">xmlSecNssKeyDataX509AdoptCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509AdoptCrl" title="xmlSecNssKeyDataX509AdoptCrl ()">xmlSecNssKeyDataX509AdoptCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">CERTSignedCrl</span></font> *</td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCRL">xmlSecNssKeyDataX509GetCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">CERTSignedCrl</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509GetCrl" title="xmlSecNssKeyDataX509GetCrl ()">xmlSecNssKeyDataX509GetCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509GETCRLSSIZE">xmlSecNssKeyDataX509GetCrlsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-nss-x509.html#xmlSecNssKeyDataX509GetCrlsSize" title="xmlSecNssKeyDataX509GetCrlsSize ()">xmlSecNssKeyDataX509GetCrlsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSX509CERTGETKEY">xmlSecNssX509CertGetKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509CertGetKey" title="xmlSecNssX509CertGetKey ()">xmlSecNssX509CertGetKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATARAWX509CERTGETKLASS">xmlSecNssKeyDataRawX509CertGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataRawX509CertGetKlass" title="xmlSecNssKeyDataRawX509CertGetKlass ()">xmlSecNssKeyDataRawX509CertGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREGETKLASS">xmlSecNssX509StoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreGetKlass" title="xmlSecNssX509StoreGetKlass ()">xmlSecNssX509StoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">CERTCertificate</span></font> *</td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREFINDCERT">xmlSecNssX509StoreFindCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">CERTCertificate</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreFindCert" title="xmlSecNssX509StoreFindCert ()">xmlSecNssX509StoreFindCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">CERTCertificate</span></font> *</td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREVERIFY">xmlSecNssX509StoreVerify</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">CERTCertificate</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreVerify" title="xmlSecNssX509StoreVerify ()">xmlSecNssX509StoreVerify</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREADOPTCERT">xmlSecNssX509StoreAdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreAdoptCert" title="xmlSecNssX509StoreAdoptCert ()">xmlSecNssX509StoreAdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-X509.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41539"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-x509.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATAX509ID">xmlSecNssKeyDataX509Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataX509Id" title="xmlSecNssKeyDataX509Id">xmlSecNssKeyDataX509Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-x509.html#XMLSECNSSKEYDATARAWX509CERTID">xmlSecNssKeyDataRawX509CertId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-x509.html#xmlSecNssKeyDataRawX509CertId" title="xmlSecNssKeyDataRawX509CertId">xmlSecNssKeyDataRawX509CertId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-nss-x509.html#XMLSECNSSX509STOREID">xmlSecNssX509StoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-nss-x509.html#xmlSecNssX509StoreId" title="xmlSecNssX509StoreId">xmlSecNssX509StoreId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-X509.DESCRIPTION"></a><h2>Description</h2>
-<p>X509 certificates support implementation for NSS.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-X509.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509GETKLASS"></a><h3>xmlSecNssKeyDataX509GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataX509GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The NSS X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-X509Data</span></font>).</p>
-<div class="REFSECT3">
-<a name="AEN41571"></a><h4>Returns</h4>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-x509.description"></a><h2>Description</h2>
+<p>
+X509 certificates support implementation for NSS.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-nss-x509.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetKlass"></a><h3>xmlSecNssKeyDataX509GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataX509GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The NSS X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-X509Data</span></font>).</p>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetKlass.returns"></a><h4>Returns</h4>
 <p> the X509 data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509GETKEYCERT"></a><h3>xmlSecNssKeyDataX509GetKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">CERTCertificate</span></font> *
-xmlSecNssKeyDataX509GetKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetKeyCert"></a><h3>xmlSecNssKeyDataX509GetKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">CERTCertificate</span></font> *
+xmlSecNssKeyDataX509GetKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the certificate from which the key was extracted.</p>
-<div class="REFSECT3">
-<a name="AEN41585"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41587"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41596"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetKeyCert.returns"></a><h4>Returns</h4>
 <p> the key's certificate or NULL if key data was not used for key
 extraction or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509ADOPTKEYCERT"></a><h3>xmlSecNssKeyDataX509AdoptKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataX509AdoptKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">CERTCertificate</span></font> *cert</code>);</pre>
-<p>Sets the key's certificate in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509AdoptKeyCert"></a><h3>xmlSecNssKeyDataX509AdoptKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataX509AdoptKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                  <em class="parameter"><code><font><span class="type">CERTCertificate</span></font> *cert</code></em>);</pre>
+<p>Sets the key's certificate in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN41614"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41616"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to NSS X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to NSS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41631"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptKeyCert.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="XMLSECNSSKEYDATAX509ADOPTCERT"></a><h3>xmlSecNssKeyDataX509AdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataX509AdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">CERTCertificate</span></font> *cert</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509AdoptCert"></a><h3>xmlSecNssKeyDataX509AdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataX509AdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                               <em class="parameter"><code><font><span class="type">CERTCertificate</span></font> *cert</code></em>);</pre>
 <p>Adds certificate to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN41648"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41650"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to NSS X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to NSS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41665"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptCert.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="XMLSECNSSKEYDATAX509GETCERT"></a><h3>xmlSecNssKeyDataX509GetCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">CERTCertificate</span></font> *
-xmlSecNssKeyDataX509GetCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                             <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetCert"></a><h3>xmlSecNssKeyDataX509GetCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">CERTCertificate</span></font> *
+xmlSecNssKeyDataX509GetCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a certificate from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN41682"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41684"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired certificate position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired certificate position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41699"></a><h4>Returns</h4>
-<p> the pointer to certificate or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCert.returns"></a><h4>Returns</h4>
+<p> the pointer to certificate or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of certificates in <code class="PARAMETER">data</code>
+number of certificates in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509GETCERTSSIZE"></a><h3>xmlSecNssKeyDataX509GetCertsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecNssKeyDataX509GetCertsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetCertsSize"></a><h3>xmlSecNssKeyDataX509GetCertsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecNssKeyDataX509GetCertsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN41716"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41718"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCertsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41727"></a><h4>Returns</h4>
-<p> te number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCertsSize.returns"></a><h4>Returns</h4>
+<p> te number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509ADOPTCRL"></a><h3>xmlSecNssKeyDataX509AdoptCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssKeyDataX509AdoptCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">CERTSignedCrl</span></font> *crl</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509AdoptCrl"></a><h3>xmlSecNssKeyDataX509AdoptCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssKeyDataX509AdoptCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                              <em class="parameter"><code><font><span class="type">CERTSignedCrl</span></font> *crl</code></em>);</pre>
 <p>Adds CRL to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN41745"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41747"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>crl</p></td>
-<td><p>the pointer to NSS X509 CRL.</p></td>
-<td> </td>
+<td class="parameter_name"><p>crl</p></td>
+<td class="parameter_description"><p>the pointer to NSS X509 CRL.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41762"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509AdoptCrl.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="XMLSECNSSKEYDATAX509GETCRL"></a><h3>xmlSecNssKeyDataX509GetCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">CERTSignedCrl</span></font> *
-xmlSecNssKeyDataX509GetCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetCrl"></a><h3>xmlSecNssKeyDataX509GetCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">CERTSignedCrl</span></font> *
+xmlSecNssKeyDataX509GetCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a CRL from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN41779"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41781"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired CRL position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired CRL position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41796"></a><h4>Returns</h4>
-<p> the pointer to CRL or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCrl.returns"></a><h4>Returns</h4>
+<p> the pointer to CRL or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of CRLs in <code class="PARAMETER">data</code>
+number of CRLs in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509GETCRLSSIZE"></a><h3>xmlSecNssKeyDataX509GetCrlsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecNssKeyDataX509GetCrlsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509GetCrlsSize"></a><h3>xmlSecNssKeyDataX509GetCrlsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecNssKeyDataX509GetCrlsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN41813"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41815"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCrlsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41824"></a><h4>Returns</h4>
-<p> te number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataX509GetCrlsSize.returns"></a><h4>Returns</h4>
+<p> te number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509CERTGETKEY"></a><h3>xmlSecNssX509CertGetKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecNssX509CertGetKey (<code class="PARAMETER"><font><span class="TYPE">CERTCertificate</span></font> *cert</code>);</pre>
-<p>Extracts public key from the <code class="PARAMETER">cert</code>
+<div class="refsect2">
+<a name="xmlSecNssX509CertGetKey"></a><h3>xmlSecNssX509CertGetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecNssX509CertGetKey (<em class="parameter"><code><font><span class="type">CERTCertificate</span></font> *cert</code></em>);</pre>
+<p>Extracts public key from the <em class="parameter"><code>cert</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN41840"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41842"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssX509CertGetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>cert</p></td>
-<td><p>the certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41851"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssX509CertGetKey.returns"></a><h4>Returns</h4>
 <p> public key value or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATARAWX509CERTGETKLASS"></a><h3>xmlSecNssKeyDataRawX509CertGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecNssKeyDataRawX509CertGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataRawX509CertGetKlass"></a><h3>xmlSecNssKeyDataRawX509CertGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecNssKeyDataRawX509CertGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The raw X509 certificates key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN41864"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssKeyDataRawX509CertGetKlass.returns"></a><h4>Returns</h4>
 <p> raw X509 certificates key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509STOREGETKLASS"></a><h3>xmlSecNssX509StoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font>
-xmlSecNssX509StoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssX509StoreGetKlass"></a><h3>xmlSecNssX509StoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+xmlSecNssX509StoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The NSS X509 certificates key data store klass.</p>
-<div class="REFSECT3">
-<a name="AEN41877"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to NSS X509 certificates key data store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509STOREFINDCERT"></a><h3>xmlSecNssX509StoreFindCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">CERTCertificate</span></font> *
-xmlSecNssX509StoreFindCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *subjectName</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *issuerName</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *issuerSerial</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *ski</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code>);</pre>
-<p>Searches <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecNssX509StoreFindCert"></a><h3>xmlSecNssX509StoreFindCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">CERTCertificate</span></font> *
+xmlSecNssX509StoreFindCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlChar</span></font> *subjectName</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlChar</span></font> *issuerName</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlChar</span></font> *issuerSerial</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlChar</span></font> *ski</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Searches <em class="parameter"><code>store</code></em>
  for a certificate that matches given criteria.</p>
-<div class="REFSECT3">
-<a name="AEN41907"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41909"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreFindCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>subjectName</p></td>
-<td><p>the desired certificate name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>subjectName</p></td>
+<td class="parameter_description"><p>the desired certificate name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>issuerName</p></td>
-<td><p>the desired certificate issuer name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>issuerName</p></td>
+<td class="parameter_description"><p>the desired certificate issuer name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>issuerSerial</p></td>
-<td><p>the desired certificate issuer serial number.</p></td>
-<td> </td>
+<td class="parameter_name"><p>issuerSerial</p></td>
+<td class="parameter_description"><p>the desired certificate issuer serial number.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ski</p></td>
-<td><p>the desired certificate SKI.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ski</p></td>
+<td class="parameter_description"><p>the desired certificate SKI.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41948"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreFindCert.returns"></a><h4>Returns</h4>
 <p> pointer to found certificate or NULL if certificate is not found
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509STOREVERIFY"></a><h3>xmlSecNssX509StoreVerify ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">CERTCertificate</span></font> *
-xmlSecNssX509StoreVerify (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">CERTCertList</span></font> *certs</code>,
-                          <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code>);</pre>
-<p>Verifies <code class="PARAMETER">certs</code>
+<div class="refsect2">
+<a name="xmlSecNssX509StoreVerify"></a><h3>xmlSecNssX509StoreVerify ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">CERTCertificate</span></font> *
+xmlSecNssX509StoreVerify (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                          <em class="parameter"><code><font><span class="type">CERTCertList</span></font> *certs</code></em>,
+                          <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Verifies <em class="parameter"><code>certs</code></em>
  list.</p>
-<div class="REFSECT3">
-<a name="AEN41969"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN41971"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreVerify.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>certs</p></td>
-<td><p>the untrusted certificates stack.</p></td>
-<td> </td>
+<td class="parameter_name"><p>certs</p></td>
+<td class="parameter_description"><p>the untrusted certificates stack.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN41992"></a><h4>Returns</h4>
-<p> pointer to the first verified certificate from <code class="PARAMETER">certs</code>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreVerify.returns"></a><h4>Returns</h4>
+<p> pointer to the first verified certificate from <em class="parameter"><code>certs</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509STOREADOPTCERT"></a><h3>xmlSecNssX509StoreAdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNssX509StoreAdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">CERTCertificate</span></font> *cert</code>,
-                             <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecNssX509StoreAdoptCert"></a><h3>xmlSecNssX509StoreAdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNssX509StoreAdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                             <em class="parameter"><code><font><span class="type">CERTCertificate</span></font> *cert</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Adds trusted (root) or untrusted certificate to the store.</p>
-<div class="REFSECT3">
-<a name="AEN42013"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN42015"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreAdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to NSS X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to NSS X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN42036"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNssX509StoreAdoptCert.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-NSS-X509.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATAX509ID"></a><h3>xmlSecNssKeyDataX509Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataX509Id</pre>
+<div class="refsect1">
+<a name="xmlsec-nss-x509.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataX509Id"></a><h3>xmlSecNssKeyDataX509Id</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataX509Id</pre>
 <p>The NSS X509 data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSKEYDATARAWX509CERTID"></a><h3>xmlSecNssKeyDataRawX509CertId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssKeyDataRawX509CertId</pre>
+<div class="refsect2">
+<a name="xmlSecNssKeyDataRawX509CertId"></a><h3>xmlSecNssKeyDataRawX509CertId</h3>
+<pre class="programlisting">#define             xmlSecNssKeyDataRawX509CertId</pre>
 <p>The NSS raw X509 certificate klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECNSSX509STOREID"></a><h3>xmlSecNssX509StoreId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNssX509StoreId</pre>
+<div class="refsect2">
+<a name="xmlSecNssX509StoreId"></a><h3>xmlSecNssX509StoreId</h3>
+<pre class="programlisting">#define             xmlSecNssX509StoreId</pre>
 <p>The NSS X509 store klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nss-pkikeys.html"><b><<< pkikeys</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-mscrypto-ref.html"><b>XML Security Library for MSCrypto API Reference. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-app.html b/docs/api/xmlsec-openssl-app.html
index 888b6b7..41d4d9b 100644
--- a/docs/api/xmlsec-openssl-app.html
+++ b/docs/api/xmlsec-openssl-app.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>app</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="PREVIOUS" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="NEXT" title="bn" href="xmlsec-openssl-bn.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>app: 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-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="prev" href="xmlsec-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="next" href="xmlsec-openssl-bn.html" title="bn">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,1114 +73,1123 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-openssl-app.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-ref.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-bn.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-OPENSSL-APP"></a>app</h1>
-<div class="REFNAMEDIV">
-<a name="AEN28928"></a><h2>Name</h2>app -- Application functions implementation for OpenSSL.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-APP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28933"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-openssl-app"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-openssl-app.top_of_page"></a>app</span></h2>
+<p>app — Application functions implementation for OpenSSL.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-openssl-app.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPINIT">xmlSecOpenSSLAppInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppInit" title="xmlSecOpenSSLAppInit ()">xmlSecOpenSSLAppInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPSHUTDOWN">xmlSecOpenSSLAppShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppShutdown" title="xmlSecOpenSSLAppShutdown ()">xmlSecOpenSSLAppShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRINIT">xmlSecOpenSSLAppDefaultKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrInit" title="xmlSecOpenSSLAppDefaultKeysMngrInit ()">xmlSecOpenSSLAppDefaultKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRADOPTKEY">xmlSecOpenSSLAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrAdoptKey" title="xmlSecOpenSSLAppDefaultKeysMngrAdoptKey ()">xmlSecOpenSSLAppDefaultKeysMngrAdoptKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRLOAD">xmlSecOpenSSLAppDefaultKeysMngrLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrLoad" title="xmlSecOpenSSLAppDefaultKeysMngrLoad ()">xmlSecOpenSSLAppDefaultKeysMngrLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRSAVE">xmlSecOpenSSLAppDefaultKeysMngrSave</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrSave" title="xmlSecOpenSSLAppDefaultKeysMngrSave ()">xmlSecOpenSSLAppDefaultKeysMngrSave</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOAD">xmlSecOpenSSLAppKeysMngrCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoad" title="xmlSecOpenSSLAppKeysMngrCertLoad ()">xmlSecOpenSSLAppKeysMngrCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOADMEMORY">xmlSecOpenSSLAppKeysMngrCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoadMemory" title="xmlSecOpenSSLAppKeysMngrCertLoadMemory ()">xmlSecOpenSSLAppKeysMngrCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRCERTLOADBIO">xmlSecOpenSSLAppKeysMngrCertLoadBIO</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrCertLoadBIO" title="xmlSecOpenSSLAppKeysMngrCertLoadBIO ()">xmlSecOpenSSLAppKeysMngrCertLoadBIO</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRADDCERTSPATH">xmlSecOpenSSLAppKeysMngrAddCertsPath</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrAddCertsPath" title="xmlSecOpenSSLAppKeysMngrAddCertsPath ()">xmlSecOpenSSLAppKeysMngrAddCertsPath</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYSMNGRADDCERTSFILE">xmlSecOpenSSLAppKeysMngrAddCertsFile</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeysMngrAddCertsFile" title="xmlSecOpenSSLAppKeysMngrAddCertsFile ()">xmlSecOpenSSLAppKeysMngrAddCertsFile</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOAD">xmlSecOpenSSLAppKeyLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoad" title="xmlSecOpenSSLAppKeyLoad ()">xmlSecOpenSSLAppKeyLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOADMEMORY">xmlSecOpenSSLAppKeyLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoadMemory" title="xmlSecOpenSSLAppKeyLoadMemory ()">xmlSecOpenSSLAppKeyLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYLOADBIO">xmlSecOpenSSLAppKeyLoadBIO</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyLoadBIO" title="xmlSecOpenSSLAppKeyLoadBIO ()">xmlSecOpenSSLAppKeyLoadBIO</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOAD">xmlSecOpenSSLAppPkcs12Load</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12Load" title="xmlSecOpenSSLAppPkcs12Load ()">xmlSecOpenSSLAppPkcs12Load</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOADMEMORY">xmlSecOpenSSLAppPkcs12LoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12LoadMemory" title="xmlSecOpenSSLAppPkcs12LoadMemory ()">xmlSecOpenSSLAppPkcs12LoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPPKCS12LOADBIO">xmlSecOpenSSLAppPkcs12LoadBIO</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppPkcs12LoadBIO" title="xmlSecOpenSSLAppPkcs12LoadBIO ()">xmlSecOpenSSLAppPkcs12LoadBIO</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOAD">xmlSecOpenSSLAppKeyCertLoad</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoad" title="xmlSecOpenSSLAppKeyCertLoad ()">xmlSecOpenSSLAppKeyCertLoad</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOADMEMORY">xmlSecOpenSSLAppKeyCertLoadMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoadMemory" title="xmlSecOpenSSLAppKeyCertLoadMemory ()">xmlSecOpenSSLAppKeyCertLoadMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYCERTLOADBIO">xmlSecOpenSSLAppKeyCertLoadBIO</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyCertLoadBIO" title="xmlSecOpenSSLAppKeyCertLoadBIO ()">xmlSecOpenSSLAppKeyCertLoadBIO</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPKEYFROMCERTLOADBIO">xmlSecOpenSSLAppKeyFromCertLoadBIO</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppKeyFromCertLoadBIO" title="xmlSecOpenSSLAppKeyFromCertLoadBIO ()">xmlSecOpenSSLAppKeyFromCertLoadBIO</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">void</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPGETDEFAULTPWDCALLBACK">xmlSecOpenSSLAppGetDefaultPwdCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppGetDefaultPwdCallback" title="xmlSecOpenSSLAppGetDefaultPwdCallback ()">xmlSecOpenSSLAppGetDefaultPwdCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-APP.DESCRIPTION"></a><h2>Description</h2>
-<p>Application functions implementation for OpenSSL.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-APP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPINIT"></a><h3>xmlSecOpenSSLAppInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppInit (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *config</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-app.description"></a><h2>Description</h2>
+<p>
+Application functions implementation for OpenSSL.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-app.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppInit"></a><h3>xmlSecOpenSSLAppInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppInit (<em class="parameter"><code>const <font><span class="type">char</span></font> *config</code></em>);</pre>
 <p>General crypto engine initialization. This function is used
 by XMLSec command line utility and called before
-<code class="PARAMETER">xmlSecInit</code>
+<em class="parameter"><code>xmlSecInit</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN29107"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29109"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>config</p></td>
-<td><p>the path to certs.</p></td>
-<td> </td>
+<td class="parameter_name"><p>config</p></td>
+<td class="parameter_description"><p>the path to certs.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29118"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPSHUTDOWN"></a><h3>xmlSecOpenSSLAppShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppShutdown"></a><h3>xmlSecOpenSSLAppShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>General crypto engine shutdown. This function is used
 by XMLSec command line utility and called after
-<code class="PARAMETER">xmlSecShutdown</code>
+<em class="parameter"><code>xmlSecShutdown</code></em>
  function.</p>
-<div class="REFSECT3">
-<a name="AEN29132"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPDEFAULTKEYSMNGRINIT"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppDefaultKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
-<p>Initializes <code class="PARAMETER">mngr</code>
- with simple keys store <a href="xmlsec-keysmngr.html#XMLSECSIMPLEKEYSSTOREID"><span class="TYPE">xmlSecSimpleKeysStoreId</span></a>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrInit"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppDefaultKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
+<p>Initializes <em class="parameter"><code>mngr</code></em>
+ with simple keys store <a class="link" href="xmlsec-keysmngr.html#xmlSecSimpleKeysStoreId" title="xmlSecSimpleKeysStoreId"><span class="type">xmlSecSimpleKeysStoreId</span></a>
 and a default OpenSSL crypto key data stores.</p>
-<div class="REFSECT3">
-<a name="AEN29149"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29151"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29160"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPDEFAULTKEYSMNGRADOPTKEY"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrAdoptKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrAdoptKey"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrAdoptKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecOpenSSLAppDefaultKeysMngrAdoptKey
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
-<p>Adds <code class="PARAMETER">key</code>
- to the keys manager <code class="PARAMETER">mngr</code>
- created with <a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecOpenSSLAppDefaultKeysMngrInit</span></a>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
+<p>Adds <em class="parameter"><code>key</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
+ created with <a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrInit" title="xmlSecOpenSSLAppDefaultKeysMngrInit ()"><span class="type">xmlSecOpenSSLAppDefaultKeysMngrInit</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN29181"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29183"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrAdoptKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29198"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrAdoptKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPDEFAULTKEYSMNGRLOAD"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppDefaultKeysMngrLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *uri</code>);</pre>
-<p>Loads XML keys file from <code class="PARAMETER">uri</code>
- to the keys manager <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrLoad"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppDefaultKeysMngrLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *uri</code></em>);</pre>
+<p>Loads XML keys file from <em class="parameter"><code>uri</code></em>
+ to the keys manager <em class="parameter"><code>mngr</code></em>
  created
-with <a href="xmlsec-openssl-app.html#XMLSECOPENSSLAPPDEFAULTKEYSMNGRINIT"><span class="TYPE">xmlSecOpenSSLAppDefaultKeysMngrInit</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN29219"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29221"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+with <a class="link" href="xmlsec-openssl-app.html#xmlSecOpenSSLAppDefaultKeysMngrInit" title="xmlSecOpenSSLAppDefaultKeysMngrInit ()"><span class="type">xmlSecOpenSSLAppDefaultKeysMngrInit</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29236"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPDEFAULTKEYSMNGRSAVE"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrSave ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppDefaultKeysMngrSave (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Saves keys from <code class="PARAMETER">mngr</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrSave"></a><h3>xmlSecOpenSSLAppDefaultKeysMngrSave ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppDefaultKeysMngrSave (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Saves keys from <em class="parameter"><code>mngr</code></em>
  to  XML keys file.</p>
-<div class="REFSECT3">
-<a name="AEN29257"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29259"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrSave.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the destination filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the destination filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the type of keys to save (public/private/symmetric).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the type of keys to save (public/private/symmetric).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29280"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppDefaultKeysMngrSave.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYSMNGRCERTLOAD"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeysMngrCertLoad (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoad"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeysMngrCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>filename</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN29305"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29307"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate in <code class="PARAMETER">filename</code>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate in <em class="parameter"><code>filename</code></em>
 trusted or not.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29335"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYSMNGRCERTLOADMEMORY"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadMemory"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecOpenSSLAppKeysMngrCertLoadMemory
-                               (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
-<p>Reads cert from binary buffer <code class="PARAMETER">data</code>
+                               (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</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>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
+<p>Reads cert from binary buffer <em class="parameter"><code>data</code></em>
  and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN29363"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29365"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate trusted or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate trusted or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29398"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYSMNGRCERTLOADBIO"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoadBIO ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeysMngrCertLoadBIO (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                     <code class="PARAMETER"><font><span class="TYPE">BIO</span></font> *bio</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadBIO"></a><h3>xmlSecOpenSSLAppKeysMngrCertLoadBIO ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeysMngrCertLoadBIO (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                     <em class="parameter"><code><font><span class="type">BIO</span></font> *bio</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Reads cert from an OpenSSL BIO object and adds to the list of trusted or known
-untrusted certs in <code class="PARAMETER">store</code>
+untrusted certs in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN29422"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29424"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadBIO.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bio</p></td>
-<td><p>the certificate BIO.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bio</p></td>
+<td class="parameter_description"><p>the certificate BIO.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the flag that indicates is the certificate trusted or not.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the flag that indicates is the certificate trusted or not.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29451"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrCertLoadBIO.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYSMNGRADDCERTSPATH"></a><h3>xmlSecOpenSSLAppKeysMngrAddCertsPath ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeysMngrAddCertsPath (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *path</code>);</pre>
-<p>Reads cert from <code class="PARAMETER">path</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsPath"></a><h3>xmlSecOpenSSLAppKeysMngrAddCertsPath ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeysMngrAddCertsPath (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">char</span></font> *path</code></em>);</pre>
+<p>Reads cert from <em class="parameter"><code>path</code></em>
  and adds to the list of trusted certificates.</p>
-<div class="REFSECT3">
-<a name="AEN29469"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29471"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsPath.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>path</p></td>
-<td><p>the path to trusted certificates.</p></td>
-<td> </td>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p>the path to trusted certificates.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29486"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsPath.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYSMNGRADDCERTSFILE"></a><h3>xmlSecOpenSSLAppKeysMngrAddCertsFile ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeysMngrAddCertsFile (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>);</pre>
-<p>Reads certs from <code class="PARAMETER">file</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsFile"></a><h3>xmlSecOpenSSLAppKeysMngrAddCertsFile ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeysMngrAddCertsFile (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>);</pre>
+<p>Reads certs from <em class="parameter"><code>file</code></em>
  and adds to the list of trusted certificates.
-It is possible for <code class="PARAMETER">file</code>
+It is possible for <em class="parameter"><code>file</code></em>
  to contain multiple certs.</p>
-<div class="REFSECT3">
-<a name="AEN29505"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29507"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsFile.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>mngr</p></td>
-<td><p>the keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>file</p></td>
-<td><p>the file containing trusted certificates.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the file containing trusted certificates.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29522"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeysMngrAddCertsFile.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYLOAD"></a><h3>xmlSecOpenSSLAppKeyLoad ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppKeyLoad (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyLoad"></a><h3>xmlSecOpenSSLAppKeyLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppKeyLoad (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                         <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                         <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the a file.</p>
-<div class="REFSECT3">
-<a name="AEN29548"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29550"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29583"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoad.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYLOADMEMORY"></a><h3>xmlSecOpenSSLAppKeyLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppKeyLoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                               <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyLoadMemory"></a><h3>xmlSecOpenSSLAppKeyLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppKeyLoadMemory (<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><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the memory buffer.</p>
-<div class="REFSECT3">
-<a name="AEN29612"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29614"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of binary key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of binary key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29653"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYLOADBIO"></a><h3>xmlSecOpenSSLAppKeyLoadBIO ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppKeyLoadBIO (<code class="PARAMETER"><font><span class="TYPE">BIO</span></font> *bio</code>,
-                            <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyLoadBIO"></a><h3>xmlSecOpenSSLAppKeyLoadBIO ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppKeyLoadBIO (<em class="parameter"><code><font><span class="type">BIO</span></font> *bio</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key from the an OpenSSL BIO object.</p>
-<div class="REFSECT3">
-<a name="AEN29679"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29681"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoadBIO.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bio</p></td>
-<td><p>the key BIO.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bio</p></td>
+<td class="parameter_description"><p>the key BIO.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the key file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the key file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the key file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the key file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the key password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the key password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29714"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyLoadBIO.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPPKCS12LOAD"></a><h3>xmlSecOpenSSLAppPkcs12Load ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppPkcs12Load (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                            <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppPkcs12Load"></a><h3>xmlSecOpenSSLAppPkcs12Load ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppPkcs12Load (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                            <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                            <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 file.
 For uniformity, call xmlSecOpenSSLAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN29737"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29739"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12Load.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>filename</p></td>
-<td><p>the PKCS12 key filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the PKCS12 key filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29766"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12Load.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPPKCS12LOADMEMORY"></a><h3>xmlSecOpenSSLAppPkcs12LoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppPkcs12LoadMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppPkcs12LoadMemory"></a><h3>xmlSecOpenSSLAppPkcs12LoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppPkcs12LoadMemory (<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>const <font><span class="type">char</span></font> *pwd</code></em>,
+                                  <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                                  <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 data in memory buffer.
 For uniformity, call xmlSecOpenSSLAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN29792"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29794"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12LoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the PKCS12 binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the PKCS12 binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the PKCS12 binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29827"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12LoadMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPPKCS12LOADBIO"></a><h3>xmlSecOpenSSLAppPkcs12LoadBIO ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppPkcs12LoadBIO (<code class="PARAMETER"><font><span class="TYPE">BIO</span></font> *bio</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *pwd</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallback</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">void</span></font> *pwdCallbackCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppPkcs12LoadBIO"></a><h3>xmlSecOpenSSLAppPkcs12LoadBIO ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppPkcs12LoadBIO (<em class="parameter"><code><font><span class="type">BIO</span></font> *bio</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">char</span></font> *pwd</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallback</code></em>,
+                               <em class="parameter"><code><font><span class="type">void</span></font> *pwdCallbackCtx</code></em>);</pre>
 <p>Reads key and all associated certificates from the PKCS12 data in an OpenSSL BIO object.
 For uniformity, call xmlSecOpenSSLAppKeyLoad instead of this function. Pass
 in format=xmlSecKeyDataFormatPkcs12.</p>
-<div class="REFSECT3">
-<a name="AEN29850"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29852"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12LoadBIO.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bio</p></td>
-<td><p>the PKCS12 key bio.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bio</p></td>
+<td class="parameter_description"><p>the PKCS12 key bio.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwd</p></td>
-<td><p>the PKCS12 file password.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwd</p></td>
+<td class="parameter_description"><p>the PKCS12 file password.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallback</p></td>
-<td><p>the password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallback</p></td>
+<td class="parameter_description"><p>the password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pwdCallbackCtx</p></td>
-<td><p>the user context for password callback.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pwdCallbackCtx</p></td>
+<td class="parameter_description"><p>the user context for password callback.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29879"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppPkcs12LoadBIO.returns"></a><h4>Returns</h4>
 <p> pointer to the key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYCERTLOAD"></a><h3>xmlSecOpenSSLAppKeyCertLoad ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeyCertLoad (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>,
-                             <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
-<p>Reads the certificate from $<code class="PARAMETER">filename</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyCertLoad"></a><h3>xmlSecOpenSSLAppKeyCertLoad ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeyCertLoad (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
+<p>Reads the certificate from $<em class="parameter"><code>filename</code></em>
  and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN29900"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29902"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoad.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>filename</p></td>
-<td><p>the certificate filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certificate filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN29923"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoad.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYCERTLOADMEMORY"></a><h3>xmlSecOpenSSLAppKeyCertLoadMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeyCertLoadMemory (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                   <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyCertLoadMemory"></a><h3>xmlSecOpenSSLAppKeyCertLoadMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeyCertLoadMemory (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</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>,
+                                   <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Reads the certificate from memory buffer and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN29946"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29948"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoadMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the certificate binary data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the certificate binary data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the certificate binary data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the certificate binary data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN29975"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoadMemory.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYCERTLOADBIO"></a><h3>xmlSecOpenSSLAppKeyCertLoadBIO ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLAppKeyCertLoadBIO (<code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">BIO</span></font> *bio</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyCertLoadBIO"></a><h3>xmlSecOpenSSLAppKeyCertLoadBIO ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLAppKeyCertLoadBIO (<em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>,
+                                <em class="parameter"><code><font><span class="type">BIO</span></font> *bio</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Reads the certificate from memory buffer and adds it to key.</p>
-<div class="REFSECT3">
-<a name="AEN29995"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN29997"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoadBIO.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bio</p></td>
-<td><p>the certificate bio.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bio</p></td>
+<td class="parameter_description"><p>the certificate bio.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the certificate file format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the certificate file format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN30018"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyCertLoadBIO.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPKEYFROMCERTLOADBIO"></a><h3>xmlSecOpenSSLAppKeyFromCertLoadBIO ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keys.html#XMLSECKEY"><span class="RETURNVALUE">xmlSecKeyPtr</span></a>
-xmlSecOpenSSLAppKeyFromCertLoadBIO (<code class="PARAMETER"><font><span class="TYPE">BIO</span></font> *bio</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATAFORMAT"><span class="TYPE">xmlSecKeyDataFormat</span></a> format</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppKeyFromCertLoadBIO"></a><h3>xmlSecOpenSSLAppKeyFromCertLoadBIO ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyPtr</span></font>
+xmlSecOpenSSLAppKeyFromCertLoadBIO (<em class="parameter"><code><font><span class="type">BIO</span></font> *bio</code></em>,
+                                    <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataFormat" title="enum xmlSecKeyDataFormat"><span class="type">xmlSecKeyDataFormat</span></a> format</code></em>);</pre>
 <p>Loads public key from cert.</p>
-<div class="REFSECT3">
-<a name="AEN30035"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30037"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyFromCertLoadBIO.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>bio</p></td>
-<td><p>the BIO.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bio</p></td>
+<td class="parameter_description"><p>the BIO.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>format</p></td>
-<td><p>the cert format.</p></td>
-<td> </td>
+<td class="parameter_name"><p>format</p></td>
+<td class="parameter_description"><p>the cert format.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN30052"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppKeyFromCertLoadBIO.returns"></a><h4>Returns</h4>
 <p> pointer to key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLAPPGETDEFAULTPWDCALLBACK"></a><h3>xmlSecOpenSSLAppGetDefaultPwdCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font> *
-xmlSecOpenSSLAppGetDefaultPwdCallback (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLAppGetDefaultPwdCallback"></a><h3>xmlSecOpenSSLAppGetDefaultPwdCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font> *
+xmlSecOpenSSLAppGetDefaultPwdCallback (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets default password callback.</p>
-<div class="REFSECT3">
-<a name="AEN30065"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLAppGetDefaultPwdCallback.returns"></a><h4>Returns</h4>
 <p> default password callback.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-APP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-openssl-app.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-ref.html"><b><<< XML Security Library for OpenSLL API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-bn.html"><b>bn >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-bn.html b/docs/api/xmlsec-openssl-bn.html
index 4f3c540..d53999d 100644
--- a/docs/api/xmlsec-openssl-bn.html
+++ b/docs/api/xmlsec-openssl-bn.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>bn</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="PREVIOUS" title="app" href="xmlsec-openssl-app.html">
-<link rel="NEXT" title="crypto" href="xmlsec-openssl-crypto.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<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-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="prev" href="xmlsec-openssl-app.html" title="app">
+<link rel="next" href="xmlsec-openssl-crypto.html" title="crypto">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,145 +73,150 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-openssl-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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-app.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-crypto.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-OPENSSL-BN"></a>bn</h1>
-<div class="REFNAMEDIV">
-<a name="AEN30076"></a><h2>Name</h2>bn -- Big numbers helper functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-BN.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30081"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-openssl-bn"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-openssl-bn.top_of_page"></a>bn</span></h2>
+<p>bn — Big numbers helper functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-openssl-bn.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td>
-<font><span class="RETURNVALUE">BIGNUM</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-bn.html#XMLSECOPENSSLNODEGETBNVALUE">xmlSecOpenSSLNodeGetBNValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">BIGNUM</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-bn.html#xmlSecOpenSSLNodeGetBNValue" title="xmlSecOpenSSLNodeGetBNValue ()">xmlSecOpenSSLNodeGetBNValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-bn.html#XMLSECOPENSSLNODESETBNVALUE">xmlSecOpenSSLNodeSetBNValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-bn.html#xmlSecOpenSSLNodeSetBNValue" title="xmlSecOpenSSLNodeSetBNValue ()">xmlSecOpenSSLNodeSetBNValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-openssl-bn.description"></a><h2>Description</h2>
+<p>
+Big numbers helper functions.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-BN.DESCRIPTION"></a><h2>Description</h2>
-<p>Big numbers helper functions.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-BN.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLNODEGETBNVALUE"></a><h3>xmlSecOpenSSLNodeGetBNValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">BIGNUM</span></font> *
-xmlSecOpenSSLNodeGetBNValue (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">BIGNUM</span></font> **a</code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-openssl-bn.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecOpenSSLNodeGetBNValue"></a><h3>xmlSecOpenSSLNodeGetBNValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">BIGNUM</span></font> *
+xmlSecOpenSSLNodeGetBNValue (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                             <em class="parameter"><code><font><span class="type">BIGNUM</span></font> **a</code></em>);</pre>
 <p>Converts the node content from CryptoBinary format
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-CryptoBinary</span></font>)
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-CryptoBinary</span></font>)
 to a BIGNUM. If no BIGNUM buffer provided then a new
 BIGNUM is created (caller is responsible for freeing it).</p>
-<div class="REFSECT3">
-<a name="AEN30119"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30121"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLNodeGetBNValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the poitner to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the poitner to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>a</p></td>
-<td><p>the BIGNUM buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>a</p></td>
+<td class="parameter_description"><p>the BIGNUM buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN30136"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLNodeGetBNValue.returns"></a><h4>Returns</h4>
 <p> a pointer to BIGNUM produced from CryptoBinary string
 or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLNODESETBNVALUE"></a><h3>xmlSecOpenSSLNodeSetBNValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLNodeSetBNValue (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">BIGNUM</span></font> *a</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">int</span></font> addLineBreaks</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLNodeSetBNValue"></a><h3>xmlSecOpenSSLNodeSetBNValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLNodeSetBNValue (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">BIGNUM</span></font> *a</code></em>,
+                             <em class="parameter"><code><font><span class="type">int</span></font> addLineBreaks</code></em>);</pre>
 <p>Converts BIGNUM to CryptoBinary string
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-CryptoBinary</span></font>)
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-CryptoBinary</span></font>)
 and sets it as the content of the given node. If the
 addLineBreaks is set then line breaks are added
 before and after the CryptoBinary string.</p>
-<div class="REFSECT3">
-<a name="AEN30158"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30160"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLNodeSetBNValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<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><p>a</p></td>
-<td><p>the BIGNUM.</p></td>
-<td> </td>
+<td class="parameter_name"><p>a</p></td>
+<td class="parameter_description"><p>the BIGNUM.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>addLineBreaks</p></td>
-<td><p>if the flag is equal to 1 then
+<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> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN30181"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLNodeSetBNValue.returns"></a><h4>Returns</h4>
 <p> 0 on success or -1 otherwise.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-BN.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-openssl-bn.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-app.html"><b><<< app</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-crypto.html"><b>crypto >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-crypto.html b/docs/api/xmlsec-openssl-crypto.html
index f56e0a9..2a908ad 100644
--- a/docs/api/xmlsec-openssl-crypto.html
+++ b/docs/api/xmlsec-openssl-crypto.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>crypto</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="PREVIOUS" title="bn" href="xmlsec-openssl-bn.html">
-<link rel="NEXT" title="evp" href="xmlsec-openssl-evp.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>crypto: 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-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="prev" href="xmlsec-openssl-bn.html" title="bn">
+<link rel="next" href="xmlsec-openssl-evp.html" title="evp">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,2434 +73,2760 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-bn.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-openssl-crypto.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-bn.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-evp.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-OPENSSL-CRYPTO"></a>crypto</h1>
-<div class="REFNAMEDIV">
-<a name="AEN30192"></a><h2>Name</h2>crypto -- Crypto transforms implementation for OpenSSL.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-CRYPTO.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30197"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-openssl-crypto"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-openssl-crypto.top_of_page"></a>crypto</span></h2>
+<p>crypto — Crypto transforms implementation for OpenSSL.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-openssl-crypto.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECCRYPTOGETFUNCTIONS-OPENSSL">xmlSecCryptoGetFunctions_openssl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLINIT">xmlSecOpenSSLInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecCryptoGetFunctions-openssl" title="xmlSecCryptoGetFunctions_openssl ()">xmlSecCryptoGetFunctions_openssl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLSHUTDOWN">xmlSecOpenSSLShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLInit" title="xmlSecOpenSSLInit ()">xmlSecOpenSSLInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYSMNGRINIT">xmlSecOpenSSLKeysMngrInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLShutdown" title="xmlSecOpenSSLShutdown ()">xmlSecOpenSSLShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLGENERATERANDOM">xmlSecOpenSSLGenerateRandom</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeysMngrInit" title="xmlSecOpenSSLKeysMngrInit ()">xmlSecOpenSSLKeysMngrInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLSETDEFAULTTRUSTEDCERTSFOLDER">xmlSecOpenSSLSetDefaultTrustedCertsFolder</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLGenerateRandom" title="xmlSecOpenSSLGenerateRandom ()">xmlSecOpenSSLGenerateRandom</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLGETDEFAULTTRUSTEDCERTSFOLDER">xmlSecOpenSSLGetDefaultTrustedCertsFolder</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLSetDefaultTrustedCertsFolder" title="xmlSecOpenSSLSetDefaultTrustedCertsFolder ()">xmlSecOpenSSLSetDefaultTrustedCertsFolder</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESGETKLASS">xmlSecOpenSSLKeyDataAesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLGetDefaultTrustedCertsFolder" title="xmlSecOpenSSLGetDefaultTrustedCertsFolder ()">xmlSecOpenSSLGetDefaultTrustedCertsFolder</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESSET">xmlSecOpenSSLKeyDataAesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesGetKlass" title="xmlSecOpenSSLKeyDataAesGetKlass ()">xmlSecOpenSSLKeyDataAesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES128CBCGETKLASS">xmlSecOpenSSLTransformAes128CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesSet" title="xmlSecOpenSSLKeyDataAesSet ()">xmlSecOpenSSLKeyDataAesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES192CBCGETKLASS">xmlSecOpenSSLTransformAes192CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes128CbcGetKlass" title="xmlSecOpenSSLTransformAes128CbcGetKlass ()">xmlSecOpenSSLTransformAes128CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES256CBCGETKLASS">xmlSecOpenSSLTransformAes256CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes192CbcGetKlass" title="xmlSecOpenSSLTransformAes192CbcGetKlass ()">xmlSecOpenSSLTransformAes192CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES128GETKLASS">xmlSecOpenSSLTransformKWAes128GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes256CbcGetKlass" title="xmlSecOpenSSLTransformAes256CbcGetKlass ()">xmlSecOpenSSLTransformAes256CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES192GETKLASS">xmlSecOpenSSLTransformKWAes192GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes128GetKlass" title="xmlSecOpenSSLTransformKWAes128GetKlass ()">xmlSecOpenSSLTransformKWAes128GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES256GETKLASS">xmlSecOpenSSLTransformKWAes256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes192GetKlass" title="xmlSecOpenSSLTransformKWAes192GetKlass ()">xmlSecOpenSSLTransformKWAes192GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESGETKLASS">xmlSecOpenSSLKeyDataDesGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes256GetKlass" title="xmlSecOpenSSLTransformKWAes256GetKlass ()">xmlSecOpenSSLTransformKWAes256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESSET">xmlSecOpenSSLKeyDataDesSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesGetKlass" title="xmlSecOpenSSLKeyDataDesGetKlass ()">xmlSecOpenSSLKeyDataDesGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDES3CBCGETKLASS">xmlSecOpenSSLTransformDes3CbcGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesSet" title="xmlSecOpenSSLKeyDataDesSet ()">xmlSecOpenSSLKeyDataDesSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWDES3GETKLASS">xmlSecOpenSSLTransformKWDes3GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDes3CbcGetKlass" title="xmlSecOpenSSLTransformDes3CbcGetKlass ()">xmlSecOpenSSLTransformDes3CbcGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETKLASS">xmlSecOpenSSLKeyDataDsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWDes3GetKlass" title="xmlSecOpenSSLTransformKWDes3GetKlass ()">xmlSecOpenSSLTransformKWDes3GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAADOPTDSA">xmlSecOpenSSLKeyDataDsaAdoptDsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetKlass" title="xmlSecOpenSSLKeyDataDsaGetKlass ()">xmlSecOpenSSLKeyDataDsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">DSA</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETDSA">xmlSecOpenSSLKeyDataDsaGetDsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaAdoptDsa" title="xmlSecOpenSSLKeyDataDsaAdoptDsa ()">xmlSecOpenSSLKeyDataDsaAdoptDsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAADOPTEVP">xmlSecOpenSSLKeyDataDsaAdoptEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">DSA</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetDsa" title="xmlSecOpenSSLKeyDataDsaGetDsa ()">xmlSecOpenSSLKeyDataDsaGetDsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EVP_PKEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAGETEVP">xmlSecOpenSSLKeyDataDsaGetEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaAdoptEvp" title="xmlSecOpenSSLKeyDataDsaAdoptEvp ()">xmlSecOpenSSLKeyDataDsaAdoptEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA1GETKLASS">xmlSecOpenSSLTransformDsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EVP_PKEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaGetEvp" title="xmlSecOpenSSLKeyDataDsaGetEvp ()">xmlSecOpenSSLKeyDataDsaGetEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA256GETKLASS">xmlSecOpenSSLTransformDsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha1GetKlass" title="xmlSecOpenSSLTransformDsaSha1GetKlass ()">xmlSecOpenSSLTransformDsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETKLASS">xmlSecOpenSSLKeyDataEcdsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha256GetKlass" title="xmlSecOpenSSLTransformDsaSha256GetKlass ()">xmlSecOpenSSLTransformDsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAADOPTECDSA">xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetKlass" title="xmlSecOpenSSLKeyDataEcdsaGetKlass ()">xmlSecOpenSSLKeyDataEcdsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EC_KEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETECDSA">xmlSecOpenSSLKeyDataEcdsaGetEcdsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa" title="xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa ()">xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAADOPTEVP">xmlSecOpenSSLKeyDataEcdsaAdoptEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EC_KEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetEcdsa" title="xmlSecOpenSSLKeyDataEcdsaGetEcdsa ()">xmlSecOpenSSLKeyDataEcdsaGetEcdsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EVP_PKEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAGETEVP">xmlSecOpenSSLKeyDataEcdsaGetEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaAdoptEvp" title="xmlSecOpenSSLKeyDataEcdsaAdoptEvp ()">xmlSecOpenSSLKeyDataEcdsaAdoptEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA1GETKLASS">xmlSecOpenSSLTransformEcdsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EVP_PKEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaGetEvp" title="xmlSecOpenSSLKeyDataEcdsaGetEvp ()">xmlSecOpenSSLKeyDataEcdsaGetEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA224GETKLASS">xmlSecOpenSSLTransformEcdsaSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha1GetKlass" title="xmlSecOpenSSLTransformEcdsaSha1GetKlass ()">xmlSecOpenSSLTransformEcdsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA256GETKLASS">xmlSecOpenSSLTransformEcdsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha224GetKlass" title="xmlSecOpenSSLTransformEcdsaSha224GetKlass ()">xmlSecOpenSSLTransformEcdsaSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA384GETKLASS">xmlSecOpenSSLTransformEcdsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha256GetKlass" title="xmlSecOpenSSLTransformEcdsaSha256GetKlass ()">xmlSecOpenSSLTransformEcdsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA512GETKLASS">xmlSecOpenSSLTransformEcdsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha384GetKlass" title="xmlSecOpenSSLTransformEcdsaSha384GetKlass ()">xmlSecOpenSSLTransformEcdsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOST2001GETKLASS">xmlSecOpenSSLKeyDataGost2001GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha512GetKlass" title="xmlSecOpenSSLTransformEcdsaSha512GetKlass ()">xmlSecOpenSSLTransformEcdsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOST2001GOSTR3411-94GETKLASS">xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGost2001GetKlass" title="xmlSecOpenSSLKeyDataGost2001GetKlass ()">xmlSecOpenSSLKeyDataGost2001GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-94GETKLASS">xmlSecOpenSSLTransformGostR3411_94GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGost2001GostR3411-94GetKlass" title="xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass ()">xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOSTR3410-2012-256GETKLASS">xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-94GetKlass" title="xmlSecOpenSSLTransformGostR3411_94GetKlass ()">xmlSecOpenSSLTransformGostR3411_94GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOSTR3410-2012-512GETKLASS">xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGostR3410-2012-256GetKlass" title="xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass ()">xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-256GETKLASS">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGostR3410-2012-512GetKlass" title="xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass ()">xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-512GETKLASS">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256GetKlass" title="xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass ()">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-2012-256GETKLASS">xmlSecOpenSSLTransformGostR3411_2012_256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512GetKlass" title="xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass ()">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-2012-512GETKLASS">xmlSecOpenSSLTransformGostR3411_2012_512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-2012-256GetKlass" title="xmlSecOpenSSLTransformGostR3411_2012_256GetKlass ()">xmlSecOpenSSLTransformGostR3411_2012_256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLHMACGETMINOUTPUTLENGTH">xmlSecOpenSSLHmacGetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-2012-512GetKlass" title="xmlSecOpenSSLTransformGostR3411_2012_512GetKlass ()">xmlSecOpenSSLTransformGostR3411_2012_512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLHMACSETMINOUTPUTLENGTH">xmlSecOpenSSLHmacSetMinOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLHmacGetMinOutputLength" title="xmlSecOpenSSLHmacGetMinOutputLength ()">xmlSecOpenSSLHmacGetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACGETKLASS">xmlSecOpenSSLKeyDataHmacGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLHmacSetMinOutputLength" title="xmlSecOpenSSLHmacSetMinOutputLength ()">xmlSecOpenSSLHmacSetMinOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACSET">xmlSecOpenSSLKeyDataHmacSet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacGetKlass" title="xmlSecOpenSSLKeyDataHmacGetKlass ()">xmlSecOpenSSLKeyDataHmacGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACMD5GETKLASS">xmlSecOpenSSLTransformHmacMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacSet" title="xmlSecOpenSSLKeyDataHmacSet ()">xmlSecOpenSSLKeyDataHmacSet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACRIPEMD160GETKLASS">xmlSecOpenSSLTransformHmacRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacMd5GetKlass" title="xmlSecOpenSSLTransformHmacMd5GetKlass ()">xmlSecOpenSSLTransformHmacMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA1GETKLASS">xmlSecOpenSSLTransformHmacSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacRipemd160GetKlass" title="xmlSecOpenSSLTransformHmacRipemd160GetKlass ()">xmlSecOpenSSLTransformHmacRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA224GETKLASS">xmlSecOpenSSLTransformHmacSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha1GetKlass" title="xmlSecOpenSSLTransformHmacSha1GetKlass ()">xmlSecOpenSSLTransformHmacSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA256GETKLASS">xmlSecOpenSSLTransformHmacSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha224GetKlass" title="xmlSecOpenSSLTransformHmacSha224GetKlass ()">xmlSecOpenSSLTransformHmacSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA384GETKLASS">xmlSecOpenSSLTransformHmacSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha256GetKlass" title="xmlSecOpenSSLTransformHmacSha256GetKlass ()">xmlSecOpenSSLTransformHmacSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA512GETKLASS">xmlSecOpenSSLTransformHmacSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha384GetKlass" title="xmlSecOpenSSLTransformHmacSha384GetKlass ()">xmlSecOpenSSLTransformHmacSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMMD5GETKLASS">xmlSecOpenSSLTransformMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha512GetKlass" title="xmlSecOpenSSLTransformHmacSha512GetKlass ()">xmlSecOpenSSLTransformHmacSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRIPEMD160GETKLASS">xmlSecOpenSSLTransformRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformMd5GetKlass" title="xmlSecOpenSSLTransformMd5GetKlass ()">xmlSecOpenSSLTransformMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETKLASS">xmlSecOpenSSLKeyDataRsaGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRipemd160GetKlass" title="xmlSecOpenSSLTransformRipemd160GetKlass ()">xmlSecOpenSSLTransformRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAADOPTRSA">xmlSecOpenSSLKeyDataRsaAdoptRsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetKlass" title="xmlSecOpenSSLKeyDataRsaGetKlass ()">xmlSecOpenSSLKeyDataRsaGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">RSA</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETRSA">xmlSecOpenSSLKeyDataRsaGetRsa</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaAdoptRsa" title="xmlSecOpenSSLKeyDataRsaAdoptRsa ()">xmlSecOpenSSLKeyDataRsaAdoptRsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAADOPTEVP">xmlSecOpenSSLKeyDataRsaAdoptEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">RSA</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetRsa" title="xmlSecOpenSSLKeyDataRsaGetRsa ()">xmlSecOpenSSLKeyDataRsaGetRsa</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EVP_PKEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAGETEVP">xmlSecOpenSSLKeyDataRsaGetEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaAdoptEvp" title="xmlSecOpenSSLKeyDataRsaAdoptEvp ()">xmlSecOpenSSLKeyDataRsaAdoptEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAMD5GETKLASS">xmlSecOpenSSLTransformRsaMd5GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EVP_PKEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaGetEvp" title="xmlSecOpenSSLKeyDataRsaGetEvp ()">xmlSecOpenSSLKeyDataRsaGetEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSARIPEMD160GETKLASS">xmlSecOpenSSLTransformRsaRipemd160GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaMd5GetKlass" title="xmlSecOpenSSLTransformRsaMd5GetKlass ()">xmlSecOpenSSLTransformRsaMd5GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA1GETKLASS">xmlSecOpenSSLTransformRsaSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaRipemd160GetKlass" title="xmlSecOpenSSLTransformRsaRipemd160GetKlass ()">xmlSecOpenSSLTransformRsaRipemd160GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA224GETKLASS">xmlSecOpenSSLTransformRsaSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha1GetKlass" title="xmlSecOpenSSLTransformRsaSha1GetKlass ()">xmlSecOpenSSLTransformRsaSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA256GETKLASS">xmlSecOpenSSLTransformRsaSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha224GetKlass" title="xmlSecOpenSSLTransformRsaSha224GetKlass ()">xmlSecOpenSSLTransformRsaSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA384GETKLASS">xmlSecOpenSSLTransformRsaSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha256GetKlass" title="xmlSecOpenSSLTransformRsaSha256GetKlass ()">xmlSecOpenSSLTransformRsaSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA512GETKLASS">xmlSecOpenSSLTransformRsaSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha384GetKlass" title="xmlSecOpenSSLTransformRsaSha384GetKlass ()">xmlSecOpenSSLTransformRsaSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAPKCS1GETKLASS">xmlSecOpenSSLTransformRsaPkcs1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha512GetKlass" title="xmlSecOpenSSLTransformRsaSha512GetKlass ()">xmlSecOpenSSLTransformRsaSha512GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAOAEPGETKLASS">xmlSecOpenSSLTransformRsaOaepGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaPkcs1GetKlass" title="xmlSecOpenSSLTransformRsaPkcs1GetKlass ()">xmlSecOpenSSLTransformRsaPkcs1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA1GETKLASS">xmlSecOpenSSLTransformSha1GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaOaepGetKlass" title="xmlSecOpenSSLTransformRsaOaepGetKlass ()">xmlSecOpenSSLTransformRsaOaepGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA224GETKLASS">xmlSecOpenSSLTransformSha224GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha1GetKlass" title="xmlSecOpenSSLTransformSha1GetKlass ()">xmlSecOpenSSLTransformSha1GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA256GETKLASS">xmlSecOpenSSLTransformSha256GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha224GetKlass" title="xmlSecOpenSSLTransformSha224GetKlass ()">xmlSecOpenSSLTransformSha224GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA384GETKLASS">xmlSecOpenSSLTransformSha384GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha256GetKlass" title="xmlSecOpenSSLTransformSha256GetKlass ()">xmlSecOpenSSLTransformSha256GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA512GETKLASS">xmlSecOpenSSLTransformSha512GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha384GetKlass" title="xmlSecOpenSSLTransformSha384GetKlass ()">xmlSecOpenSSLTransformSha384GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSEC-OPENSSL-ERRORS-LIB:CAPS">XMLSEC_OPENSSL_ERRORS_LIB</a></td>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha512GetKlass" title="xmlSecOpenSSLTransformSha512GetKlass ()">xmlSecOpenSSLTransformSha512GetKlass</a> <span class="c_punctuation">()</span>
+</td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLERRORSDEFAULTCALLBACK">xmlSecOpenSSLErrorsDefaultCallback</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLErrorsDefaultCallback" title="xmlSecOpenSSLErrorsDefaultCallback ()">xmlSecOpenSSLErrorsDefaultCallback</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-CRYPTO.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN30752"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-crypto.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAAESID">xmlSecOpenSSLKeyDataAesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-OPENSSL-API-100:CAPS" title="XMLSEC_OPENSSL_API_100">XMLSEC_OPENSSL_API_100</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-OPENSSL-API-110:CAPS" title="XMLSEC_OPENSSL_API_110">XMLSEC_OPENSSL_API_110</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-OPENSSL-API-098:CAPS" title="XMLSEC_OPENSSL_API_098">XMLSEC_OPENSSL_API_098</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-ECDSA:CAPS" title="XMLSEC_NO_ECDSA">XMLSEC_NO_ECDSA</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-SHA224:CAPS" title="XMLSEC_NO_SHA224">XMLSEC_NO_SHA224</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-SHA256:CAPS" title="XMLSEC_NO_SHA256">XMLSEC_NO_SHA256</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-SHA384:CAPS" title="XMLSEC_NO_SHA384">XMLSEC_NO_SHA384</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-SHA512:CAPS" title="XMLSEC_NO_SHA512">XMLSEC_NO_SHA512</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-AES:CAPS" title="XMLSEC_NO_AES">XMLSEC_NO_AES</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-DES:CAPS" title="XMLSEC_NO_DES">XMLSEC_NO_DES</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-DSA:CAPS" title="XMLSEC_NO_DSA">XMLSEC_NO_DSA</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-GOST:CAPS" title="XMLSEC_NO_GOST">XMLSEC_NO_GOST</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-GOST2012:CAPS" title="XMLSEC_NO_GOST2012">XMLSEC_NO_GOST2012</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-HMAC:CAPS" title="XMLSEC_NO_HMAC">XMLSEC_NO_HMAC</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-MD5:CAPS" title="XMLSEC_NO_MD5">XMLSEC_NO_MD5</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-RIPEMD160:CAPS" title="XMLSEC_NO_RIPEMD160">XMLSEC_NO_RIPEMD160</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES128CBCID">xmlSecOpenSSLTransformAes128CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-RSA:CAPS" title="XMLSEC_NO_RSA">XMLSEC_NO_RSA</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES192CBCID">xmlSecOpenSSLTransformAes192CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-SHA1:CAPS" title="XMLSEC_NO_SHA1">XMLSEC_NO_SHA1</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMAES256CBCID">xmlSecOpenSSLTransformAes256CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#XMLSEC-NO-X509:CAPS" title="XMLSEC_NO_X509">XMLSEC_NO_X509</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES128ID">xmlSecOpenSSLTransformKWAes128Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataAesId" title="xmlSecOpenSSLKeyDataAesId">xmlSecOpenSSLKeyDataAesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES192ID">xmlSecOpenSSLTransformKWAes192Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes128CbcId" title="xmlSecOpenSSLTransformAes128CbcId">xmlSecOpenSSLTransformAes128CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWAES256ID">xmlSecOpenSSLTransformKWAes256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes192CbcId" title="xmlSecOpenSSLTransformAes192CbcId">xmlSecOpenSSLTransformAes192CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADESID">xmlSecOpenSSLKeyDataDesId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformAes256CbcId" title="xmlSecOpenSSLTransformAes256CbcId">xmlSecOpenSSLTransformAes256CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDES3CBCID">xmlSecOpenSSLTransformDes3CbcId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes128Id" title="xmlSecOpenSSLTransformKWAes128Id">xmlSecOpenSSLTransformKWAes128Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMKWDES3ID">xmlSecOpenSSLTransformKWDes3Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes192Id" title="xmlSecOpenSSLTransformKWAes192Id">xmlSecOpenSSLTransformKWAes192Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATADSAID">xmlSecOpenSSLKeyDataDsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWAes256Id" title="xmlSecOpenSSLTransformKWAes256Id">xmlSecOpenSSLTransformKWAes256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA1ID">xmlSecOpenSSLTransformDsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDesId" title="xmlSecOpenSSLKeyDataDesId">xmlSecOpenSSLKeyDataDesId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMDSASHA256ID">xmlSecOpenSSLTransformDsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDes3CbcId" title="xmlSecOpenSSLTransformDes3CbcId">xmlSecOpenSSLTransformDes3CbcId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAECDSAID">xmlSecOpenSSLKeyDataEcdsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformKWDes3Id" title="xmlSecOpenSSLTransformKWDes3Id">xmlSecOpenSSLTransformKWDes3Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA1ID">xmlSecOpenSSLTransformEcdsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataDsaId" title="xmlSecOpenSSLKeyDataDsaId">xmlSecOpenSSLKeyDataDsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA224ID">xmlSecOpenSSLTransformEcdsaSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha1Id" title="xmlSecOpenSSLTransformDsaSha1Id">xmlSecOpenSSLTransformDsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA256ID">xmlSecOpenSSLTransformEcdsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformDsaSha256Id" title="xmlSecOpenSSLTransformDsaSha256Id">xmlSecOpenSSLTransformDsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA384ID">xmlSecOpenSSLTransformEcdsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataEcdsaId" title="xmlSecOpenSSLKeyDataEcdsaId">xmlSecOpenSSLKeyDataEcdsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMECDSASHA512ID">xmlSecOpenSSLTransformEcdsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha1Id" title="xmlSecOpenSSLTransformEcdsaSha1Id">xmlSecOpenSSLTransformEcdsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOST2001ID">xmlSecOpenSSLKeyDataGost2001Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha224Id" title="xmlSecOpenSSLTransformEcdsaSha224Id">xmlSecOpenSSLTransformEcdsaSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOST2001GOSTR3411-94ID">xmlSecOpenSSLTransformGost2001GostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha256Id" title="xmlSecOpenSSLTransformEcdsaSha256Id">xmlSecOpenSSLTransformEcdsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-94ID">xmlSecOpenSSLTransformGostR3411_94Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha384Id" title="xmlSecOpenSSLTransformEcdsaSha384Id">xmlSecOpenSSLTransformEcdsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOSTR3410-2012-256ID">xmlSecOpenSSLKeyDataGostR3410_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformEcdsaSha512Id" title="xmlSecOpenSSLTransformEcdsaSha512Id">xmlSecOpenSSLTransformEcdsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAGOSTR3410-2012-512ID">xmlSecOpenSSLKeyDataGostR3410_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGost2001Id" title="xmlSecOpenSSLKeyDataGost2001Id">xmlSecOpenSSLKeyDataGost2001Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-256ID">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGost2001GostR3411-94Id" title="xmlSecOpenSSLTransformGost2001GostR3411_94Id">xmlSecOpenSSLTransformGost2001GostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-512ID">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-94Id" title="xmlSecOpenSSLTransformGostR3411_94Id">xmlSecOpenSSLTransformGostR3411_94Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-2012-256ID">xmlSecOpenSSLTransformGostR3411_2012_256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGostR3410-2012-256Id" title="xmlSecOpenSSLKeyDataGostR3410_2012_256Id">xmlSecOpenSSLKeyDataGostR3410_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMGOSTR3411-2012-512ID">xmlSecOpenSSLTransformGostR3411_2012_512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataGostR3410-2012-512Id" title="xmlSecOpenSSLKeyDataGostR3410_2012_512Id">xmlSecOpenSSLKeyDataGostR3410_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATAHMACID">xmlSecOpenSSLKeyDataHmacId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256Id" title="xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACMD5ID">xmlSecOpenSSLTransformHmacMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512Id" title="xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id">xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACRIPEMD160ID">xmlSecOpenSSLTransformHmacRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-2012-256Id" title="xmlSecOpenSSLTransformGostR3411_2012_256Id">xmlSecOpenSSLTransformGostR3411_2012_256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA1ID">xmlSecOpenSSLTransformHmacSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformGostR3411-2012-512Id" title="xmlSecOpenSSLTransformGostR3411_2012_512Id">xmlSecOpenSSLTransformGostR3411_2012_512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA224ID">xmlSecOpenSSLTransformHmacSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataHmacId" title="xmlSecOpenSSLKeyDataHmacId">xmlSecOpenSSLKeyDataHmacId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA256ID">xmlSecOpenSSLTransformHmacSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacMd5Id" title="xmlSecOpenSSLTransformHmacMd5Id">xmlSecOpenSSLTransformHmacMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA384ID">xmlSecOpenSSLTransformHmacSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacRipemd160Id" title="xmlSecOpenSSLTransformHmacRipemd160Id">xmlSecOpenSSLTransformHmacRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMHMACSHA512ID">xmlSecOpenSSLTransformHmacSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha1Id" title="xmlSecOpenSSLTransformHmacSha1Id">xmlSecOpenSSLTransformHmacSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMMD5ID">xmlSecOpenSSLTransformMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha224Id" title="xmlSecOpenSSLTransformHmacSha224Id">xmlSecOpenSSLTransformHmacSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRIPEMD160ID">xmlSecOpenSSLTransformRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha256Id" title="xmlSecOpenSSLTransformHmacSha256Id">xmlSecOpenSSLTransformHmacSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLKEYDATARSAID">xmlSecOpenSSLKeyDataRsaId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha384Id" title="xmlSecOpenSSLTransformHmacSha384Id">xmlSecOpenSSLTransformHmacSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAMD5ID">xmlSecOpenSSLTransformRsaMd5Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformHmacSha512Id" title="xmlSecOpenSSLTransformHmacSha512Id">xmlSecOpenSSLTransformHmacSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSARIPEMD160ID">xmlSecOpenSSLTransformRsaRipemd160Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformMd5Id" title="xmlSecOpenSSLTransformMd5Id">xmlSecOpenSSLTransformMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA1ID">xmlSecOpenSSLTransformRsaSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRipemd160Id" title="xmlSecOpenSSLTransformRipemd160Id">xmlSecOpenSSLTransformRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA224ID">xmlSecOpenSSLTransformRsaSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLKeyDataRsaId" title="xmlSecOpenSSLKeyDataRsaId">xmlSecOpenSSLKeyDataRsaId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA256ID">xmlSecOpenSSLTransformRsaSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaMd5Id" title="xmlSecOpenSSLTransformRsaMd5Id">xmlSecOpenSSLTransformRsaMd5Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA384ID">xmlSecOpenSSLTransformRsaSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaRipemd160Id" title="xmlSecOpenSSLTransformRsaRipemd160Id">xmlSecOpenSSLTransformRsaRipemd160Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSASHA512ID">xmlSecOpenSSLTransformRsaSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha1Id" title="xmlSecOpenSSLTransformRsaSha1Id">xmlSecOpenSSLTransformRsaSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAPKCS1ID">xmlSecOpenSSLTransformRsaPkcs1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha224Id" title="xmlSecOpenSSLTransformRsaSha224Id">xmlSecOpenSSLTransformRsaSha224Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMRSAOAEPID">xmlSecOpenSSLTransformRsaOaepId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha256Id" title="xmlSecOpenSSLTransformRsaSha256Id">xmlSecOpenSSLTransformRsaSha256Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA1ID">xmlSecOpenSSLTransformSha1Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha384Id" title="xmlSecOpenSSLTransformRsaSha384Id">xmlSecOpenSSLTransformRsaSha384Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA224ID">xmlSecOpenSSLTransformSha224Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaSha512Id" title="xmlSecOpenSSLTransformRsaSha512Id">xmlSecOpenSSLTransformRsaSha512Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA256ID">xmlSecOpenSSLTransformSha256Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaPkcs1Id" title="xmlSecOpenSSLTransformRsaPkcs1Id">xmlSecOpenSSLTransformRsaPkcs1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA384ID">xmlSecOpenSSLTransformSha384Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformRsaOaepId" title="xmlSecOpenSSLTransformRsaOaepId">xmlSecOpenSSLTransformRsaOaepId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSECOPENSSLTRANSFORMSHA512ID">xmlSecOpenSSLTransformSha512Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha1Id" title="xmlSecOpenSSLTransformSha1Id">xmlSecOpenSSLTransformSha1Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-crypto.html#XMLSEC-OPENSSL-ERRORS-FUNCTION:CAPS">XMLSEC_OPENSSL_ERRORS_FUNCTION</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha224Id" title="xmlSecOpenSSLTransformSha224Id">xmlSecOpenSSLTransformSha224Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha256Id" title="xmlSecOpenSSLTransformSha256Id">xmlSecOpenSSLTransformSha256Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha384Id" title="xmlSecOpenSSLTransformSha384Id">xmlSecOpenSSLTransformSha384Id</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-crypto.html#xmlSecOpenSSLTransformSha512Id" title="xmlSecOpenSSLTransformSha512Id">xmlSecOpenSSLTransformSha512Id</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-CRYPTO.DESCRIPTION"></a><h2>Description</h2>
-<p>Crypto transforms implementation for OpenSSL.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-CRYPTO.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECCRYPTOGETFUNCTIONS-OPENSSL"></a><h3>xmlSecCryptoGetFunctions_openssl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecCryptoDLFunctionsPtr</span></font>
-xmlSecCryptoGetFunctions_openssl (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-crypto.description"></a><h2>Description</h2>
+<p>
+Crypto transforms implementation for OpenSSL.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-crypto.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecCryptoGetFunctions-openssl"></a><h3>xmlSecCryptoGetFunctions_openssl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecCryptoDLFunctionsPtr</span></font>
+xmlSecCryptoGetFunctions_openssl (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the pointer to xmlsec-openssl functions table.</p>
-<div class="REFSECT3">
-<a name="AEN30986"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCryptoGetFunctions-openssl.returns"></a><h4>Returns</h4>
 <p> the xmlsec-openssl functions table or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLINIT"></a><h3>xmlSecOpenSSLInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLInit"></a><h3>xmlSecOpenSSLInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine initialization.</p>
-<div class="REFSECT3">
-<a name="AEN30999"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLSHUTDOWN"></a><h3>xmlSecOpenSSLShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLShutdown"></a><h3>xmlSecOpenSSLShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>XMLSec library specific crypto engine shutdown.</p>
-<div class="REFSECT3">
-<a name="AEN31012"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLShutdown.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYSMNGRINIT"></a><h3>xmlSecOpenSSLKeysMngrInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeysMngrInit (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> mngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeysMngrInit"></a><h3>xmlSecOpenSSLKeysMngrInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeysMngrInit (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> mngr</code></em>);</pre>
 <p>Adds OpenSSL specific key data stores in keys manager.</p>
-<div class="REFSECT3">
-<a name="AEN31026"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31028"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeysMngrInit.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>mngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN31037"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeysMngrInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLGENERATERANDOM"></a><h3>xmlSecOpenSSLGenerateRandom ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLGenerateRandom (<code class="PARAMETER"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> buffer</code>,
-                             <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Generates <code class="PARAMETER">size</code>
- random bytes and puts result in <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLGenerateRandom"></a><h3>xmlSecOpenSSLGenerateRandom ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLGenerateRandom (<em class="parameter"><code><font><span class="type">xmlSecBufferPtr</span></font> buffer</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>Generates <em class="parameter"><code>size</code></em>
+ random bytes and puts result in <em class="parameter"><code>buffer</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN31056"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31058"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLGenerateRandom.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the destination buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the destination buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the numer of bytes to generate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the numer of bytes to generate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31073"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLGenerateRandom.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLSETDEFAULTTRUSTEDCERTSFOLDER"></a><h3>xmlSecOpenSSLSetDefaultTrustedCertsFolder ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLSetDefaultTrustedCertsFolder"></a><h3>xmlSecOpenSSLSetDefaultTrustedCertsFolder ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecOpenSSLSetDefaultTrustedCertsFolder
-                               (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *path</code>);</pre>
+                               (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *path</code></em>);</pre>
 <p>Sets the default trusted certs folder.</p>
-<div class="REFSECT3">
-<a name="AEN31087"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31089"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLSetDefaultTrustedCertsFolder.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>path</p></td>
-<td><p>the default trusted certs path.</p></td>
-<td> </td>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p>the default trusted certs path.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31098"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLSetDefaultTrustedCertsFolder.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="XMLSECOPENSSLGETDEFAULTTRUSTEDCERTSFOLDER"></a><h3>xmlSecOpenSSLGetDefaultTrustedCertsFolder ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
+<div class="refsect2">
+<a name="xmlSecOpenSSLGetDefaultTrustedCertsFolder"></a><h3>xmlSecOpenSSLGetDefaultTrustedCertsFolder ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
 xmlSecOpenSSLGetDefaultTrustedCertsFolder
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the default trusted certs folder.</p>
-<div class="REFSECT3">
-<a name="AEN31111"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLGetDefaultTrustedCertsFolder.returns"></a><h4>Returns</h4>
 <p> the default trusted cert folder.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAAESGETKLASS"></a><h3>xmlSecOpenSSLKeyDataAesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataAesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataAesGetKlass"></a><h3>xmlSecOpenSSLKeyDataAesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataAesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31124"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataAesGetKlass.returns"></a><h4>Returns</h4>
 <p> AES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAAESSET"></a><h3>xmlSecOpenSSLKeyDataAesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataAesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                            <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataAesSet"></a><h3>xmlSecOpenSSLKeyDataAesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataAesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                            <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of AES key data.</p>
-<div class="REFSECT3">
-<a name="AEN31144"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31146"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataAesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to AES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to AES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31167"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataAesSet.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="XMLSECOPENSSLTRANSFORMAES128CBCGETKLASS"></a><h3>xmlSecOpenSSLTransformAes128CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes128CbcGetKlass"></a><h3>xmlSecOpenSSLTransformAes128CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformAes128CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 128 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31180"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformAes128CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 128 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMAES192CBCGETKLASS"></a><h3>xmlSecOpenSSLTransformAes192CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes192CbcGetKlass"></a><h3>xmlSecOpenSSLTransformAes192CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformAes192CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 192 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31193"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformAes192CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 192 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMAES256CBCGETKLASS"></a><h3>xmlSecOpenSSLTransformAes256CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes256CbcGetKlass"></a><h3>xmlSecOpenSSLTransformAes256CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformAes256CbcGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>AES 256 CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31206"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformAes256CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to AES 256 CBC encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES128GETKLASS"></a><h3>xmlSecOpenSSLTransformKWAes128GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes128GetKlass"></a><h3>xmlSecOpenSSLTransformKWAes128GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformKWAes128GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-128 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31219"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformKWAes128GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-128 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES192GETKLASS"></a><h3>xmlSecOpenSSLTransformKWAes192GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes192GetKlass"></a><h3>xmlSecOpenSSLTransformKWAes192GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformKWAes192GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-192 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31232"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformKWAes192GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-192 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES256GETKLASS"></a><h3>xmlSecOpenSSLTransformKWAes256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes256GetKlass"></a><h3>xmlSecOpenSSLTransformKWAes256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformKWAes256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The AES-256 kew wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31245"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformKWAes256GetKlass.returns"></a><h4>Returns</h4>
 <p> AES-256 kew wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADESGETKLASS"></a><h3>xmlSecOpenSSLKeyDataDesGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataDesGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDesGetKlass"></a><h3>xmlSecOpenSSLKeyDataDesGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataDesGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DES key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31258"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDesGetKlass.returns"></a><h4>Returns</h4>
 <p> DES key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADESSET"></a><h3>xmlSecOpenSSLKeyDataDesSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataDesSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                            <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDesSet"></a><h3>xmlSecOpenSSLKeyDataDesSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataDesSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                            <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of DES key data.</p>
-<div class="REFSECT3">
-<a name="AEN31278"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31280"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDesSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DES key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DES key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31301"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDesSet.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="XMLSECOPENSSLTRANSFORMDES3CBCGETKLASS"></a><h3>xmlSecOpenSSLTransformDes3CbcGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformDes3CbcGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDes3CbcGetKlass"></a><h3>xmlSecOpenSSLTransformDes3CbcGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformDes3CbcGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Triple DES CBC encryption transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31314"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformDes3CbcGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to Triple DES encryption transform.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWDES3GETKLASS"></a><h3>xmlSecOpenSSLTransformKWDes3GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformKWDes3GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWDes3GetKlass"></a><h3>xmlSecOpenSSLTransformKWDes3GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformKWDes3GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Triple DES key wrapper transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31327"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformKWDes3GetKlass.returns"></a><h4>Returns</h4>
 <p> Triple DES key wrapper transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAGETKLASS"></a><h3>xmlSecOpenSSLKeyDataDsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataDsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaGetKlass"></a><h3>xmlSecOpenSSLKeyDataDsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataDsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31340"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to DSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAADOPTDSA"></a><h3>xmlSecOpenSSLKeyDataDsaAdoptDsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataDsaAdoptDsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">DSA</span></font> *dsa</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptDsa"></a><h3>xmlSecOpenSSLKeyDataDsaAdoptDsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataDsaAdoptDsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">DSA</span></font> *dsa</code></em>);</pre>
 <p>Sets the value of DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31357"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31359"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptDsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dsa</p></td>
-<td><p>the pointer to OpenSSL DSA key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsa</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL DSA key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN31374"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptDsa.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAGETDSA"></a><h3>xmlSecOpenSSLKeyDataDsaGetDsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">DSA</span></font> *
-xmlSecOpenSSLKeyDataDsaGetDsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaGetDsa"></a><h3>xmlSecOpenSSLKeyDataDsaGetDsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">DSA</span></font> *
+xmlSecOpenSSLKeyDataDsaGetDsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL DSA key from DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31388"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31390"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaGetDsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN31399"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaGetDsa.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL DSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAADOPTEVP"></a><h3>xmlSecOpenSSLKeyDataDsaAdoptEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataDsaAdoptEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptEvp"></a><h3>xmlSecOpenSSLKeyDataDsaAdoptEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataDsaAdoptEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
 <p>Sets the DSA key data value to OpenSSL EVP key.</p>
-<div class="REFSECT3">
-<a name="AEN31416"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31418"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to OpenSSL EVP key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL EVP key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN31433"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaAdoptEvp.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAGETEVP"></a><h3>xmlSecOpenSSLKeyDataDsaGetEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EVP_PKEY</span></font> *
-xmlSecOpenSSLKeyDataDsaGetEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaGetEvp"></a><h3>xmlSecOpenSSLKeyDataDsaGetEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EVP_PKEY</span></font> *
+xmlSecOpenSSLKeyDataDsaGetEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL EVP key from DSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31447"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31449"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaGetEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to DSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to DSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31458"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataDsaGetEvp.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL EVP key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMDSASHA1GETKLASS"></a><h3>xmlSecOpenSSLTransformDsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformDsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDsaSha1GetKlass"></a><h3>xmlSecOpenSSLTransformDsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformDsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31471"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformDsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMDSASHA256GETKLASS"></a><h3>xmlSecOpenSSLTransformDsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDsaSha256GetKlass"></a><h3>xmlSecOpenSSLTransformDsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformDsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The DSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31484"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformDsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> DSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAGETKLASS"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataEcdsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetKlass"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataEcdsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31497"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to ECDSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAADOPTECDSA"></a><h3>xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                     <code class="PARAMETER"><font><span class="TYPE">EC_KEY</span></font> *ecdsa</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa"></a><h3>xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                     <em class="parameter"><code><font><span class="type">EC_KEY</span></font> *ecdsa</code></em>);</pre>
 <p>Sets the value of ECDSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31514"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31516"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to ECDSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to ECDSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ecdsa</p></td>
-<td><p>the pointer to OpenSSL ECDSA key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ecdsa</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL ECDSA key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31531"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAGETECDSA"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetEcdsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EC_KEY</span></font> *
-xmlSecOpenSSLKeyDataEcdsaGetEcdsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEcdsa"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetEcdsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EC_KEY</span></font> *
+xmlSecOpenSSLKeyDataEcdsaGetEcdsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL ECDSA key from ECDSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31545"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31547"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEcdsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to ECDSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to ECDSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN31556"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEcdsa.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL ECDSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAADOPTEVP"></a><h3>xmlSecOpenSSLKeyDataEcdsaAdoptEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataEcdsaAdoptEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEvp"></a><h3>xmlSecOpenSSLKeyDataEcdsaAdoptEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataEcdsaAdoptEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                   <em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
 <p>Sets the ECDSA key data value to OpenSSL EVP key.</p>
-<div class="REFSECT3">
-<a name="AEN31573"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31575"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to ECDSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to ECDSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to OpenSSL EVP key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL EVP key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31590"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaAdoptEvp.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAGETEVP"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EVP_PKEY</span></font> *
-xmlSecOpenSSLKeyDataEcdsaGetEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEvp"></a><h3>xmlSecOpenSSLKeyDataEcdsaGetEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EVP_PKEY</span></font> *
+xmlSecOpenSSLKeyDataEcdsaGetEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL EVP key from ECDSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN31604"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31606"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to ECDSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to ECDSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31615"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataEcdsaGetEvp.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL EVP key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA1GETKLASS"></a><h3>xmlSecOpenSSLTransformEcdsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha1GetKlass"></a><h3>xmlSecOpenSSLTransformEcdsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformEcdsaSha1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31628"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformEcdsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA224GETKLASS"></a><h3>xmlSecOpenSSLTransformEcdsaSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha224GetKlass"></a><h3>xmlSecOpenSSLTransformEcdsaSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformEcdsaSha224GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA224 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31641"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformEcdsaSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA224 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA256GETKLASS"></a><h3>xmlSecOpenSSLTransformEcdsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha256GetKlass"></a><h3>xmlSecOpenSSLTransformEcdsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformEcdsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31654"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformEcdsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA384GETKLASS"></a><h3>xmlSecOpenSSLTransformEcdsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha384GetKlass"></a><h3>xmlSecOpenSSLTransformEcdsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformEcdsaSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31667"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformEcdsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA512GETKLASS"></a><h3>xmlSecOpenSSLTransformEcdsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha512GetKlass"></a><h3>xmlSecOpenSSLTransformEcdsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformEcdsaSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The ECDSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31680"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformEcdsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> ECDSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOST2001GETKLASS"></a><h3>xmlSecOpenSSLKeyDataGost2001GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataGost2001GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGost2001GetKlass"></a><h3>xmlSecOpenSSLKeyDataGost2001GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataGost2001GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001 key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31693"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataGost2001GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST2001 key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOST2001GOSTR3411-94GETKLASS"></a><h3>xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGost2001GostR3411-94GetKlass"></a><h3>xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGost2001GostR3411_94GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST2001-GOSTR3411_94 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31706"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformGost2001GostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> GOST2001-GOSTR3411_94 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-94GETKLASS"></a><h3>xmlSecOpenSSLTransformGostR3411_94GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-94GetKlass"></a><h3>xmlSecOpenSSLTransformGostR3411_94GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGostR3411_94GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOSTR3411_94 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31719"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformGostR3411-94GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOSTR3411_94 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOSTR3410-2012-256GETKLASS"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-256GetKlass"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecOpenSSLKeyDataGostR3410_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 256 bit key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31732"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.10-2012 256 bit key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOSTR3410-2012-512GETKLASS"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-512GetKlass"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecOpenSSLKeyDataGostR3410_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The GOST R 34.10-2012 512 bit key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31745"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.10-2012 512 bit key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-256GETKLASS"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256GetKlass"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p></p>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-512GETKLASS"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512GetKlass"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p></p>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-2012-256GETKLASS"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-256GetKlass"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGostR3411_2012_256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOST R 34.11-2012 256 bit digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31778"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.11-2012 256 bit digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-2012-512GETKLASS"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-512GetKlass"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformGostR3411_2012_512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>GOST R 34.11-2012 512 bit digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31791"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to GOST R 34.11-2012 512 bit digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLHMACGETMINOUTPUTLENGTH"></a><h3>xmlSecOpenSSLHmacGetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLHmacGetMinOutputLength (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLHmacGetMinOutputLength"></a><h3>xmlSecOpenSSLHmacGetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLHmacGetMinOutputLength (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the value of min HMAC length.</p>
-<div class="REFSECT3">
-<a name="AEN31804"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLHmacGetMinOutputLength.returns"></a><h4>Returns</h4>
 <p> the min HMAC output length</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLHMACSETMINOUTPUTLENGTH"></a><h3>xmlSecOpenSSLHmacSetMinOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecOpenSSLHmacSetMinOutputLength (<code class="PARAMETER"><font><span class="TYPE">int</span></font> min_length</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLHmacSetMinOutputLength"></a><h3>xmlSecOpenSSLHmacSetMinOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecOpenSSLHmacSetMinOutputLength (<em class="parameter"><code><font><span class="type">int</span></font> min_length</code></em>);</pre>
 <p>Sets the min HMAC output length</p>
-<div class="REFSECT3">
-<a name="AEN31818"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31820"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLHmacSetMinOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>min_length</p></td>
-<td><p>the new min length</p></td>
-<td> </td>
+<td class="parameter_name"><p>min_length</p></td>
+<td class="parameter_description"><p>the new min length</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAHMACGETKLASS"></a><h3>xmlSecOpenSSLKeyDataHmacGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataHmacGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataHmacGetKlass"></a><h3>xmlSecOpenSSLKeyDataHmacGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataHmacGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN31839"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataHmacGetKlass.returns"></a><h4>Returns</h4>
 <p> HMAC key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAHMACSET"></a><h3>xmlSecOpenSSLKeyDataHmacSet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataHmacSet (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                             <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                             <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufSize</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataHmacSet"></a><h3>xmlSecOpenSSLKeyDataHmacSet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataHmacSet (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                             <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</code></em>,
+                             <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufSize</code></em>);</pre>
 <p>Sets the value of HMAC key data.</p>
-<div class="REFSECT3">
-<a name="AEN31859"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN31861"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataHmacSet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to HMAC key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to HMAC key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the pointer to key value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the pointer to key value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufSize</p></td>
-<td><p>the key value size (in bytes).</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufSize</p></td>
+<td class="parameter_description"><p>the key value size (in bytes).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN31882"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataHmacSet.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="XMLSECOPENSSLTRANSFORMHMACMD5GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformHmacMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacMd5GetKlass"></a><h3>xmlSecOpenSSLTransformHmacMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformHmacMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-MD5 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31895"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-MD5 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACRIPEMD160GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacRipemd160GetKlass"></a><h3>xmlSecOpenSSLTransformHmacRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-RIPEMD160 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31908"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-RIPEMD160 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA1GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha1GetKlass"></a><h3>xmlSecOpenSSLTransformHmacSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacSha1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA1 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31921"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA1 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA224GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha224GetKlass"></a><h3>xmlSecOpenSSLTransformHmacSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacSha224GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA224 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31934"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA224 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA256GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha256GetKlass"></a><h3>xmlSecOpenSSLTransformHmacSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA256 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31947"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA256 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA384GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha384GetKlass"></a><h3>xmlSecOpenSSLTransformHmacSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA384 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31960"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA384 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA512GETKLASS"></a><h3>xmlSecOpenSSLTransformHmacSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha512GetKlass"></a><h3>xmlSecOpenSSLTransformHmacSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformHmacSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The HMAC-SHA512 transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31973"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformHmacSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> the HMAC-SHA512 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMMD5GETKLASS"></a><h3>xmlSecOpenSSLTransformMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformMd5GetKlass"></a><h3>xmlSecOpenSSLTransformMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>MD5 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31986"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to MD5 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRIPEMD160GETKLASS"></a><h3>xmlSecOpenSSLTransformRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRipemd160GetKlass"></a><h3>xmlSecOpenSSLTransformRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>RIPEMD-160 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN31999"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to RIPEMD-160 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAGETKLASS"></a><h3>xmlSecOpenSSLKeyDataRsaGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataRsaGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaGetKlass"></a><h3>xmlSecOpenSSLKeyDataRsaGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataRsaGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The OpenSSL RSA key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN32012"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL RSA key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAADOPTRSA"></a><h3>xmlSecOpenSSLKeyDataRsaAdoptRsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataRsaAdoptRsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">RSA</span></font> *rsa</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptRsa"></a><h3>xmlSecOpenSSLKeyDataRsaAdoptRsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataRsaAdoptRsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">RSA</span></font> *rsa</code></em>);</pre>
 <p>Sets the value of RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN32029"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32031"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptRsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>rsa</p></td>
-<td><p>the pointer to OpenSSL RSA key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>rsa</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL RSA key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN32046"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptRsa.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAGETRSA"></a><h3>xmlSecOpenSSLKeyDataRsaGetRsa ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">RSA</span></font> *
-xmlSecOpenSSLKeyDataRsaGetRsa (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaGetRsa"></a><h3>xmlSecOpenSSLKeyDataRsaGetRsa ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">RSA</span></font> *
+xmlSecOpenSSLKeyDataRsaGetRsa (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL RSA key from RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN32060"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32062"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaGetRsa.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN32071"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaGetRsa.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL RSA key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAADOPTEVP"></a><h3>xmlSecOpenSSLKeyDataRsaAdoptEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataRsaAdoptEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptEvp"></a><h3>xmlSecOpenSSLKeyDataRsaAdoptEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataRsaAdoptEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
 <p>Sets the RSA key data value to OpenSSL EVP key.</p>
-<div class="REFSECT3">
-<a name="AEN32088"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32090"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to OpenSSL EVP key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL EVP key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN32105"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaAdoptEvp.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAGETEVP"></a><h3>xmlSecOpenSSLKeyDataRsaGetEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EVP_PKEY</span></font> *
-xmlSecOpenSSLKeyDataRsaGetEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaGetEvp"></a><h3>xmlSecOpenSSLKeyDataRsaGetEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EVP_PKEY</span></font> *
+xmlSecOpenSSLKeyDataRsaGetEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the OpenSSL EVP key from RSA key data.</p>
-<div class="REFSECT3">
-<a name="AEN32119"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32121"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaGetEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to RSA key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to RSA key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN32130"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRsaGetEvp.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL EVP key or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAMD5GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaMd5GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformRsaMd5GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaMd5GetKlass"></a><h3>xmlSecOpenSSLTransformRsaMd5GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformRsaMd5GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-MD5 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32143"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaMd5GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-MD5 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSARIPEMD160GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaRipemd160GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaRipemd160GetKlass"></a><h3>xmlSecOpenSSLTransformRsaRipemd160GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaRipemd160GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32156"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaRipemd160GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-RIPEMD160 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA1GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformRsaSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha1GetKlass"></a><h3>xmlSecOpenSSLTransformRsaSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformRsaSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32169"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA1 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA224GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha224GetKlass"></a><h3>xmlSecOpenSSLTransformRsaSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaSha224GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA224 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32182"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA224 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA256GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha256GetKlass"></a><h3>xmlSecOpenSSLTransformRsaSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaSha256GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32195"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA256 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA384GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha384GetKlass"></a><h3>xmlSecOpenSSLTransformRsaSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaSha384GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32208"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA384 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA512GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha512GetKlass"></a><h3>xmlSecOpenSSLTransformRsaSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaSha512GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32221"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-SHA512 signature transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAPKCS1GETKLASS"></a><h3>xmlSecOpenSSLTransformRsaPkcs1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaPkcs1GetKlass"></a><h3>xmlSecOpenSSLTransformRsaPkcs1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecOpenSSLTransformRsaPkcs1GetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-PKCS1 key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32234"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaPkcs1GetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-PKCS1 key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAOAEPGETKLASS"></a><h3>xmlSecOpenSSLTransformRsaOaepGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformRsaOaepGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaOaepGetKlass"></a><h3>xmlSecOpenSSLTransformRsaOaepGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformRsaOaepGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The RSA-OAEP key transport transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32247"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformRsaOaepGetKlass.returns"></a><h4>Returns</h4>
 <p> RSA-OAEP key transport transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA1GETKLASS"></a><h3>xmlSecOpenSSLTransformSha1GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformSha1GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha1GetKlass"></a><h3>xmlSecOpenSSLTransformSha1GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformSha1GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-1 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32260"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformSha1GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-1 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA224GETKLASS"></a><h3>xmlSecOpenSSLTransformSha224GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformSha224GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha224GetKlass"></a><h3>xmlSecOpenSSLTransformSha224GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformSha224GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-224 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32273"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformSha224GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-224 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA256GETKLASS"></a><h3>xmlSecOpenSSLTransformSha256GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformSha256GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha256GetKlass"></a><h3>xmlSecOpenSSLTransformSha256GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformSha256GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-256 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32286"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformSha256GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-256 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA384GETKLASS"></a><h3>xmlSecOpenSSLTransformSha384GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformSha384GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha384GetKlass"></a><h3>xmlSecOpenSSLTransformSha384GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformSha384GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-384 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32299"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformSha384GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-384 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA512GETKLASS"></a><h3>xmlSecOpenSSLTransformSha512GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecOpenSSLTransformSha512GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha512GetKlass"></a><h3>xmlSecOpenSSLTransformSha512GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecOpenSSLTransformSha512GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>SHA-512 digest transform klass.</p>
-<div class="REFSECT3">
-<a name="AEN32312"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLTransformSha512GetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to SHA-512 digest transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSEC-OPENSSL-ERRORS-LIB:CAPS"></a><h3>XMLSEC_OPENSSL_ERRORS_LIB</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_OPENSSL_ERRORS_LIB                       (ERR_LIB_USER + 57)</pre>
-<p>Macro. The XMLSec library klass for OpenSSL errors reporting functions.</p>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLERRORSDEFAULTCALLBACK"></a><h3>xmlSecOpenSSLErrorsDefaultCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecOpenSSLErrorsDefaultCallback (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">int</span></font> line</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *func</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorObject</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *errorSubject</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">int</span></font> reason</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *msg</code>);</pre>
-<p>The default OpenSSL errors reporting callback function.</p>
-<div class="REFSECT3">
-<a name="AEN32350"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32352"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecOpenSSLErrorsDefaultCallback"></a><h3>xmlSecOpenSSLErrorsDefaultCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecOpenSSLErrorsDefaultCallback (<em class="parameter"><code>const <font><span class="type">char</span></font> *file</code></em>,
+                                    <em class="parameter"><code><font><span class="type">int</span></font> line</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *func</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *errorObject</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *errorSubject</code></em>,
+                                    <em class="parameter"><code><font><span class="type">int</span></font> reason</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *msg</code></em>);</pre>
+<p>The errors reporting callback function.</p>
+<div class="refsect3">
+<a name="xmlSecOpenSSLErrorsDefaultCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>file</p></td>
-<td><p>the error location file name (__FILE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>file</p></td>
+<td class="parameter_description"><p>the error location file name (__FILE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>line</p></td>
-<td><p>the error location line number (__LINE__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>line</p></td>
+<td class="parameter_description"><p>the error location line number (__LINE__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>func</p></td>
-<td><p>the error location function name (__FUNCTION__ macro).</p></td>
-<td> </td>
+<td class="parameter_name"><p>func</p></td>
+<td class="parameter_description"><p>the error location function name (__FUNCTION__ macro).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorObject</p></td>
-<td><p>the error specific error object</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorObject</p></td>
+<td class="parameter_description"><p>the error specific error object</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>errorSubject</p></td>
-<td><p>the error specific error subject.</p></td>
-<td> </td>
+<td class="parameter_name"><p>errorSubject</p></td>
+<td class="parameter_description"><p>the error specific error subject.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>reason</p></td>
-<td><p>the error code.</p></td>
-<td> </td>
+<td class="parameter_name"><p>reason</p></td>
+<td class="parameter_description"><p>the error code.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>msg</p></td>
-<td><p>the additional error message.</p></td>
-<td> </td>
+<td class="parameter_name"><p>msg</p></td>
+<td class="parameter_description"><p>the additional error message.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
+</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-crypto.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="XMLSEC-OPENSSL-API-100:CAPS"></a><h3>XMLSEC_OPENSSL_API_100</h3>
+<pre class="programlisting">#define XMLSEC_OPENSSL_API_100      1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-OPENSSL-API-110:CAPS"></a><h3>XMLSEC_OPENSSL_API_110</h3>
+<pre class="programlisting">#define XMLSEC_OPENSSL_API_110      1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-OPENSSL-API-098:CAPS"></a><h3>XMLSEC_OPENSSL_API_098</h3>
+<pre class="programlisting">#define XMLSEC_OPENSSL_API_098      1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-ECDSA:CAPS"></a><h3>XMLSEC_NO_ECDSA</h3>
+<pre class="programlisting">#define XMLSEC_NO_ECDSA     1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-SHA224:CAPS"></a><h3>XMLSEC_NO_SHA224</h3>
+<pre class="programlisting">#define XMLSEC_NO_SHA224    1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-SHA256:CAPS"></a><h3>XMLSEC_NO_SHA256</h3>
+<pre class="programlisting">#define XMLSEC_NO_SHA256    1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-SHA384:CAPS"></a><h3>XMLSEC_NO_SHA384</h3>
+<pre class="programlisting">#define XMLSEC_NO_SHA384    1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-SHA512:CAPS"></a><h3>XMLSEC_NO_SHA512</h3>
+<pre class="programlisting">#define XMLSEC_NO_SHA512    1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-AES:CAPS"></a><h3>XMLSEC_NO_AES</h3>
+<pre class="programlisting">#define XMLSEC_NO_AES       1
+</pre>
+<p>
+</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-DES:CAPS"></a><h3>XMLSEC_NO_DES</h3>
+<pre class="programlisting">#define XMLSEC_NO_DES       1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-DSA:CAPS"></a><h3>XMLSEC_NO_DSA</h3>
+<pre class="programlisting">#define XMLSEC_NO_DSA       1
+</pre>
+<p>
+</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-GOST:CAPS"></a><h3>XMLSEC_NO_GOST</h3>
+<pre class="programlisting">#define XMLSEC_NO_GOST      1
+</pre>
+<p>
+</p>
 </div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-GOST2012:CAPS"></a><h3>XMLSEC_NO_GOST2012</h3>
+<pre class="programlisting">#define XMLSEC_NO_GOST2012  1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-HMAC:CAPS"></a><h3>XMLSEC_NO_HMAC</h3>
+<pre class="programlisting">#define XMLSEC_NO_HMAC      1
+</pre>
+<p>
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-CRYPTO.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAAESID"></a><h3>xmlSecOpenSSLKeyDataAesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataAesId</pre>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-MD5:CAPS"></a><h3>XMLSEC_NO_MD5</h3>
+<pre class="programlisting">#define XMLSEC_NO_MD5       1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-RIPEMD160:CAPS"></a><h3>XMLSEC_NO_RIPEMD160</h3>
+<pre class="programlisting">#define XMLSEC_NO_RIPEMD160 1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-RSA:CAPS"></a><h3>XMLSEC_NO_RSA</h3>
+<pre class="programlisting">#define XMLSEC_NO_RSA       1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-SHA1:CAPS"></a><h3>XMLSEC_NO_SHA1</h3>
+<pre class="programlisting">#define XMLSEC_NO_SHA1      1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-NO-X509:CAPS"></a><h3>XMLSEC_NO_X509</h3>
+<pre class="programlisting">#define XMLSEC_NO_X509      1
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataAesId"></a><h3>xmlSecOpenSSLKeyDataAesId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataAesId</pre>
 <p>The AES key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMAES128CBCID"></a><h3>xmlSecOpenSSLTransformAes128CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformAes128CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes128CbcId"></a><h3>xmlSecOpenSSLTransformAes128CbcId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformAes128CbcId</pre>
 <p>The AES128 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMAES192CBCID"></a><h3>xmlSecOpenSSLTransformAes192CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformAes192CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes192CbcId"></a><h3>xmlSecOpenSSLTransformAes192CbcId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformAes192CbcId</pre>
 <p>The AES192 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMAES256CBCID"></a><h3>xmlSecOpenSSLTransformAes256CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformAes256CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformAes256CbcId"></a><h3>xmlSecOpenSSLTransformAes256CbcId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformAes256CbcId</pre>
 <p>The AES256 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES128ID"></a><h3>xmlSecOpenSSLTransformKWAes128Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformKWAes128Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes128Id"></a><h3>xmlSecOpenSSLTransformKWAes128Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformKWAes128Id</pre>
 <p>The AES 128 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES192ID"></a><h3>xmlSecOpenSSLTransformKWAes192Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformKWAes192Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes192Id"></a><h3>xmlSecOpenSSLTransformKWAes192Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformKWAes192Id</pre>
 <p>The AES 192 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWAES256ID"></a><h3>xmlSecOpenSSLTransformKWAes256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformKWAes256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWAes256Id"></a><h3>xmlSecOpenSSLTransformKWAes256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformKWAes256Id</pre>
 <p>The AES 256 key wrap transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADESID"></a><h3>xmlSecOpenSSLKeyDataDesId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataDesId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDesId"></a><h3>xmlSecOpenSSLKeyDataDesId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataDesId</pre>
 <p>The DES key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMDES3CBCID"></a><h3>xmlSecOpenSSLTransformDes3CbcId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformDes3CbcId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDes3CbcId"></a><h3>xmlSecOpenSSLTransformDes3CbcId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformDes3CbcId</pre>
 <p>The DES3 CBC cipher transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMKWDES3ID"></a><h3>xmlSecOpenSSLTransformKWDes3Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformKWDes3Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformKWDes3Id"></a><h3>xmlSecOpenSSLTransformKWDes3Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformKWDes3Id</pre>
 <p>The DES3 KW transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATADSAID"></a><h3>xmlSecOpenSSLKeyDataDsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataDsaId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataDsaId"></a><h3>xmlSecOpenSSLKeyDataDsaId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataDsaId</pre>
 <p>The DSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMDSASHA1ID"></a><h3>xmlSecOpenSSLTransformDsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformDsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDsaSha1Id"></a><h3>xmlSecOpenSSLTransformDsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformDsaSha1Id</pre>
 <p>The DSA SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMDSASHA256ID"></a><h3>xmlSecOpenSSLTransformDsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformDsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformDsaSha256Id"></a><h3>xmlSecOpenSSLTransformDsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformDsaSha256Id</pre>
 <p>The DSA SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAECDSAID"></a><h3>xmlSecOpenSSLKeyDataEcdsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataEcdsaId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataEcdsaId"></a><h3>xmlSecOpenSSLKeyDataEcdsaId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataEcdsaId</pre>
 <p>The ECDSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA1ID"></a><h3>xmlSecOpenSSLTransformEcdsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformEcdsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha1Id"></a><h3>xmlSecOpenSSLTransformEcdsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformEcdsaSha1Id</pre>
 <p>The ECDSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA224ID"></a><h3>xmlSecOpenSSLTransformEcdsaSha224Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformEcdsaSha224Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha224Id"></a><h3>xmlSecOpenSSLTransformEcdsaSha224Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformEcdsaSha224Id</pre>
 <p>The ECDSA-SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA256ID"></a><h3>xmlSecOpenSSLTransformEcdsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformEcdsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha256Id"></a><h3>xmlSecOpenSSLTransformEcdsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformEcdsaSha256Id</pre>
 <p>The ECDSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA384ID"></a><h3>xmlSecOpenSSLTransformEcdsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformEcdsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha384Id"></a><h3>xmlSecOpenSSLTransformEcdsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformEcdsaSha384Id</pre>
 <p>The ECDSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMECDSASHA512ID"></a><h3>xmlSecOpenSSLTransformEcdsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformEcdsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformEcdsaSha512Id"></a><h3>xmlSecOpenSSLTransformEcdsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformEcdsaSha512Id</pre>
 <p>The ECDSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOST2001ID"></a><h3>xmlSecOpenSSLKeyDataGost2001Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataGost2001Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGost2001Id"></a><h3>xmlSecOpenSSLKeyDataGost2001Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataGost2001Id</pre>
 <p>The GOST2001 key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOST2001GOSTR3411-94ID"></a><h3>xmlSecOpenSSLTransformGost2001GostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGost2001GostR3411_94Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGost2001GostR3411-94Id"></a><h3>xmlSecOpenSSLTransformGost2001GostR3411_94Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGost2001GostR3411_94Id</pre>
 <p>The GOST2001 GOSTR3411_94 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-94ID"></a><h3>xmlSecOpenSSLTransformGostR3411_94Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGostR3411_94Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-94Id"></a><h3>xmlSecOpenSSLTransformGostR3411_94Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGostR3411_94Id</pre>
 <p>The GOSTR3411_94 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOSTR3410-2012-256ID"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataGostR3410_2012_256Id</pre>
-<p></p>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-256Id"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataGostR3410_2012_256Id</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAGOSTR3410-2012-512ID"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataGostR3410_2012_512Id</pre>
-<p></p>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataGostR3410-2012-512Id"></a><h3>xmlSecOpenSSLKeyDataGostR3410_2012_512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataGostR3410_2012_512Id</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-256ID"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-256Id"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_256Id</pre>
 <p>The GOST R 34.10-2012 - GOST R 3411-2012 256 bit signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3410-2012GOSTR3411-2012-512ID"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3410-2012GostR3411-2012-512Id"></a><h3>xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGostR3410_2012GostR3411_2012_512Id</pre>
 <p>The GOST R 34.10-2012 - GOST R 3411-2012 512 bit signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-2012-256ID"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGostR3411_2012_256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-256Id"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGostR3411_2012_256Id</pre>
 <p>The GOST R 34.11-2012 256 bit hash transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMGOSTR3411-2012-512ID"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformGostR3411_2012_512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformGostR3411-2012-512Id"></a><h3>xmlSecOpenSSLTransformGostR3411_2012_512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformGostR3411_2012_512Id</pre>
 <p>The GOST R 34.11-2012 512 bit hash transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAHMACID"></a><h3>xmlSecOpenSSLKeyDataHmacId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataHmacId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataHmacId"></a><h3>xmlSecOpenSSLKeyDataHmacId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataHmacId</pre>
 <p>The DHMAC key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACMD5ID"></a><h3>xmlSecOpenSSLTransformHmacMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacMd5Id"></a><h3>xmlSecOpenSSLTransformHmacMd5Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacMd5Id</pre>
 <p>The HMAC with MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACRIPEMD160ID"></a><h3>xmlSecOpenSSLTransformHmacRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacRipemd160Id"></a><h3>xmlSecOpenSSLTransformHmacRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacRipemd160Id</pre>
 <p>The HMAC with RipeMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA1ID"></a><h3>xmlSecOpenSSLTransformHmacSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha1Id"></a><h3>xmlSecOpenSSLTransformHmacSha1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacSha1Id</pre>
 <p>The HMAC with SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA224ID"></a><h3>xmlSecOpenSSLTransformHmacSha224Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacSha224Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha224Id"></a><h3>xmlSecOpenSSLTransformHmacSha224Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacSha224Id</pre>
 <p>The HMAC with SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA256ID"></a><h3>xmlSecOpenSSLTransformHmacSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha256Id"></a><h3>xmlSecOpenSSLTransformHmacSha256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacSha256Id</pre>
 <p>The HMAC with SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA384ID"></a><h3>xmlSecOpenSSLTransformHmacSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha384Id"></a><h3>xmlSecOpenSSLTransformHmacSha384Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacSha384Id</pre>
 <p>The HMAC with SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMHMACSHA512ID"></a><h3>xmlSecOpenSSLTransformHmacSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformHmacSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformHmacSha512Id"></a><h3>xmlSecOpenSSLTransformHmacSha512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformHmacSha512Id</pre>
 <p>The HMAC with SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMMD5ID"></a><h3>xmlSecOpenSSLTransformMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformMd5Id"></a><h3>xmlSecOpenSSLTransformMd5Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformMd5Id</pre>
 <p>The MD5 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRIPEMD160ID"></a><h3>xmlSecOpenSSLTransformRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRipemd160Id"></a><h3>xmlSecOpenSSLTransformRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRipemd160Id</pre>
 <p>The RIPEMD160 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARSAID"></a><h3>xmlSecOpenSSLKeyDataRsaId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataRsaId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRsaId"></a><h3>xmlSecOpenSSLKeyDataRsaId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataRsaId</pre>
 <p>The RSA key klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAMD5ID"></a><h3>xmlSecOpenSSLTransformRsaMd5Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaMd5Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaMd5Id"></a><h3>xmlSecOpenSSLTransformRsaMd5Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaMd5Id</pre>
 <p>The RSA-MD5 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSARIPEMD160ID"></a><h3>xmlSecOpenSSLTransformRsaRipemd160Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaRipemd160Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaRipemd160Id"></a><h3>xmlSecOpenSSLTransformRsaRipemd160Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaRipemd160Id</pre>
 <p>The RSA-RIPEMD160 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA1ID"></a><h3>xmlSecOpenSSLTransformRsaSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha1Id"></a><h3>xmlSecOpenSSLTransformRsaSha1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaSha1Id</pre>
 <p>The RSA-SHA1 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA224ID"></a><h3>xmlSecOpenSSLTransformRsaSha224Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaSha224Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha224Id"></a><h3>xmlSecOpenSSLTransformRsaSha224Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaSha224Id</pre>
 <p>The RSA-SHA224 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA256ID"></a><h3>xmlSecOpenSSLTransformRsaSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha256Id"></a><h3>xmlSecOpenSSLTransformRsaSha256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaSha256Id</pre>
 <p>The RSA-SHA256 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA384ID"></a><h3>xmlSecOpenSSLTransformRsaSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha384Id"></a><h3>xmlSecOpenSSLTransformRsaSha384Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaSha384Id</pre>
 <p>The RSA-SHA384 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSASHA512ID"></a><h3>xmlSecOpenSSLTransformRsaSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaSha512Id"></a><h3>xmlSecOpenSSLTransformRsaSha512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaSha512Id</pre>
 <p>The RSA-SHA512 signature transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAPKCS1ID"></a><h3>xmlSecOpenSSLTransformRsaPkcs1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaPkcs1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaPkcs1Id"></a><h3>xmlSecOpenSSLTransformRsaPkcs1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaPkcs1Id</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMRSAOAEPID"></a><h3>xmlSecOpenSSLTransformRsaOaepId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformRsaOaepId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformRsaOaepId"></a><h3>xmlSecOpenSSLTransformRsaOaepId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformRsaOaepId</pre>
 <p>The RSA PKCS1 key transport transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA1ID"></a><h3>xmlSecOpenSSLTransformSha1Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformSha1Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha1Id"></a><h3>xmlSecOpenSSLTransformSha1Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformSha1Id</pre>
 <p>The SHA1 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA224ID"></a><h3>xmlSecOpenSSLTransformSha224Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformSha224Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha224Id"></a><h3>xmlSecOpenSSLTransformSha224Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformSha224Id</pre>
 <p>The SHA224 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA256ID"></a><h3>xmlSecOpenSSLTransformSha256Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformSha256Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha256Id"></a><h3>xmlSecOpenSSLTransformSha256Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformSha256Id</pre>
 <p>The SHA256 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA384ID"></a><h3>xmlSecOpenSSLTransformSha384Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformSha384Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha384Id"></a><h3>xmlSecOpenSSLTransformSha384Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformSha384Id</pre>
 <p>The SHA384 digest transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLTRANSFORMSHA512ID"></a><h3>xmlSecOpenSSLTransformSha512Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLTransformSha512Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLTransformSha512Id"></a><h3>xmlSecOpenSSLTransformSha512Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLTransformSha512Id</pre>
 <p>The SHA512 digest transform klass.</p>
 </div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSEC-OPENSSL-ERRORS-FUNCTION:CAPS"></a><h3>XMLSEC_OPENSSL_ERRORS_FUNCTION</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_OPENSSL_ERRORS_FUNCTION                  0</pre>
-<p>Macro. The XMLSec library functions OpenSSL errors reporting functions.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-bn.html"><b><<< bn</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-evp.html"><b>evp >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-evp.html b/docs/api/xmlsec-openssl-evp.html
index e3dfd52..85727df 100644
--- a/docs/api/xmlsec-openssl-evp.html
+++ b/docs/api/xmlsec-openssl-evp.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>evp</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="PREVIOUS" title="crypto" href="xmlsec-openssl-crypto.html">
-<link rel="NEXT" title="x509" href="xmlsec-openssl-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>evp: 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-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="prev" href="xmlsec-openssl-crypto.html" title="crypto">
+<link rel="next" href="xmlsec-openssl-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,191 +73,195 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-openssl-evp.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-crypto.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-OPENSSL-EVP"></a>evp</h1>
-<div class="REFNAMEDIV">
-<a name="AEN32728"></a><h2>Name</h2>evp -- EVP keys data implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-EVP.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32733"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-openssl-evp"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-openssl-evp.top_of_page"></a>evp</span></h2>
+<p>evp — EVP keys data implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-openssl-evp.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDATAADOPTEVP">xmlSecOpenSSLEvpKeyDataAdoptEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDataAdoptEvp" title="xmlSecOpenSSLEvpKeyDataAdoptEvp ()">xmlSecOpenSSLEvpKeyDataAdoptEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EVP_PKEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDATAGETEVP">xmlSecOpenSSLEvpKeyDataGetEvp</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EVP_PKEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDataGetEvp" title="xmlSecOpenSSLEvpKeyDataGetEvp ()">xmlSecOpenSSLEvpKeyDataGetEvp</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">EVP_PKEY</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYDUP">xmlSecOpenSSLEvpKeyDup</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">EVP_PKEY</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyDup" title="xmlSecOpenSSLEvpKeyDup ()">xmlSecOpenSSLEvpKeyDup</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-evp.html#XMLSECOPENSSLEVPKEYADOPT">xmlSecOpenSSLEvpKeyAdopt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-evp.html#xmlSecOpenSSLEvpKeyAdopt" title="xmlSecOpenSSLEvpKeyAdopt ()">xmlSecOpenSSLEvpKeyAdopt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-EVP.DESCRIPTION"></a><h2>Description</h2>
-<p>EVP keys data implementation.</p>
+<div class="refsect1">
+<a name="xmlsec-openssl-evp.description"></a><h2>Description</h2>
+<p>
+EVP keys data implementation.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-EVP.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLEVPKEYDATAADOPTEVP"></a><h3>xmlSecOpenSSLEvpKeyDataAdoptEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLEvpKeyDataAdoptEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
+<div class="refsect1">
+<a name="xmlsec-openssl-evp.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecOpenSSLEvpKeyDataAdoptEvp"></a><h3>xmlSecOpenSSLEvpKeyDataAdoptEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLEvpKeyDataAdoptEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
 <p>Sets the value of key data.</p>
-<div class="REFSECT3">
-<a name="AEN32783"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32785"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDataAdoptEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to OpenSSL EVP key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL EVP key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to EVP key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to EVP key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN32800"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDataAdoptEvp.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLEVPKEYDATAGETEVP"></a><h3>xmlSecOpenSSLEvpKeyDataGetEvp ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EVP_PKEY</span></font> *
-xmlSecOpenSSLEvpKeyDataGetEvp (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLEvpKeyDataGetEvp"></a><h3>xmlSecOpenSSLEvpKeyDataGetEvp ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EVP_PKEY</span></font> *
+xmlSecOpenSSLEvpKeyDataGetEvp (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the EVP_PKEY from the key data.</p>
-<div class="REFSECT3">
-<a name="AEN32814"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32816"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDataGetEvp.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to OpenSSL EVP data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL EVP data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN32825"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDataGetEvp.returns"></a><h4>Returns</h4>
 <p> pointer to EVP_PKEY or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLEVPKEYDUP"></a><h3>xmlSecOpenSSLEvpKeyDup ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">EVP_PKEY</span></font> *
-xmlSecOpenSSLEvpKeyDup (<code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
-<p>Duplicates <code class="PARAMETER">pKey</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLEvpKeyDup"></a><h3>xmlSecOpenSSLEvpKeyDup ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">EVP_PKEY</span></font> *
+xmlSecOpenSSLEvpKeyDup (<em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
+<p>Duplicates <em class="parameter"><code>pKey</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN32840"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32842"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDup.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to EVP_PKEY.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to EVP_PKEY.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN32851"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyDup.returns"></a><h4>Returns</h4>
 <p> pointer to newly created EVP_PKEY object or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLEVPKEYADOPT"></a><h3>xmlSecOpenSSLEvpKeyAdopt ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecOpenSSLEvpKeyAdopt (<code class="PARAMETER"><font><span class="TYPE">EVP_PKEY</span></font> *pKey</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLEvpKeyAdopt"></a><h3>xmlSecOpenSSLEvpKeyAdopt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecOpenSSLEvpKeyAdopt (<em class="parameter"><code><font><span class="type">EVP_PKEY</span></font> *pKey</code></em>);</pre>
 <p>Creates xmlsec key object from OpenSSL key object.</p>
-<div class="REFSECT3">
-<a name="AEN32865"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32867"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyAdopt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>pKey</p></td>
-<td><p>the pointer to EVP_PKEY.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pKey</p></td>
+<td class="parameter_description"><p>the pointer to EVP_PKEY.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN32876"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLEvpKeyAdopt.returns"></a><h4>Returns</h4>
 <p> pointer to newly created xmlsec key or NULL if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-EVP.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-openssl-evp.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-crypto.html"><b><<< crypto</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-x509.html"><b>x509 >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-ref.html b/docs/api/xmlsec-openssl-ref.html
index 3ce8bd8..c4efea4 100644
--- a/docs/api/xmlsec-openssl-ref.html
+++ b/docs/api/xmlsec-openssl-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library for OpenSLL API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="x509" href="xmlsec-x509.html">
-<link rel="NEXT" title="app" href="xmlsec-openssl-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Library for OpenSLL API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-x509.html" title="x509">
+<link rel="next" href="xmlsec-openssl-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,37 +73,39 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-OPENSSL-REF"></a>XML Security Library for OpenSLL API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-openssl-ref"></a>XML Security Library for OpenSLL API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-openssl-app.html">app</a> -- Application functions implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for OpenSSL.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-bn.html">bn</a> -- Big numbers helper functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-bn.html">bn</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-crypto.html">crypto</a> -- Crypto transforms implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for OpenSSL.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-evp.html">evp</a> -- EVP keys data implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-evp.html">evp</a></span><span class="refpurpose"> — EVP keys data implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-openssl-x509.html">x509</a> -- X509 certificates support implementation for OpenSSL.</dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for OpenSSL.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec-openssl. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-x509.html"><b><<< x509</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-openssl-x509.html b/docs/api/xmlsec-openssl-x509.html
index 39e1040..a5bc09f 100644
--- a/docs/api/xmlsec-openssl-x509.html
+++ b/docs/api/xmlsec-openssl-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>x509</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<link rel="PREVIOUS" title="evp" href="xmlsec-openssl-evp.html">
-<link rel="NEXT" title="XML Security Library for GnuTLS API Reference." href="xmlsec-gnutls-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>x509: 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-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<link rel="prev" href="xmlsec-openssl-evp.html" title="evp">
+<link rel="next" href="xmlsec-gnutls-ref.html" title="XML Security Library for GnuTLS API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,826 +73,834 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-openssl-evp.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-openssl-x509.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-openssl-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-openssl-evp.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-gnutls-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-OPENSSL-X509"></a>x509</h1>
-<div class="REFNAMEDIV">
-<a name="AEN32887"></a><h2>Name</h2>x509 -- X509 certificates support implementation for OpenSSL.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-X509.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN32892"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-openssl-x509"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-openssl-x509.top_of_page"></a>x509</span></h2>
+<p>x509 — X509 certificates support implementation for OpenSSL.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-openssl-x509.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKLASS">xmlSecOpenSSLKeyDataX509GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetKlass" title="xmlSecOpenSSLKeyDataX509GetKlass ()">xmlSecOpenSSLKeyDataX509GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">X509</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETKEYCERT">xmlSecOpenSSLKeyDataX509GetKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">X509</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetKeyCert" title="xmlSecOpenSSLKeyDataX509GetKeyCert ()">xmlSecOpenSSLKeyDataX509GetKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTKEYCERT">xmlSecOpenSSLKeyDataX509AdoptKeyCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptKeyCert" title="xmlSecOpenSSLKeyDataX509AdoptKeyCert ()">xmlSecOpenSSLKeyDataX509AdoptKeyCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCERT">xmlSecOpenSSLKeyDataX509AdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptCert" title="xmlSecOpenSSLKeyDataX509AdoptCert ()">xmlSecOpenSSLKeyDataX509AdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">X509</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERT">xmlSecOpenSSLKeyDataX509GetCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">X509</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCert" title="xmlSecOpenSSLKeyDataX509GetCert ()">xmlSecOpenSSLKeyDataX509GetCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCERTSSIZE">xmlSecOpenSSLKeyDataX509GetCertsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCertsSize" title="xmlSecOpenSSLKeyDataX509GetCertsSize ()">xmlSecOpenSSLKeyDataX509GetCertsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ADOPTCRL">xmlSecOpenSSLKeyDataX509AdoptCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509AdoptCrl" title="xmlSecOpenSSLKeyDataX509AdoptCrl ()">xmlSecOpenSSLKeyDataX509AdoptCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">X509_CRL</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRL">xmlSecOpenSSLKeyDataX509GetCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">X509_CRL</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCrl" title="xmlSecOpenSSLKeyDataX509GetCrl ()">xmlSecOpenSSLKeyDataX509GetCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509GETCRLSSIZE">xmlSecOpenSSLKeyDataX509GetCrlsSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<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-openssl-x509.html#xmlSecOpenSSLKeyDataX509GetCrlsSize" title="xmlSecOpenSSLKeyDataX509GetCrlsSize ()">xmlSecOpenSSLKeyDataX509GetCrlsSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509CERTGETKEY">xmlSecOpenSSLX509CertGetKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509CertGetKey" title="xmlSecOpenSSLX509CertGetKey ()">xmlSecOpenSSLX509CertGetKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTGETKLASS">xmlSecOpenSSLKeyDataRawX509CertGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataRawX509CertGetKlass" title="xmlSecOpenSSLKeyDataRawX509CertGetKlass ()">xmlSecOpenSSLKeyDataRawX509CertGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREGETKLASS">xmlSecOpenSSLX509StoreGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreGetKlass" title="xmlSecOpenSSLX509StoreGetKlass ()">xmlSecOpenSSLX509StoreGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">X509</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREFINDCERT">xmlSecOpenSSLX509StoreFindCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">X509</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreFindCert" title="xmlSecOpenSSLX509StoreFindCert ()">xmlSecOpenSSLX509StoreFindCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">X509</span></font> *</td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREVERIFY">xmlSecOpenSSLX509StoreVerify</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">X509</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreVerify" title="xmlSecOpenSSLX509StoreVerify ()">xmlSecOpenSSLX509StoreVerify</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADOPTCERT">xmlSecOpenSSLX509StoreAdoptCert</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAdoptCert" title="xmlSecOpenSSLX509StoreAdoptCert ()">xmlSecOpenSSLX509StoreAdoptCert</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADOPTCRL">xmlSecOpenSSLX509StoreAdoptCrl</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAdoptCrl" title="xmlSecOpenSSLX509StoreAdoptCrl ()">xmlSecOpenSSLX509StoreAdoptCrl</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADDCERTSPATH">xmlSecOpenSSLX509StoreAddCertsPath</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAddCertsPath" title="xmlSecOpenSSLX509StoreAddCertsPath ()">xmlSecOpenSSLX509StoreAddCertsPath</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREADDCERTSFILE">xmlSecOpenSSLX509StoreAddCertsFile</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreAddCertsFile" title="xmlSecOpenSSLX509StoreAddCertsFile ()">xmlSecOpenSSLX509StoreAddCertsFile</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-X509.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33023"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-x509.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509:CAPS">XMLSEC_STACK_OF_X509</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509:CAPS" title="XMLSEC_STACK_OF_X509">XMLSEC_STACK_OF_X509</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL:CAPS">XMLSEC_STACK_OF_X509_CRL</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL:CAPS" title="XMLSEC_STACK_OF_X509_CRL">XMLSEC_STACK_OF_X509_CRL</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATAX509ID">xmlSecOpenSSLKeyDataX509Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataX509Id" title="xmlSecOpenSSLKeyDataX509Id">xmlSecOpenSSLKeyDataX509Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLKEYDATARAWX509CERTID">xmlSecOpenSSLKeyDataRawX509CertId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLKeyDataRawX509CertId" title="xmlSecOpenSSLKeyDataRawX509CertId">xmlSecOpenSSLKeyDataRawX509CertId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-openssl-x509.html#XMLSECOPENSSLX509STOREID">xmlSecOpenSSLX509StoreId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-openssl-x509.html#xmlSecOpenSSLX509StoreId" title="xmlSecOpenSSLX509StoreId">xmlSecOpenSSLX509StoreId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-X509.DESCRIPTION"></a><h2>Description</h2>
-<p>X509 certificates support implementation for OpenSSL.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-X509.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509GETKLASS"></a><h3>xmlSecOpenSSLKeyDataX509GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
-xmlSecOpenSSLKeyDataX509GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The OpenSSL X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-X509Data</span></font>).</p>
-<div class="REFSECT3">
-<a name="AEN33063"></a><h4>Returns</h4>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-x509.description"></a><h2>Description</h2>
+<p>
+X509 certificates support implementation for OpenSSL.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-openssl-x509.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetKlass"></a><h3>xmlSecOpenSSLKeyDataX509GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
+xmlSecOpenSSLKeyDataX509GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The OpenSSL X509 key data klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-X509Data</span></font>).</p>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetKlass.returns"></a><h4>Returns</h4>
 <p> the X509 data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509GETKEYCERT"></a><h3>xmlSecOpenSSLKeyDataX509GetKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">X509</span></font> *
-xmlSecOpenSSLKeyDataX509GetKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetKeyCert"></a><h3>xmlSecOpenSSLKeyDataX509GetKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">X509</span></font> *
+xmlSecOpenSSLKeyDataX509GetKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
 <p>Gets the certificate from which the key was extracted.</p>
-<div class="REFSECT3">
-<a name="AEN33077"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33079"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33088"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetKeyCert.returns"></a><h4>Returns</h4>
 <p> the key's certificate or NULL if key data was not used for key
 extraction or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509ADOPTKEYCERT"></a><h3>xmlSecOpenSSLKeyDataX509AdoptKeyCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataX509AdoptKeyCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                      <code class="PARAMETER"><font><span class="TYPE">X509</span></font> *cert</code>);</pre>
-<p>Sets the key's certificate in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509AdoptKeyCert"></a><h3>xmlSecOpenSSLKeyDataX509AdoptKeyCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataX509AdoptKeyCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                      <em class="parameter"><code><font><span class="type">X509</span></font> *cert</code></em>);</pre>
+<p>Sets the key's certificate in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN33106"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33108"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptKeyCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to OpenSSL X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33123"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptKeyCert.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="XMLSECOPENSSLKEYDATAX509ADOPTCERT"></a><h3>xmlSecOpenSSLKeyDataX509AdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataX509AdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">X509</span></font> *cert</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCert"></a><h3>xmlSecOpenSSLKeyDataX509AdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataX509AdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                   <em class="parameter"><code><font><span class="type">X509</span></font> *cert</code></em>);</pre>
 <p>Adds certificate to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN33140"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33142"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to OpenSSL X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33157"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCert.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="XMLSECOPENSSLKEYDATAX509GETCERT"></a><h3>xmlSecOpenSSLKeyDataX509GetCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">X509</span></font> *
-xmlSecOpenSSLKeyDataX509GetCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetCert"></a><h3>xmlSecOpenSSLKeyDataX509GetCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">X509</span></font> *
+xmlSecOpenSSLKeyDataX509GetCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a certificate from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN33174"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33176"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired certificate position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired certificate position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33191"></a><h4>Returns</h4>
-<p> the pointer to certificate or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCert.returns"></a><h4>Returns</h4>
+<p> the pointer to certificate or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of certificates in <code class="PARAMETER">data</code>
+number of certificates in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509GETCERTSSIZE"></a><h3>xmlSecOpenSSLKeyDataX509GetCertsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecOpenSSLKeyDataX509GetCertsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetCertsSize"></a><h3>xmlSecOpenSSLKeyDataX509GetCertsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecOpenSSLKeyDataX509GetCertsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN33208"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33210"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCertsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33219"></a><h4>Returns</h4>
-<p> te number of certificates in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCertsSize.returns"></a><h4>Returns</h4>
+<p> te number of certificates in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509ADOPTCRL"></a><h3>xmlSecOpenSSLKeyDataX509AdoptCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLKeyDataX509AdoptCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">X509_CRL</span></font> *crl</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCrl"></a><h3>xmlSecOpenSSLKeyDataX509AdoptCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLKeyDataX509AdoptCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                  <em class="parameter"><code><font><span class="type">X509_CRL</span></font> *crl</code></em>);</pre>
 <p>Adds CRL to the X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN33237"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33239"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>crl</p></td>
-<td><p>the pointer to OpenSSL X509 CRL.</p></td>
-<td> </td>
+<td class="parameter_name"><p>crl</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL X509 CRL.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33254"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509AdoptCrl.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="XMLSECOPENSSLKEYDATAX509GETCRL"></a><h3>xmlSecOpenSSLKeyDataX509GetCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">X509_CRL</span></font> *
-xmlSecOpenSSLKeyDataX509GetCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> pos</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetCrl"></a><h3>xmlSecOpenSSLKeyDataX509GetCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">X509_CRL</span></font> *
+xmlSecOpenSSLKeyDataX509GetCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> pos</code></em>);</pre>
 <p>Gets a CRL from X509 key data.</p>
-<div class="REFSECT3">
-<a name="AEN33271"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33273"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>pos</p></td>
-<td><p>the desired CRL position.</p></td>
-<td> </td>
+<td class="parameter_name"><p>pos</p></td>
+<td class="parameter_description"><p>the desired CRL position.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33288"></a><h4>Returns</h4>
-<p> the pointer to CRL or NULL if <code class="PARAMETER">pos</code>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCrl.returns"></a><h4>Returns</h4>
+<p> the pointer to CRL or NULL if <em class="parameter"><code>pos</code></em>
 is larger than the
-number of CRLs in <code class="PARAMETER">data</code>
+number of CRLs in <em class="parameter"><code>data</code></em>
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509GETCRLSSIZE"></a><h3>xmlSecOpenSSLKeyDataX509GetCrlsSize ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="RETURNVALUE">xmlSecSize</span></a>
-xmlSecOpenSSLKeyDataX509GetCrlsSize (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="TYPE">xmlSecKeyDataPtr</span></a> data</code>);</pre>
-<p>Gets the number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509GetCrlsSize"></a><h3>xmlSecOpenSSLKeyDataX509GetCrlsSize ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="returnvalue">xmlSecSize</span></a>
+xmlSecOpenSSLKeyDataX509GetCrlsSize (<em class="parameter"><code><font><span class="type">xmlSecKeyDataPtr</span></font> data</code></em>);</pre>
+<p>Gets the number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN33305"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33307"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCrlsSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>data</p></td>
-<td><p>the pointer to X509 key data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33316"></a><h4>Returns</h4>
-<p> te number of CRLs in <code class="PARAMETER">data</code>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataX509GetCrlsSize.returns"></a><h4>Returns</h4>
+<p> te number of CRLs in <em class="parameter"><code>data</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509CERTGETKEY"></a><h3>xmlSecOpenSSLX509CertGetKey ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-keysdata.html#XMLSECKEYDATA"><span class="RETURNVALUE">xmlSecKeyDataPtr</span></a>
-xmlSecOpenSSLX509CertGetKey (<code class="PARAMETER"><font><span class="TYPE">X509</span></font> *cert</code>);</pre>
-<p>Extracts public key from the <code class="PARAMETER">cert</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509CertGetKey"></a><h3>xmlSecOpenSSLX509CertGetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataPtr</span></font>
+xmlSecOpenSSLX509CertGetKey (<em class="parameter"><code><font><span class="type">X509</span></font> *cert</code></em>);</pre>
+<p>Extracts public key from the <em class="parameter"><code>cert</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN33332"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33334"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509CertGetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>cert</p></td>
-<td><p>the certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33343"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509CertGetKey.returns"></a><h4>Returns</h4>
 <p> public key value or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARAWX509CERTGETKLASS"></a><h3>xmlSecOpenSSLKeyDataRawX509CertGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataId</span></font>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRawX509CertGetKlass"></a><h3>xmlSecOpenSSLKeyDataRawX509CertGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataId</span></font>
 xmlSecOpenSSLKeyDataRawX509CertGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The raw X509 certificates key data klass.</p>
-<div class="REFSECT3">
-<a name="AEN33356"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLKeyDataRawX509CertGetKlass.returns"></a><h4>Returns</h4>
 <p> raw X509 certificates key data klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREGETKLASS"></a><h3>xmlSecOpenSSLX509StoreGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecKeyDataStoreId</span></font>
-xmlSecOpenSSLX509StoreGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreGetKlass"></a><h3>xmlSecOpenSSLX509StoreGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecKeyDataStoreId</span></font>
+xmlSecOpenSSLX509StoreGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The OpenSSL X509 certificates key data store klass.</p>
-<div class="REFSECT3">
-<a name="AEN33369"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to OpenSSL X509 certificates key data store klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREFINDCERT"></a><h3>xmlSecOpenSSLX509StoreFindCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">X509</span></font> *
-xmlSecOpenSSLX509StoreFindCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *subjectName</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *issuerName</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *issuerSerial</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlChar</span></font> *ski</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code>);</pre>
-<p>Searches <code class="PARAMETER">store</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreFindCert"></a><h3>xmlSecOpenSSLX509StoreFindCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">X509</span></font> *
+xmlSecOpenSSLX509StoreFindCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlChar</span></font> *subjectName</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlChar</span></font> *issuerName</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlChar</span></font> *issuerSerial</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlChar</span></font> *ski</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Searches <em class="parameter"><code>store</code></em>
  for a certificate that matches given criteria.</p>
-<div class="REFSECT3">
-<a name="AEN33399"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33401"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreFindCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>subjectName</p></td>
-<td><p>the desired certificate name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>subjectName</p></td>
+<td class="parameter_description"><p>the desired certificate name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>issuerName</p></td>
-<td><p>the desired certificate issuer name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>issuerName</p></td>
+<td class="parameter_description"><p>the desired certificate issuer name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>issuerSerial</p></td>
-<td><p>the desired certificate issuer serial number.</p></td>
-<td> </td>
+<td class="parameter_name"><p>issuerSerial</p></td>
+<td class="parameter_description"><p>the desired certificate issuer serial number.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ski</p></td>
-<td><p>the desired certificate SKI.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ski</p></td>
+<td class="parameter_description"><p>the desired certificate SKI.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33440"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreFindCert.returns"></a><h4>Returns</h4>
 <p> pointer to found certificate or NULL if certificate is not found
 or an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREVERIFY"></a><h3>xmlSecOpenSSLX509StoreVerify ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">X509</span></font> *
-xmlSecOpenSSLX509StoreVerify (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                              <code class="PARAMETER"><a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509:CAPS"><span class="TYPE">XMLSEC_STACK_OF_X509</span></a> *certs</code>,
-                              <code class="PARAMETER"><a href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL:CAPS"><span class="TYPE">XMLSEC_STACK_OF_X509_CRL</span></a> *crls</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code>);</pre>
-<p>Verifies <code class="PARAMETER">certs</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreVerify"></a><h3>xmlSecOpenSSLX509StoreVerify ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">X509</span></font> *
+xmlSecOpenSSLX509StoreVerify (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509:CAPS" title="XMLSEC_STACK_OF_X509"><span class="type">XMLSEC_STACK_OF_X509</span></a> *certs</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-openssl-x509.html#XMLSEC-STACK-OF-X509-CRL:CAPS" title="XMLSEC_STACK_OF_X509_CRL"><span class="type">XMLSEC_STACK_OF_X509_CRL</span></a> *crls</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> *keyInfoCtx</code></em>);</pre>
+<p>Verifies <em class="parameter"><code>certs</code></em>
  list.</p>
-<div class="REFSECT3">
-<a name="AEN33464"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33466"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreVerify.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>certs</p></td>
-<td><p>the untrusted certificates stack.</p></td>
-<td> </td>
+<td class="parameter_name"><p>certs</p></td>
+<td class="parameter_description"><p>the untrusted certificates stack.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>crls</p></td>
-<td><p>the crls stack.</p></td>
-<td> </td>
+<td class="parameter_name"><p>crls</p></td>
+<td class="parameter_description"><p>the crls stack.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33493"></a><h4>Returns</h4>
-<p> pointer to the first verified certificate from <code class="PARAMETER">certs</code>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreVerify.returns"></a><h4>Returns</h4>
+<p> pointer to the first verified certificate from <em class="parameter"><code>certs</code></em>
 .</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREADOPTCERT"></a><h3>xmlSecOpenSSLX509StoreAdoptCert ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLX509StoreAdoptCert (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">X509</span></font> *cert</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATATYPE"><span class="TYPE">xmlSecKeyDataType</span></a> type</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreAdoptCert"></a><h3>xmlSecOpenSSLX509StoreAdoptCert ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLX509StoreAdoptCert (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                 <em class="parameter"><code><font><span class="type">X509</span></font> *cert</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-keysdata.html#xmlSecKeyDataType" title="xmlSecKeyDataType"><span class="type">xmlSecKeyDataType</span></a> type</code></em>);</pre>
 <p>Adds trusted (root) or untrusted certificate to the store.</p>
-<div class="REFSECT3">
-<a name="AEN33514"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33516"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAdoptCert.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>cert</p></td>
-<td><p>the pointer to OpenSSL X509 certificate.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cert</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL X509 certificate.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the certificate type (trusted/untrusted).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the certificate type (trusted/untrusted).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN33537"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAdoptCert.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="XMLSECOPENSSLX509STOREADOPTCRL"></a><h3>xmlSecOpenSSLX509StoreAdoptCrl ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLX509StoreAdoptCrl (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">X509_CRL</span></font> *crl</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreAdoptCrl"></a><h3>xmlSecOpenSSLX509StoreAdoptCrl ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLX509StoreAdoptCrl (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                <em class="parameter"><code><font><span class="type">X509_CRL</span></font> *crl</code></em>);</pre>
 <p>Adds X509 CRL to the store.</p>
-<div class="REFSECT3">
-<a name="AEN33554"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33556"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAdoptCrl.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to X509 key data store klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to X509 key data store klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>crl</p></td>
-<td><p>the pointer to OpenSSL X509_CRL.</p></td>
-<td> </td>
+<td class="parameter_name"><p>crl</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL X509_CRL.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33571"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAdoptCrl.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="XMLSECOPENSSLX509STOREADDCERTSPATH"></a><h3>xmlSecOpenSSLX509StoreAddCertsPath ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLX509StoreAddCertsPath (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *path</code>);</pre>
-<p>Adds all certs in the <code class="PARAMETER">path</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreAddCertsPath"></a><h3>xmlSecOpenSSLX509StoreAddCertsPath ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLX509StoreAddCertsPath (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *path</code></em>);</pre>
+<p>Adds all certs in the <em class="parameter"><code>path</code></em>
  to the list of trusted certs
-in <code class="PARAMETER">store</code>
+in <em class="parameter"><code>store</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN33590"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33592"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAddCertsPath.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to OpenSSL x509 store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL x509 store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>path</p></td>
-<td><p>the path to the certs dir.</p></td>
-<td> </td>
+<td class="parameter_name"><p>path</p></td>
+<td class="parameter_description"><p>the path to the certs dir.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33607"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAddCertsPath.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREADDCERTSFILE"></a><h3>xmlSecOpenSSLX509StoreAddCertsFile ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecOpenSSLX509StoreAddCertsFile (<code class="PARAMETER"><a href="xmlsec-keysdata.html#XMLSECKEYDATASTORE"><span class="TYPE">xmlSecKeyDataStorePtr</span></a> store</code>,
-                                    <code class="PARAMETER">const <font><span class="TYPE">char</span></font> *file</code>);</pre>
-<p>Adds all certs in <code class="PARAMETER">file</code>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreAddCertsFile"></a><h3>xmlSecOpenSSLX509StoreAddCertsFile ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecOpenSSLX509StoreAddCertsFile (<em class="parameter"><code><font><span class="type">xmlSecKeyDataStorePtr</span></font> store</code></em>,
+                                    <em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>);</pre>
+<p>Adds all certs in <em class="parameter"><code>file</code></em>
  to the list of trusted certs
-in <code class="PARAMETER">store</code>
-. It is possible for <code class="PARAMETER">file</code>
+in <em class="parameter"><code>store</code></em>
+. It is possible for <em class="parameter"><code>file</code></em>
  to contain multiple certs.</p>
-<div class="REFSECT3">
-<a name="AEN33627"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN33629"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAddCertsFile.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>store</p></td>
-<td><p>the pointer to OpenSSL x509 store.</p></td>
-<td> </td>
+<td class="parameter_name"><p>store</p></td>
+<td class="parameter_description"><p>the pointer to OpenSSL x509 store.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>file</p></td>
-<td><p>the certs file.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the certs file.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN33644"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecOpenSSLX509StoreAddCertsFile.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-OPENSSL-X509.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-openssl-x509.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-STACK-OF-X509:CAPS"></a><h3>XMLSEC_STACK_OF_X509</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_STACK_OF_X509            STACK_OF(X509)</pre>
+<pre class="programlisting">#define XMLSEC_STACK_OF_X509            STACK_OF(X509)
+</pre>
 <p>Macro. To make docbook happy.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-STACK-OF-X509-CRL:CAPS"></a><h3>XMLSEC_STACK_OF_X509_CRL</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_STACK_OF_X509_CRL        STACK_OF(X509_CRL)</pre>
+<pre class="programlisting">#define XMLSEC_STACK_OF_X509_CRL        STACK_OF(X509_CRL)
+</pre>
 <p>Macro. To make docbook happy.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATAX509ID"></a><h3>xmlSecOpenSSLKeyDataX509Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataX509Id</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataX509Id"></a><h3>xmlSecOpenSSLKeyDataX509Id</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataX509Id</pre>
 <p>The OpenSSL X509 data klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLKEYDATARAWX509CERTID"></a><h3>xmlSecOpenSSLKeyDataRawX509CertId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLKeyDataRawX509CertId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLKeyDataRawX509CertId"></a><h3>xmlSecOpenSSLKeyDataRawX509CertId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLKeyDataRawX509CertId</pre>
 <p>The OpenSSL raw X509 certificate klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECOPENSSLX509STOREID"></a><h3>xmlSecOpenSSLX509StoreId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecOpenSSLX509StoreId</pre>
+<div class="refsect2">
+<a name="xmlSecOpenSSLX509StoreId"></a><h3>xmlSecOpenSSLX509StoreId</h3>
+<pre class="programlisting">#define             xmlSecOpenSSLX509StoreId</pre>
 <p>The OpenSSL X509 store klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-openssl-evp.html"><b><<< evp</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-gnutls-ref.html"><b>XML Security Library for GnuTLS API Reference. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-parser.html b/docs/api/xmlsec-parser.html
index abf343e..6d3b6a1 100644
--- a/docs/api/xmlsec-parser.html
+++ b/docs/api/xmlsec-parser.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>parser</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="nodeset" href="xmlsec-nodeset.html">
-<link rel="NEXT" title="templates" href="xmlsec-templates.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>parser: 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-nodeset.html" title="nodeset">
+<link rel="next" href="xmlsec-templates.html" title="templates">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,234 +73,241 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-nodeset.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-parser.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-nodeset.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-templates.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-PARSER"></a>parser</h1>
-<div class="REFNAMEDIV">
-<a name="AEN16683"></a><h2>Name</h2>parser -- Parser transform implementation.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-PARSER.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16688"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-parser"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-parser.top_of_page"></a>parser</span></h2>
+<p>parser — Parser transform implementation.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-parser.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlDocPtr</span></font></td>
-<td>
-<a href="xmlsec-parser.html#XMLSECPARSEFILE">xmlSecParseFile</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlDocPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-parser.html#xmlSecParseFile" title="xmlSecParseFile ()">xmlSecParseFile</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlDocPtr</span></font></td>
-<td>
-<a href="xmlsec-parser.html#XMLSECPARSEMEMORY">xmlSecParseMemory</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlDocPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-parser.html#xmlSecParseMemory" title="xmlSecParseMemory ()">xmlSecParseMemory</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlDocPtr</span></font></td>
-<td>
-<a href="xmlsec-parser.html#XMLSECPARSEMEMORYEXT">xmlSecParseMemoryExt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlDocPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-parser.html#xmlSecParseMemoryExt" title="xmlSecParseMemoryExt ()">xmlSecParseMemoryExt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-parser.html#XMLSECTRANSFORMXMLPARSERGETKLASS">xmlSecTransformXmlParserGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-parser.html#xmlSecTransformXmlParserGetKlass" title="xmlSecTransformXmlParserGetKlass ()">xmlSecTransformXmlParserGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-PARSER.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16721"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refsect1">
+<a name="xmlsec-parser.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody><tr>
-<td>#define</td>
-<td><a href="xmlsec-parser.html#XMLSECTRANSFORMXMLPARSERID">xmlSecTransformXmlParserId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-parser.html#xmlSecTransformXmlParserId" title="xmlSecTransformXmlParserId">xmlSecTransformXmlParserId</a></td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-PARSER.DESCRIPTION"></a><h2>Description</h2>
-<p>Parser transform implementation.</p>
+<div class="refsect1">
+<a name="xmlsec-parser.description"></a><h2>Description</h2>
+<p>
+Parser transform implementation.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-PARSER.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECPARSEFILE"></a><h3>xmlSecParseFile ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlDocPtr</span></font>
-xmlSecParseFile (<code class="PARAMETER">const <font><span class="TYPE">char</span></font> *filename</code>);</pre>
-<p>Loads XML Doc from file <code class="PARAMETER">filename</code>
+<div class="refsect1">
+<a name="xmlsec-parser.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecParseFile"></a><h3>xmlSecParseFile ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlDocPtr</span></font>
+xmlSecParseFile (<em class="parameter"><code>const <font><span class="type">char</span></font> *filename</code></em>);</pre>
+<p>Loads XML Doc from file <em class="parameter"><code>filename</code></em>
 . We need a special version because of
-c14n issue. The code is copied from <font><code class="FUNCTION">xmlSAXParseFileWithData()</code></font> function.</p>
-<div class="REFSECT3">
-<a name="AEN16747"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16749"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+c14n issue. The code is copied from <font><code class="function">xmlSAXParseFileWithData()</code></font> function.</p>
+<div class="refsect3">
+<a name="xmlSecParseFile.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>filename</p></td>
-<td><p>the filename.</p></td>
-<td> </td>
+<td class="parameter_name"><p>filename</p></td>
+<td class="parameter_description"><p>the filename.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16758"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecParseFile.returns"></a><h4>Returns</h4>
 <p> pointer to the loaded XML document or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPARSEMEMORY"></a><h3>xmlSecParseMemory ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlDocPtr</span></font>
-xmlSecParseMemory (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buffer</code>,
-                   <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>,
-                   <code class="PARAMETER"><font><span class="TYPE">int</span></font> recovery</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecParseMemory"></a><h3>xmlSecParseMemory ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlDocPtr</span></font>
+xmlSecParseMemory (<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buffer</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>,
+                   <em class="parameter"><code><font><span class="type">int</span></font> recovery</code></em>);</pre>
 <p>Loads XML Doc from memory. We need a special version because of
-c14n issue. The code is copied from <font><code class="FUNCTION">xmlSAXParseMemory()</code></font> function.</p>
-<div class="REFSECT3">
-<a name="AEN16780"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16782"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+c14n issue. The code is copied from <font><code class="function">xmlSAXParseMemory()</code></font> function.</p>
+<div class="refsect3">
+<a name="xmlSecParseMemory.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the input buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the input buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the input buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the input buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>recovery</p></td>
-<td><p>the flag.</p></td>
-<td> </td>
+<td class="parameter_name"><p>recovery</p></td>
+<td class="parameter_description"><p>the flag.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16803"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecParseMemory.returns"></a><h4>Returns</h4>
 <p> pointer to the loaded XML document or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPARSEMEMORYEXT"></a><h3>xmlSecParseMemoryExt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlDocPtr</span></font>
-xmlSecParseMemoryExt (<code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *prefix</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> prefixSize</code>,
-                      <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buffer</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bufferSize</code>,
-                      <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *postfix</code>,
-                      <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> postfixSize</code>);</pre>
-<p>Loads XML Doc from 3 chunks of memory: <code class="PARAMETER">prefix</code>
-, <code class="PARAMETER">buffer</code>
- and <code class="PARAMETER">postfix</code>
+<div class="refsect2">
+<a name="xmlSecParseMemoryExt"></a><h3>xmlSecParseMemoryExt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlDocPtr</span></font>
+xmlSecParseMemoryExt (<em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *prefix</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> prefixSize</code></em>,
+                      <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buffer</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bufferSize</code></em>,
+                      <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *postfix</code></em>,
+                      <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> postfixSize</code></em>);</pre>
+<p>Loads XML Doc from 3 chunks of memory: <em class="parameter"><code>prefix</code></em>
+, <em class="parameter"><code>buffer</code></em>
+ and <em class="parameter"><code>postfix</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN16835"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16837"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecParseMemoryExt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>prefix</p></td>
-<td><p>the first part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>prefix</p></td>
+<td class="parameter_description"><p>the first part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>prefixSize</p></td>
-<td><p>the size of the first part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>prefixSize</p></td>
+<td class="parameter_description"><p>the size of the first part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the second part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the second part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bufferSize</p></td>
-<td><p>the size of the second part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>bufferSize</p></td>
+<td class="parameter_description"><p>the size of the second part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>postfix</p></td>
-<td><p>the third part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>postfix</p></td>
+<td class="parameter_description"><p>the third part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>postfixSize</p></td>
-<td><p>the size of the third part of the input.</p></td>
-<td> </td>
+<td class="parameter_name"><p>postfixSize</p></td>
+<td class="parameter_description"><p>the size of the third part of the input.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN16876"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecParseMemoryExt.returns"></a><h4>Returns</h4>
 <p> pointer to the loaded XML document or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXMLPARSERGETKLASS"></a><h3>xmlSecTransformXmlParserGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformXmlParserGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXmlParserGetKlass"></a><h3>xmlSecTransformXmlParserGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformXmlParserGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The XML parser transform.</p>
-<div class="REFSECT3">
-<a name="AEN16889"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformXmlParserGetKlass.returns"></a><h4>Returns</h4>
 <p> XML parser transform klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-PARSER.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXMLPARSERID"></a><h3>xmlSecTransformXmlParserId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformXmlParserId</pre>
+<div class="refsect1">
+<a name="xmlsec-parser.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecTransformXmlParserId"></a><h3>xmlSecTransformXmlParserId</h3>
+<pre class="programlisting">#define             xmlSecTransformXmlParserId</pre>
 <p>The XML Parser transform klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-nodeset.html"><b><<< nodeset</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-templates.html"><b>templates >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-ref.html b/docs/api/xmlsec-ref.html
index 6f504cf..1accae7 100644
--- a/docs/api/xmlsec-ref.html
+++ b/docs/api/xmlsec-ref.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Core Library API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="PREVIOUS" title="XML Security Library API Reference." href="xmlsec-reference.html">
-<link rel="NEXT" title="app" href="xmlsec-app.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>XML Security Core Library API Reference.: 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-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="prev" href="xmlsec-reference.html" title="Part II. XML Security Library API Reference.">
+<link rel="next" href="xmlsec-app.html" title="app">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,73 +73,93 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-reference.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-reference.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-reference.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-app.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-REF"></a>XML Security Core Library API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-ref"></a>XML Security Core Library API Reference.</h2></div></div></div>
+<div class="toc"><dl class="toc">
 <dt>
-<a href="xmlsec-app.html">app</a> -- Crypto-engine independent application support function.</dt>
+<span class="refentrytitle"><a href="xmlsec-app.html">app</a></span><span class="refpurpose"> — Crypto-engine independent application support function.</span>
+</dt>
 <dt>
-<a href="xmlsec-base64.html">base64</a> -- Base64 encoding/decoding functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-base64.html">base64</a></span><span class="refpurpose"> — Base64 encoding/decoding functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-bn.html">bn</a> -- Big numbers support functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-bn.html">bn</a></span><span class="refpurpose"> — Big numbers support functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-buffer.html">buffer</a> -- Binary buffer implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-buffer.html">buffer</a></span><span class="refpurpose"> — Binary buffer implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-dl.html">dl</a> -- Dynamic crypto-engine library loading support.</dt>
+<span class="refentrytitle"><a href="xmlsec-dl.html">dl</a></span><span class="refpurpose"> — Dynamic crypto-engine library loading support.</span>
+</dt>
 <dt>
-<a href="xmlsec-errors.html">errors</a> -- Error/log messages support.</dt>
+<span class="refentrytitle"><a href="xmlsec-errors.html">errors</a></span><span class="refpurpose"> — Error/log messages support.</span>
+</dt>
 <dt>
-<a href="xmlsec-io.html">io</a> -- Input/output support.</dt>
+<span class="refentrytitle"><a href="xmlsec-io.html">io</a></span><span class="refpurpose"> — Input/output support.</span>
+</dt>
 <dt>
-<a href="xmlsec-keyinfo.html">keyinfo</a> -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-KeyInfo" target="_top"><dsig:KeyInfo/></a> node parser.</dt>
+<span class="refentrytitle"><a href="xmlsec-keyinfo.html">keyinfo</a></span><span class="refpurpose"> — <dsig:KeyInfo/> node parser.</span>
+</dt>
 <dt>
-<a href="xmlsec-keysdata.html">keysdata</a> -- Crypto key data object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-keysdata.html">keysdata</a></span><span class="refpurpose"> — Crypto key data object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-keys.html">keys</a> -- Crypto key object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-keys.html">keys</a></span><span class="refpurpose"> — Crypto key object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-keysmngr.html">keysmngr</a> -- Keys manager object support.</dt>
+<span class="refentrytitle"><a href="xmlsec-keysmngr.html">keysmngr</a></span><span class="refpurpose"> — Keys manager object support.</span>
+</dt>
 <dt>
-<a href="xmlsec-list.html">list</a> -- Generic list structure implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-list.html">list</a></span><span class="refpurpose"> — Generic list structure implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-membuf.html">membuf</a> -- Memory buffer transform implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-membuf.html">membuf</a></span><span class="refpurpose"> — Memory buffer transform implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-nodeset.html">nodeset</a> -- Nodeset object implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-nodeset.html">nodeset</a></span><span class="refpurpose"> — Nodeset object implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-parser.html">parser</a> -- Parser transform implementation.</dt>
+<span class="refentrytitle"><a href="xmlsec-parser.html">parser</a></span><span class="refpurpose"> — Parser transform implementation.</span>
+</dt>
 <dt>
-<a href="xmlsec-templates.html">templates</a> -- Dynamic templates creation functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-templates.html">templates</a></span><span class="refpurpose"> — Dynamic templates creation functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-transforms.html">transforms</a> -- Transform object definition.</dt>
+<span class="refentrytitle"><a href="xmlsec-transforms.html">transforms</a></span><span class="refpurpose"> — Transform object definition.</span>
+</dt>
 <dt>
-<a href="xmlsec-version.html">version</a> -- Version macros.</dt>
+<span class="refentrytitle"><a href="xmlsec-version.html">version</a></span><span class="refpurpose"> — Version macros.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmldsig.html">xmldsig</a> -- XML Digital Signature support.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmldsig.html">xmldsig</a></span><span class="refpurpose"> — XML Digital Signature support.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmlenc.html">xmlenc</a> -- XML Encryption support.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmlenc.html">xmlenc</a></span><span class="refpurpose"> — XML Encryption support.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmlsec.html">xmlsec</a> -- Utility functions.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmlsec.html">xmlsec</a></span><span class="refpurpose"> — Utility functions.</span>
+</dt>
 <dt>
-<a href="xmlsec-xmltree.html">xmltree</a> -- XML tree operations.</dt>
+<span class="refentrytitle"><a href="xmlsec-xmltree.html">xmltree</a></span><span class="refpurpose"> — XML tree operations.</span>
+</dt>
 <dt>
-<a href="xmlsec-x509.html">x509</a> -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Certificate" target="_top"><dsig:X509Certificate/></a> node parser.</dt>
+<span class="refentrytitle"><a href="xmlsec-x509.html">x509</a></span><span class="refpurpose"> — <dsig:X509Certificate/> node parser.</span>
+</dt>
 </dl></div>
 <p>This section contains the API reference for xmlsec. All
     the public interfaces are documented here. This reference guide is
     build by extracting comments from the code sources. </p>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-reference.html"><b><<< XML Security Library API Reference.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-app.html"><b>app >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-reference.html b/docs/api/xmlsec-reference.html
index 5543081..1681cf7 100644
--- a/docs/api/xmlsec-reference.html
+++ b/docs/api/xmlsec-reference.html
@@ -1,40 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>XML Security Library API Reference.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="PREVIOUS" title="APPENDIX B. XML Security Library Encryption Klasses." href="xmlsec-encryption-klasses.html">
-<link rel="NEXT" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Part II. XML Security Library API Reference.: 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="index.html" title="XML Security Library Reference Manual">
+<link rel="prev" href="xmlsec-encryption-klasses.html" title="APPENDIX B. XML Security Library Encryption Klasses.">
+<link rel="next" href="xmlsec-ref.html" title="XML Security Core Library API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -99,31 +73,175 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-encryption-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><img src="up-insensitive.png" width="16" height="16" border="0"></td>
+<td><a accesskey="p" href="xmlsec-encryption-klasses.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="PART">
-<a name="XMLSEC-REFERENCE"></a><div class="TITLEPAGE">
-<h1 class="TITLE">II. XML Security Library API Reference.</h1>
-<div class="TOC"><dl>
-<dt><b>Table of Contents</b></dt>
-<dt><a href="xmlsec-ref.html">XML Security Core Library API Reference.</a></dt>
-<dt><a href="xmlsec-openssl-ref.html">XML Security Library for OpenSLL API Reference.</a></dt>
-<dt><a href="xmlsec-gnutls-ref.html">XML Security Library for GnuTLS API Reference.</a></dt>
-<dt><a href="xmlsec-gcrypt-ref.html">XML Security Library for GCrypt API Reference.</a></dt>
-<dt><a href="xmlsec-nss-ref.html">XML Security Library for NSS API Reference.</a></dt>
-<dt><a href="xmlsec-mscrypto-ref.html">XML Security Library for MSCrypto API Reference.</a></dt>
-<dt><a href="xmlsec-index.html">XML Security Library Reference Index</a></dt>
-</dl></div>
+<div class="part">
+<div class="titlepage"><div><div><h1 class="title">
+<a name="xmlsec-reference"></a>Part II. XML Security Library API Reference.</h1></div></div></div>
+<div class="toc">
+<p><b>Table of Contents</b></p>
+<dl class="toc">
+<dt><span class="chapter"><a href="xmlsec-ref.html">XML Security Core Library API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-app.html">app</a></span><span class="refpurpose"> — Crypto-engine independent application support function.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-base64.html">base64</a></span><span class="refpurpose"> — Base64 encoding/decoding functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-bn.html">bn</a></span><span class="refpurpose"> — Big numbers support functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-buffer.html">buffer</a></span><span class="refpurpose"> — Binary buffer implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-dl.html">dl</a></span><span class="refpurpose"> — Dynamic crypto-engine library loading support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-errors.html">errors</a></span><span class="refpurpose"> — Error/log messages support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-io.html">io</a></span><span class="refpurpose"> — Input/output support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-keyinfo.html">keyinfo</a></span><span class="refpurpose"> — <dsig:KeyInfo/> node parser.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-keysdata.html">keysdata</a></span><span class="refpurpose"> — Crypto key data object definition.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-keys.html">keys</a></span><span class="refpurpose"> — Crypto key object definition.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-keysmngr.html">keysmngr</a></span><span class="refpurpose"> — Keys manager object support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-list.html">list</a></span><span class="refpurpose"> — Generic list structure implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-membuf.html">membuf</a></span><span class="refpurpose"> — Memory buffer transform implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nodeset.html">nodeset</a></span><span class="refpurpose"> — Nodeset object implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-parser.html">parser</a></span><span class="refpurpose"> — Parser transform implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-templates.html">templates</a></span><span class="refpurpose"> — Dynamic templates creation functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-transforms.html">transforms</a></span><span class="refpurpose"> — Transform object definition.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-version.html">version</a></span><span class="refpurpose"> — Version macros.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-xmldsig.html">xmldsig</a></span><span class="refpurpose"> — XML Digital Signature support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-xmlenc.html">xmlenc</a></span><span class="refpurpose"> — XML Encryption support.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-xmlsec.html">xmlsec</a></span><span class="refpurpose"> — Utility functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-xmltree.html">xmltree</a></span><span class="refpurpose"> — XML tree operations.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-x509.html">x509</a></span><span class="refpurpose"> — <dsig:X509Certificate/> node parser.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-openssl-ref.html">XML Security Library for OpenSLL API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for OpenSSL.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-bn.html">bn</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for OpenSSL.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-evp.html">evp</a></span><span class="refpurpose"> — EVP keys data implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-openssl-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for OpenSSL.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-gnutls-ref.html">XML Security Library for GnuTLS API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GnuTLS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gnutls-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for GnuTLS.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-gcrypt-ref.html">XML Security Library for GCrypt API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for GnuTLS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-gcrypt-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for GCrypt.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-nss-ref.html">XML Security Library for NSS API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for NSS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-bignum.html">bignum</a></span><span class="refpurpose"> — Big numbers helper functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for NSS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for NSS.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-pkikeys.html">pkikeys</a></span><span class="refpurpose"> — PKI keys data implementation.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-nss-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for NSS.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-mscrypto-ref.html">XML Security Library for MSCrypto API Reference.</a></span></dt>
+<dd><dl>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-app.html">app</a></span><span class="refpurpose"> — Application functions implementation for MS Crypto.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-certkeys.html">certkeys</a></span><span class="refpurpose"> — MS Crypto certificates helper functions.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-crypto.html">crypto</a></span><span class="refpurpose"> — Crypto transforms implementation for MS Crypto.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-keysstore.html">keysstore</a></span><span class="refpurpose"> — Keys store implementation for MS Crypto.</span>
+</dt>
+<dt>
+<span class="refentrytitle"><a href="xmlsec-mscrypto-x509.html">x509</a></span><span class="refpurpose"> — X509 certificates support implementation for MS Crypto.</span>
+</dt>
+</dl></dd>
+<dt><span class="chapter"><a href="xmlsec-index.html">XML Security Library Reference Index</a></span></dt>
+</dl>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-encryption-klasses.html"><b><<< APPENDIX B. XML Security Library Encryption Klasses.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-ref.html"><b>XML Security Core Library API Reference. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-signature-klasses.html b/docs/api/xmlsec-signature-klasses.html
index 56e5dc8..b383109 100644
--- a/docs/api/xmlsec-signature-klasses.html
+++ b/docs/api/xmlsec-signature-klasses.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>APPENDIX A. XML Security Library Signature Klasses.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Library Tutorial" href="xmlsec-notes.html">
-<link rel="PREVIOUS" title="Writing a custom keys manager." href="xmlsec-custom-keys-manager.html">
-<link rel="NEXT" title="APPENDIX B. XML Security Library Encryption Klasses." href="xmlsec-encryption-klasses.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>APPENDIX A. XML Security Library Signature Klasses.: 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-notes.html" title="Part I. XML Security Library Tutorial">
+<link rel="prev" href="xmlsec-custom-keys-manager.html" title="Writing a custom keys manager.">
+<link rel="next" href="xmlsec-encryption-klasses.html" title="APPENDIX B. XML Security Library Encryption Klasses.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,25 +73,24 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-custom-keys-manager.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-notes.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-custom-keys-manager.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-encryption-klasses.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<div class="CHAPTER">
-<h1>
-<a name="XMLSEC-SIGNATURE-KLASSES"></a>APPENDIX A. XML Security Library Signature Klasses.</h1>
-<div class="FIGURE">
-<a name="AEN839"></a><p><b>Figure 1. XML Security Library Signature Klasses.</b></p>
-<p><img src="images/signature-structure.png" align="CENTER"></p>
+<div class="chapter">
+<div class="titlepage"><div><div><h2 class="title">
+<a name="xmlsec-signature-klasses"></a>APPENDIX A. XML Security Library Signature Klasses.</h2></div></div></div>
+<div class="figure">
+<a name="id-1.2.16.2"></a><p class="title"><b>Figure 11. XML Security Library Signature Klasses.</b></p>
+<div class="figure-contents"><div align="center"><img src="images/signature-structure.png" align="middle" alt="XML Security Library Signature Klasses."></div></div>
 </div>
+<br class="figure-break">
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-custom-keys-manager.html"><b><<< Writing a custom keys manager.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-encryption-klasses.html"><b>APPENDIX B. XML Security Library Encryption Klasses. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-templates.html b/docs/api/xmlsec-templates.html
index 84a489a..3097e63 100644
--- a/docs/api/xmlsec-templates.html
+++ b/docs/api/xmlsec-templates.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>templates</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="parser" href="xmlsec-parser.html">
-<link rel="NEXT" title="transforms" href="xmlsec-transforms.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>templates: 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-parser.html" title="parser">
+<link rel="next" href="xmlsec-transforms.html" title="transforms">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,346 +73,434 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-parser.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-templates.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-parser.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-transforms.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-TEMPLATES"></a>templates</h1>
-<div class="REFNAMEDIV">
-<a name="AEN16905"></a><h2>Name</h2>templates -- Dynamic templates creation functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TEMPLATES.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN16910"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-templates"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-templates.top_of_page"></a>templates</span></h2>
+<p>templates — Dynamic templates creation functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-templates.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATURECREATE">xmlSecTmplSignatureCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureCreate" title="xmlSecTmplSignatureCreate ()">xmlSecTmplSignatureCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATURECREATENSPREF">xmlSecTmplSignatureCreateNsPref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureCreateNsPref" title="xmlSecTmplSignatureCreateNsPref ()">xmlSecTmplSignatureCreateNsPref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREENSUREKEYINFO">xmlSecTmplSignatureEnsureKeyInfo</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureEnsureKeyInfo" title="xmlSecTmplSignatureEnsureKeyInfo ()">xmlSecTmplSignatureEnsureKeyInfo</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREADDREFERENCE">xmlSecTmplSignatureAddReference</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureAddReference" title="xmlSecTmplSignatureAddReference ()">xmlSecTmplSignatureAddReference</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREADDOBJECT">xmlSecTmplSignatureAddObject</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureAddObject" title="xmlSecTmplSignatureAddObject ()">xmlSecTmplSignatureAddObject</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREGETSIGNMETHODNODE">xmlSecTmplSignatureGetSignMethodNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureGetSignMethodNode" title="xmlSecTmplSignatureGetSignMethodNode ()">xmlSecTmplSignatureGetSignMethodNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLSIGNATUREGETC14NMETHODNODE">xmlSecTmplSignatureGetC14NMethodNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplSignatureGetC14NMethodNode" title="xmlSecTmplSignatureGetC14NMethodNode ()">xmlSecTmplSignatureGetC14NMethodNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLREFERENCEADDTRANSFORM">xmlSecTmplReferenceAddTransform</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceAddTransform" title="xmlSecTmplReferenceAddTransform ()">xmlSecTmplReferenceAddTransform</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLOBJECTADDSIGNPROPERTIES">xmlSecTmplObjectAddSignProperties</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplObjectAddSignProperties" title="xmlSecTmplObjectAddSignProperties ()">xmlSecTmplObjectAddSignProperties</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLOBJECTADDMANIFEST">xmlSecTmplObjectAddManifest</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplObjectAddManifest" title="xmlSecTmplObjectAddManifest ()">xmlSecTmplObjectAddManifest</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLMANIFESTADDREFERENCE">xmlSecTmplManifestAddReference</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplManifestAddReference" title="xmlSecTmplManifestAddReference ()">xmlSecTmplManifestAddReference</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATACREATE">xmlSecTmplEncDataCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataCreate" title="xmlSecTmplEncDataCreate ()">xmlSecTmplEncDataCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSUREKEYINFO">xmlSecTmplEncDataEnsureKeyInfo</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureKeyInfo" title="xmlSecTmplEncDataEnsureKeyInfo ()">xmlSecTmplEncDataEnsureKeyInfo</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSUREENCPROPERTIES">xmlSecTmplEncDataEnsureEncProperties</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureEncProperties" title="xmlSecTmplEncDataEnsureEncProperties ()">xmlSecTmplEncDataEnsureEncProperties</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAADDENCPROPERTY">xmlSecTmplEncDataAddEncProperty</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataAddEncProperty" title="xmlSecTmplEncDataAddEncProperty ()">xmlSecTmplEncDataAddEncProperty</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSURECIPHERVALUE">xmlSecTmplEncDataEnsureCipherValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureCipherValue" title="xmlSecTmplEncDataEnsureCipherValue ()">xmlSecTmplEncDataEnsureCipherValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAENSURECIPHERREFERENCE">xmlSecTmplEncDataEnsureCipherReference</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataEnsureCipherReference" title="xmlSecTmplEncDataEnsureCipherReference ()">xmlSecTmplEncDataEnsureCipherReference</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLENCDATAGETENCMETHODNODE">xmlSecTmplEncDataGetEncMethodNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplEncDataGetEncMethodNode" title="xmlSecTmplEncDataGetEncMethodNode ()">xmlSecTmplEncDataGetEncMethodNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLCIPHERREFERENCEADDTRANSFORM">xmlSecTmplCipherReferenceAddTransform</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplCipherReferenceAddTransform" title="xmlSecTmplCipherReferenceAddTransform ()">xmlSecTmplCipherReferenceAddTransform</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLREFERENCELISTADDDATAREFERENCE">xmlSecTmplReferenceListAddDataReference</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceListAddDataReference" title="xmlSecTmplReferenceListAddDataReference ()">xmlSecTmplReferenceListAddDataReference</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLREFERENCELISTADDKEYREFERENCE">xmlSecTmplReferenceListAddKeyReference</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplReferenceListAddKeyReference" title="xmlSecTmplReferenceListAddKeyReference ()">xmlSecTmplReferenceListAddKeyReference</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDKEYNAME">xmlSecTmplKeyInfoAddKeyName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddKeyName" title="xmlSecTmplKeyInfoAddKeyName ()">xmlSecTmplKeyInfoAddKeyName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDKEYVALUE">xmlSecTmplKeyInfoAddKeyValue</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddKeyValue" title="xmlSecTmplKeyInfoAddKeyValue ()">xmlSecTmplKeyInfoAddKeyValue</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDX509DATA">xmlSecTmplKeyInfoAddX509Data</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddX509Data" title="xmlSecTmplKeyInfoAddX509Data ()">xmlSecTmplKeyInfoAddX509Data</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDRETRIEVALMETHOD">xmlSecTmplKeyInfoAddRetrievalMethod</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddRetrievalMethod" title="xmlSecTmplKeyInfoAddRetrievalMethod ()">xmlSecTmplKeyInfoAddRetrievalMethod</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLRETRIEVALMETHODADDTRANSFORM">xmlSecTmplRetrievalMethodAddTransform</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplRetrievalMethodAddTransform" title="xmlSecTmplRetrievalMethodAddTransform ()">xmlSecTmplRetrievalMethodAddTransform</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLKEYINFOADDENCRYPTEDKEY">xmlSecTmplKeyInfoAddEncryptedKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplKeyInfoAddEncryptedKey" title="xmlSecTmplKeyInfoAddEncryptedKey ()">xmlSecTmplKeyInfoAddEncryptedKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDISSUERSERIAL">xmlSecTmplX509DataAddIssuerSerial</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddIssuerSerial" title="xmlSecTmplX509DataAddIssuerSerial ()">xmlSecTmplX509DataAddIssuerSerial</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509ISSUERSERIALADDISSUERNAME">xmlSecTmplX509IssuerSerialAddIssuerName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509IssuerSerialAddIssuerName" title="xmlSecTmplX509IssuerSerialAddIssuerName ()">xmlSecTmplX509IssuerSerialAddIssuerName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509ISSUERSERIALADDSERIALNUMBER">xmlSecTmplX509IssuerSerialAddSerialNumber</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509IssuerSerialAddSerialNumber" title="xmlSecTmplX509IssuerSerialAddSerialNumber ()">xmlSecTmplX509IssuerSerialAddSerialNumber</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDSUBJECTNAME">xmlSecTmplX509DataAddSubjectName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddSubjectName" title="xmlSecTmplX509DataAddSubjectName ()">xmlSecTmplX509DataAddSubjectName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDSKI">xmlSecTmplX509DataAddSKI</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddSKI" title="xmlSecTmplX509DataAddSKI ()">xmlSecTmplX509DataAddSKI</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDCERTIFICATE">xmlSecTmplX509DataAddCertificate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddCertificate" title="xmlSecTmplX509DataAddCertificate ()">xmlSecTmplX509DataAddCertificate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLX509DATAADDCRL">xmlSecTmplX509DataAddCRL</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplX509DataAddCRL" title="xmlSecTmplX509DataAddCRL ()">xmlSecTmplX509DataAddCRL</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDHMACOUTPUTLENGTH">xmlSecTmplTransformAddHmacOutputLength</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddHmacOutputLength" title="xmlSecTmplTransformAddHmacOutputLength ()">xmlSecTmplTransformAddHmacOutputLength</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDRSAOAEPPARAM">xmlSecTmplTransformAddRsaOaepParam</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddRsaOaepParam" title="xmlSecTmplTransformAddRsaOaepParam ()">xmlSecTmplTransformAddRsaOaepParam</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXSLTSTYLESHEET">xmlSecTmplTransformAddXsltStylesheet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXsltStylesheet" title="xmlSecTmplTransformAddXsltStylesheet ()">xmlSecTmplTransformAddXsltStylesheet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDC14NINCLNAMESPACES">xmlSecTmplTransformAddC14NInclNamespaces</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddC14NInclNamespaces" title="xmlSecTmplTransformAddC14NInclNamespaces ()">xmlSecTmplTransformAddC14NInclNamespaces</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPATH">xmlSecTmplTransformAddXPath</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPath" title="xmlSecTmplTransformAddXPath ()">xmlSecTmplTransformAddXPath</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPATH2">xmlSecTmplTransformAddXPath2</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPath2" title="xmlSecTmplTransformAddXPath2 ()">xmlSecTmplTransformAddXPath2</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-templates.html#XMLSECTMPLTRANSFORMADDXPOINTER">xmlSecTmplTransformAddXPointer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-templates.html#xmlSecTmplTransformAddXPointer" title="xmlSecTmplTransformAddXPointer ()">xmlSecTmplTransformAddXPointer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TEMPLATES.DESCRIPTION"></a><h2>Description</h2>
-<p>Dynamic templates creation functions.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TEMPLATES.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATURECREATE"></a><h3>xmlSecTmplSignatureCreate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureCreate (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> c14nMethodId</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> signMethodId</code>,
-                           <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-templates.description"></a><h2>Description</h2>
+<p>
+Dynamic templates creation functions.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-templates.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureCreate"></a><h3>xmlSecTmplSignatureCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureCreate (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> c14nMethodId</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> signMethodId</code></em>,
+                           <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
 <p>Creates new <dsig:Signature/> node with the mandatory <dsig:SignedInfo/>,
 <dsig:CanonicalizationMethod/>, <dsig:SignatureMethod/> and
 <dsig:SignatureValue/> children and sub-children.
 The application is responsible for inserting the returned node
 in the XML document.</p>
-<div class="REFSECT3">
-<a name="AEN17225"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17227"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to signature document or NULL; in the
-second case, application must later call <code class="PARAMETER">xmlSetTreeDoc</code>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to signature document or NULL; in the
+second case, application must later call <em class="parameter"><code>xmlSetTreeDoc</code></em>
 to ensure that all the children nodes have correct
 pointer to XML document.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>c14nMethodId</p></td>
-<td><p>the signature canonicalization method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>c14nMethodId</p></td>
+<td class="parameter_description"><p>the signature canonicalization method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>signMethodId</p></td>
-<td><p>the signature  method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signMethodId</p></td>
+<td class="parameter_description"><p>the signature  method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17255"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureCreate.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Signature/> node or NULL if an
 error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATURECREATENSPREF"></a><h3>xmlSecTmplSignatureCreateNsPref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureCreateNsPref (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> c14nMethodId</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> signMethodId</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nsPrefix</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureCreateNsPref"></a><h3>xmlSecTmplSignatureCreateNsPref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureCreateNsPref (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> c14nMethodId</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> signMethodId</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nsPrefix</code></em>);</pre>
 <p>Creates new <dsig:Signature/> node with the mandatory
 <dsig:SignedInfo/>, <dsig:CanonicalizationMethod/>,
 <dsig:SignatureMethod/> and <dsig:SignatureValue/> children and
@@ -448,1614 +509,1532 @@ that it will define the http://www.w3.org/2000/09/xmldsig#
 namespace with the given prefix that will be used for all of the
 appropriate child nodes.  The application is responsible for
 inserting the returned node in the XML document.</p>
-<div class="REFSECT3">
-<a name="AEN17281"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17283"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureCreateNsPref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to signature document or NULL; in the
-second case, application must later call <code class="PARAMETER">xmlSetTreeDoc</code>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to signature document or NULL; in the
+second case, application must later call <em class="parameter"><code>xmlSetTreeDoc</code></em>
 to ensure that all the children nodes have correct
 pointer to XML document.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>c14nMethodId</p></td>
-<td><p>the signature canonicalization method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>c14nMethodId</p></td>
+<td class="parameter_description"><p>the signature canonicalization method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>signMethodId</p></td>
-<td><p>the signature  method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signMethodId</p></td>
+<td class="parameter_description"><p>the signature  method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nsPrefix</p></td>
-<td><p>the namespace prefix for the signature element (e.g. "dsig"), or NULL</p></td>
-<td> </td>
+<td class="parameter_name"><p>nsPrefix</p></td>
+<td class="parameter_description"><p>the namespace prefix for the signature element (e.g. "dsig"), or NULL</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17317"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureCreateNsPref.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Signature/> node or NULL if an
 error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATUREENSUREKEYINFO"></a><h3>xmlSecTmplSignatureEnsureKeyInfo ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureEnsureKeyInfo (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> signNode</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureEnsureKeyInfo"></a><h3>xmlSecTmplSignatureEnsureKeyInfo ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureEnsureKeyInfo (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> signNode</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
 <p>Adds (if necessary) <dsig:KeyInfo/> node to the <dsig:Signature/>
-node <code class="PARAMETER">signNode</code>
+node <em class="parameter"><code>signNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17335"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17337"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureEnsureKeyInfo.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>signNode</p></td>
-<td><p>the  pointer to <dsig:Signature/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signNode</p></td>
+<td class="parameter_description"><p>the  pointer to <dsig:Signature/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17352"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureEnsureKeyInfo.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:KeyInfo/> node or NULL if an
 error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATUREADDREFERENCE"></a><h3>xmlSecTmplSignatureAddReference ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureAddReference (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> signNode</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> digestMethodId</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>);</pre>
-<p>Adds <dsig:Reference/> node with given URI (<code class="PARAMETER">uri</code>
-), Id (<code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureAddReference"></a><h3>xmlSecTmplSignatureAddReference ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureAddReference (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> signNode</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> digestMethodId</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>);</pre>
+<p>Adds <dsig:Reference/> node with given URI (<em class="parameter"><code>uri</code></em>
+), Id (<em class="parameter"><code>id</code></em>
 ) and
-Type (<code class="PARAMETER">type</code>
+Type (<em class="parameter"><code>type</code></em>
 ) attributes and the required children <dsig:DigestMethod/> and
-<dsig:DigestValue/> to the <dsig:SignedInfo/> child of <code class="PARAMETER">signNode</code>
+<dsig:DigestValue/> to the <dsig:SignedInfo/> child of <em class="parameter"><code>signNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17382"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17384"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureAddReference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>signNode</p></td>
-<td><p>the pointer to <dsig:Signature/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>digestMethodId</p></td>
-<td><p>the reference digest method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>digestMethodId</p></td>
+<td class="parameter_description"><p>the reference digest method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the reference node uri (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the reference node uri (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the reference node type (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the reference node type (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17417"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureAddReference.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Reference/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATUREADDOBJECT"></a><h3>xmlSecTmplSignatureAddObject ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureAddObject (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> signNode</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *mimeType</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *encoding</code>);</pre>
-<p>Adds <dsig:Object/> node to the <dsig:Signature/> node <code class="PARAMETER">signNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureAddObject"></a><h3>xmlSecTmplSignatureAddObject ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureAddObject (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> signNode</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *mimeType</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *encoding</code></em>);</pre>
+<p>Adds <dsig:Object/> node to the <dsig:Signature/> node <em class="parameter"><code>signNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17441"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17443"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureAddObject.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>signNode</p></td>
-<td><p>the pointer to <dsig:Signature/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mimeType</p></td>
-<td><p>the object mime type (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>mimeType</p></td>
+<td class="parameter_description"><p>the object mime type (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>encoding</p></td>
-<td><p>the object encoding (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>encoding</p></td>
+<td class="parameter_description"><p>the object encoding (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17470"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureAddObject.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Object/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATUREGETSIGNMETHODNODE"></a><h3>xmlSecTmplSignatureGetSignMethodNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureGetSignMethodNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> signNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureGetSignMethodNode"></a><h3>xmlSecTmplSignatureGetSignMethodNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureGetSignMethodNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> signNode</code></em>);</pre>
 <p>Gets pointer to <dsig:SignatureMethod/> child of <dsig:KeyInfo/> node.</p>
-<div class="REFSECT3">
-<a name="AEN17484"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17486"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureGetSignMethodNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>signNode</p></td>
-<td><p>the pointer to <dsig:Signature /> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature /> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17495"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureGetSignMethodNode.returns"></a><h4>Returns</h4>
 <p> pointer to <dsig:SignatureMethod /> node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLSIGNATUREGETC14NMETHODNODE"></a><h3>xmlSecTmplSignatureGetC14NMethodNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplSignatureGetC14NMethodNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> signNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplSignatureGetC14NMethodNode"></a><h3>xmlSecTmplSignatureGetC14NMethodNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplSignatureGetC14NMethodNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> signNode</code></em>);</pre>
 <p>Gets pointer to <dsig:CanonicalizationMethod/> child of <dsig:KeyInfo/> node.</p>
-<div class="REFSECT3">
-<a name="AEN17509"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17511"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureGetC14NMethodNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>signNode</p></td>
-<td><p>the pointer to <dsig:Signature /> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>signNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature /> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17520"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplSignatureGetC14NMethodNode.returns"></a><h4>Returns</h4>
 <p> pointer to <dsig:CanonicalizationMethod /> node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLREFERENCEADDTRANSFORM"></a><h3>xmlSecTmplReferenceAddTransform ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplReferenceAddTransform (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> referenceNode</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
-<p>Adds <dsig:Transform/> node to the <dsig:Reference/> node <code class="PARAMETER">referenceNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplReferenceAddTransform"></a><h3>xmlSecTmplReferenceAddTransform ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplReferenceAddTransform (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> referenceNode</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
+<p>Adds <dsig:Transform/> node to the <dsig:Reference/> node <em class="parameter"><code>referenceNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17538"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17540"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceAddTransform.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>referenceNode</p></td>
-<td><p>the pointer to <dsig:Reference/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>referenceNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform method id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform method id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17555"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceAddTransform.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Transform/> node or NULL if an
 error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLOBJECTADDSIGNPROPERTIES"></a><h3>xmlSecTmplObjectAddSignProperties ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplObjectAddSignProperties (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> objectNode</code>,
-                                   <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                   <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *target</code>);</pre>
-<p>Adds <dsig:SignatureProperties/> node to the <dsig:Object/> node <code class="PARAMETER">objectNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplObjectAddSignProperties"></a><h3>xmlSecTmplObjectAddSignProperties ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplObjectAddSignProperties (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> objectNode</code></em>,
+                                   <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                   <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *target</code></em>);</pre>
+<p>Adds <dsig:SignatureProperties/> node to the <dsig:Object/> node <em class="parameter"><code>objectNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17576"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17578"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplObjectAddSignProperties.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>objectNode</p></td>
-<td><p>the  pointer to <dsig:Object/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>objectNode</p></td>
+<td class="parameter_description"><p>the  pointer to <dsig:Object/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>target</p></td>
-<td><p>the Target  (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>target</p></td>
+<td class="parameter_description"><p>the Target  (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17599"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplObjectAddSignProperties.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:SignatureProperties/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLOBJECTADDMANIFEST"></a><h3>xmlSecTmplObjectAddManifest ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplObjectAddManifest (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> objectNode</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
-<p>Adds <dsig:Manifest/> node to the <dsig:Object/> node <code class="PARAMETER">objectNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplObjectAddManifest"></a><h3>xmlSecTmplObjectAddManifest ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplObjectAddManifest (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> objectNode</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
+<p>Adds <dsig:Manifest/> node to the <dsig:Object/> node <em class="parameter"><code>objectNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17617"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17619"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplObjectAddManifest.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>objectNode</p></td>
-<td><p>the  pointer to <dsig:Object/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>objectNode</p></td>
+<td class="parameter_description"><p>the  pointer to <dsig:Object/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17634"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplObjectAddManifest.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Manifest/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLMANIFESTADDREFERENCE"></a><h3>xmlSecTmplManifestAddReference ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplManifestAddReference (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> manifestNode</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> digestMethodId</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>);</pre>
-<p>Adds <dsig:Reference/> node with specified URI (<code class="PARAMETER">uri</code>
-), Id (<code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecTmplManifestAddReference"></a><h3>xmlSecTmplManifestAddReference ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplManifestAddReference (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> manifestNode</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> digestMethodId</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>);</pre>
+<p>Adds <dsig:Reference/> node with specified URI (<em class="parameter"><code>uri</code></em>
+), Id (<em class="parameter"><code>id</code></em>
 ) and
-Type (<code class="PARAMETER">type</code>
+Type (<em class="parameter"><code>type</code></em>
 ) attributes and the required children <dsig:DigestMethod/> and
-<dsig:DigestValue/> to the <dsig:Manifest/> node <code class="PARAMETER">manifestNode</code>
+<dsig:DigestValue/> to the <dsig:Manifest/> node <em class="parameter"><code>manifestNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17664"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17666"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplManifestAddReference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>manifestNode</p></td>
-<td><p>the pointer to <dsig:Manifest/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>manifestNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Manifest/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>digestMethodId</p></td>
-<td><p>the reference digest method.</p></td>
-<td> </td>
+<td class="parameter_name"><p>digestMethodId</p></td>
+<td class="parameter_description"><p>the reference digest method.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the node id (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the node id (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the reference node uri (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the reference node uri (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the reference node type (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the reference node type (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17699"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplManifestAddReference.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Reference/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATACREATE"></a><h3>xmlSecTmplEncDataCreate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataCreate (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-                         <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> encMethodId</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *mimeType</code>,
-                         <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *encoding</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataCreate"></a><h3>xmlSecTmplEncDataCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataCreate (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> encMethodId</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *mimeType</code></em>,
+                         <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *encoding</code></em>);</pre>
 <p>Creates new <enc:EncryptedData /> node for encryption template.</p>
-<div class="REFSECT3">
-<a name="AEN17728"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17730"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to signature document or NULL; in the later
-case, application must later call <code class="PARAMETER">xmlSetTreeDoc</code>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to signature document or NULL; in the later
+case, application must later call <em class="parameter"><code>xmlSetTreeDoc</code></em>
 to ensure
 that all the children nodes have correct pointer to XML document.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>encMethodId</p></td>
-<td><p>the encryption method (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>encMethodId</p></td>
+<td class="parameter_description"><p>the encryption method (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the Id attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the Id attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the Type attribute (optional)</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the Type attribute (optional)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mimeType</p></td>
-<td><p>the MimeType attribute (optional)</p></td>
-<td> </td>
+<td class="parameter_name"><p>mimeType</p></td>
+<td class="parameter_description"><p>the MimeType attribute (optional)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>encoding</p></td>
-<td><p>the Encoding attribute (optional)</p></td>
-<td> </td>
+<td class="parameter_name"><p>encoding</p></td>
+<td class="parameter_description"><p>the Encoding attribute (optional)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17770"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataCreate.returns"></a><h4>Returns</h4>
 <p> the pointer newly created  <enc:EncryptedData/> node or NULL
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAENSUREKEYINFO"></a><h3>xmlSecTmplEncDataEnsureKeyInfo ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataEnsureKeyInfo (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
-<p>Adds <dsig:KeyInfo/> to the  <enc:EncryptedData/> node <code class="PARAMETER">encNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataEnsureKeyInfo"></a><h3>xmlSecTmplEncDataEnsureKeyInfo ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataEnsureKeyInfo (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
+<p>Adds <dsig:KeyInfo/> to the  <enc:EncryptedData/> node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17788"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17790"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureKeyInfo.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the Id attrbibute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the Id attrbibute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17805"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureKeyInfo.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:KeyInfo/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAENSUREENCPROPERTIES"></a><h3>xmlSecTmplEncDataEnsureEncProperties ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataEnsureEncProperties (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataEnsureEncProperties"></a><h3>xmlSecTmplEncDataEnsureEncProperties ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataEnsureEncProperties (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
 <p>Adds <enc:EncryptionProperties/> node to the <enc:EncryptedData/>
-node <code class="PARAMETER">encNode</code>
+node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17823"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17825"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureEncProperties.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the Id attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the Id attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17840"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureEncProperties.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:EncryptionProperties/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAADDENCPROPERTY"></a><h3>xmlSecTmplEncDataAddEncProperty ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataAddEncProperty (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *target</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataAddEncProperty"></a><h3>xmlSecTmplEncDataAddEncProperty ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataAddEncProperty (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *target</code></em>);</pre>
 <p>Adds <enc:EncryptionProperty/> node (and the parent
 <enc:EncryptionProperties/> node if required) to the
-<enc:EncryptedData/> node <code class="PARAMETER">encNode</code>
+<enc:EncryptedData/> node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17861"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17863"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataAddEncProperty.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the Id attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the Id attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>target</p></td>
-<td><p>the Target attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>target</p></td>
+<td class="parameter_description"><p>the Target attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17884"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataAddEncProperty.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:EncryptionProperty/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAENSURECIPHERVALUE"></a><h3>xmlSecTmplEncDataEnsureCipherValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataEnsureCipherValue (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>);</pre>
-<p>Adds <enc:CipherValue/> to the <enc:EncryptedData/> node <code class="PARAMETER">encNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataEnsureCipherValue"></a><h3>xmlSecTmplEncDataEnsureCipherValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataEnsureCipherValue (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>);</pre>
+<p>Adds <enc:CipherValue/> to the <enc:EncryptedData/> node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17899"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17901"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureCipherValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN17910"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureCipherValue.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:CipherValue/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAENSURECIPHERREFERENCE"></a><h3>xmlSecTmplEncDataEnsureCipherReference ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataEnsureCipherReference"></a><h3>xmlSecTmplEncDataEnsureCipherReference ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
 xmlSecTmplEncDataEnsureCipherReference
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
-<p>Adds <enc:CipherReference/> node with specified URI attribute <code class="PARAMETER">uri</code>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
+<p>Adds <enc:CipherReference/> node with specified URI attribute <em class="parameter"><code>uri</code></em>
 
-to the <enc:EncryptedData/> node <code class="PARAMETER">encNode</code>
+to the <enc:EncryptedData/> node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17929"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17931"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureCipherReference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URI attribute (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URI attribute (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17946"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataEnsureCipherReference.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:CipherReference/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLENCDATAGETENCMETHODNODE"></a><h3>xmlSecTmplEncDataGetEncMethodNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplEncDataGetEncMethodNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplEncDataGetEncMethodNode"></a><h3>xmlSecTmplEncDataGetEncMethodNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplEncDataGetEncMethodNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>);</pre>
 <p>Gets pointer to <enc:EncrytpionMethod/> node.</p>
-<div class="REFSECT3">
-<a name="AEN17960"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17962"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataGetEncMethodNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EcnryptedData /> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EcnryptedData /> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN17971"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplEncDataGetEncMethodNode.returns"></a><h4>Returns</h4>
 <p> pointer to <enc:EncryptionMethod /> node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLCIPHERREFERENCEADDTRANSFORM"></a><h3>xmlSecTmplCipherReferenceAddTransform ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplCipherReferenceAddTransform (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cipherReferenceNode</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplCipherReferenceAddTransform"></a><h3>xmlSecTmplCipherReferenceAddTransform ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplCipherReferenceAddTransform (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cipherReferenceNode</code></em>,
+                                       <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
 <p>Adds <dsig:Transform/> node (and the parent <dsig:Transforms/> node)
-with specified transform methods <code class="PARAMETER">transform</code>
+with specified transform methods <em class="parameter"><code>transform</code></em>
  to the <enc:CipherReference/>
-child node of the <enc:EncryptedData/> node <code class="PARAMETER">encNode</code>
+child node of the <enc:EncryptedData/> node <em class="parameter"><code>encNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN17990"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN17992"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplCipherReferenceAddTransform.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cipherReferenceNode</p></td>
-<td><p>the pointer to <enc:CipherReference/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cipherReferenceNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:CipherReference/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18007"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplCipherReferenceAddTransform.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <dsig:Transform/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLREFERENCELISTADDDATAREFERENCE"></a><h3>xmlSecTmplReferenceListAddDataReference ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplReferenceListAddDataReference"></a><h3>xmlSecTmplReferenceListAddDataReference ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
 xmlSecTmplReferenceListAddDataReference
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
 <p>Adds <enc:DataReference/> and the parent <enc:ReferenceList/> node (if needed).</p>
-<div class="REFSECT3">
-<a name="AEN18024"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18026"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceListAddDataReference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedKey/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>uri to reference (optional)</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>uri to reference (optional)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18041"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceListAddDataReference.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:DataReference/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLREFERENCELISTADDKEYREFERENCE"></a><h3>xmlSecTmplReferenceListAddKeyReference ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplReferenceListAddKeyReference"></a><h3>xmlSecTmplReferenceListAddKeyReference ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
 xmlSecTmplReferenceListAddKeyReference
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> encNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> encNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
 <p>Adds <enc:KeyReference/> and the parent <enc:ReferenceList/> node (if needed).</p>
-<div class="REFSECT3">
-<a name="AEN18058"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18060"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceListAddKeyReference.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encNode</p></td>
-<td><p>the pointer to <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encNode</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedKey/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>uri to reference (optional)</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>uri to reference (optional)</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18075"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplReferenceListAddKeyReference.returns"></a><h4>Returns</h4>
 <p> the pointer to newly created <enc:KeyReference/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLKEYINFOADDKEYNAME"></a><h3>xmlSecTmplKeyInfoAddKeyName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplKeyInfoAddKeyName (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>);</pre>
-<p>Adds <dsig:KeyName/> node to the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplKeyInfoAddKeyName"></a><h3>xmlSecTmplKeyInfoAddKeyName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplKeyInfoAddKeyName (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>);</pre>
+<p>Adds <dsig:KeyName/> node to the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18093"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18095"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddKeyName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the key name (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the key name (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18110"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddKeyName.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:KeyName/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLKEYINFOADDKEYVALUE"></a><h3>xmlSecTmplKeyInfoAddKeyValue ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplKeyInfoAddKeyValue (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>);</pre>
-<p>Adds <dsig:KeyValue/> node to the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplKeyInfoAddKeyValue"></a><h3>xmlSecTmplKeyInfoAddKeyValue ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplKeyInfoAddKeyValue (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>);</pre>
+<p>Adds <dsig:KeyValue/> node to the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18125"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18127"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddKeyValue.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18136"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddKeyValue.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:KeyValue/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLKEYINFOADDX509DATA"></a><h3>xmlSecTmplKeyInfoAddX509Data ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplKeyInfoAddX509Data (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>);</pre>
-<p>Adds <dsig:X509Data/> node to the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplKeyInfoAddX509Data"></a><h3>xmlSecTmplKeyInfoAddX509Data ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplKeyInfoAddX509Data (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>);</pre>
+<p>Adds <dsig:X509Data/> node to the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18151"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18153"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddX509Data.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18162"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddX509Data.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509Data/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLKEYINFOADDRETRIEVALMETHOD"></a><h3>xmlSecTmplKeyInfoAddRetrievalMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplKeyInfoAddRetrievalMethod (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>,
-                                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>);</pre>
-<p>Adds <dsig:RetrievalMethod/> node to the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+<div class="refsect2">
+<a name="xmlSecTmplKeyInfoAddRetrievalMethod"></a><h3>xmlSecTmplKeyInfoAddRetrievalMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplKeyInfoAddRetrievalMethod (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>,
+                                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>);</pre>
+<p>Adds <dsig:RetrievalMethod/> node to the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18183"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18185"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddRetrievalMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URI attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URI attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the Type attribute(optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the Type attribute(optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18206"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddRetrievalMethod.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:RetrievalMethod/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLRETRIEVALMETHODADDTRANSFORM"></a><h3>xmlSecTmplRetrievalMethodAddTransform ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplRetrievalMethodAddTransform (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> retrMethodNode</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplRetrievalMethodAddTransform"></a><h3>xmlSecTmplRetrievalMethodAddTransform ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplRetrievalMethodAddTransform (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> retrMethodNode</code></em>,
+                                       <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
 <p>Adds <dsig:Transform/> node (and the parent <dsig:Transforms/> node
-if required) to the <dsig:RetrievalMethod/> node <code class="PARAMETER">retrMethod</code>
+if required) to the <dsig:RetrievalMethod/> node <em class="parameter"><code>retrMethod</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18224"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18226"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplRetrievalMethodAddTransform.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>retrMethodNode</p></td>
-<td><p>the pointer to <dsig:RetrievalMethod/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>retrMethodNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:RetrievalMethod/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18241"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplRetrievalMethodAddTransform.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:Transforms/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLKEYINFOADDENCRYPTEDKEY"></a><h3>xmlSecTmplKeyInfoAddEncryptedKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplKeyInfoAddEncryptedKey (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> keyInfoNode</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> encMethodId</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *recipient</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplKeyInfoAddEncryptedKey"></a><h3>xmlSecTmplKeyInfoAddEncryptedKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplKeyInfoAddEncryptedKey (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> keyInfoNode</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> encMethodId</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *recipient</code></em>);</pre>
 <p>Adds <enc:EncryptedKey/> node with given attributes to
-the <dsig:KeyInfo/> node <code class="PARAMETER">keyInfoNode</code>
+the <dsig:KeyInfo/> node <em class="parameter"><code>keyInfoNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18268"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18270"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddEncryptedKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>keyInfoNode</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>encMethodId</p></td>
-<td><p>the encryption method (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>encMethodId</p></td>
+<td class="parameter_description"><p>the encryption method (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the Id attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the Id attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the Type attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the Type attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>recipient</p></td>
-<td><p>the Recipient attribute (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>recipient</p></td>
+<td class="parameter_description"><p>the Recipient attribute (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18303"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplKeyInfoAddEncryptedKey.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <enc:EncryptedKey/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509DATAADDISSUERSERIAL"></a><h3>xmlSecTmplX509DataAddIssuerSerial ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplX509DataAddIssuerSerial (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509DataNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplX509DataAddIssuerSerial"></a><h3>xmlSecTmplX509DataAddIssuerSerial ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplX509DataAddIssuerSerial (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509DataNode</code></em>);</pre>
 <p>Adds <dsig:X509IssuerSerial/> node to the given <dsig:X509Data/> node.</p>
-<div class="REFSECT3">
-<a name="AEN18317"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18319"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddIssuerSerial.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>x509DataNode</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509DataNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18328"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddIssuerSerial.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509IssuerSerial/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509ISSUERSERIALADDISSUERNAME"></a><h3>xmlSecTmplX509IssuerSerialAddIssuerName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplX509IssuerSerialAddIssuerName"></a><h3>xmlSecTmplX509IssuerSerialAddIssuerName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
 xmlSecTmplX509IssuerSerialAddIssuerName
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509IssuerSerialNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *issuerName</code>);</pre>
-<p>Adds <dsig:X509IssuerName/> node to the <dsig:X509IssuerSerial/> node <code class="PARAMETER">x509IssuerSerialNode</code>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509IssuerSerialNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *issuerName</code></em>);</pre>
+<p>Adds <dsig:X509IssuerName/> node to the <dsig:X509IssuerSerial/> node <em class="parameter"><code>x509IssuerSerialNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18346"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18348"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509IssuerSerialAddIssuerName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>x509IssuerSerialNode</p></td>
-<td><p>the pointer to <dsig:X509IssuerSerial/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509IssuerSerialNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509IssuerSerial/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>issuerName</p></td>
-<td><p>the issuer name (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>issuerName</p></td>
+<td class="parameter_description"><p>the issuer name (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18363"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509IssuerSerialAddIssuerName.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509IssuerName/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509ISSUERSERIALADDSERIALNUMBER"></a><h3>xmlSecTmplX509IssuerSerialAddSerialNumber ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplX509IssuerSerialAddSerialNumber"></a><h3>xmlSecTmplX509IssuerSerialAddSerialNumber ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
 xmlSecTmplX509IssuerSerialAddSerialNumber
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509IssuerSerialNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *serial</code>);</pre>
-<p>Adds <dsig:X509SerialNumber/> node to the <dsig:X509IssuerSerial/> node <code class="PARAMETER">x509IssuerSerialNode</code>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509IssuerSerialNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *serial</code></em>);</pre>
+<p>Adds <dsig:X509SerialNumber/> node to the <dsig:X509IssuerSerial/> node <em class="parameter"><code>x509IssuerSerialNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18381"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18383"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509IssuerSerialAddSerialNumber.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>x509IssuerSerialNode</p></td>
-<td><p>the pointer to <dsig:X509IssuerSerial/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509IssuerSerialNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509IssuerSerial/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>serial</p></td>
-<td><p>the serial number (optional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>serial</p></td>
+<td class="parameter_description"><p>the serial number (optional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18398"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509IssuerSerialAddSerialNumber.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509SerialNumber/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509DATAADDSUBJECTNAME"></a><h3>xmlSecTmplX509DataAddSubjectName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplX509DataAddSubjectName (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509DataNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplX509DataAddSubjectName"></a><h3>xmlSecTmplX509DataAddSubjectName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplX509DataAddSubjectName (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509DataNode</code></em>);</pre>
 <p>Adds <dsig:X509SubjectName/> node to the given <dsig:X509Data/> node.</p>
-<div class="REFSECT3">
-<a name="AEN18412"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18414"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddSubjectName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>x509DataNode</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509DataNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18423"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddSubjectName.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509SubjectName/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509DATAADDSKI"></a><h3>xmlSecTmplX509DataAddSKI ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplX509DataAddSKI (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509DataNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplX509DataAddSKI"></a><h3>xmlSecTmplX509DataAddSKI ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplX509DataAddSKI (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509DataNode</code></em>);</pre>
 <p>Adds <dsig:X509SKI/> node to the given <dsig:X509Data/> node.</p>
-<div class="REFSECT3">
-<a name="AEN18437"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18439"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddSKI.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>x509DataNode</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509DataNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18448"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddSKI.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509SKI/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509DATAADDCERTIFICATE"></a><h3>xmlSecTmplX509DataAddCertificate ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplX509DataAddCertificate (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509DataNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplX509DataAddCertificate"></a><h3>xmlSecTmplX509DataAddCertificate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplX509DataAddCertificate (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509DataNode</code></em>);</pre>
 <p>Adds <dsig:X509Certificate/> node to the given <dsig:X509Data/> node.</p>
-<div class="REFSECT3">
-<a name="AEN18462"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18464"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddCertificate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>x509DataNode</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509DataNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18473"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddCertificate.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509Certificate/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLX509DATAADDCRL"></a><h3>xmlSecTmplX509DataAddCRL ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecTmplX509DataAddCRL (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> x509DataNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTmplX509DataAddCRL"></a><h3>xmlSecTmplX509DataAddCRL ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecTmplX509DataAddCRL (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> x509DataNode</code></em>);</pre>
 <p>Adds <dsig:X509CRL/> node to the given <dsig:X509Data/> node.</p>
-<div class="REFSECT3">
-<a name="AEN18487"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18489"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddCRL.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>x509DataNode</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>x509DataNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18498"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplX509DataAddCRL.returns"></a><h4>Returns</h4>
 <p> the pointer to the newly created <dsig:X509CRL/> node or
 NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDHMACOUTPUTLENGTH"></a><h3>xmlSecTmplTransformAddHmacOutputLength ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddHmacOutputLength"></a><h3>xmlSecTmplTransformAddHmacOutputLength ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecTmplTransformAddHmacOutputLength
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> bitsLen</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> bitsLen</code></em>);</pre>
 <p>Creates <dsig:HMACOutputLength/> child for the HMAC transform
-node <code class="PARAMETER">node</code>
+node <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18516"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18518"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddHmacOutputLength.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to <dsig:Transform/> node</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>bitsLen</p></td>
-<td><p>the required length in bits</p></td>
-<td> </td>
+<td class="parameter_name"><p>bitsLen</p></td>
+<td class="parameter_description"><p>the required length in bits</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18533"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddHmacOutputLength.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negatie value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDRSAOAEPPARAM"></a><h3>xmlSecTmplTransformAddRsaOaepParam ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTmplTransformAddRsaOaepParam (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                                    <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buf</code>,
-                                    <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Creates <enc:OAEPParam/> child node in the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddRsaOaepParam"></a><h3>xmlSecTmplTransformAddRsaOaepParam ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTmplTransformAddRsaOaepParam (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                                    <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buf</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>Creates <enc:OAEPParam/> child node in the <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18554"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18556"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddRsaOaepParam.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buf</p></td>
-<td><p>the OAEP param buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buf</p></td>
+<td class="parameter_description"><p>the OAEP param buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the OAEP param buffer size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the OAEP param buffer size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18577"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddRsaOaepParam.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="XMLSECTMPLTRANSFORMADDXSLTSTYLESHEET"></a><h3>xmlSecTmplTransformAddXsltStylesheet ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTmplTransformAddXsltStylesheet (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *xslt</code>);</pre>
-<p>Writes the XSLT transform expression to the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddXsltStylesheet"></a><h3>xmlSecTmplTransformAddXsltStylesheet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTmplTransformAddXsltStylesheet (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *xslt</code></em>);</pre>
+<p>Writes the XSLT transform expression to the <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18595"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18597"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXsltStylesheet.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>xslt</p></td>
-<td><p>the XSLT transform exspression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>xslt</p></td>
+<td class="parameter_description"><p>the XSLT transform exspression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18612"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXsltStylesheet.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDC14NINCLNAMESPACES"></a><h3>xmlSecTmplTransformAddC14NInclNamespaces ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddC14NInclNamespaces"></a><h3>xmlSecTmplTransformAddC14NInclNamespaces ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecTmplTransformAddC14NInclNamespaces
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *prefixList</code>);</pre>
-<p>Adds "inclusive" namespaces to the ExcC14N transform node <code class="PARAMETER">node</code>
+                               (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *prefixList</code></em>);</pre>
+<p>Adds "inclusive" namespaces to the ExcC14N transform node <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18630"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18632"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddC14NInclNamespaces.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>prefixList</p></td>
-<td><p>the white space delimited  list of namespace prefixes,
-where "<font><span class="TYPE">default</span></font>" indicates the default namespace
+<td class="parameter_name"><p>prefixList</p></td>
+<td class="parameter_description"><p>the white space delimited  list of namespace prefixes,
+where "<font><span class="type">default</span></font>" indicates the default namespace
 (optional).</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN18649"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddC14NInclNamespaces.returns"></a><h4>Returns</h4>
 <p> 0 if success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDXPATH"></a><h3>xmlSecTmplTransformAddXPath ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTmplTransformAddXPath (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *expression</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> **nsList</code>);</pre>
-<p>Writes XPath transform infromation to the <dsig:Transform/> node
-<code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddXPath"></a><h3>xmlSecTmplTransformAddXPath ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTmplTransformAddXPath (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *expression</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> **nsList</code></em>);</pre>
+<p>Writes XPath transform information to the <dsig:Transform/> node
+<em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18670"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18672"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPath.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to the <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to the <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>expression</p></td>
-<td><p>the XPath expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>expression</p></td>
+<td class="parameter_description"><p>the XPath expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nsList</p></td>
-<td><p>the NULL terminated list of namespace prefix/href pairs
+<td class="parameter_name"><p>nsList</p></td>
+<td class="parameter_description"><p>the NULL terminated list of namespace prefix/href pairs
 (optional).</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18693"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPath.returns"></a><h4>Returns</h4>
 <p> 0 for success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDXPATH2"></a><h3>xmlSecTmplTransformAddXPath2 ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTmplTransformAddXPath2 (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *type</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *expression</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> **nsList</code>);</pre>
-<p>Writes XPath2 transform infromation to the <dsig:Transform/> node
-<code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddXPath2"></a><h3>xmlSecTmplTransformAddXPath2 ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTmplTransformAddXPath2 (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *type</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *expression</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> **nsList</code></em>);</pre>
+<p>Writes XPath2 transform information to the <dsig:Transform/> node
+<em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18717"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18719"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPath2.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to the <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to the <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>type</p></td>
-<td><p>the XPath2 transform type ("union", "intersect" or "subtract").</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the XPath2 transform type ("union", "intersect" or "subtract").</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>expression</p></td>
-<td><p>the XPath expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>expression</p></td>
+<td class="parameter_description"><p>the XPath expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nsList</p></td>
-<td><p>the NULL terminated list of namespace prefix/href pairs.
+<td class="parameter_name"><p>nsList</p></td>
+<td class="parameter_description"><p>the NULL terminated list of namespace prefix/href pairs.
 (optional).</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18746"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPath2.returns"></a><h4>Returns</h4>
 <p> 0 for success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTMPLTRANSFORMADDXPOINTER"></a><h3>xmlSecTmplTransformAddXPointer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTmplTransformAddXPointer (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> transformNode</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *expression</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> **nsList</code>);</pre>
-<p>Writes XPoniter transform infromation to the <dsig:Transform/> node
-<code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTmplTransformAddXPointer"></a><h3>xmlSecTmplTransformAddXPointer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTmplTransformAddXPointer (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> transformNode</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *expression</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> **nsList</code></em>);</pre>
+<p>Writes XPointer transform information to the <dsig:Transform/> node
+<em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN18767"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18769"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPointer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transformNode</p></td>
-<td><p>the pointer to the <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformNode</p></td>
+<td class="parameter_description"><p>the pointer to the <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>expression</p></td>
-<td><p>the XPath expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>expression</p></td>
+<td class="parameter_description"><p>the XPath expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nsList</p></td>
-<td><p>the NULL terminated list of namespace prefix/href pairs.
+<td class="parameter_name"><p>nsList</p></td>
+<td class="parameter_description"><p>the NULL terminated list of namespace prefix/href pairs.
 (optional).</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN18790"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTmplTransformAddXPointer.returns"></a><h4>Returns</h4>
 <p> 0 for success or a negative value otherwise.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-TEMPLATES.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<p></p>
+<div class="refsect1">
+<a name="xmlsec-templates.other_details"></a><h2>Types and Values</h2>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-parser.html"><b><<< parser</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-transforms.html"><b>transforms >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-transforms.html b/docs/api/xmlsec-transforms.html
index 04b879c..b0800be 100644
--- a/docs/api/xmlsec-transforms.html
+++ b/docs/api/xmlsec-transforms.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>transforms</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="templates" href="xmlsec-templates.html">
-<link rel="NEXT" title="version" href="xmlsec-version.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>transforms: 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-templates.html" title="templates">
+<link rel="next" href="xmlsec-version.html" title="version">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,3774 +73,3811 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-transforms.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-templates.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-version.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-TRANSFORMS"></a>transforms</h1>
-<div class="REFNAMEDIV">
-<a name="AEN18801"></a><h2>Name</h2>transforms -- Transform object definition.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TRANSFORMS.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN18806"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-transforms"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-transforms.top_of_page"></a>transforms</span></h2>
+<p>transforms — Transform object definition.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-transforms.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSGET">xmlSecTransformIdsGet</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListPtr</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSINIT">xmlSecTransformIdsInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsGet" title="xmlSecTransformIdsGet ()">xmlSecTransformIdsGet</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSSHUTDOWN">xmlSecTransformIdsShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsInit" title="xmlSecTransformIdsInit ()">xmlSecTransformIdsInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSREGISTERDEFAULT">xmlSecTransformIdsRegisterDefault</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsShutdown" title="xmlSecTransformIdsShutdown ()">xmlSecTransformIdsShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDSREGISTER">xmlSecTransformIdsRegister</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsRegisterDefault" title="xmlSecTransformIdsRegisterDefault ()">xmlSecTransformIdsRegisterDefault</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPECHECK">xmlSecTransformUriTypeCheck</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdsRegister" title="xmlSecTransformIdsRegister ()">xmlSecTransformIdsRegister</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREEXECUTECALLBACK">*xmlSecTransformCtxPreExecuteCallback</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeCheck" title="xmlSecTransformUriTypeCheck ()">xmlSecTransformUriTypeCheck</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="RETURNVALUE">xmlSecTransformCtxPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATE">xmlSecTransformCtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPreExecuteCallback" title="xmlSecTransformCtxPreExecuteCallback ()">*xmlSecTransformCtxPreExecuteCallback</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDESTROY">xmlSecTransformCtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformCtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreate" title="xmlSecTransformCtxCreate ()">xmlSecTransformCtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXINITIALIZE">xmlSecTransformCtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDestroy" title="xmlSecTransformCtxDestroy ()">xmlSecTransformCtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXFINALIZE">xmlSecTransformCtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxInitialize" title="xmlSecTransformCtxInitialize ()">xmlSecTransformCtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXRESET">xmlSecTransformCtxReset</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxFinalize" title="xmlSecTransformCtxFinalize ()">xmlSecTransformCtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCOPYUSERPREF">xmlSecTransformCtxCopyUserPref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxReset" title="xmlSecTransformCtxReset ()">xmlSecTransformCtxReset</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXSETURI">xmlSecTransformCtxSetUri</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCopyUserPref" title="xmlSecTransformCtxCopyUserPref ()">xmlSecTransformCtxCopyUserPref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXAPPEND">xmlSecTransformCtxAppend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxSetUri" title="xmlSecTransformCtxSetUri ()">xmlSecTransformCtxSetUri</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREPEND">xmlSecTransformCtxPrepend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxAppend" title="xmlSecTransformCtxAppend ()">xmlSecTransformCtxAppend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATEANDAPPEND">xmlSecTransformCtxCreateAndAppend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPrepend" title="xmlSecTransformCtxPrepend ()">xmlSecTransformCtxPrepend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATEANDPREPEND">xmlSecTransformCtxCreateAndPrepend</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreateAndAppend" title="xmlSecTransformCtxCreateAndAppend ()">xmlSecTransformCtxCreateAndAppend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXNODEREAD">xmlSecTransformCtxNodeRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreateAndPrepend" title="xmlSecTransformCtxCreateAndPrepend ()">xmlSecTransformCtxCreateAndPrepend</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXNODESLISTREAD">xmlSecTransformCtxNodesListRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxNodeRead" title="xmlSecTransformCtxNodeRead ()">xmlSecTransformCtxNodeRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREPARE">xmlSecTransformCtxPrepare</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxNodesListRead" title="xmlSecTransformCtxNodesListRead ()">xmlSecTransformCtxNodesListRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXBINARYEXECUTE">xmlSecTransformCtxBinaryExecute</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPrepare" title="xmlSecTransformCtxPrepare ()">xmlSecTransformCtxPrepare</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXURIEXECUTE">xmlSecTransformCtxUriExecute</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxBinaryExecute" title="xmlSecTransformCtxBinaryExecute ()">xmlSecTransformCtxBinaryExecute</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXXMLEXECUTE">xmlSecTransformCtxXmlExecute</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxUriExecute" title="xmlSecTransformCtxUriExecute ()">xmlSecTransformCtxUriExecute</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXEXECUTE">xmlSecTransformCtxExecute</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxXmlExecute" title="xmlSecTransformCtxXmlExecute ()">xmlSecTransformCtxXmlExecute</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDEBUGDUMP">xmlSecTransformCtxDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxExecute" title="xmlSecTransformCtxExecute ()">xmlSecTransformCtxExecute</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDEBUGXMLDUMP">xmlSecTransformCtxDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDebugDump" title="xmlSecTransformCtxDebugDump ()">xmlSecTransformCtxDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATE">xmlSecTransformCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDebugXmlDump" title="xmlSecTransformCtxDebugXmlDump ()">xmlSecTransformCtxDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDESTROY">xmlSecTransformDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCreate" title="xmlSecTransformCreate ()">xmlSecTransformCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEREAD">xmlSecTransformNodeRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDestroy" title="xmlSecTransformDestroy ()">xmlSecTransformDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMPUMP">xmlSecTransformPump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeRead" title="xmlSecTransformNodeRead ()">xmlSecTransformNodeRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEY">xmlSecTransformSetKey</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformPump" title="xmlSecTransformPump ()">xmlSecTransformPump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQ">xmlSecTransformSetKeyReq</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKey" title="xmlSecTransformSetKey ()">xmlSecTransformSetKey</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFY">xmlSecTransformVerify</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyReq" title="xmlSecTransformSetKeyReq ()">xmlSecTransformSetKeyReq</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYNODECONTENT">xmlSecTransformVerifyNodeContent</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformVerify" title="xmlSecTransformVerify ()">xmlSecTransformVerify</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMGETDATATYPE">xmlSecTransformGetDataType</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyNodeContent" title="xmlSecTransformVerifyNodeContent ()">xmlSecTransformVerifyNodeContent</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBIN">xmlSecTransformPushBin</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformGetDataType" title="xmlSecTransformGetDataType ()">xmlSecTransformGetDataType</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBIN">xmlSecTransformPopBin</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBin" title="xmlSecTransformPushBin ()">xmlSecTransformPushBin</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXML">xmlSecTransformPushXml</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBin" title="xmlSecTransformPopBin ()">xmlSecTransformPopBin</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXML">xmlSecTransformPopXml</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXml" title="xmlSecTransformPushXml ()">xmlSecTransformPushXml</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTE">xmlSecTransformExecute</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXml" title="xmlSecTransformPopXml ()">xmlSecTransformPopXml</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEBUGDUMP">xmlSecTransformDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformExecute" title="xmlSecTransformExecute ()">xmlSecTransformExecute</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEBUGXMLDUMP">xmlSecTransformDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDebugDump" title="xmlSecTransformDebugDump ()">xmlSecTransformDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMGETNAME">xmlSecTransformGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDebugXmlDump" title="xmlSecTransformDebugXmlDump ()">xmlSecTransformDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMISVALID">xmlSecTransformIsValid</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformGetName" title="xmlSecTransformGetName()">xmlSecTransformGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCHECKID">xmlSecTransformCheckId</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIsValid" title="xmlSecTransformIsValid()">xmlSecTransformIsValid</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCHECKSIZE">xmlSecTransformCheckSize</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCheckId" title="xmlSecTransformCheckId()">xmlSecTransformCheckId</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT">xmlSecTransformConnect</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCheckSize" title="xmlSecTransformCheckSize()">xmlSecTransformCheckSize</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVE">xmlSecTransformRemove</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()">xmlSecTransformConnect</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTGETDATATYPE">xmlSecTransformDefaultGetDataType</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformRemove" title="xmlSecTransformRemove ()">xmlSecTransformRemove</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPUSHBIN">xmlSecTransformDefaultPushBin</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultGetDataType" title="xmlSecTransformDefaultGetDataType ()">xmlSecTransformDefaultGetDataType</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPOPBIN">xmlSecTransformDefaultPopBin</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPushBin" title="xmlSecTransformDefaultPushBin ()">xmlSecTransformDefaultPushBin</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPUSHXML">xmlSecTransformDefaultPushXml</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPopBin" title="xmlSecTransformDefaultPopBin ()">xmlSecTransformDefaultPopBin</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMDEFAULTPOPXML">xmlSecTransformDefaultPopXml</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPushXml" title="xmlSecTransformDefaultPushXml ()">xmlSecTransformDefaultPushXml</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlOutputBufferPtr</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATEOUTPUTBUFFER">xmlSecTransformCreateOutputBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDefaultPopXml" title="xmlSecTransformDefaultPopXml ()">xmlSecTransformDefaultPopXml</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlParserInputBufferPtr</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATEINPUTBUFFER">xmlSecTransformCreateInputBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlOutputBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCreateOutputBuffer" title="xmlSecTransformCreateOutputBuffer ()">xmlSecTransformCreateOutputBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMINITIALIZEMETHOD">*xmlSecTransformInitializeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlParserInputBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCreateInputBuffer" title="xmlSecTransformCreateInputBuffer ()">xmlSecTransformCreateInputBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMFINALIZEMETHOD">*xmlSecTransformFinalizeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformInitializeMethod" title="xmlSecTransformInitializeMethod ()">*xmlSecTransformInitializeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMGETDATATYPEMETHOD">*xmlSecTransformGetDataTypeMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformFinalizeMethod" title="xmlSecTransformFinalizeMethod ()">*xmlSecTransformFinalizeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEREADMETHOD">*xmlSecTransformNodeReadMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformGetDataTypeMethod" title="xmlSecTransformGetDataTypeMethod ()">*xmlSecTransformGetDataTypeMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEWRITEMETHOD">*xmlSecTransformNodeWriteMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeReadMethod" title="xmlSecTransformNodeReadMethod ()">*xmlSecTransformNodeReadMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQUIREMENTSMETHOD">*xmlSecTransformSetKeyRequirementsMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeWriteMethod" title="xmlSecTransformNodeWriteMethod ()">*xmlSecTransformNodeWriteMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYMETHOD">*xmlSecTransformSetKeyMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyRequirementsMethod" title="xmlSecTransformSetKeyRequirementsMethod ()">*xmlSecTransformSetKeyRequirementsMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD">*xmlSecTransformVerifyMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyMethod" title="xmlSecTransformSetKeyMethod ()">*xmlSecTransformSetKeyMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBINMETHOD">*xmlSecTransformPushBinMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()">*xmlSecTransformVerifyMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBINMETHOD">*xmlSecTransformPopBinMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBinMethod" title="xmlSecTransformPushBinMethod ()">*xmlSecTransformPushBinMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXMLMETHOD">*xmlSecTransformPushXmlMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBinMethod" title="xmlSecTransformPopBinMethod ()">*xmlSecTransformPopBinMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXMLMETHOD">*xmlSecTransformPopXmlMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXmlMethod" title="xmlSecTransformPushXmlMethod ()">*xmlSecTransformPushXmlMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<span class="c_punctuation"><span class="PHRASE">(</span></span><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD">*xmlSecTransformExecuteMethod</a><span class="c_punctuation"><span class="PHRASE">)</span></span> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXmlMethod" title="xmlSecTransformPopXmlMethod ()">*xmlSecTransformPopXmlMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMKLASSGETNAME">xmlSecTransformKlassGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<span class="c_punctuation">(</span><a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()">*xmlSecTransformExecuteMethod</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTGETKLASS">xmlSecTransformIdListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformKlassGetName" title="xmlSecTransformKlassGetName()">xmlSecTransformKlassGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFIND">xmlSecTransformIdListFind</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListGetKlass" title="xmlSecTransformIdListGetKlass ()">xmlSecTransformIdListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFINDBYHREF">xmlSecTransformIdListFindByHref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFind" title="xmlSecTransformIdListFind ()">xmlSecTransformIdListFind</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTFINDBYNAME">xmlSecTransformIdListFindByName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFindByHref" title="xmlSecTransformIdListFindByHref ()">xmlSecTransformIdListFindByHref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTDEBUGDUMP">xmlSecTransformIdListDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListFindByName" title="xmlSecTransformIdListFindByName ()">xmlSecTransformIdListFindByName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTDEBUGXMLDUMP">xmlSecTransformIdListDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListDebugDump" title="xmlSecTransformIdListDebugDump ()">xmlSecTransformIdListDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDUNKNOWN">xmlSecTransformIdUnknown</a></td>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListDebugXmlDump" title="xmlSecTransformIdListDebugXmlDump ()">xmlSecTransformIdListDebugXmlDump</a> <span class="c_punctuation">()</span>
+</td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64GETKLASS">xmlSecTransformBase64GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64GetKlass" title="xmlSecTransformBase64GetKlass ()">xmlSecTransformBase64GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64SETLINESIZE">xmlSecTransformBase64SetLineSize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64SetLineSize" title="xmlSecTransformBase64SetLineSize ()">xmlSecTransformBase64SetLineSize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NGETKLASS">xmlSecTransformInclC14NGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NGetKlass" title="xmlSecTransformInclC14NGetKlass ()">xmlSecTransformInclC14NGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NWITHCOMMENTSGETKLASS">xmlSecTransformInclC14NWithCommentsGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NWithCommentsGetKlass" title="xmlSecTransformInclC14NWithCommentsGetKlass ()">xmlSecTransformInclC14NWithCommentsGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11GETKLASS">xmlSecTransformInclC14N11GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11GetKlass" title="xmlSecTransformInclC14N11GetKlass ()">xmlSecTransformInclC14N11GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11WITHCOMMENTSGETKLASS">xmlSecTransformInclC14N11WithCommentsGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11WithCommentsGetKlass" title="xmlSecTransformInclC14N11WithCommentsGetKlass ()">xmlSecTransformInclC14N11WithCommentsGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NGETKLASS">xmlSecTransformExclC14NGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NGetKlass" title="xmlSecTransformExclC14NGetKlass ()">xmlSecTransformExclC14NGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NWITHCOMMENTSGETKLASS">xmlSecTransformExclC14NWithCommentsGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NWithCommentsGetKlass" title="xmlSecTransformExclC14NWithCommentsGetKlass ()">xmlSecTransformExclC14NWithCommentsGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMENVELOPEDGETKLASS">xmlSecTransformEnvelopedGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformEnvelopedGetKlass" title="xmlSecTransformEnvelopedGetKlass ()">xmlSecTransformEnvelopedGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATHGETKLASS">xmlSecTransformXPathGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXPathGetKlass" title="xmlSecTransformXPathGetKlass ()">xmlSecTransformXPathGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATH2GETKLASS">xmlSecTransformXPath2GetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXPath2GetKlass" title="xmlSecTransformXPath2GetKlass ()">xmlSecTransformXPath2GetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERGETKLASS">xmlSecTransformXPointerGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerGetKlass" title="xmlSecTransformXPointerGetKlass ()">xmlSecTransformXPointerGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERSETEXPR">xmlSecTransformXPointerSetExpr</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerSetExpr" title="xmlSecTransformXPointerSetExpr ()">xmlSecTransformXPointerSetExpr</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMRELATIONSHIPGETKLASS">xmlSecTransformRelationshipGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformRelationshipGetKlass" title="xmlSecTransformRelationshipGetKlass ()">xmlSecTransformRelationshipGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTGETKLASS">xmlSecTransformXsltGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltGetKlass" title="xmlSecTransformXsltGetKlass ()">xmlSecTransformXsltGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTSETDEFAULTSECURITYPREFS">xmlSecTransformXsltSetDefaultSecurityPrefs</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltSetDefaultSecurityPrefs" title="xmlSecTransformXsltSetDefaultSecurityPrefs ()">xmlSecTransformXsltSetDefaultSecurityPrefs</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVEXMLTAGSC14NGETKLASS">xmlSecTransformRemoveXmlTagsC14NGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformRemoveXmlTagsC14NGetKlass" title="xmlSecTransformRemoveXmlTagsC14NGetKlass ()">xmlSecTransformRemoveXmlTagsC14NGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecTransformId</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKGETKLASS">xmlSecTransformVisa3DHackGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecTransformId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackGetKlass" title="xmlSecTransformVisa3DHackGetKlass ()">xmlSecTransformVisa3DHackGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKSETID">xmlSecTransformVisa3DHackSetID</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackSetID" title="xmlSecTransformVisa3DHackSetID ()">xmlSecTransformVisa3DHackSetID</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TRANSFORMS.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19498"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-transforms.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSEC-TRANSFORM-BINARY-CHUNK:CAPS">XMLSEC_TRANSFORM_BINARY_CHUNK</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#XMLSEC-TRANSFORM-BINARY-CHUNK:CAPS" title="XMLSEC_TRANSFORM_BINARY_CHUNK">XMLSEC_TRANSFORM_BINARY_CHUNK</a></td>
+</tr>
+<tr>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformStatus" title="enum xmlSecTransformStatus">xmlSecTransformStatus</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUS">xmlSecTransformStatus</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformMode" title="enum xmlSecTransformMode">xmlSecTransformMode</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMMODE">xmlSecTransformMode</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation">xmlSecTransformOperation</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION">xmlSecTransformOperation</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriType" title="xmlSecTransformUriType">xmlSecTransformUriType</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE">xmlSecTransformUriType</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeNone" title="xmlSecTransformUriTypeNone">xmlSecTransformUriTypeNone</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPENONE">xmlSecTransformUriTypeNone</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeEmpty" title="xmlSecTransformUriTypeEmpty">xmlSecTransformUriTypeEmpty</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEEMPTY">xmlSecTransformUriTypeEmpty</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeSameDocument" title="xmlSecTransformUriTypeSameDocument">xmlSecTransformUriTypeSameDocument</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPESAMEDOCUMENT">xmlSecTransformUriTypeSameDocument</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeLocal" title="xmlSecTransformUriTypeLocal">xmlSecTransformUriTypeLocal</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPELOCAL">xmlSecTransformUriTypeLocal</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeRemote" title="xmlSecTransformUriTypeRemote">xmlSecTransformUriTypeRemote</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEREMOTE">xmlSecTransformUriTypeRemote</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriTypeAny" title="xmlSecTransformUriTypeAny">xmlSecTransformUriTypeAny</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPEANY">xmlSecTransformUriTypeAny</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType">xmlSecTransformDataType</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE">xmlSecTransformDataType</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeUnknown" title="xmlSecTransformDataTypeUnknown">xmlSecTransformDataTypeUnknown</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEUNKNOWN">xmlSecTransformDataTypeUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeBin" title="xmlSecTransformDataTypeBin">xmlSecTransformDataTypeBin</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEBIN">xmlSecTransformDataTypeBin</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataTypeXml" title="xmlSecTransformDataTypeXml">xmlSecTransformDataTypeXml</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPEXML">xmlSecTransformDataTypeXml</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage">xmlSecTransformUsage</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE">xmlSecTransformUsage</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageUnknown" title="xmlSecTransformUsageUnknown">xmlSecTransformUsageUnknown</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEUNKNOWN">xmlSecTransformUsageUnknown</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageDSigTransform" title="xmlSecTransformUsageDSigTransform">xmlSecTransformUsageDSigTransform</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEDSIGTRANSFORM">xmlSecTransformUsageDSigTransform</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageC14NMethod" title="xmlSecTransformUsageC14NMethod">xmlSecTransformUsageC14NMethod</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEC14NMETHOD">xmlSecTransformUsageC14NMethod</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageDigestMethod" title="xmlSecTransformUsageDigestMethod">xmlSecTransformUsageDigestMethod</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEDIGESTMETHOD">xmlSecTransformUsageDigestMethod</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageSignatureMethod" title="xmlSecTransformUsageSignatureMethod">xmlSecTransformUsageSignatureMethod</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGESIGNATUREMETHOD">xmlSecTransformUsageSignatureMethod</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageEncryptionMethod" title="xmlSecTransformUsageEncryptionMethod">xmlSecTransformUsageEncryptionMethod</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEENCRYPTIONMETHOD">xmlSecTransformUsageEncryptionMethod</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsageAny" title="xmlSecTransformUsageAny">xmlSecTransformUsageAny</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGEANY">xmlSecTransformUsageAny</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#XMLSEC-TRANSFORMCTX-FLAGS-USE-VISA3D-HACK:CAPS" title="XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK">XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSEC-TRANSFORMCTX-FLAGS-USE-VISA3D-HACK:CAPS">XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx">xmlSecTransformCtx</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX">xmlSecTransformCtx</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform">xmlSecTransform</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORM">xmlSecTransform</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformKlass" title="struct xmlSecTransformKlass">xmlSecTransformKlass</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMKLASS">xmlSecTransformKlass</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdListId" title="xmlSecTransformIdListId">xmlSecTransformIdListId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMIDLISTID">xmlSecTransformIdListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformIdUnknown" title="xmlSecTransformIdUnknown">xmlSecTransformIdUnknown</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMBASE64ID">xmlSecTransformBase64Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformBase64Id" title="xmlSecTransformBase64Id">xmlSecTransformBase64Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NID">xmlSecTransformInclC14NId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NId" title="xmlSecTransformInclC14NId">xmlSecTransformInclC14NId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14NWITHCOMMENTSID">xmlSecTransformInclC14NWithCommentsId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14NWithCommentsId" title="xmlSecTransformInclC14NWithCommentsId">xmlSecTransformInclC14NWithCommentsId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11ID">xmlSecTransformInclC14N11Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11Id" title="xmlSecTransformInclC14N11Id">xmlSecTransformInclC14N11Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMINCLC14N11WITHCOMMENTSID">xmlSecTransformInclC14N11WithCommentsId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformInclC14N11WithCommentsId" title="xmlSecTransformInclC14N11WithCommentsId">xmlSecTransformInclC14N11WithCommentsId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NID">xmlSecTransformExclC14NId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NId" title="xmlSecTransformExclC14NId">xmlSecTransformExclC14NId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXCLC14NWITHCOMMENTSID">xmlSecTransformExclC14NWithCommentsId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformExclC14NWithCommentsId" title="xmlSecTransformExclC14NWithCommentsId">xmlSecTransformExclC14NWithCommentsId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMENVELOPEDID">xmlSecTransformEnvelopedId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformEnvelopedId" title="xmlSecTransformEnvelopedId">xmlSecTransformEnvelopedId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATHID">xmlSecTransformXPathId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPathId" title="xmlSecTransformXPathId">xmlSecTransformXPathId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPATH2ID">xmlSecTransformXPath2Id</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPath2Id" title="xmlSecTransformXPath2Id">xmlSecTransformXPath2Id</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMXPOINTERID">xmlSecTransformXPointerId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformXPointerId" title="xmlSecTransformXPointerId">xmlSecTransformXPointerId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMRELATIONSHIPID">xmlSecTransformRelationshipId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformRelationshipId" title="xmlSecTransformRelationshipId">xmlSecTransformRelationshipId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMXSLTID">xmlSecTransformXsltId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformXsltId" title="xmlSecTransformXsltId">xmlSecTransformXsltId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMREMOVEXMLTAGSC14NID">xmlSecTransformRemoveXmlTagsC14NId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformRemoveXmlTagsC14NId" title="xmlSecTransformRemoveXmlTagsC14NId">xmlSecTransformRemoveXmlTagsC14NId</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-transforms.html#XMLSECTRANSFORMVISA3DHACKID">xmlSecTransformVisa3DHackId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-transforms.html#xmlSecTransformVisa3DHackId" title="xmlSecTransformVisa3DHackId">xmlSecTransformVisa3DHackId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TRANSFORMS.DESCRIPTION"></a><h2>Description</h2>
-<p>Transform object definition.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-TRANSFORMS.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDSGET"></a><h3>xmlSecTransformIdsGet ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="RETURNVALUE">xmlSecPtrListPtr</span></a>
-xmlSecTransformIdsGet (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-transforms.description"></a><h2>Description</h2>
+<p>
+Transform object definition.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-transforms.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecTransformIdsGet"></a><h3>xmlSecTransformIdsGet ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListPtr</span></font>
+xmlSecTransformIdsGet (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets global registered transform klasses list.</p>
-<div class="REFSECT3">
-<a name="AEN19688"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdsGet.returns"></a><h4>Returns</h4>
 <p> the pointer to list of all registered transform klasses.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDSINIT"></a><h3>xmlSecTransformIdsInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformIdsInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdsInit"></a><h3>xmlSecTransformIdsInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformIdsInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Initializes the transform klasses. This function is called from the
-<a href="xmlsec-xmlsec.html#XMLSECINIT"><span class="TYPE">xmlSecInit</span></a> function and the application should not call it directly.</p>
-<div class="REFSECT3">
-<a name="AEN19703"></a><h4>Returns</h4>
+<a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()"><span class="type">xmlSecInit</span></a> function and the application should not call it directly.</p>
+<div class="refsect3">
+<a name="xmlSecTransformIdsInit.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="XMLSECTRANSFORMIDSSHUTDOWN"></a><h3>xmlSecTransformIdsShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformIdsShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdsShutdown"></a><h3>xmlSecTransformIdsShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformIdsShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Shuts down the keys data klasses. This function is called from the
-<a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN"><span class="TYPE">xmlSecShutdown</span></a> function and the application should not call it directly.</p>
+<a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()"><span class="type">xmlSecShutdown</span></a> function and the application should not call it directly.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDSREGISTERDEFAULT"></a><h3>xmlSecTransformIdsRegisterDefault ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformIdsRegisterDefault (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdsRegisterDefault"></a><h3>xmlSecTransformIdsRegisterDefault ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformIdsRegisterDefault (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Registers default (implemented by XML Security Library)
 transform klasses: XPath transform, Base64 transform, ...</p>
-<div class="REFSECT3">
-<a name="AEN19728"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdsRegisterDefault.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="XMLSECTRANSFORMIDSREGISTER"></a><h3>xmlSecTransformIdsRegister ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformIdsRegister (<code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> id</code>);</pre>
-<p>Registers <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdsRegister"></a><h3>xmlSecTransformIdsRegister ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformIdsRegister (<em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> id</code></em>);</pre>
+<p>Registers <em class="parameter"><code>id</code></em>
  in the global list of transform klasses.</p>
-<div class="REFSECT3">
-<a name="AEN19743"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19745"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdsRegister.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN19754"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdsRegister.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="XMLSECTRANSFORMURITYPECHECK"></a><h3>xmlSecTransformUriTypeCheck ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformUriTypeCheck (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE"><span class="TYPE">xmlSecTransformUriType</span></a> type</code>,
-                             <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
-<p>Checks if <code class="PARAMETER">uri</code>
- matches expected type <code class="PARAMETER">type</code>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeCheck"></a><h3>xmlSecTransformUriTypeCheck ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformUriTypeCheck (<em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriType" title="xmlSecTransformUriType"><span class="type">xmlSecTransformUriType</span></a> type</code></em>,
+                             <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
+<p>Checks if <em class="parameter"><code>uri</code></em>
+ matches expected type <em class="parameter"><code>type</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN19773"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19775"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformUriTypeCheck.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>type</p></td>
-<td><p>the expected URI type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>type</p></td>
+<td class="parameter_description"><p>the expected URI type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the uri for checking.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the uri for checking.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN19790"></a><h4>Returns</h4>
-<p> 1 if <code class="PARAMETER">uri</code>
-matches <code class="PARAMETER">type</code>
+<div class="refsect3">
+<a name="xmlSecTransformUriTypeCheck.returns"></a><h4>Returns</h4>
+<p> 1 if <em class="parameter"><code>uri</code></em>
+matches <em class="parameter"><code>type</code></em>
 , 0 if not or a negative value
 if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXPREEXECUTECALLBACK"></a><h3>xmlSecTransformCtxPreExecuteCallback ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformCtxPreExecuteCallback<span class="c_punctuation"><span class="PHRASE">)</span></span>
-                               (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxPreExecuteCallback"></a><h3>xmlSecTransformCtxPreExecuteCallback ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformCtxPreExecuteCallback<span class="c_punctuation">)</span>
+                               (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The callback called after creating transforms chain but before
 starting data processing. Application can use this callback to
 do additional transforms chain verification or modification and
 aborting transforms execution (if necessary).</p>
-<div class="REFSECT3">
-<a name="AEN19808"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19810"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPreExecuteCallback.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform's context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform's context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN19819"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPreExecuteCallback.returns"></a><h4>Returns</h4>
 <p> 0 on success and a negative value otherwise (in this case,
 transforms chain will not be executed and xmlsec processing stops).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXCREATE"></a><h3>xmlSecTransformCtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="RETURNVALUE">xmlSecTransformCtxPtr</span></a>
-xmlSecTransformCtxCreate (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxCreate"></a><h3>xmlSecTransformCtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformCtxPtr</span></font>
+xmlSecTransformCtxCreate (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Creates transforms chain processing context.
 The caller is responsible for destroying returned object by calling
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXDESTROY"><span class="TYPE">xmlSecTransformCtxDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN19834"></a><h4>Returns</h4>
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxDestroy" title="xmlSecTransformCtxDestroy ()"><span class="type">xmlSecTransformCtxDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated context object or NULL if an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXDESTROY"></a><h3>xmlSecTransformCtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformCtxDestroy (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>);</pre>
-<p>Destroy context object created with <a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXCREATE"><span class="TYPE">xmlSecTransformCtxCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN19850"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19852"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecTransformCtxDestroy"></a><h3>xmlSecTransformCtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformCtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>);</pre>
+<p>Destroy context object created with <a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxCreate" title="xmlSecTransformCtxCreate ()"><span class="type">xmlSecTransformCtxCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXINITIALIZE"></a><h3>xmlSecTransformCtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxInitialize (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxInitialize"></a><h3>xmlSecTransformCtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>);</pre>
 <p>Initializes transforms chain processing context.
 The caller is responsible for cleaning up returned object by calling
-<a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXFINALIZE"><span class="TYPE">xmlSecTransformCtxFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN19874"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19876"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxFinalize" title="xmlSecTransformCtxFinalize ()"><span class="type">xmlSecTransformCtxFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN19885"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxInitialize.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="XMLSECTRANSFORMCTXFINALIZE"></a><h3>xmlSecTransformCtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformCtxFinalize (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>);</pre>
-<p>Cleans up <code class="PARAMETER">ctx</code>
- object initialized with <a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXINITIALIZE"><span class="TYPE">xmlSecTransformCtxInitialize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN19902"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19904"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecTransformCtxFinalize"></a><h3>xmlSecTransformCtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformCtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>);</pre>
+<p>Cleans up <em class="parameter"><code>ctx</code></em>
+ object initialized with <a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxInitialize" title="xmlSecTransformCtxInitialize ()"><span class="type">xmlSecTransformCtxInitialize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXRESET"></a><h3>xmlSecTransformCtxReset ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformCtxReset (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxReset"></a><h3>xmlSecTransformCtxReset ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformCtxReset (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>);</pre>
 <p>Resets transfroms context for new processing.</p>
-<div class="REFSECT3">
-<a name="AEN19924"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19926"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxReset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXCOPYUSERPREF"></a><h3>xmlSecTransformCtxCopyUserPref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxCopyUserPref (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> dst</code>,
-                                <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> src</code>);</pre>
-<p>Copies user settings from <code class="PARAMETER">src</code>
- context to <code class="PARAMETER">dst</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxCopyUserPref"></a><h3>xmlSecTransformCtxCopyUserPref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxCopyUserPref (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> dst</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> src</code></em>);</pre>
+<p>Copies user settings from <em class="parameter"><code>src</code></em>
+ context to <em class="parameter"><code>dst</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN19951"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN19953"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCopyUserPref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN19968"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCopyUserPref.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXSETURI"></a><h3>xmlSecTransformCtxSetUri ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxSetUri (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                          <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> hereNode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxSetUri"></a><h3>xmlSecTransformCtxSetUri ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxSetUri (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                          <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>,
+                          <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> hereNode</code></em>);</pre>
 <p>Parses uri and adds xpointer transforms if required.</p>
 <p>The following examples demonstrate what the URI attribute identifies and
 how it is dereferenced
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-ReferenceProcessingModel</span></font>):</p>
-<p></p>
-<ul>
-<li><p>URI="http://example.com/bar.xml"
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-ReferenceProcessingModel</span></font>):</p>
+<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
+<li class="listitem"><p>URI="http://example.com/bar.xml"
 identifies the octets that represent the external resource
 'http://example.com/bar.xml', that is probably an XML document given
 its file extension.</p></li>
-<li><p>URI="http://example.com/bar.xml<font><span class="TYPE">chapter1</span></font>"
+<li class="listitem"><p>URI="http://example.com/bar.xml<font><span class="type">chapter1</span></font>"
 identifies the element with ID attribute value 'chapter1' of the
 external XML resource 'http://example.com/bar.xml', provided as an
 octet stream. Again, for the sake of interoperability, the element
 identified as 'chapter1' should be obtained using an XPath transform
 rather than a URI fragment (barename XPointer resolution in external
 resources is not REQUIRED in this specification).</p></li>
-<li><p>URI=""
+<li class="listitem"><p>URI=""
 identifies the node-set (minus any comment nodes) of the XML resource
 containing the signature</p></li>
-<li><p>URI="<font><span class="TYPE">chapter1</span></font>"
+<li class="listitem"><p>URI="<font><span class="type">chapter1</span></font>"
 identifies a node-set containing the element with ID attribute value
 'chapter1' of the XML resource containing the signature. XML Signature
 (and its applications) modify this node-set to include the element plus
 all descendents including namespaces and attributes -- but not comments.</p></li>
-</ul>
-<div class="REFSECT3">
-<a name="AEN20004"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20006"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+</ul></div>
+<div class="refsect3">
+<a name="xmlSecTransformCtxSetUri.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URI.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URI.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>hereNode</p></td>
-<td><p>the pointer to "here" node required by some
+<td class="parameter_name"><p>hereNode</p></td>
+<td class="parameter_description"><p>the pointer to "here" node required by some
 XML transforms (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20027"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxSetUri.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXAPPEND"></a><h3>xmlSecTransformCtxAppend ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxAppend (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                          <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
-<p>Connects the <code class="PARAMETER">transform</code>
- to the end of the chain of transforms in the <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxAppend"></a><h3>xmlSecTransformCtxAppend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxAppend (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                          <em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
+<p>Connects the <em class="parameter"><code>transform</code></em>
+ to the end of the chain of transforms in the <em class="parameter"><code>ctx</code></em>
 
-(see <a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT"><span class="TYPE">xmlSecTransformConnect</span></a> function for details).</p>
-<div class="REFSECT3">
-<a name="AEN20048"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20050"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+(see <a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()"><span class="type">xmlSecTransformConnect</span></a> function for details).</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxAppend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to new transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to new transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20065"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxAppend.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXPREPEND"></a><h3>xmlSecTransformCtxPrepend ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxPrepend (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                           <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
-<p>Connects the <code class="PARAMETER">transform</code>
- to the beggining of the chain of transforms in the <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxPrepend"></a><h3>xmlSecTransformCtxPrepend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxPrepend (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
+<p>Connects the <em class="parameter"><code>transform</code></em>
+ to the beggining of the chain of transforms in the <em class="parameter"><code>ctx</code></em>
 
-(see <a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT"><span class="TYPE">xmlSecTransformConnect</span></a> function for details).</p>
-<div class="REFSECT3">
-<a name="AEN20086"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20088"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+(see <a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()"><span class="type">xmlSecTransformConnect</span></a> function for details).</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPrepend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to new transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to new transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20103"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPrepend.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXCREATEANDAPPEND"></a><h3>xmlSecTransformCtxCreateAndAppend ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a>
-xmlSecTransformCtxCreateAndAppend (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxCreateAndAppend"></a><h3>xmlSecTransformCtxCreateAndAppend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformPtr</span></font>
+xmlSecTransformCtxCreateAndAppend (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> id</code></em>);</pre>
 <p>Creaeates new transform and connects it to the end of the chain of
-transforms in the <code class="PARAMETER">ctx</code>
- (see <a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT"><span class="TYPE">xmlSecTransformConnect</span></a> function for details).</p>
-<div class="REFSECT3">
-<a name="AEN20123"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20125"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+transforms in the <em class="parameter"><code>ctx</code></em>
+ (see <a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()"><span class="type">xmlSecTransformConnect</span></a> function for details).</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCreateAndAppend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the new transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the new transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20140"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCreateAndAppend.returns"></a><h4>Returns</h4>
 <p> pointer to newly created transform or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXCREATEANDPREPEND"></a><h3>xmlSecTransformCtxCreateAndPrepend ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a>
-xmlSecTransformCtxCreateAndPrepend (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> id</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformCtxCreateAndPrepend"></a><h3>xmlSecTransformCtxCreateAndPrepend ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformPtr</span></font>
+xmlSecTransformCtxCreateAndPrepend (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                                    <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> id</code></em>);</pre>
 <p>Creaeates new transform and connects it to the end of the chain of
-transforms in the <code class="PARAMETER">ctx</code>
- (see <a href="xmlsec-transforms.html#XMLSECTRANSFORMCONNECT"><span class="TYPE">xmlSecTransformConnect</span></a> function for details).</p>
-<div class="REFSECT3">
-<a name="AEN20160"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20162"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+transforms in the <em class="parameter"><code>ctx</code></em>
+ (see <a class="link" href="xmlsec-transforms.html#xmlSecTransformConnect" title="xmlSecTransformConnect ()"><span class="type">xmlSecTransformConnect</span></a> function for details).</p>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCreateAndPrepend.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the new transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the new transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20177"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxCreateAndPrepend.returns"></a><h4>Returns</h4>
 <p> pointer to newly created transform or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXNODEREAD"></a><h3>xmlSecTransformCtxNodeRead ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a>
-xmlSecTransformCtxNodeRead (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                            <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> usage</code>);</pre>
-<p>Reads the transform from the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxNodeRead"></a><h3>xmlSecTransformCtxNodeRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformPtr</span></font>
+xmlSecTransformCtxNodeRead (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> usage</code></em>);</pre>
+<p>Reads the transform from the <em class="parameter"><code>node</code></em>
  and appends it to the current chain
-of transforms in <code class="PARAMETER">ctx</code>
+of transforms in <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20199"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20201"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxNodeRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to transform's node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to transform's node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the transform's usage (signature, encryption, etc.).</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the transform's usage (signature, encryption, etc.).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20222"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxNodeRead.returns"></a><h4>Returns</h4>
 <p> pointer to newly created transform or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXNODESLISTREAD"></a><h3>xmlSecTransformCtxNodesListRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxNodesListRead (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> usage</code>);</pre>
-<p>Reads transforms from the <dsig:Transform/> children of the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxNodesListRead"></a><h3>xmlSecTransformCtxNodesListRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxNodesListRead (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> usage</code></em>);</pre>
+<p>Reads transforms from the <dsig:Transform/> children of the <em class="parameter"><code>node</code></em>
  and
-appends them to the current transforms chain in <code class="PARAMETER">ctx</code>
+appends them to the current transforms chain in <em class="parameter"><code>ctx</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN20244"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20246"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxNodesListRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <dsig:Transform/> nodes parent node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> nodes parent node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the transform's usage (signature, encryption, etc.).</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the transform's usage (signature, encryption, etc.).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20267"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxNodesListRead.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXPREPARE"></a><h3>xmlSecTransformCtxPrepare ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxPrepare (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                           <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="TYPE">xmlSecTransformDataType</span></a> inputDataType</code>);</pre>
-<p>Prepares the transform context for processing data of <code class="PARAMETER">inputDataType</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxPrepare"></a><h3>xmlSecTransformCtxPrepare ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxPrepare (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                           <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="type">xmlSecTransformDataType</span></a> inputDataType</code></em>);</pre>
+<p>Prepares the transform context for processing data of <em class="parameter"><code>inputDataType</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20285"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20287"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPrepare.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>inputDataType</p></td>
-<td><p>the expected input type.</p></td>
-<td> </td>
+<td class="parameter_name"><p>inputDataType</p></td>
+<td class="parameter_description"><p>the expected input type.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20302"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxPrepare.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXBINARYEXECUTE"></a><h3>xmlSecTransformCtxBinaryExecute ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxBinaryExecute (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                                 <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>);</pre>
-<p>Processes binary data using transforms chain in the <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxBinaryExecute"></a><h3>xmlSecTransformCtxBinaryExecute ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxBinaryExecute (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</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>Processes binary data using transforms chain in the <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20323"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20325"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxBinaryExecute.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the input binary data buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the input binary data buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the input data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the input data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20346"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxBinaryExecute.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXURIEXECUTE"></a><h3>xmlSecTransformCtxUriExecute ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxUriExecute (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
-<p>Process binary data from the URI using transforms chain in <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxUriExecute"></a><h3>xmlSecTransformCtxUriExecute ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxUriExecute (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
+<p>Process binary data from the URI using transforms chain in <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20364"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20366"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxUriExecute.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URI.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URI.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20381"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxUriExecute.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXXMLEXECUTE"></a><h3>xmlSecTransformCtxXmlExecute ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxXmlExecute (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                              <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nodes</code>);</pre>
-<p>Process <code class="PARAMETER">nodes</code>
- using transforms in the transforms chain in <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxXmlExecute"></a><h3>xmlSecTransformCtxXmlExecute ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxXmlExecute (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nodes</code></em>);</pre>
+<p>Process <em class="parameter"><code>nodes</code></em>
+ using transforms in the transforms chain in <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20400"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20402"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxXmlExecute.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the input node set.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the input node set.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20417"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxXmlExecute.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXEXECUTE"></a><h3>xmlSecTransformCtxExecute ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformCtxExecute (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>);</pre>
-<p>Executes transforms chain in <code class="PARAMETER">ctx</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxExecute"></a><h3>xmlSecTransformCtxExecute ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformCtxExecute (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>);</pre>
+<p>Executes transforms chain in <em class="parameter"><code>ctx</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20435"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20437"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxExecute.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>doc</p></td>
-<td><p>the pointer to input document.</p></td>
-<td> </td>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to input document.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20452"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCtxExecute.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXDEBUGDUMP"></a><h3>xmlSecTransformCtxDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints transforms context debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxDebugDump"></a><h3>xmlSecTransformCtxDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformCtxDebugDump (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                             <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints transforms context debug information to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20470"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20472"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTXDEBUGXMLDUMP"></a><h3>xmlSecTransformCtxDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> ctx</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints transforms context debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformCtxDebugXmlDump"></a><h3>xmlSecTransformCtxDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformCtxDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> ctx</code></em>,
+                                <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints transforms context debug information to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN20502"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20504"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtxDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>ctx</p></td>
-<td><p>the pointer to transforms chain processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ctx</p></td>
+<td class="parameter_description"><p>the pointer to transforms chain processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCREATE"></a><h3>xmlSecTransformCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a>
-xmlSecTransformCreate (<code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> id</code>);</pre>
-<p>Creates new transform of the <code class="PARAMETER">id</code>
+<div class="refsect2">
+<a name="xmlSecTransformCreate"></a><h3>xmlSecTransformCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformPtr</span></font>
+xmlSecTransformCreate (<em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> id</code></em>);</pre>
+<p>Creates new transform of the <em class="parameter"><code>id</code></em>
  klass. The caller is responsible for
-destroying returned tansform using <a href="xmlsec-transforms.html#XMLSECTRANSFORMDESTROY"><span class="TYPE">xmlSecTransformDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN20533"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20535"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+destroying returned tansform using <a class="link" href="xmlsec-transforms.html#xmlSecTransformDestroy" title="xmlSecTransformDestroy ()"><span class="type">xmlSecTransformDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>id</p></td>
-<td><p>the transform id to create.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the transform id to create.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20544"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly created transform or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDESTROY"></a><h3>xmlSecTransformDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformDestroy (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
-<p>Destroys transform created with <a href="xmlsec-transforms.html#XMLSECTRANSFORMCREATE"><span class="TYPE">xmlSecTransformCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN20560"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20562"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecTransformDestroy"></a><h3>xmlSecTransformDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformDestroy (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
+<p>Destroys transform created with <a class="link" href="xmlsec-transforms.html#xmlSecTransformCreate" title="xmlSecTransformCreate ()"><span class="type">xmlSecTransformCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecTransformDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMNODEREAD"></a><h3>xmlSecTransformNodeRead ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="RETURNVALUE">xmlSecTransformPtr</span></a>
-xmlSecTransformNodeRead (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                         <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> usage</code>,
-                         <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Reads transform from the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTransformNodeRead"></a><h3>xmlSecTransformNodeRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformPtr</span></font>
+xmlSecTransformNodeRead (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                         <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> usage</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Reads transform from the <em class="parameter"><code>node</code></em>
  as follows:</p>
 <p>   1) reads "Algorithm" attribute;</p>
 <p>   2) checks the lists of known and allowed transforms;</p>
 <p>   3) calls transform's create method;</p>
 <p>   4) calls transform's read transform node method.</p>
-<div class="REFSECT3">
-<a name="AEN20593"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20595"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformNodeRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to the transform's node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to the transform's node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the transform usage (signature, encryption, ...).</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the transform usage (signature, encryption, ...).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20616"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformNodeRead.returns"></a><h4>Returns</h4>
 <p> pointer to newly created transform or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPUMP"></a><h3>xmlSecTransformPump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformPump (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> left</code>,
-                     <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> right</code>,
-                     <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Pops data from <code class="PARAMETER">left</code>
- transform and pushes to <code class="PARAMETER">right</code>
+<div class="refsect2">
+<a name="xmlSecTransformPump"></a><h3>xmlSecTransformPump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformPump (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> left</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> right</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Pops data from <em class="parameter"><code>left</code></em>
+ transform and pushes to <em class="parameter"><code>right</code></em>
  transform until
 no more data is available.</p>
-<div class="REFSECT3">
-<a name="AEN20638"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20640"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>left</p></td>
-<td><p>the source pumping transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>left</p></td>
+<td class="parameter_description"><p>the source pumping transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>right</p></td>
-<td><p>the destination pumping transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>right</p></td>
+<td class="parameter_description"><p>the destination pumping transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20661"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPump.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="XMLSECTRANSFORMSETKEY"></a><h3>xmlSecTransformSetKey ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformSetKey (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                       <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSetKey"></a><h3>xmlSecTransformSetKey ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformSetKey (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
 <p>Sets the transform's key.</p>
-<div class="REFSECT3">
-<a name="AEN20678"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20680"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformSetKey.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20695"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSetKey.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSETKEYREQ"></a><h3>xmlSecTransformSetKeyReq ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformSetKeyReq (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                          <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
-<p>Sets the key requirements for <code class="PARAMETER">transform</code>
- in the <code class="PARAMETER">keyReq</code>
+<div class="refsect2">
+<a name="xmlSecTransformSetKeyReq"></a><h3>xmlSecTransformSetKeyReq ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformSetKeyReq (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                          <em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
+<p>Sets the key requirements for <em class="parameter"><code>transform</code></em>
+ in the <em class="parameter"><code>keyReq</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20714"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20716"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyReq.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to keys requirements object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to keys requirements object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20731"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyReq.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMVERIFY"></a><h3>xmlSecTransformVerify ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformVerify (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                       <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                       <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformVerify"></a><h3>xmlSecTransformVerify ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformVerify (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</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>,
+                       <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Verifies the data with transform's processing results
 (for digest, HMAC and signature transforms). The verification
-result is stored in the <font><span class="TYPE">status</span></font> member of <a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransform</span></a> object.</p>
-<div class="REFSECT3">
-<a name="AEN20758"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20760"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+result is stored in the <font><span class="type">status</span></font> member of <a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform"><span class="type">xmlSecTransform</span></a> object.</p>
+<div class="refsect3">
+<a name="xmlSecTransformVerify.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the binary data for verification.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the binary data for verification.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20787"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformVerify.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="XMLSECTRANSFORMVERIFYNODECONTENT"></a><h3>xmlSecTransformVerifyNodeContent ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformVerifyNodeContent (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Gets the <code class="PARAMETER">node</code>
- content, base64 decodes it and calls <a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFY"><span class="TYPE">xmlSecTransformVerify</span></a>
+<div class="refsect2">
+<a name="xmlSecTransformVerifyNodeContent"></a><h3>xmlSecTransformVerifyNodeContent ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformVerifyNodeContent (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Gets the <em class="parameter"><code>node</code></em>
+ content, base64 decodes it and calls <a class="link" href="xmlsec-transforms.html#xmlSecTransformVerify" title="xmlSecTransformVerify ()"><span class="type">xmlSecTransformVerify</span></a>
 function to verify binary results.</p>
-<div class="REFSECT3">
-<a name="AEN20810"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20812"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformVerifyNodeContent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20833"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformVerifyNodeContent.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="XMLSECTRANSFORMGETDATATYPE"></a><h3>xmlSecTransformGetDataType ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a>
-xmlSecTransformGetDataType (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                            <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMMODE"><span class="TYPE">xmlSecTransformMode</span></a> mode</code>,
-                            <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Gets transform input (<code class="PARAMETER">mode</code>
- is "push") or output (<code class="PARAMETER">mode</code>
+<div class="refsect2">
+<a name="xmlSecTransformGetDataType"></a><h3>xmlSecTransformGetDataType ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+xmlSecTransformGetDataType (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformMode" title="enum xmlSecTransformMode"><span class="type">xmlSecTransformMode</span></a> mode</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Gets transform input (<em class="parameter"><code>mode</code></em>
+ is "push") or output (<em class="parameter"><code>mode</code></em>
  is "pop") data
 type (binary or XML).</p>
-<div class="REFSECT3">
-<a name="AEN20855"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20857"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformGetDataType.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mode</p></td>
-<td><p>the data mode (push or pop).</p></td>
-<td> </td>
+<td class="parameter_name"><p>mode</p></td>
+<td class="parameter_description"><p>the data mode (push or pop).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN20878"></a><h4>Returns</h4>
-<p> the transform's data type for the <code class="PARAMETER">mode</code>
+<div class="refsect3">
+<a name="xmlSecTransformGetDataType.returns"></a><h4>Returns</h4>
+<p> the transform's data type for the <em class="parameter"><code>mode</code></em>
 operation.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPUSHBIN"></a><h3>xmlSecTransformPushBin ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformPushBin (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                        <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">int</span></font> final</code>,
-                        <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Process binary <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecTransformPushBin"></a><h3>xmlSecTransformPushBin ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformPushBin (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</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>,
+                        <em class="parameter"><code><font><span class="type">int</span></font> final</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Process binary <em class="parameter"><code>data</code></em>
  and pushes results to next transform.</p>
-<div class="REFSECT3">
-<a name="AEN20906"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20908"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPushBin.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the input binary data,</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the input binary data,</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the input data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the input data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>final</p></td>
-<td><p>the flag: if set to 1 then it's the last
+<td class="parameter_name"><p>final</p></td>
+<td class="parameter_description"><p>the flag: if set to 1 then it's the last
 data chunk.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN20941"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPushBin.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="XMLSECTRANSFORMPOPBIN"></a><h3>xmlSecTransformPopBin ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformPopBin (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> maxDataSize</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *dataSize</code>,
-                       <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformPopBin"></a><h3>xmlSecTransformPopBin ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformPopBin (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                       <em class="parameter"><code><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> maxDataSize</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">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Pops data from previous transform in the chain, processes data and
-returns result in the <code class="PARAMETER">data</code>
+returns result in the <em class="parameter"><code>data</code></em>
  buffer. The size of returned data is
-placed in the <code class="PARAMETER">dataSize</code>
+placed in the <em class="parameter"><code>dataSize</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN20969"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN20971"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPopBin.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the buffer to store result data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the buffer to store result data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>maxDataSize</p></td>
-<td><p>the size of the buffer <font><span class="TYPE">data</span></font>.</p></td>
-<td> </td>
+<td class="parameter_name"><p>maxDataSize</p></td>
+<td class="parameter_description"><p>the size of the buffer <font><span class="type">data</span></font>.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the pointer to returned data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the pointer to returned data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21006"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPopBin.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="XMLSECTRANSFORMPUSHXML"></a><h3>xmlSecTransformPushXml ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformPushXml (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                        <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nodes</code>,
-                        <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Processes <code class="PARAMETER">nodes</code>
+<div class="refsect2">
+<a name="xmlSecTransformPushXml"></a><h3>xmlSecTransformPushXml ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformPushXml (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nodes</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Processes <em class="parameter"><code>nodes</code></em>
  and pushes result to the next transform in the chain.</p>
-<div class="REFSECT3">
-<a name="AEN21027"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21029"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPushXml.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the input nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the input nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21050"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPushXml.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="XMLSECTRANSFORMPOPXML"></a><h3>xmlSecTransformPopXml ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformPopXml (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                       <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> *nodes</code>,
-                       <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformPopXml"></a><h3>xmlSecTransformPopXml ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformPopXml (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> *nodes</code></em>,
+                       <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Pops data from previous transform in the chain, processes the data and
-returns result in <code class="PARAMETER">nodes</code>
+returns result in <em class="parameter"><code>nodes</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21071"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21073"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPopXml.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the pointer to store popinter to result nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the pointer to store popinter to result nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21094"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPopXml.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="XMLSECTRANSFORMEXECUTE"></a><h3>xmlSecTransformExecute ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformExecute (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">int</span></font> last</code>,
-                        <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformExecute"></a><h3>xmlSecTransformExecute ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformExecute (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                        <em class="parameter"><code><font><span class="type">int</span></font> last</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Executes transform (used by default popBin/pushBin/popXml/pushXml methods).</p>
-<div class="REFSECT3">
-<a name="AEN21114"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21116"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformExecute.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>last</p></td>
-<td><p>the flag: if set to 1 then it's the last data chunk.</p></td>
-<td> </td>
+<td class="parameter_name"><p>last</p></td>
+<td class="parameter_description"><p>the flag: if set to 1 then it's the last data chunk.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21137"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformExecute.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="XMLSECTRANSFORMDEBUGDUMP"></a><h3>xmlSecTransformDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformDebugDump (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints transform's debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformDebugDump"></a><h3>xmlSecTransformDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformDebugDump (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                          <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints transform's debug information to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21155"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21157"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDEBUGXMLDUMP"></a><h3>xmlSecTransformDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints transform's debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformDebugXmlDump"></a><h3>xmlSecTransformDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                             <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints transform's debug information to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN21187"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21189"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGETNAME"></a><h3>xmlSecTransformGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformGetName(transform)</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGetName"></a><h3>xmlSecTransformGetName()</h3>
+<pre class="programlisting">#define             xmlSecTransformGetName(transform)</pre>
 <p>Macro. Returns transform name.</p>
-<div class="REFSECT3">
-<a name="AEN21210"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21212"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMISVALID"></a><h3>xmlSecTransformIsValid()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformIsValid(transform)</pre>
-<p>Macro. Returns 1 if the <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformIsValid"></a><h3>xmlSecTransformIsValid()</h3>
+<pre class="programlisting">#define             xmlSecTransformIsValid(transform)</pre>
+<p>Macro. Returns 1 if the <em class="parameter"><code>transform</code></em>
  is valid or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN21228"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21230"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIsValid.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCHECKID"></a><h3>xmlSecTransformCheckId()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformCheckId(transform, i)</pre>
-<p>Macro. Returns 1 if the <code class="PARAMETER">transform</code>
- is valid and has specified id <code class="PARAMETER">i</code>
+<div class="refsect2">
+<a name="xmlSecTransformCheckId"></a><h3>xmlSecTransformCheckId()</h3>
+<pre class="programlisting">#define             xmlSecTransformCheckId(transform, i)</pre>
+<p>Macro. Returns 1 if the <em class="parameter"><code>transform</code></em>
+ is valid and has specified id <em class="parameter"><code>i</code></em>
 
 or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN21247"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21249"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCheckId.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>i</p></td>
-<td><p>the transform id.</p></td>
-<td> </td>
+<td class="parameter_name"><p>i</p></td>
+<td class="parameter_description"><p>the transform id.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCHECKSIZE"></a><h3>xmlSecTransformCheckSize()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformCheckSize(transform, size)</pre>
-<p>Macro. Returns 1 if the <code class="PARAMETER">transform</code>
- is valid and has at least <code class="PARAMETER">size</code>
+<div class="refsect2">
+<a name="xmlSecTransformCheckSize"></a><h3>xmlSecTransformCheckSize()</h3>
+<pre class="programlisting">#define             xmlSecTransformCheckSize(transform, size)</pre>
+<p>Macro. Returns 1 if the <em class="parameter"><code>transform</code></em>
+ is valid and has at least <em class="parameter"><code>size</code></em>
 
 bytes or 0 otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN21272"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21274"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCheckSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the transform object size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the transform object size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCONNECT"></a><h3>xmlSecTransformConnect ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformConnect (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> left</code>,
-                        <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> right</code>,
-                        <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformConnect"></a><h3>xmlSecTransformConnect ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformConnect (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> left</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> right</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>If the data object is a node-set and the next transform requires octets,
 the signature application MUST attempt to convert the node-set to an octet
 stream using Canonical XML [XML-C14N].</p>
 <p>The story is different if the right transform is base64 decode
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-Base-64</span></font>):</p>
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-Base-64</span></font>):</p>
 <p>This transform requires an octet stream for input. If an XPath node-set
 (or sufficiently functional alternative) is given as input, then it is
 converted to an octet stream by performing operations logically equivalent
-to 1) applying an XPath transform with expression self::<font><code class="FUNCTION">text()</code></font>, then 2)
+to 1) applying an XPath transform with expression self::<font><code class="function">text()</code></font>, then 2)
 taking the string-value of the node-set. Thus, if an XML element is
 identified by a barename XPointer in the Reference URI, and its content
 consists solely of base64 encoded character data, then this transform
 automatically strips away the start and end tags of the identified element
 and any of its descendant elements as well as any descendant comments and
 processing instructions. The output of this transform is an octet stream.</p>
-<div class="REFSECT3">
-<a name="AEN21312"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21314"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformConnect.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>left</p></td>
-<td><p>the pointer to left (prev) transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>left</p></td>
+<td class="parameter_description"><p>the pointer to left (prev) transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>right</p></td>
-<td><p>the pointer to right (next) transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>right</p></td>
+<td class="parameter_description"><p>the pointer to right (next) transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21335"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformConnect.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="XMLSECTRANSFORMREMOVE"></a><h3>xmlSecTransformRemove ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformRemove (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
-<p>Removes <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformRemove"></a><h3>xmlSecTransformRemove ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformRemove (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
+<p>Removes <em class="parameter"><code>transform</code></em>
  from the chain.</p>
-<div class="REFSECT3">
-<a name="AEN21350"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21352"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformRemove.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to <a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransform</span></a> structure.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to <a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform"><span class="type">xmlSecTransform</span></a> structure.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDEFAULTGETDATATYPE"></a><h3>xmlSecTransformDefaultGetDataType ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a>
-xmlSecTransformDefaultGetDataType (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMMODE"><span class="TYPE">xmlSecTransformMode</span></a> mode</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Gets transform input (<code class="PARAMETER">mode</code>
- is "push") or output (<code class="PARAMETER">mode</code>
+<div class="refsect2">
+<a name="xmlSecTransformDefaultGetDataType"></a><h3>xmlSecTransformDefaultGetDataType ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+xmlSecTransformDefaultGetDataType (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                   <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformMode" title="enum xmlSecTransformMode"><span class="type">xmlSecTransformMode</span></a> mode</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Gets transform input (<em class="parameter"><code>mode</code></em>
+ is "push") or output (<em class="parameter"><code>mode</code></em>
  is "pop") data
 type (binary or XML) by analyzing available pushBin/popBin/pushXml/popXml
 methods.</p>
-<div class="REFSECT3">
-<a name="AEN21382"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21384"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultGetDataType.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mode</p></td>
-<td><p>the data mode (push or pop).</p></td>
-<td> </td>
+<td class="parameter_name"><p>mode</p></td>
+<td class="parameter_description"><p>the data mode (push or pop).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the transform's chaing processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the transform's chaing processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21405"></a><h4>Returns</h4>
-<p> the transform's data type for the <code class="PARAMETER">mode</code>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultGetDataType.returns"></a><h4>Returns</h4>
+<p> the transform's data type for the <em class="parameter"><code>mode</code></em>
 operation.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDEFAULTPUSHBIN"></a><h3>xmlSecTransformDefaultPushBin ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformDefaultPushBin (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                               <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">int</span></font> final</code>,
-                               <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Process binary <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecTransformDefaultPushBin"></a><h3>xmlSecTransformDefaultPushBin ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformDefaultPushBin (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</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>,
+                               <em class="parameter"><code><font><span class="type">int</span></font> final</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Process binary <em class="parameter"><code>data</code></em>
  by calling transform's execute method and pushes
 results to next transform.</p>
-<div class="REFSECT3">
-<a name="AEN21433"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21435"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPushBin.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the input binary data,</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the input binary data,</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the input data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the input data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>final</p></td>
-<td><p>the flag: if set to 1 then it's the last
+<td class="parameter_name"><p>final</p></td>
+<td class="parameter_description"><p>the flag: if set to 1 then it's the last
 data chunk.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21468"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPushBin.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="XMLSECTRANSFORMDEFAULTPOPBIN"></a><h3>xmlSecTransformDefaultPopBin ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformDefaultPopBin (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> maxDataSize</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *dataSize</code>,
-                              <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDefaultPopBin"></a><h3>xmlSecTransformDefaultPopBin ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformDefaultPopBin (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                              <em class="parameter"><code><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> maxDataSize</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">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Pops data from previous transform in the chain, processes data by calling
-transform's execute method and returns result in the <code class="PARAMETER">data</code>
+transform's execute method and returns result in the <em class="parameter"><code>data</code></em>
  buffer. The
-size of returned data is placed in the <code class="PARAMETER">dataSize</code>
+size of returned data is placed in the <em class="parameter"><code>dataSize</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21496"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21498"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPopBin.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the buffer to store result data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the buffer to store result data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>maxDataSize</p></td>
-<td><p>the size of the buffer <font><span class="TYPE">data</span></font>.</p></td>
-<td> </td>
+<td class="parameter_name"><p>maxDataSize</p></td>
+<td class="parameter_description"><p>the size of the buffer <font><span class="type">data</span></font>.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the pointer to returned data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the pointer to returned data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21533"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPopBin.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="XMLSECTRANSFORMDEFAULTPUSHXML"></a><h3>xmlSecTransformDefaultPushXml ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformDefaultPushXml (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                               <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nodes</code>,
-                               <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Processes <code class="PARAMETER">nodes</code>
+<div class="refsect2">
+<a name="xmlSecTransformDefaultPushXml"></a><h3>xmlSecTransformDefaultPushXml ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformDefaultPushXml (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nodes</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Processes <em class="parameter"><code>nodes</code></em>
  by calling transform's execute method and pushes
 result to the next transform in the chain.</p>
-<div class="REFSECT3">
-<a name="AEN21554"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21556"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPushXml.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the input nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the input nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21577"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPushXml.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="XMLSECTRANSFORMDEFAULTPOPXML"></a><h3>xmlSecTransformDefaultPopXml ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformDefaultPopXml (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                              <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> *nodes</code>,
-                              <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDefaultPopXml"></a><h3>xmlSecTransformDefaultPopXml ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformDefaultPopXml (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> *nodes</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Pops data from previous transform in the chain, processes the data
-by calling transform's execute method and returns result in <code class="PARAMETER">nodes</code>
+by calling transform's execute method and returns result in <em class="parameter"><code>nodes</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21598"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21600"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPopXml.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the pointer to store popinter to result nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the pointer to store popinter to result nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21621"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformDefaultPopXml.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="XMLSECTRANSFORMCREATEOUTPUTBUFFER"></a><h3>xmlSecTransformCreateOutputBuffer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlOutputBufferPtr</span></font>
-xmlSecTransformCreateOutputBuffer (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Creates output buffer to write data to <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformCreateOutputBuffer"></a><h3>xmlSecTransformCreateOutputBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlOutputBufferPtr</span></font>
+xmlSecTransformCreateOutputBuffer (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Creates output buffer to write data to <em class="parameter"><code>transform</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21639"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21641"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCreateOutputBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21656"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCreateOutputBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to new output buffer or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCREATEINPUTBUFFER"></a><h3>xmlSecTransformCreateInputBuffer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlParserInputBufferPtr</span></font>
-xmlSecTransformCreateInputBuffer (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>Creates input buffer to read data from <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformCreateInputBuffer"></a><h3>xmlSecTransformCreateInputBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlParserInputBufferPtr</span></font>
+xmlSecTransformCreateInputBuffer (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>Creates input buffer to read data from <em class="parameter"><code>transform</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21674"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21676"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCreateInputBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21691"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformCreateInputBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to new input buffer or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINITIALIZEMETHOD"></a><h3>xmlSecTransformInitializeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformInitializeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInitializeMethod"></a><h3>xmlSecTransformInitializeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformInitializeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
 <p>The transform specific initialization method.</p>
-<div class="REFSECT3">
-<a name="AEN21707"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21709"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformInitializeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21718"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInitializeMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMFINALIZEMETHOD"></a><h3>xmlSecTransformFinalizeMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformFinalizeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformFinalizeMethod"></a><h3>xmlSecTransformFinalizeMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformFinalizeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>);</pre>
 <p>The transform specific destroy method.</p>
-<div class="REFSECT3">
-<a name="AEN21734"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21736"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformFinalizeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMGETDATATYPEMETHOD"></a><h3>xmlSecTransformGetDataTypeMethod ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-transforms.html#XMLSECTRANSFORMDATATYPE"><span class="RETURNVALUE">xmlSecTransformDataType</span></a>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformGetDataTypeMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMMODE"><span class="TYPE">xmlSecTransformMode</span></a> mode</code>,
-                                     <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformGetDataTypeMethod"></a><h3>xmlSecTransformGetDataTypeMethod ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-transforms.html#xmlSecTransformDataType" title="xmlSecTransformDataType"><span class="returnvalue">xmlSecTransformDataType</span></a>
+<span class="c_punctuation">(</span>*xmlSecTransformGetDataTypeMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                     <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformMode" title="enum xmlSecTransformMode"><span class="type">xmlSecTransformMode</span></a> mode</code></em>,
+                                     <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The transform specific method to query information about transform
-data type in specified mode <code class="PARAMETER">mode</code>
+data type in specified mode <em class="parameter"><code>mode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21765"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21767"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformGetDataTypeMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mode</p></td>
-<td><p>the mode.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mode</p></td>
+<td class="parameter_description"><p>the mode.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21788"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformGetDataTypeMethod.returns"></a><h4>Returns</h4>
 <p> transform data type.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMNODEREADMETHOD"></a><h3>xmlSecTransformNodeReadMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformNodeReadMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformNodeReadMethod"></a><h3>xmlSecTransformNodeReadMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformNodeReadMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The transform specific method to read the transform data from
-the <code class="PARAMETER">node</code>
+the <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21811"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21813"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformNodeReadMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21834"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformNodeReadMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMNODEWRITEMETHOD"></a><h3>xmlSecTransformNodeWriteMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformNodeWriteMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                   <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>The transform specific method to write transform information to an XML node <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecTransformNodeWriteMethod"></a><h3>xmlSecTransformNodeWriteMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformNodeWriteMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>The transform specific method to write transform information to an XML node <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN21857"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21859"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformNodeWriteMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <dsig:Transform/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Transform/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21880"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformNodeWriteMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSETKEYREQUIREMENTSMETHOD"></a><h3>xmlSecTransformSetKeyRequirementsMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformSetKeyRequirementsMethod<span class="c_punctuation"><span class="PHRASE">)</span></span>
-                               (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEYREQ"><span class="TYPE">xmlSecKeyReqPtr</span></a> keyReq</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSetKeyRequirementsMethod"></a><h3>xmlSecTransformSetKeyRequirementsMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformSetKeyRequirementsMethod<span class="c_punctuation">)</span>
+                               (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyReqPtr</span></font> keyReq</code></em>);</pre>
 <p>Transform specific method to set transform's key requirements.</p>
-<div class="REFSECT3">
-<a name="AEN21899"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21901"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyRequirementsMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyReq</p></td>
-<td><p>the pointer to key requirements structure.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyReq</p></td>
+<td class="parameter_description"><p>the pointer to key requirements structure.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN21916"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyRequirementsMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSETKEYMETHOD"></a><h3>xmlSecTransformSetKeyMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformSetKeyMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER"><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> key</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformSetKeyMethod"></a><h3>xmlSecTransformSetKeyMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformSetKeyMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecKeyPtr</span></font> key</code></em>);</pre>
 <p>The transform specific method to set the key for use.</p>
-<div class="REFSECT3">
-<a name="AEN21935"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21937"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>key</p></td>
-<td><p>the pointer to key.</p></td>
-<td> </td>
+<td class="parameter_name"><p>key</p></td>
+<td class="parameter_description"><p>the pointer to key.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN21952"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformSetKeyMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMVERIFYMETHOD"></a><h3>xmlSecTransformVerifyMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformVerifyMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformVerifyMethod"></a><h3>xmlSecTransformVerifyMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformVerifyMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</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>,
+                                <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The transform specific method to verify transform processing results
-(used by digest and signature transforms). This method sets <code class="PARAMETER">status</code>
+(used by digest and signature transforms). This method sets <em class="parameter"><code>status</code></em>
 
-member of the <a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransform</span></a> structure to either <a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUSOK"><span class="TYPE">xmlSecTransformStatusOk</span></a>
-if verification succeeded or <a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUSFAIL"><span class="TYPE">xmlSecTransformStatusFail</span></a> otherwise.</p>
-<div class="REFSECT3">
-<a name="AEN21984"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN21986"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+member of the <a class="link" href="xmlsec-transforms.html#xmlSecTransform" title="struct xmlSecTransform"><span class="type">xmlSecTransform</span></a> structure to either <a class="link" href="xmlsec-transforms.html#xmlSecTransformStatusOk"><span class="type">xmlSecTransformStatusOk</span></a>
+if verification succeeded or <a class="link" href="xmlsec-transforms.html#xmlSecTransformStatusFail"><span class="type">xmlSecTransformStatusFail</span></a> otherwise.</p>
+<div class="refsect3">
+<a name="xmlSecTransformVerifyMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the input buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the input buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the size of input buffer <code class="PARAMETER">data</code>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the size of input buffer <em class="parameter"><code>data</code></em>
 .</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN22014"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformVerifyMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPUSHBINMETHOD"></a><h3>xmlSecTransformPushBinMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformPushBinMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                 <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">int</span></font> final</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>The transform specific method to process data from <code class="PARAMETER">data</code>
+<div class="refsect2">
+<a name="xmlSecTransformPushBinMethod"></a><h3>xmlSecTransformPushBinMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformPushBinMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</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>,
+                                 <em class="parameter"><code><font><span class="type">int</span></font> final</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>The transform specific method to process data from <em class="parameter"><code>data</code></em>
  and push
 result to the next transform in the chain.</p>
-<div class="REFSECT3">
-<a name="AEN22043"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22045"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPushBinMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the input binary data,</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the input binary data,</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the input data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the input data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>final</p></td>
-<td><p>the flag: if set to 1 then it's the last
+<td class="parameter_name"><p>final</p></td>
+<td class="parameter_description"><p>the flag: if set to 1 then it's the last
 data chunk.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22078"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPushBinMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPOPBINMETHOD"></a><h3>xmlSecTransformPopBinMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformPopBinMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> maxDataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> *dataSize</code>,
-                                <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformPopBinMethod"></a><h3>xmlSecTransformPopBinMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformPopBinMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code><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> maxDataSize</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">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The transform specific method to pop data from previous transform
-in the chain and return result in the <code class="PARAMETER">data</code>
+in the chain and return result in the <em class="parameter"><code>data</code></em>
  buffer. The size of returned
-data is placed in the <code class="PARAMETER">dataSize</code>
+data is placed in the <em class="parameter"><code>dataSize</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22108"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22110"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPopBinMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the buffer to store result data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the buffer to store result data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>maxDataSize</p></td>
-<td><p>the size of the buffer <code class="PARAMETER">data</code>
+<td class="parameter_name"><p>maxDataSize</p></td>
+<td class="parameter_description"><p>the size of the buffer <em class="parameter"><code>data</code></em>
 .</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the pointer to returned data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the pointer to returned data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22144"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPopBinMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPUSHXMLMETHOD"></a><h3>xmlSecTransformPushXmlMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformPushXmlMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> nodes</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
-<p>The transform specific method to process <code class="PARAMETER">nodes</code>
+<div class="refsect2">
+<a name="xmlSecTransformPushXmlMethod"></a><h3>xmlSecTransformPushXmlMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformPushXmlMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> nodes</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
+<p>The transform specific method to process <em class="parameter"><code>nodes</code></em>
  and push result to the next
 transform in the chain.</p>
-<div class="REFSECT3">
-<a name="AEN22167"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22169"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPushXmlMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the input nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the input nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22190"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPushXmlMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMPOPXMLMETHOD"></a><h3>xmlSecTransformPopXmlMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformPopXmlMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> *nodes</code>,
-                                <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformPopXmlMethod"></a><h3>xmlSecTransformPopXmlMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformPopXmlMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecNodeSetPtr</span></font> *nodes</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>The transform specific method to pop data from previous transform in the chain,
-process the data and return result in <code class="PARAMETER">nodes</code>
+process the data and return result in <em class="parameter"><code>nodes</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22213"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22215"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformPopXmlMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodes</p></td>
-<td><p>the pointer to store popinter to result nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodes</p></td>
+<td class="parameter_description"><p>the pointer to store popinter to result nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22236"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformPopXmlMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMEXECUTEMETHOD"></a><h3>xmlSecTransformExecuteMethod ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-<span class="c_punctuation"><span class="PHRASE">(</span></span>*xmlSecTransformExecuteMethod<span class="c_punctuation"><span class="PHRASE">)</span></span> (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">int</span></font> last</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtxPtr</span></a> transformCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformExecuteMethod"></a><h3>xmlSecTransformExecuteMethod ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+<span class="c_punctuation">(</span>*xmlSecTransformExecuteMethod<span class="c_punctuation">)</span> (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                 <em class="parameter"><code><font><span class="type">int</span></font> last</code></em>,
+                                 <em class="parameter"><code><font><span class="type">xmlSecTransformCtxPtr</span></font> transformCtx</code></em>);</pre>
 <p>Transform specific method to process a chunk of data.</p>
-<div class="REFSECT3">
-<a name="AEN22258"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22260"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformExecuteMethod.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to transform object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to transform object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>last</p></td>
-<td><p>the flag: if set to 1 then it's the last data chunk.</p></td>
-<td> </td>
+<td class="parameter_name"><p>last</p></td>
+<td class="parameter_description"><p>the flag: if set to 1 then it's the last data chunk.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformCtx</p></td>
-<td><p>the pointer to transform context object.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformCtx</p></td>
+<td class="parameter_description"><p>the pointer to transform context object.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22281"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformExecuteMethod.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKLASSGETNAME"></a><h3>xmlSecTransformKlassGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformKlassGetName(klass)</pre>
+<div class="refsect2">
+<a name="xmlSecTransformKlassGetName"></a><h3>xmlSecTransformKlassGetName()</h3>
+<pre class="programlisting">#define             xmlSecTransformKlassGetName(klass)</pre>
 <p>Macro. Returns transform klass name.</p>
-<div class="REFSECT3">
-<a name="AEN22290"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22292"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformKlassGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>klass</p></td>
-<td><p>the transofrm's klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>klass</p></td>
+<td class="parameter_description"><p>the transofrm's klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTGETKLASS"></a><h3>xmlSecTransformIdListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecTransformIdListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdListGetKlass"></a><h3>xmlSecTransformIdListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecTransformIdListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The transform id list klass.</p>
-<div class="REFSECT3">
-<a name="AEN22311"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdListGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to the transform id list klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTFIND"></a><h3>xmlSecTransformIdListFind ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformIdListFind (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
-<p>Lookups <code class="PARAMETER">dataId</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdListFind"></a><h3>xmlSecTransformIdListFind ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformIdListFind (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
+<p>Lookups <em class="parameter"><code>dataId</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22330"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22332"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFind.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to transform ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to transform ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN22347"></a><h4>Returns</h4>
-<p> 1 if <code class="PARAMETER">dataId</code>
-is found in the <code class="PARAMETER">list</code>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFind.returns"></a><h4>Returns</h4>
+<p> 1 if <em class="parameter"><code>dataId</code></em>
+is found in the <em class="parameter"><code>list</code></em>
 , 0 if not and a negative
 value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTFINDBYHREF"></a><h3>xmlSecTransformIdListFindByHref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformIdListFindByHref (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *href</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> usage</code>);</pre>
-<p>Lookups data klass in the list with given <code class="PARAMETER">href</code>
- and <code class="PARAMETER">usage</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdListFindByHref"></a><h3>xmlSecTransformIdListFindByHref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformIdListFindByHref (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *href</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> usage</code></em>);</pre>
+<p>Lookups data klass in the list with given <em class="parameter"><code>href</code></em>
+ and <em class="parameter"><code>usage</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22372"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22374"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFindByHref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to transform ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to transform ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>href</p></td>
-<td><p>the desired transform klass href.</p></td>
-<td> </td>
+<td class="parameter_name"><p>href</p></td>
+<td class="parameter_description"><p>the desired transform klass href.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the desired transform usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the desired transform usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22395"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFindByHref.returns"></a><h4>Returns</h4>
 <p> transform klass is found and NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTFINDBYNAME"></a><h3>xmlSecTransformIdListFindByName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformIdListFindByName (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> usage</code>);</pre>
-<p>Lookups data klass in the list with given <code class="PARAMETER">name</code>
- and <code class="PARAMETER">usage</code>
- in <code class="PARAMETER">list</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdListFindByName"></a><h3>xmlSecTransformIdListFindByName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformIdListFindByName (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> usage</code></em>);</pre>
+<p>Lookups data klass in the list with given <em class="parameter"><code>name</code></em>
+ and <em class="parameter"><code>usage</code></em>
+ in <em class="parameter"><code>list</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22418"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22420"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFindByName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to transform ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to transform ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the desired transform klass name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the desired transform klass name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>usage</p></td>
-<td><p>the desired transform usage.</p></td>
-<td> </td>
+<td class="parameter_name"><p>usage</p></td>
+<td class="parameter_description"><p>the desired transform usage.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22441"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformIdListFindByName.returns"></a><h4>Returns</h4>
 <p> transform klass is found and NULL otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTDEBUGDUMP"></a><h3>xmlSecTransformIdListDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformIdListDebugDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary transform debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdListDebugDump"></a><h3>xmlSecTransformIdListDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformIdListDebugDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                                <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary transform debug information to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22459"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22461"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdListDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to transform ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to transform ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTDEBUGXMLDUMP"></a><h3>xmlSecTransformIdListDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformIdListDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> list</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints binary transform debug information to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecTransformIdListDebugXmlDump"></a><h3>xmlSecTransformIdListDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformIdListDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecPtrListPtr</span></font> list</code></em>,
+                                   <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints binary transform debug information to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN22491"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22493"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformIdListDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>list</p></td>
-<td><p>the pointer to transform ids list.</p></td>
-<td> </td>
+<td class="parameter_name"><p>list</p></td>
+<td class="parameter_description"><p>the pointer to transform ids list.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDUNKNOWN"></a><h3>xmlSecTransformIdUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformIdUnknown                        ((xmlSecTransformId)NULL)</pre>
-<p>The "unknown" transform id (NULL).</p>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMBASE64GETKLASS"></a><h3>xmlSecTransformBase64GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformBase64GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The Base64 transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-Base-64</span></font>).
+<div class="refsect2">
+<a name="xmlSecTransformBase64GetKlass"></a><h3>xmlSecTransformBase64GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformBase64GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The Base64 transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-Base-64</span></font>).
 The normative specification for base64 decoding transforms is RFC 2045
 (http://www.ietf.org/rfc/rfc2045.txt). The base64 Transform element has
 no content. The input is decoded by the algorithms. This transform is
 useful if an application needs to sign the raw data associated with
 the encoded content of an element.</p>
-<div class="REFSECT3">
-<a name="AEN22526"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformBase64GetKlass.returns"></a><h4>Returns</h4>
 <p> base64 transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMBASE64SETLINESIZE"></a><h3>xmlSecTransformBase64SetLineSize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecTransformBase64SetLineSize (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> lineSize</code>);</pre>
-<p>Sets the max line size to <code class="PARAMETER">lineSize</code>
+<div class="refsect2">
+<a name="xmlSecTransformBase64SetLineSize"></a><h3>xmlSecTransformBase64SetLineSize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecTransformBase64SetLineSize (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> lineSize</code></em>);</pre>
+<p>Sets the max line size to <em class="parameter"><code>lineSize</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22544"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22546"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformBase64SetLineSize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to BASE64 encode transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to BASE64 encode transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>lineSize</p></td>
-<td><p>the new max line size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>lineSize</p></td>
+<td class="parameter_description"><p>the new max line size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14NGETKLASS"></a><h3>xmlSecTransformInclC14NGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformInclC14NGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14NGetKlass"></a><h3>xmlSecTransformInclC14NGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformInclC14NGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Inclusive (regular) canonicalization that omits comments transform klass
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-c14nAlg</span></font> and
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-c14nAlg</span></font> and
 http://www.w3.org/TR/2001/REC-xml-c14n-20010315).</p>
-<div class="REFSECT3">
-<a name="AEN22573"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInclC14NGetKlass.returns"></a><h4>Returns</h4>
 <p> c14n transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14NWITHCOMMENTSGETKLASS"></a><h3>xmlSecTransformInclC14NWithCommentsGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14NWithCommentsGetKlass"></a><h3>xmlSecTransformInclC14NWithCommentsGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformInclC14NWithCommentsGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Inclusive (regular) canonicalization that includes comments transform klass
-(http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-c14nAlg</span></font> and
+(http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-c14nAlg</span></font> and
 http://www.w3.org/TR/2001/REC-xml-c14n-20010315).</p>
-<div class="REFSECT3">
-<a name="AEN22588"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInclC14NWithCommentsGetKlass.returns"></a><h4>Returns</h4>
 <p> c14n with comments transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14N11GETKLASS"></a><h3>xmlSecTransformInclC14N11GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformInclC14N11GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14N11GetKlass"></a><h3>xmlSecTransformInclC14N11GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformInclC14N11GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>C14N version 1.1 (http://www.w3.org/TR/xml-c14n11)</p>
-<div class="REFSECT3">
-<a name="AEN22601"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInclC14N11GetKlass.returns"></a><h4>Returns</h4>
 <p> c14n v1.1 transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14N11WITHCOMMENTSGETKLASS"></a><h3>xmlSecTransformInclC14N11WithCommentsGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14N11WithCommentsGetKlass"></a><h3>xmlSecTransformInclC14N11WithCommentsGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformInclC14N11WithCommentsGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>C14N version 1.1 (http://www.w3.org/TR/xml-c14n11) with comments</p>
-<div class="REFSECT3">
-<a name="AEN22614"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformInclC14N11WithCommentsGetKlass.returns"></a><h4>Returns</h4>
 <p> c14n v1.1 with comments transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMEXCLC14NGETKLASS"></a><h3>xmlSecTransformExclC14NGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformExclC14NGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformExclC14NGetKlass"></a><h3>xmlSecTransformExclC14NGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformExclC14NGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Exclusive canoncicalization that ommits comments transform klass
 (http://www.w3.org/TR/xml-exc-c14n/).</p>
-<div class="REFSECT3">
-<a name="AEN22627"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformExclC14NGetKlass.returns"></a><h4>Returns</h4>
 <p> exclusive c14n transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMEXCLC14NWITHCOMMENTSGETKLASS"></a><h3>xmlSecTransformExclC14NWithCommentsGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformExclC14NWithCommentsGetKlass"></a><h3>xmlSecTransformExclC14NWithCommentsGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformExclC14NWithCommentsGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Exclusive canoncicalization that includes comments transform klass
 (http://www.w3.org/TR/xml-exc-c14n/).</p>
-<div class="REFSECT3">
-<a name="AEN22640"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformExclC14NWithCommentsGetKlass.returns"></a><h4>Returns</h4>
 <p> exclusive c14n with comments transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMENVELOPEDGETKLASS"></a><h3>xmlSecTransformEnvelopedGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformEnvelopedGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The enveloped transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-EnvelopedSignature</span></font>):</p>
+<div class="refsect2">
+<a name="xmlSecTransformEnvelopedGetKlass"></a><h3>xmlSecTransformEnvelopedGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformEnvelopedGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The enveloped transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-EnvelopedSignature</span></font>):</p>
 <p>An enveloped signature transform T removes the whole Signature element
 containing T from the digest calculation of the Reference element
 containing T. The entire string of characters used by an XML processor
@@ -3877,7 +3887,7 @@ result from replacing T with an XPath transform containing the following
 XPath parameter element:</p>
 <p>  <XPath xmlns:dsig="...">
     count(ancestor-or-self::dsig:Signature |
-    <font><code class="FUNCTION">here()</code></font>/ancestor::dsig:Signature[1]) >
+    <font><code class="function">here()</code></font>/ancestor::dsig:Signature[1]) >
     count(ancestor-or-self::dsig:Signature)
   </XPath></p>
 <p>The input and output requirements of this transform are identical to
@@ -3886,109 +3896,108 @@ its parent XML document. Note that it is not necessary to use an XPath
 expression evaluator to create this transform. However, this transform
 MUST produce output in exactly the same manner as the XPath transform
 parameterized by the XPath expression above.</p>
-<div class="REFSECT3">
-<a name="AEN22660"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformEnvelopedGetKlass.returns"></a><h4>Returns</h4>
 <p> enveloped transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPATHGETKLASS"></a><h3>xmlSecTransformXPathGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformXPathGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPathGetKlass"></a><h3>xmlSecTransformXPathGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformXPathGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The XPath transform evaluates given XPath expression and
 intersects the result with the previous nodes set. See
-http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-XPath</span></font> for more details.</p>
-<div class="REFSECT3">
-<a name="AEN22675"></a><h4>Returns</h4>
+http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-XPath</span></font> for more details.</p>
+<div class="refsect3">
+<a name="xmlSecTransformXPathGetKlass.returns"></a><h4>Returns</h4>
 <p> XPath transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPATH2GETKLASS"></a><h3>xmlSecTransformXPath2GetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformXPath2GetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPath2GetKlass"></a><h3>xmlSecTransformXPath2GetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformXPath2GetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The XPath2 transform (http://www.w3.org/TR/xmldsig-filter2/).</p>
-<div class="REFSECT3">
-<a name="AEN22688"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformXPath2GetKlass.returns"></a><h4>Returns</h4>
 <p> XPath2 transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPOINTERGETKLASS"></a><h3>xmlSecTransformXPointerGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformXPointerGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPointerGetKlass"></a><h3>xmlSecTransformXPointerGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformXPointerGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The XPointer transform klass
 (http://www.ietf.org/internet-drafts/draft-eastlake-xmldsig-uri-02.txt).</p>
-<div class="REFSECT3">
-<a name="AEN22701"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformXPointerGetKlass.returns"></a><h4>Returns</h4>
 <p> XPointer transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPOINTERSETEXPR"></a><h3>xmlSecTransformXPointerSetExpr ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformXPointerSetExpr (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *expr</code>,
-                                <code class="PARAMETER"><a href="xmlsec-nodeset.html#XMLSECNODESETTYPE"><span class="TYPE">xmlSecNodeSetType</span></a> nodeSetType</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> hereNode</code>);</pre>
-<p>Sets the XPointer expression for an XPointer <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformXPointerSetExpr"></a><h3>xmlSecTransformXPointerSetExpr ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformXPointerSetExpr (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *expr</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-nodeset.html#xmlSecNodeSetType" title="enum xmlSecNodeSetType"><span class="type">xmlSecNodeSetType</span></a> nodeSetType</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> hereNode</code></em>);</pre>
+<p>Sets the XPointer expression for an XPointer <em class="parameter"><code>transform</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22725"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22727"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformXPointerSetExpr.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to XPointer transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to XPointer transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>expr</p></td>
-<td><p>the XPointer expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>expr</p></td>
+<td class="parameter_description"><p>the XPointer expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeSetType</p></td>
-<td><p>the type of evaluated XPointer expression.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeSetType</p></td>
+<td class="parameter_description"><p>the type of evaluated XPointer expression.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>hereNode</p></td>
-<td><p>the pointer to "here" node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>hereNode</p></td>
+<td class="parameter_description"><p>the pointer to "here" node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN22754"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformXPointerSetExpr.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="XMLSECTRANSFORMRELATIONSHIPGETKLASS"></a><h3>xmlSecTransformRelationshipGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformRelationshipGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p></p>
+<div class="refsect2">
+<a name="xmlSecTransformRelationshipGetKlass"></a><h3>xmlSecTransformRelationshipGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformRelationshipGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXSLTGETKLASS"></a><h3>xmlSecTransformXsltGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformXsltGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>XSLT transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-XSLT</span></font>):</p>
+<div class="refsect2">
+<a name="xmlSecTransformXsltGetKlass"></a><h3>xmlSecTransformXsltGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformXsltGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>XSLT transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-XSLT</span></font>):</p>
 <p>The normative specification for XSL Transformations is [XSLT].
 Specification of a namespace-qualified stylesheet element, which MUST be
 the sole child of the Transform element, indicates that the specified style
@@ -4011,377 +4020,418 @@ after the XSLT transform to canonicalize the output. These steps will help
 to ensure interoperability of the resulting signatures among applications
 that support the XSLT transform. Note that if the output is actually HTML,
 then the result of these steps is logically equivalent [XHTML].</p>
-<div class="REFSECT3">
-<a name="AEN22782"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformXsltGetKlass.returns"></a><h4>Returns</h4>
 <p> pointer to XSLT transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXSLTSETDEFAULTSECURITYPREFS"></a><h3>xmlSecTransformXsltSetDefaultSecurityPrefs ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformXsltSetDefaultSecurityPrefs"></a><h3>xmlSecTransformXsltSetDefaultSecurityPrefs ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
 xmlSecTransformXsltSetDefaultSecurityPrefs
-                               (<code class="PARAMETER"><font><span class="TYPE">xsltSecurityPrefsPtr</span></font> sec</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xsltSecurityPrefsPtr</span></font> sec</code></em>);</pre>
 <p>Sets the new default security preferences. The xmlsec default security policy is 
 to disable everything.</p>
-<div class="REFSECT3">
-<a name="AEN22796"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22798"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformXsltSetDefaultSecurityPrefs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>sec</p></td>
-<td><p>the new security preferences</p></td>
-<td> </td>
+<td class="parameter_name"><p>sec</p></td>
+<td class="parameter_description"><p>the new security preferences</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMREMOVEXMLTAGSC14NGETKLASS"></a><h3>xmlSecTransformRemoveXmlTagsC14NGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
+<div class="refsect2">
+<a name="xmlSecTransformRemoveXmlTagsC14NGetKlass"></a><h3>xmlSecTransformRemoveXmlTagsC14NGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
 xmlSecTransformRemoveXmlTagsC14NGetKlass
-                               (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p>The "remove xml tags" transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-Base-64</span></font>):
+                               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>The "remove xml tags" transform klass (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-Base-64</span></font>):
 Base64 transform requires an octet stream for input. If an XPath node-set
 (or sufficiently functional alternative) is given as input, then it is
 converted to an octet stream by performing operations logically equivalent
-to 1) applying an XPath transform with expression self::<font><code class="FUNCTION">text()</code></font>, then 2)
+to 1) applying an XPath transform with expression self::<font><code class="function">text()</code></font>, then 2)
 taking the string-value of the node-set. Thus, if an XML element is
 identified by a barename XPointer in the Reference URI, and its content
 consists solely of base64 encoded character data, then this transform
 automatically strips away the start and end tags of the identified element
 and any of its descendant elements as well as any descendant comments and
 processing instructions. The output of this transform is an octet stream.</p>
-<div class="REFSECT3">
-<a name="AEN22821"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformRemoveXmlTagsC14NGetKlass.returns"></a><h4>Returns</h4>
 <p> "remove xml tags" transform id.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMVISA3DHACKGETKLASS"></a><h3>xmlSecTransformVisa3DHackGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecTransformId</span></font>
-xmlSecTransformVisa3DHackGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecTransformVisa3DHackGetKlass"></a><h3>xmlSecTransformVisa3DHackGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecTransformId</span></font>
+xmlSecTransformVisa3DHackGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The Visa3DHack transform klass. The only reason why we need this
 is Visa3D protocol. It doesn't follow XML/XPointer/XMLDSig specs and allows
 invalid XPointer expressions in the URI attribute. Since we couldn't evaluate
 such expressions thru XPath/XPointer engine, we need to have this hack here.</p>
-<div class="REFSECT3">
-<a name="AEN22834"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformVisa3DHackGetKlass.returns"></a><h4>Returns</h4>
 <p> Visa3DHack transform klass.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMVISA3DHACKSETID"></a><h3>xmlSecTransformVisa3DHackSetID ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecTransformVisa3DHackSetID (<code class="PARAMETER"><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> transform</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *id</code>);</pre>
-<p>Sets the ID value for an Visa3DHack <code class="PARAMETER">transform</code>
+<div class="refsect2">
+<a name="xmlSecTransformVisa3DHackSetID"></a><h3>xmlSecTransformVisa3DHackSetID ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecTransformVisa3DHackSetID (<em class="parameter"><code><font><span class="type">xmlSecTransformPtr</span></font> transform</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *id</code></em>);</pre>
+<p>Sets the ID value for an Visa3DHack <em class="parameter"><code>transform</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN22852"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22854"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformVisa3DHackSetID.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>transform</p></td>
-<td><p>the pointer to Visa3DHack transform.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transform</p></td>
+<td class="parameter_description"><p>the pointer to Visa3DHack transform.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>id</p></td>
-<td><p>the ID value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>id</p></td>
+<td class="parameter_description"><p>the ID value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN22869"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecTransformVisa3DHackSetID.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-TRANSFORMS.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-transforms.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-TRANSFORM-BINARY-CHUNK:CAPS"></a><h3>XMLSEC_TRANSFORM_BINARY_CHUNK</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_TRANSFORM_BINARY_CHUNK                   1024</pre>
+<pre class="programlisting">#define XMLSEC_TRANSFORM_BINARY_CHUNK                   1024
+</pre>
 <p>The binary data chunks size. XMLSec processes binary data one chunk
 at a time. Changing this impacts xmlsec memory usage and performance.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMSTATUS"></a><h3>enum xmlSecTransformStatus</h3>
+<div class="refsect2">
+<a name="xmlSecTransformStatus"></a><h3>enum xmlSecTransformStatus</h3>
 <p>The transform execution status.</p>
-<div class="REFSECT3">
-<a name="AEN22885"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22887"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformStatus.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecTransformStatusNone</p></td>
-<td><p>the status unknown.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformStatusNone"></a>xmlSecTransformStatusNone</p></td>
+<td class="enum_member_description">
+<p>the status unknown.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformStatusWorking</p></td>
-<td><p>the transform is executed.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformStatusWorking"></a>xmlSecTransformStatusWorking</p></td>
+<td class="enum_member_description">
+<p>the transform is executed.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformStatusFinished</p></td>
-<td><p>the transform finished</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformStatusFinished"></a>xmlSecTransformStatusFinished</p></td>
+<td class="enum_member_description">
+<p>the transform finished</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformStatusOk</p></td>
-<td><p>the transform succeeded.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformStatusOk"></a>xmlSecTransformStatusOk</p></td>
+<td class="enum_member_description">
+<p>the transform succeeded.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformStatusFail</p></td>
-<td><p>the transform failed (an error occur).</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformStatusFail"></a>xmlSecTransformStatusFail</p></td>
+<td class="enum_member_description">
+<p>the transform failed (an error occur).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMMODE"></a><h3>enum xmlSecTransformMode</h3>
+<div class="refsect2">
+<a name="xmlSecTransformMode"></a><h3>enum xmlSecTransformMode</h3>
 <p>The transform operation mode</p>
-<div class="REFSECT3">
-<a name="AEN22925"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22927"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformMode.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecTransformModeNone</p></td>
-<td><p>the mode is unknown.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformModeNone"></a>xmlSecTransformModeNone</p></td>
+<td class="enum_member_description">
+<p>the mode is unknown.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformModePush</p></td>
-<td><p>pushing data thru transform.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformModePush"></a>xmlSecTransformModePush</p></td>
+<td class="enum_member_description">
+<p>pushing data thru transform.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformModePop</p></td>
-<td><p>popping data from transform.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformModePop"></a>xmlSecTransformModePop</p></td>
+<td class="enum_member_description">
+<p>popping data from transform.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMOPERATION"></a><h3>enum xmlSecTransformOperation</h3>
+<div class="refsect2">
+<a name="xmlSecTransformOperation"></a><h3>enum xmlSecTransformOperation</h3>
 <p>The transform operation.</p>
-<div class="REFSECT3">
-<a name="AEN22953"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN22955"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformOperation.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecTransformOperationNone</p></td>
-<td><p>the operation is unknown.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationNone"></a>xmlSecTransformOperationNone</p></td>
+<td class="enum_member_description">
+<p>the operation is unknown.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationEncode</p></td>
-<td><p>the encode operation (for base64 transform).</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationEncode"></a>xmlSecTransformOperationEncode</p></td>
+<td class="enum_member_description">
+<p>the encode operation (for base64 transform).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationDecode</p></td>
-<td><p>the decode operation (for base64 transform).</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationDecode"></a>xmlSecTransformOperationDecode</p></td>
+<td class="enum_member_description">
+<p>the decode operation (for base64 transform).</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationSign</p></td>
-<td><p>the sign or digest operation.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationSign"></a>xmlSecTransformOperationSign</p></td>
+<td class="enum_member_description">
+<p>the sign or digest operation.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationVerify</p></td>
-<td><p>the verification of signature or digest operation.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationVerify"></a>xmlSecTransformOperationVerify</p></td>
+<td class="enum_member_description">
+<p>the verification of signature or digest operation.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationEncrypt</p></td>
-<td><p>the encryption operation.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationEncrypt"></a>xmlSecTransformOperationEncrypt</p></td>
+<td class="enum_member_description">
+<p>the encryption operation.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecTransformOperationDecrypt</p></td>
-<td><p>the decryption operation.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecTransformOperationDecrypt"></a>xmlSecTransformOperationDecrypt</p></td>
+<td class="enum_member_description">
+<p>the decryption operation.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPE"></a><h3>xmlSecTransformUriType</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                            xmlSecTransformUriType;</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriType"></a><h3>xmlSecTransformUriType</h3>
+<pre class="programlisting">typedef unsigned int                            xmlSecTransformUriType;
+</pre>
 <p>URI transform type bit mask.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPENONE"></a><h3>xmlSecTransformUriTypeNone</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeNone              0x0000</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeNone"></a><h3>xmlSecTransformUriTypeNone</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeNone              0x0000
+</pre>
 <p>The URI type is unknown or not set.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPEEMPTY"></a><h3>xmlSecTransformUriTypeEmpty</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeEmpty             0x0001</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeEmpty"></a><h3>xmlSecTransformUriTypeEmpty</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeEmpty             0x0001
+</pre>
 <p>The empty URI ("") type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPESAMEDOCUMENT"></a><h3>xmlSecTransformUriTypeSameDocument</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeSameDocument      0x0002</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeSameDocument"></a><h3>xmlSecTransformUriTypeSameDocument</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeSameDocument      0x0002
+</pre>
 <p>The smae document ("#...") but not empty ("") URI type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPELOCAL"></a><h3>xmlSecTransformUriTypeLocal</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeLocal             0x0004</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeLocal"></a><h3>xmlSecTransformUriTypeLocal</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeLocal             0x0004
+</pre>
 <p>The local URI ("file:///....") type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPEREMOTE"></a><h3>xmlSecTransformUriTypeRemote</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeRemote            0x0008</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeRemote"></a><h3>xmlSecTransformUriTypeRemote</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeRemote            0x0008
+</pre>
 <p>The remote URI type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMURITYPEANY"></a><h3>xmlSecTransformUriTypeAny</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUriTypeAny               0xFFFF</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUriTypeAny"></a><h3>xmlSecTransformUriTypeAny</h3>
+<pre class="programlisting">#define xmlSecTransformUriTypeAny               0xFFFF
+</pre>
 <p>Any URI type.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDATATYPE"></a><h3>xmlSecTransformDataType</h3>
-<pre class="PROGRAMLISTING">typedef xmlSecByte                              xmlSecTransformDataType;</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDataType"></a><h3>xmlSecTransformDataType</h3>
+<pre class="programlisting">typedef xmlSecByte                              xmlSecTransformDataType;
+</pre>
 <p>Transform data type bit mask.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDATATYPEUNKNOWN"></a><h3>xmlSecTransformDataTypeUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDataTypeUnknown          0x0000</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDataTypeUnknown"></a><h3>xmlSecTransformDataTypeUnknown</h3>
+<pre class="programlisting">#define xmlSecTransformDataTypeUnknown          0x0000
+</pre>
 <p>The transform data type is unknown or nor data expected.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDATATYPEBIN"></a><h3>xmlSecTransformDataTypeBin</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDataTypeBin              0x0001</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDataTypeBin"></a><h3>xmlSecTransformDataTypeBin</h3>
+<pre class="programlisting">#define xmlSecTransformDataTypeBin              0x0001
+</pre>
 <p>The binary transform data.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMDATATYPEXML"></a><h3>xmlSecTransformDataTypeXml</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformDataTypeXml              0x0002</pre>
+<div class="refsect2">
+<a name="xmlSecTransformDataTypeXml"></a><h3>xmlSecTransformDataTypeXml</h3>
+<pre class="programlisting">#define xmlSecTransformDataTypeXml              0x0002
+</pre>
 <p>The xml transform data.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGE"></a><h3>xmlSecTransformUsage</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                            xmlSecTransformUsage;</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsage"></a><h3>xmlSecTransformUsage</h3>
+<pre class="programlisting">typedef unsigned int                            xmlSecTransformUsage;
+</pre>
 <p>The transform usage bit mask.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEUNKNOWN"></a><h3>xmlSecTransformUsageUnknown</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageUnknown             0x0000</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageUnknown"></a><h3>xmlSecTransformUsageUnknown</h3>
+<pre class="programlisting">#define xmlSecTransformUsageUnknown             0x0000
+</pre>
 <p>Transforms usage is unknown or undefined.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEDSIGTRANSFORM"></a><h3>xmlSecTransformUsageDSigTransform</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageDSigTransform       0x0001</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageDSigTransform"></a><h3>xmlSecTransformUsageDSigTransform</h3>
+<pre class="programlisting">#define xmlSecTransformUsageDSigTransform       0x0001
+</pre>
 <p>Transform could be used in <dsig:Transform>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEC14NMETHOD"></a><h3>xmlSecTransformUsageC14NMethod</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageC14NMethod          0x0002</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageC14NMethod"></a><h3>xmlSecTransformUsageC14NMethod</h3>
+<pre class="programlisting">#define xmlSecTransformUsageC14NMethod          0x0002
+</pre>
 <p>Transform could be used in <dsig:CanonicalizationMethod>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEDIGESTMETHOD"></a><h3>xmlSecTransformUsageDigestMethod</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageDigestMethod        0x0004</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageDigestMethod"></a><h3>xmlSecTransformUsageDigestMethod</h3>
+<pre class="programlisting">#define xmlSecTransformUsageDigestMethod        0x0004
+</pre>
 <p>Transform could be used in <dsig:DigestMethod>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGESIGNATUREMETHOD"></a><h3>xmlSecTransformUsageSignatureMethod</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageSignatureMethod     0x0008</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageSignatureMethod"></a><h3>xmlSecTransformUsageSignatureMethod</h3>
+<pre class="programlisting">#define xmlSecTransformUsageSignatureMethod     0x0008
+</pre>
 <p>Transform could be used in <dsig:SignatureMethod>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEENCRYPTIONMETHOD"></a><h3>xmlSecTransformUsageEncryptionMethod</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageEncryptionMethod    0x0010</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageEncryptionMethod"></a><h3>xmlSecTransformUsageEncryptionMethod</h3>
+<pre class="programlisting">#define xmlSecTransformUsageEncryptionMethod    0x0010
+</pre>
 <p>Transform could be used in <enc:EncryptionMethod>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMUSAGEANY"></a><h3>xmlSecTransformUsageAny</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformUsageAny                 0xFFFF</pre>
+<div class="refsect2">
+<a name="xmlSecTransformUsageAny"></a><h3>xmlSecTransformUsageAny</h3>
+<pre class="programlisting">#define xmlSecTransformUsageAny                 0xFFFF
+</pre>
 <p>Transform could be used for operation.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-TRANSFORMCTX-FLAGS-USE-VISA3D-HACK:CAPS"></a><h3>XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK               0x00000001</pre>
+<pre class="programlisting">#define XMLSEC_TRANSFORMCTX_FLAGS_USE_VISA3D_HACK               0x00000001
+</pre>
 <p>If this flag is set then URI ID references are resolved directly
 without using XPointers. This allows one to sign/verify Visa3D
 documents that don't follow XML, XPointer and XML DSig specifications.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMCTX"></a><h3>struct xmlSecTransformCtx</h3>
-<pre class="PROGRAMLISTING">struct xmlSecTransformCtx {
+<div class="refsect2">
+<a name="xmlSecTransformCtx"></a><h3>struct xmlSecTransformCtx</h3>
+<pre class="programlisting">struct xmlSecTransformCtx {
     /* user settings */
     void*                                       userData;
     unsigned int                                flags;
@@ -4401,106 +4451,105 @@ documents that don't follow XML, XPointer and XML DSig specifications.</p>
     /* for the future */
     void*                                       reserved0;
     void*                                       reserved1;
-};</pre>
+};
+</pre>
 <p>The transform execution context.</p>
-<div class="REFSECT3">
-<a name="AEN23126"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23128"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformCtx.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">userData</code>;</p></td>
-<td><p>the pointer to user data (xmlsec and xmlsec-crypto never
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransformCtx.userData"></a>userData</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto never
 touch this).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags</code>;</p></td>
-<td><p>the bit mask flags to control transforms execution
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecTransformCtx.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_description"><p>the bit mask flags to control transforms execution
 (reserved for the future).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags2</code>;</p></td>
-<td><p>the bit mask flags to control transforms execution
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecTransformCtx.flags2"></a>flags2</code></em>;</p></td>
+<td class="struct_member_description"><p>the bit mask flags to control transforms execution
 (reserved for the future).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE"><span class="TYPE">xmlSecTransformUriType</span></a> <code class="STRUCTFIELD">enabledUris</code>;</p></td>
-<td><p>the allowed transform data source uri types.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriType" title="xmlSecTransformUriType"><span class="type">xmlSecTransformUriType</span></a> <em class="structfield"><code><a name="xmlSecTransformCtx.enabledUris"></a>enabledUris</code></em>;</p></td>
+<td class="struct_member_description"><p>the allowed transform data source uri types.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">enabledTransforms</code>;</p></td>
-<td><p>the list of enabled transforms; if list is empty (default)
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecTransformCtx.enabledTransforms"></a>enabledTransforms</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of enabled transforms; if list is empty (default)
 then all registered transforms are enabled.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREEXECUTECALLBACK"><span class="TYPE">xmlSecTransformCtxPreExecuteCallback</span></a> <code class="STRUCTFIELD">preExecCallback</code>;</p></td>
-<td><p>the callback called after preparing transform chain
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPreExecuteCallback" title="xmlSecTransformCtxPreExecuteCallback ()"><span class="type">xmlSecTransformCtxPreExecuteCallback</span></a> <em class="structfield"><code><a name="xmlSecTransformCtx.preExecCallback"></a>preExecCallback</code></em>;</p></td>
+<td class="struct_member_description"><p>the callback called after preparing transform chain
 and right before actual data processing; application
 can use this callback to change transforms parameters,
 insert additional transforms in the chain or do
 additional validation (and abort transform execution
 if needed).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</p></td>
-<td><p>the pointer to transforms result buffer.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecBufferPtr</span></font> <em class="structfield"><code><a name="xmlSecTransformCtx.result"></a>result</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to transforms result buffer.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUS"><span class="TYPE">xmlSecTransformStatus</span></a> <code class="STRUCTFIELD">status</code>;</p></td>
-<td><p>the transforms chain processng status.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformStatus" title="enum xmlSecTransformStatus"><span class="type">xmlSecTransformStatus</span></a> <em class="structfield"><code><a name="xmlSecTransformCtx.status"></a>status</code></em>;</p></td>
+<td class="struct_member_description"><p>the transforms chain processng status.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">uri</code>;</p></td>
-<td><p>the data source URI without xpointer expression.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecTransformCtx.uri"></a>uri</code></em>;</p></td>
+<td class="struct_member_description"><p>the data source URI without xpointer expression.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">xptrExpr</code>;</p></td>
-<td><p>the xpointer expression from data source URI (if any).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecTransformCtx.xptrExpr"></a>xptrExpr</code></em>;</p></td>
+<td class="struct_member_description"><p>the xpointer expression from data source URI (if any).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">first</code>;</p></td>
-<td><p>the first transform in the chain.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecTransformCtx.first"></a>first</code></em>;</p></td>
+<td class="struct_member_description"><p>the first transform in the chain.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">last</code>;</p></td>
-<td><p>the last transform in the chain.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecTransformCtx.last"></a>last</code></em>;</p></td>
+<td class="struct_member_description"><p>the last transform in the chain.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransformCtx.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransformCtx.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORM"></a><h3>struct xmlSecTransform</h3>
-<pre class="PROGRAMLISTING">struct xmlSecTransform {
+<div class="refsect2">
+<a name="xmlSecTransform"></a><h3>struct xmlSecTransform</h3>
+<pre class="programlisting">struct xmlSecTransform {
     xmlSecTransformId                   id;
     xmlSecTransformOperation            operation;
     xmlSecTransformStatus               status;
@@ -4521,87 +4570,86 @@ if needed).</p></td>
     /* reserved for the future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The transform structure.</p>
-<div class="REFSECT3">
-<a name="AEN23263"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23265"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransform.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">xmlSecTransformId</span></font> <code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the transform id (pointer to <font><span class="TYPE">xmlSecTransformId</span></font>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecTransform.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform id (pointer to <font><span class="type">xmlSecTransformId</span></font>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION"><span class="TYPE">xmlSecTransformOperation</span></a> <code class="STRUCTFIELD">operation</code>;</p></td>
-<td><p>the transform's opertaion.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation"><span class="type">xmlSecTransformOperation</span></a> <em class="structfield"><code><a name="xmlSecTransform.operation"></a>operation</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform's opertaion.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSTATUS"><span class="TYPE">xmlSecTransformStatus</span></a> <code class="STRUCTFIELD">status</code>;</p></td>
-<td><p>the current status.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformStatus" title="enum xmlSecTransformStatus"><span class="type">xmlSecTransformStatus</span></a> <em class="structfield"><code><a name="xmlSecTransform.status"></a>status</code></em>;</p></td>
+<td class="struct_member_description"><p>the current status.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">hereNode</code>;</p></td>
-<td><p>the pointer to transform's <dsig:Transform /> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecTransform.hereNode"></a>hereNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to transform's <dsig:Transform /> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">next</code>;</p></td>
-<td><p>the pointer to next transform in the chain.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecTransform.next"></a>next</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to next transform in the chain.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">prev</code>;</p></td>
-<td><p>the pointer to previous transform in the chain.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecTransform.prev"></a>prev</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to previous transform in the chain.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBuffer</span></a> <code class="STRUCTFIELD">inBuf</code>;</p></td>
-<td><p>the input binary data buffer.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="type">xmlSecBuffer</span></a> <em class="structfield"><code><a name="xmlSecTransform.inBuf"></a>inBuf</code></em>;</p></td>
+<td class="struct_member_description"><p>the input binary data buffer.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBuffer</span></a> <code class="STRUCTFIELD">outBuf</code>;</p></td>
-<td><p>the output binary data buffer.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-buffer.html#xmlSecBuffer" title="struct xmlSecBuffer"><span class="type">xmlSecBuffer</span></a> <em class="structfield"><code><a name="xmlSecTransform.outBuf"></a>outBuf</code></em>;</p></td>
+<td class="struct_member_description"><p>the output binary data buffer.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> <code class="STRUCTFIELD">inNodes</code>;</p></td>
-<td><p>the input XML nodes.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecTransform.inNodes"></a>inNodes</code></em>;</p></td>
+<td class="struct_member_description"><p>the input XML nodes.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-nodeset.html#XMLSECNODESET"><span class="TYPE">xmlSecNodeSetPtr</span></a> <code class="STRUCTFIELD">outNodes</code>;</p></td>
-<td><p>the output XML nodes.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecNodeSetPtr</span></font> <em class="structfield"><code><a name="xmlSecTransform.outNodes"></a>outNodes</code></em>;</p></td>
+<td class="struct_member_description"><p>the output XML nodes.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransform.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransform.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMKLASS"></a><h3>struct xmlSecTransformKlass</h3>
-<pre class="PROGRAMLISTING">struct xmlSecTransformKlass {
+<div class="refsect2">
+<a name="xmlSecTransformKlass"></a><h3>struct xmlSecTransformKlass</h3>
+<pre class="programlisting">struct xmlSecTransformKlass {
     /* data */
     xmlSecSize                          klassSize;
     xmlSecSize                          objSize;
@@ -4632,232 +4680,238 @@ if needed).</p></td>
     /* reserved for future */
     void*                               reserved0;
     void*                               reserved1;
-};</pre>
+};
+</pre>
 <p>The transform klass desccription structure.</p>
-<div class="REFSECT3">
-<a name="AEN23384"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23386"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecTransformKlass.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">klassSize</code>;</p></td>
-<td><p>the transform klass structure size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.klassSize"></a>klassSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform klass structure size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> <code class="STRUCTFIELD">objSize</code>;</p></td>
-<td><p>the transform object size.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize"><span class="type">xmlSecSize</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.objSize"></a>objSize</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform object size.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">name</code>;</p></td>
-<td><p>the transform's name.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecTransformKlass.name"></a>name</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform's name.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">href</code>;</p></td>
-<td><p>the transform's identification string (href).</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecTransformKlass.href"></a>href</code></em>;</p></td>
+<td class="struct_member_description"><p>the transform's identification string (href).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMUSAGE"><span class="TYPE">xmlSecTransformUsage</span></a> <code class="STRUCTFIELD">usage</code>;</p></td>
-<td><p>the allowed transforms usages.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUsage" title="xmlSecTransformUsage"><span class="type">xmlSecTransformUsage</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.usage"></a>usage</code></em>;</p></td>
+<td class="struct_member_description"><p>the allowed transforms usages.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMINITIALIZEMETHOD"><span class="TYPE">xmlSecTransformInitializeMethod</span></a> <code class="STRUCTFIELD">initialize</code>;</p></td>
-<td><p>the initialization method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformInitializeMethod" title="xmlSecTransformInitializeMethod ()"><span class="type">xmlSecTransformInitializeMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.initialize"></a>initialize</code></em>;</p></td>
+<td class="struct_member_description"><p>the initialization method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMFINALIZEMETHOD"><span class="TYPE">xmlSecTransformFinalizeMethod</span></a> <code class="STRUCTFIELD">finalize</code>;</p></td>
-<td><p>the finmalization (destroy) function.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformFinalizeMethod" title="xmlSecTransformFinalizeMethod ()"><span class="type">xmlSecTransformFinalizeMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.finalize"></a>finalize</code></em>;</p></td>
+<td class="struct_member_description"><p>the finmalization (destroy) function.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEREADMETHOD"><span class="TYPE">xmlSecTransformNodeReadMethod</span></a> <code class="STRUCTFIELD">readNode</code>;</p></td>
-<td><p>the XML node read method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeReadMethod" title="xmlSecTransformNodeReadMethod ()"><span class="type">xmlSecTransformNodeReadMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.readNode"></a>readNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML node read method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMNODEWRITEMETHOD"><span class="TYPE">xmlSecTransformNodeWriteMethod</span></a> <code class="STRUCTFIELD">writeNode</code>;</p></td>
-<td><p>the XML node write method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformNodeWriteMethod" title="xmlSecTransformNodeWriteMethod ()"><span class="type">xmlSecTransformNodeWriteMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.writeNode"></a>writeNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML node write method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYREQUIREMENTSMETHOD"><span class="TYPE">xmlSecTransformSetKeyRequirementsMethod</span></a> <code class="STRUCTFIELD">setKeyReq</code>;</p></td>
-<td><p>the set key requirements method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyRequirementsMethod" title="xmlSecTransformSetKeyRequirementsMethod ()"><span class="type">xmlSecTransformSetKeyRequirementsMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.setKeyReq"></a>setKeyReq</code></em>;</p></td>
+<td class="struct_member_description"><p>the set key requirements method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMSETKEYMETHOD"><span class="TYPE">xmlSecTransformSetKeyMethod</span></a> <code class="STRUCTFIELD">setKey</code>;</p></td>
-<td><p>the set key method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformSetKeyMethod" title="xmlSecTransformSetKeyMethod ()"><span class="type">xmlSecTransformSetKeyMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.setKey"></a>setKey</code></em>;</p></td>
+<td class="struct_member_description"><p>the set key method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMVERIFYMETHOD"><span class="TYPE">xmlSecTransformVerifyMethod</span></a> <code class="STRUCTFIELD">verify</code>;</p></td>
-<td><p>the verify method (for digest and signature transforms).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformVerifyMethod" title="xmlSecTransformVerifyMethod ()"><span class="type">xmlSecTransformVerifyMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.verify"></a>verify</code></em>;</p></td>
+<td class="struct_member_description"><p>the verify method (for digest and signature transforms).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMGETDATATYPEMETHOD"><span class="TYPE">xmlSecTransformGetDataTypeMethod</span></a> <code class="STRUCTFIELD">getDataType</code>;</p></td>
-<td><p>the input/output data type query method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformGetDataTypeMethod" title="xmlSecTransformGetDataTypeMethod ()"><span class="type">xmlSecTransformGetDataTypeMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.getDataType"></a>getDataType</code></em>;</p></td>
+<td class="struct_member_description"><p>the input/output data type query method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHBINMETHOD"><span class="TYPE">xmlSecTransformPushBinMethod</span></a> <code class="STRUCTFIELD">pushBin</code>;</p></td>
-<td><p>the binary data "push thru chain" processing method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushBinMethod" title="xmlSecTransformPushBinMethod ()"><span class="type">xmlSecTransformPushBinMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.pushBin"></a>pushBin</code></em>;</p></td>
+<td class="struct_member_description"><p>the binary data "push thru chain" processing method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPBINMETHOD"><span class="TYPE">xmlSecTransformPopBinMethod</span></a> <code class="STRUCTFIELD">popBin</code>;</p></td>
-<td><p>the binary data "pop from chain" procesing method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopBinMethod" title="xmlSecTransformPopBinMethod ()"><span class="type">xmlSecTransformPopBinMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.popBin"></a>popBin</code></em>;</p></td>
+<td class="struct_member_description"><p>the binary data "pop from chain" procesing method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPUSHXMLMETHOD"><span class="TYPE">xmlSecTransformPushXmlMethod</span></a> <code class="STRUCTFIELD">pushXml</code>;</p></td>
-<td><p>the XML data "push thru chain" processing method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPushXmlMethod" title="xmlSecTransformPushXmlMethod ()"><span class="type">xmlSecTransformPushXmlMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.pushXml"></a>pushXml</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML data "push thru chain" processing method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMPOPXMLMETHOD"><span class="TYPE">xmlSecTransformPopXmlMethod</span></a> <code class="STRUCTFIELD">popXml</code>;</p></td>
-<td><p>the XML data "pop from chain" procesing method.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformPopXmlMethod" title="xmlSecTransformPopXmlMethod ()"><span class="type">xmlSecTransformPopXmlMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.popXml"></a>popXml</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML data "pop from chain" procesing method.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMEXECUTEMETHOD"><span class="TYPE">xmlSecTransformExecuteMethod</span></a> <code class="STRUCTFIELD">execute</code>;</p></td>
-<td><p>the low level data processing method used  by default
-implementations of <code class="PARAMETER">pushBin</code>
-, <code class="PARAMETER">popBin</code>
-, <code class="PARAMETER">pushXml</code>
-and <code class="PARAMETER">popXml</code>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformExecuteMethod" title="xmlSecTransformExecuteMethod ()"><span class="type">xmlSecTransformExecuteMethod</span></a> <em class="structfield"><code><a name="xmlSecTransformKlass.execute"></a>execute</code></em>;</p></td>
+<td class="struct_member_description"><p>the low level data processing method used  by default
+implementations of <em class="parameter"><code>pushBin</code></em>
+, <em class="parameter"><code>popBin</code></em>
+, <em class="parameter"><code>pushXml</code></em>
+and <em class="parameter"><code>popXml</code></em>
 .</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransformKlass.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecTransformKlass.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMIDLISTID"></a><h3>xmlSecTransformIdListId</h3>
-<pre class="PROGRAMLISTING">#define xmlSecTransformIdListId xmlSecTransformIdListGetKlass()</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdListId"></a><h3>xmlSecTransformIdListId</h3>
+<pre class="programlisting">#define xmlSecTransformIdListId xmlSecTransformIdListGetKlass()
+</pre>
 <p>Transform klasses list klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMBASE64ID"></a><h3>xmlSecTransformBase64Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformBase64Id</pre>
+<div class="refsect2">
+<a name="xmlSecTransformIdUnknown"></a><h3>xmlSecTransformIdUnknown</h3>
+<pre class="programlisting">#define xmlSecTransformIdUnknown                        ((xmlSecTransformId)NULL)
+</pre>
+<p>The "unknown" transform id (NULL).</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecTransformBase64Id"></a><h3>xmlSecTransformBase64Id</h3>
+<pre class="programlisting">#define             xmlSecTransformBase64Id</pre>
 <p>The base64 encode transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14NID"></a><h3>xmlSecTransformInclC14NId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformInclC14NId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14NId"></a><h3>xmlSecTransformInclC14NId</h3>
+<pre class="programlisting">#define             xmlSecTransformInclC14NId</pre>
 <p>The regular (inclusive) C14N without comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14NWITHCOMMENTSID"></a><h3>xmlSecTransformInclC14NWithCommentsId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformInclC14NWithCommentsId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14NWithCommentsId"></a><h3>xmlSecTransformInclC14NWithCommentsId</h3>
+<pre class="programlisting">#define             xmlSecTransformInclC14NWithCommentsId</pre>
 <p>The regular (inclusive) C14N with comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14N11ID"></a><h3>xmlSecTransformInclC14N11Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformInclC14N11Id</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14N11Id"></a><h3>xmlSecTransformInclC14N11Id</h3>
+<pre class="programlisting">#define             xmlSecTransformInclC14N11Id</pre>
 <p>The regular (inclusive) C14N 1.1 without comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMINCLC14N11WITHCOMMENTSID"></a><h3>xmlSecTransformInclC14N11WithCommentsId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformInclC14N11WithCommentsId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformInclC14N11WithCommentsId"></a><h3>xmlSecTransformInclC14N11WithCommentsId</h3>
+<pre class="programlisting">#define             xmlSecTransformInclC14N11WithCommentsId</pre>
 <p>The regular (inclusive) C14N 1.1 with comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMEXCLC14NID"></a><h3>xmlSecTransformExclC14NId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformExclC14NId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformExclC14NId"></a><h3>xmlSecTransformExclC14NId</h3>
+<pre class="programlisting">#define             xmlSecTransformExclC14NId</pre>
 <p>The exclusive C14N without comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMEXCLC14NWITHCOMMENTSID"></a><h3>xmlSecTransformExclC14NWithCommentsId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformExclC14NWithCommentsId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformExclC14NWithCommentsId"></a><h3>xmlSecTransformExclC14NWithCommentsId</h3>
+<pre class="programlisting">#define             xmlSecTransformExclC14NWithCommentsId</pre>
 <p>The exclusive C14N with comments transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMENVELOPEDID"></a><h3>xmlSecTransformEnvelopedId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformEnvelopedId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformEnvelopedId"></a><h3>xmlSecTransformEnvelopedId</h3>
+<pre class="programlisting">#define             xmlSecTransformEnvelopedId</pre>
 <p>The "enveloped" transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPATHID"></a><h3>xmlSecTransformXPathId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformXPathId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPathId"></a><h3>xmlSecTransformXPathId</h3>
+<pre class="programlisting">#define             xmlSecTransformXPathId</pre>
 <p>The XPath transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPATH2ID"></a><h3>xmlSecTransformXPath2Id</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformXPath2Id</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPath2Id"></a><h3>xmlSecTransformXPath2Id</h3>
+<pre class="programlisting">#define             xmlSecTransformXPath2Id</pre>
 <p>The XPath2 transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXPOINTERID"></a><h3>xmlSecTransformXPointerId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformXPointerId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXPointerId"></a><h3>xmlSecTransformXPointerId</h3>
+<pre class="programlisting">#define             xmlSecTransformXPointerId</pre>
 <p>The XPointer transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMRELATIONSHIPID"></a><h3>xmlSecTransformRelationshipId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformRelationshipId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRelationshipId"></a><h3>xmlSecTransformRelationshipId</h3>
+<pre class="programlisting">#define             xmlSecTransformRelationshipId</pre>
 <p>The Relationship transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMXSLTID"></a><h3>xmlSecTransformXsltId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformXsltId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformXsltId"></a><h3>xmlSecTransformXsltId</h3>
+<pre class="programlisting">#define             xmlSecTransformXsltId</pre>
 <p>The XSLT transform klass.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMREMOVEXMLTAGSC14NID"></a><h3>xmlSecTransformRemoveXmlTagsC14NId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformRemoveXmlTagsC14NId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformRemoveXmlTagsC14NId"></a><h3>xmlSecTransformRemoveXmlTagsC14NId</h3>
+<pre class="programlisting">#define             xmlSecTransformRemoveXmlTagsC14NId</pre>
 <p>The "remove all xml tags" transform klass (used before base64 transforms).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECTRANSFORMVISA3DHACKID"></a><h3>xmlSecTransformVisa3DHackId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecTransformVisa3DHackId</pre>
+<div class="refsect2">
+<a name="xmlSecTransformVisa3DHackId"></a><h3>xmlSecTransformVisa3DHackId</h3>
+<pre class="programlisting">#define             xmlSecTransformVisa3DHackId</pre>
 <p>Selects node subtree by given node id string. The only reason why we need this
 is Visa3D protocol. It doesn't follow XML/XPointer/XMLDSig specs and allows
 invalid XPointer expressions in the URI attribute. Since we couldn't evaluate
 such expressions thru XPath/XPointer engine, we need to have this hack here.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-templates.html"><b><<< templates</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-version.html"><b>version >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-verify-with-key.html b/docs/api/xmlsec-verify-with-key.html
index 7bd6957..6d11fc4 100644
--- a/docs/api/xmlsec-verify-with-key.html
+++ b/docs/api/xmlsec-verify-with-key.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifying a signature with a single key.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Signing with X509 certificate." href="xmlsec-examples-sign-x509.html">
-<link rel="NEXT" title="Verifying a signature with keys manager." href="xmlsec-verify-with-keys-mngr.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifying a signature with a single key.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-examples-sign-x509.html" title="Signing with X509 certificate.">
+<link rel="next" href="xmlsec-verify-with-keys-mngr.html" title="Verifying a signature with keys manager.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-examples-sign-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-examples-sign-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-verify-with-keys-mngr.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-VERIFY-WITH-KEY">Verifying a signature with a single key.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY1">verify1.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN702"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-verify-with-key"></a>Verifying a signature with a single key.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify1"></a>verify1.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Verifying a file using a single key.
  *
  * Verifies a file using a key from PEM file.
@@ -327,15 +300,13 @@ done:
     }
     return(res);
 }
-
</pre>
-<p></p>
-</div>
+
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-examples-sign-x509.html"><b><<< Signing with X509 certificate.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-verify-with-keys-mngr.html"><b>Verifying a signature with keys manager. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-verify-with-keys-mngr.html b/docs/api/xmlsec-verify-with-keys-mngr.html
index 1105476..83c2442 100644
--- a/docs/api/xmlsec-verify-with-keys-mngr.html
+++ b/docs/api/xmlsec-verify-with-keys-mngr.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifying a signature with keys manager.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Verifying a signature with a single key." href="xmlsec-verify-with-key.html">
-<link rel="NEXT" title="Verifying a signature with X509 certificates." href="xmlsec-verify-with-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifying a signature with keys manager.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-verify-with-key.html" title="Verifying a signature with a single key.">
+<link rel="next" href="xmlsec-verify-with-x509.html" title="Verifying a signature with X509 certificates.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-verify-with-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-verify-with-key.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-verify-with-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-VERIFY-WITH-KEYS-MNGR">Verifying a signature with keys manager.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY2">verify2.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN709"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-verify-with-keys-mngr"></a>Verifying a signature with keys manager.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify2"></a>verify2.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Verifying a file using keys manager.
  *
  * Verifies a file using keys manager
@@ -397,15 +370,13 @@ done:
     }
     return(res);
 }
-
</pre>
-<p></p>
-</div>
+
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-verify-with-key.html"><b><<< Verifying a signature with a single key.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-verify-with-x509.html"><b>Verifying a signature with X509 certificates. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-verify-with-restrictions.html b/docs/api/xmlsec-verify-with-restrictions.html
index 94a6a8d..f2ff8e2 100644
--- a/docs/api/xmlsec-verify-with-restrictions.html
+++ b/docs/api/xmlsec-verify-with-restrictions.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifying a signature with additional restrictions.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Verifying a signature with X509 certificates." href="xmlsec-verify-with-x509.html">
-<link rel="NEXT" title="Encrypting data with a template file." href="xmlsec-encrypt-template-file.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifying a signature with additional restrictions.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-verify-with-x509.html" title="Verifying a signature with X509 certificates.">
+<link rel="next" href="xmlsec-encrypt-template-file.html" title="Encrypting data with a template file.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,25 +73,25 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-verify-with-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-verify-with-x509.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-encrypt-template-file.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-VERIFY-WITH-RESTRICTIONS">Verifying a signature with additional restrictions.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY4">verify4.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN723"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-verify-with-restrictions"></a>Verifying a signature with additional restrictions.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify4"></a>verify4.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Verifying a simple SAML response with X509 certificate
  *
  * Verifies a simple SAML response. In addition to refular verification
- * we ensure that the signature has only one <a href="http://www.w3.org/TR/xmldsig-core/#sec-Reference" target="_top"><dsig:Reference/></a> element
+ * we ensure that the signature has only one <a class="ulink" href="" target="_top"><dsig:Reference/></a> element
  * with an empty or NULL URI attribute and one enveloped signature transform
  * as it is required by SAML specification.
  * 
@@ -421,16 +394,15 @@ done:
     }
     return(res);
 }
-
</pre>
-<p></p>
-</div>
+
+
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY4-TMPL">verify4-tmpl.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN729"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify4-tmpl"></a>verify4-tmpl.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: A simple SAML response template (verify4 example). 
 
@@ -448,12 +420,12 @@ Sign it using the following command (replace __ with double dashes):
           <dsig:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
         </dsig:Transforms>
         <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
-        <a href="http://www.w3.org/TR/xmldsig-core/#sec-DigestValue" target="_top"><dsig:DigestValue/></a>
+        <a class="ulink" href="" target="_top"><dsig:DigestValue/></a>
       </dsig:Reference>
     </dsig:SignedInfo>
-    <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignatureValue" target="_top"><dsig:SignatureValue/></a>
+    <a class="ulink" href="" target="_top"><dsig:SignatureValue/></a>
     <dsig:KeyInfo>
-      <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Data" target="_top"><dsig:X509Data/></a>
+      <a class="ulink" href="" target="_top"><dsig:X509Data/></a>
     </dsig:KeyInfo>
   </dsig:Signature>
   <Status>
@@ -476,16 +448,14 @@ Sign it using the following command (replace __ with double dashes):
       <AuthorityBinding AuthorityKind="samlp:AttributeQuery" Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://aa.osu.edu/"/>
     </AuthenticationStatement>
   </Assertion>
-</Response></pre>
-<p></p>
-</div>
+</Response>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY4-RES">verify4-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN737"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify4-res"></a>verify4-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: A simple SAML response template (verify4 example). 
 
@@ -553,16 +523,14 @@ fBjXssrERn05kpBcrRfzou4r3DCgQFPhjxga</dsig:X509Certificate>
       <AuthorityBinding AuthorityKind="samlp:AttributeQuery" Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://aa.osu.edu/"/>
     </AuthenticationStatement>
   </Assertion>
-</Response></pre>
-<p></p>
-</div>
+</Response>
+</pre></div>
 </div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY4-BAD-TMPL">verify4-bad-tmpl.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN742"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify4-bad-tmpl"></a>verify4-bad-tmpl.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: A simple bad SAML response template (verify4 example). 
 
@@ -587,12 +555,12 @@ Sign it using the following command (replace __ with double dashes):
           </dsig:Transform>
         </dsig:Transforms>
         <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
-        <a href="http://www.w3.org/TR/xmldsig-core/#sec-DigestValue" target="_top"><dsig:DigestValue/></a>
+        <a class="ulink" href="" target="_top"><dsig:DigestValue/></a>
       </dsig:Reference>
     </dsig:SignedInfo>
-    <a href="http://www.w3.org/TR/xmldsig-core/#sec-SignatureValue" target="_top"><dsig:SignatureValue/></a>
+    <a class="ulink" href="" target="_top"><dsig:SignatureValue/></a>
     <dsig:KeyInfo>
-      <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Data" target="_top"><dsig:X509Data/></a>
+      <a class="ulink" href="" target="_top"><dsig:X509Data/></a>
     </dsig:KeyInfo>
   </dsig:Signature>
   <Status>
@@ -615,16 +583,14 @@ Sign it using the following command (replace __ with double dashes):
       <AuthorityBinding AuthorityKind="samlp:AttributeQuery" Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://aa.osu.edu/"/>
     </AuthenticationStatement>
   </Assertion>
-</Response></pre>
-<p></p>
+</Response>
+</pre></div>
 </div>
-</div>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY4-BAD-RES">verify4-bad-res.xml</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN750"></a><pre class="PROGRAMLISTING"><?xml version="1.0" encoding="UTF-8"?>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify4-bad-res"></a>verify4-bad-res.xml</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+<?xml version="1.0" encoding="UTF-8"?>
 <!-- 
 XML Security Library example: A simple bad SAML response (verify4 example). 
 
@@ -713,15 +679,12 @@ NJ2D</X509Certificate>
       <AuthorityBinding AuthorityKind="samlp:AttributeQuery" Binding="urn:oasis:names:tc:SAML:1.0:bindings:SOAP-binding" Location="https://aa.osu.edu/"/>
     </AuthenticationStatement>
   </Assertion>
-</Response></pre>
-<p></p>
-</div>
+</Response>
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-verify-with-x509.html"><b><<< Verifying a signature with X509 certificates.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-encrypt-template-file.html"><b>Encrypting data with a template file. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-verify-with-x509.html b/docs/api/xmlsec-verify-with-x509.html
index 8b571b6..4b3078f 100644
--- a/docs/api/xmlsec-verify-with-x509.html
+++ b/docs/api/xmlsec-verify-with-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>Verifying a signature with X509 certificates.</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="Examples." href="xmlsec-examples.html">
-<link rel="PREVIOUS" title="Verifying a signature with keys manager." href="xmlsec-verify-with-keys-mngr.html">
-<link rel="NEXT" title="Verifying a signature with additional restrictions." href="xmlsec-verify-with-restrictions.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>Verifying a signature with X509 certificates.: 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-examples.html" title="Examples.">
+<link rel="prev" href="xmlsec-verify-with-keys-mngr.html" title="Verifying a signature with keys manager.">
+<link rel="next" href="xmlsec-verify-with-restrictions.html" title="Verifying a signature with additional restrictions.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,21 +73,21 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-verify-with-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
+<td width="100%" align="left" class="shortcuts"></td>
 <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<td><a accesskey="u" href="xmlsec-examples.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<td><a accesskey="p" href="xmlsec-verify-with-keys-mngr.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-verify-with-restrictions.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<br clear="all"><div class="SECT1">
-<h1 class="SECT1"><a name="XMLSEC-VERIFY-WITH-X509">Verifying a signature with X509 certificates.</a></h1>
-<br clear="all"><div class="SECT2">
-<h2 class="SECT2"><a name="XMLSEC-EXAMPLE-VERIFY3">verify3.c</a></h2>
-<p></p>
-<div class="INFORMALEXAMPLE">
-<p></p>
-<a name="AEN716"></a><pre class="PROGRAMLISTING">/** 
+<div class="sect1">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="xmlsec-verify-with-x509"></a>Verifying a signature with X509 certificates.</h2></div></div></div>
+<div class="sect2">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="xmlsec-example-verify3"></a>verify3.c</h3></div></div></div>
+<div class="informalexample"><pre class="programlisting">
+/** 
  * XML Security Library example: Verifying a file signed with X509 certificate
  *
  * Verifies a file signed with X509 certificate. 
@@ -378,15 +351,13 @@ done:
     }
     return(res);
 }
-
</pre>
-<p></p>
-</div>
+
+
+</pre></div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-verify-with-keys-mngr.html"><b><<< Verifying a signature with keys manager.</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-verify-with-restrictions.html"><b>Verifying a signature with additional restrictions. >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-version.html b/docs/api/xmlsec-version.html
index 476bef0..a8b2323 100644
--- a/docs/api/xmlsec-version.html
+++ b/docs/api/xmlsec-version.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>version</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="transforms" href="xmlsec-transforms.html">
-<link rel="NEXT" title="xmldsig" href="xmlsec-xmldsig.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>version: 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-transforms.html" title="transforms">
+<link rel="next" href="xmlsec-xmldsig.html" title="xmldsig">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,96 +73,108 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-version.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-transforms.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-xmldsig.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-VERSION"></a>version</h1>
-<div class="REFNAMEDIV">
-<a name="AEN23674"></a><h2>Name</h2>version -- Version macros.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-VERSION.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23679"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-version"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-version.top_of_page"></a>version</span></h2>
+<p>version — Version macros.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-version.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-version.html#XMLSEC-VERSION:CAPS">XMLSEC_VERSION</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-version.html#XMLSEC-VERSION:CAPS" title="XMLSEC_VERSION">XMLSEC_VERSION</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-version.html#XMLSEC-VERSION-MAJOR:CAPS">XMLSEC_VERSION_MAJOR</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-version.html#XMLSEC-VERSION-MAJOR:CAPS" title="XMLSEC_VERSION_MAJOR">XMLSEC_VERSION_MAJOR</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-version.html#XMLSEC-VERSION-MINOR:CAPS">XMLSEC_VERSION_MINOR</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-version.html#XMLSEC-VERSION-MINOR:CAPS" title="XMLSEC_VERSION_MINOR">XMLSEC_VERSION_MINOR</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-version.html#XMLSEC-VERSION-SUBMINOR:CAPS">XMLSEC_VERSION_SUBMINOR</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-version.html#XMLSEC-VERSION-SUBMINOR:CAPS" title="XMLSEC_VERSION_SUBMINOR">XMLSEC_VERSION_SUBMINOR</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-version.html#XMLSEC-VERSION-INFO:CAPS">XMLSEC_VERSION_INFO</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-version.html#XMLSEC-VERSION-INFO:CAPS" title="XMLSEC_VERSION_INFO">XMLSEC_VERSION_INFO</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
+<div class="refsect1">
+<a name="xmlsec-version.description"></a><h2>Description</h2>
+<p>
+Version macros.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-VERSION.DESCRIPTION"></a><h2>Description</h2>
-<p>Version macros.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-VERSION.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
+<div class="refsect1">
+<a name="xmlsec-version.functions_details"></a><h2>Functions</h2>
 <p></p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-VERSION.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-version.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-VERSION:CAPS"></a><h3>XMLSEC_VERSION</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_VERSION			"1.2.23"</pre>
+<pre class="programlisting">#define XMLSEC_VERSION			"1.2.24"
+</pre>
 <p>The library version string in the format
-"<major-number>.<minor-number>.<sub-minor-number>".</p>
+"$major_number.$minor_number.$sub_minor_number".</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-VERSION-MAJOR:CAPS"></a><h3>XMLSEC_VERSION_MAJOR</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_VERSION_MAJOR		1</pre>
+<pre class="programlisting">#define XMLSEC_VERSION_MAJOR		1
+</pre>
 <p>The library major version number.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-VERSION-MINOR:CAPS"></a><h3>XMLSEC_VERSION_MINOR</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_VERSION_MINOR		2</pre>
+<pre class="programlisting">#define XMLSEC_VERSION_MINOR		2
+</pre>
 <p>The library minor version number.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-VERSION-SUBMINOR:CAPS"></a><h3>XMLSEC_VERSION_SUBMINOR</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_VERSION_SUBMINOR		23</pre>
+<pre class="programlisting">#define XMLSEC_VERSION_SUBMINOR		24
+</pre>
 <p>The library sub-minor version number.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-VERSION-INFO:CAPS"></a><h3>XMLSEC_VERSION_INFO</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_VERSION_INFO		"3:23:2"</pre>
+<pre class="programlisting">#define XMLSEC_VERSION_INFO		"3:24:2"
+</pre>
 <p>The library version info string in the format
-"<major-number>+<minor-number>:<sub-minor-number>:<minor-number>".</p>
+"$major_number+$minor_number:$sub_minor_number:$minor_number".</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-transforms.html"><b><<< transforms</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-xmldsig.html"><b>xmldsig >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-x509.html b/docs/api/xmlsec-x509.html
index 312aec4..4cb327c 100644
--- a/docs/api/xmlsec-x509.html
+++ b/docs/api/xmlsec-x509.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>x509</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="xmltree" href="xmlsec-xmltree.html">
-<link rel="NEXT" title="XML Security Library for OpenSLL API Reference." href="xmlsec-openssl-ref.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>x509: 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-xmltree.html" title="xmltree">
+<link rel="next" href="xmlsec-openssl-ref.html" title="XML Security Library for OpenSLL API Reference.">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,158 +73,168 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-xmltree.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-x509.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-xmltree.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-openssl-ref.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-X509"></a>x509</h1>
-<div class="REFNAMEDIV">
-<a name="AEN28797"></a><h2>Name</h2>x509 -- <a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Certificate" target="_top"><dsig:X509Certificate/></a> node parser.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-X509.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28803"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-x509"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-x509.top_of_page"></a>x509</span></h2>
+<p>x509 — <dsig:X509Certificate/> node parser.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-x509.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody><tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-x509.html#XMLSECX509DATAGETNODECONTENT">xmlSecX509DataGetNodeContent</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-x509.html#xmlSecX509DataGetNodeContent" title="xmlSecX509DataGetNodeContent ()">xmlSecX509DataGetNodeContent</a> <span class="c_punctuation">()</span>
 </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-X509.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28815"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-x509.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-CERTIFICATE-NODE:CAPS">XMLSEC_X509DATA_CERTIFICATE_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-CERTIFICATE-NODE:CAPS" title="XMLSEC_X509DATA_CERTIFICATE_NODE">XMLSEC_X509DATA_CERTIFICATE_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-SUBJECTNAME-NODE:CAPS">XMLSEC_X509DATA_SUBJECTNAME_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-SUBJECTNAME-NODE:CAPS" title="XMLSEC_X509DATA_SUBJECTNAME_NODE">XMLSEC_X509DATA_SUBJECTNAME_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-ISSUERSERIAL-NODE:CAPS">XMLSEC_X509DATA_ISSUERSERIAL_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-ISSUERSERIAL-NODE:CAPS" title="XMLSEC_X509DATA_ISSUERSERIAL_NODE">XMLSEC_X509DATA_ISSUERSERIAL_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-SKI-NODE:CAPS">XMLSEC_X509DATA_SKI_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-SKI-NODE:CAPS" title="XMLSEC_X509DATA_SKI_NODE">XMLSEC_X509DATA_SKI_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-CRL-NODE:CAPS">XMLSEC_X509DATA_CRL_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-CRL-NODE:CAPS" title="XMLSEC_X509DATA_CRL_NODE">XMLSEC_X509DATA_CRL_NODE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-x509.html#XMLSEC-X509DATA-DEFAULT:CAPS">XMLSEC_X509DATA_DEFAULT</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-x509.html#XMLSEC-X509DATA-DEFAULT:CAPS" title="XMLSEC_X509DATA_DEFAULT">XMLSEC_X509DATA_DEFAULT</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-X509.DESCRIPTION"></a><h2>Description</h2>
-<p><a href="http://www.w3.org/TR/xmldsig-core/#sec-X509Certificate" target="_top"><dsig:X509Certificate/></a> node parser.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-X509.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECX509DATAGETNODECONTENT"></a><h3>xmlSecX509DataGetNodeContent ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecX509DataGetNodeContent (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                              <code class="PARAMETER"><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtxPtr</span></a> keyInfoCtx</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-x509.description"></a><h2>Description</h2>
+<p>
+<dsig:X509Certificate/> node parser.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-x509.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecX509DataGetNodeContent"></a><h3>xmlSecX509DataGetNodeContent ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecX509DataGetNodeContent (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlSecKeyInfoCtxPtr</span></font> keyInfoCtx</code></em>);</pre>
 <p>Reads the contents of <dsig:X509Data/> node and returns it as
 a bits mask.</p>
-<div class="REFSECT3">
-<a name="AEN28862"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28864"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecX509DataGetNodeContent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <dsig:X509Data/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:X509Data/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keyInfoCtx</p></td>
-<td><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keyInfoCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:KeyInfo/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN28879"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecX509DataGetNodeContent.returns"></a><h4>Returns</h4>
 <p> the bit mask representing the <dsig:X509Data/> node content
 or a negative value if an error occurs.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-X509.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-x509.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-CERTIFICATE-NODE:CAPS"></a><h3>XMLSEC_X509DATA_CERTIFICATE_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_X509DATA_CERTIFICATE_NODE                        0x00000001</pre>
+<pre class="programlisting">#define XMLSEC_X509DATA_CERTIFICATE_NODE                        0x00000001
+</pre>
 <p><dsig:X509Certificate/> node found or would be written back.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-SUBJECTNAME-NODE:CAPS"></a><h3>XMLSEC_X509DATA_SUBJECTNAME_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_X509DATA_SUBJECTNAME_NODE                        0x00000002</pre>
+<pre class="programlisting">#define XMLSEC_X509DATA_SUBJECTNAME_NODE                        0x00000002
+</pre>
 <p><dsig:X509SubjectName/> node found or would be written back.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-ISSUERSERIAL-NODE:CAPS"></a><h3>XMLSEC_X509DATA_ISSUERSERIAL_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_X509DATA_ISSUERSERIAL_NODE                       0x00000004</pre>
+<pre class="programlisting">#define XMLSEC_X509DATA_ISSUERSERIAL_NODE                       0x00000004
+</pre>
 <p><dsig:X509IssuerSerial/> node found or would be written back.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-SKI-NODE:CAPS"></a><h3>XMLSEC_X509DATA_SKI_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_X509DATA_SKI_NODE                                0x00000008</pre>
+<pre class="programlisting">#define XMLSEC_X509DATA_SKI_NODE                                0x00000008
+</pre>
 <p><dsig:X509SKI/> node found or would be written back.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-CRL-NODE:CAPS"></a><h3>XMLSEC_X509DATA_CRL_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_X509DATA_CRL_NODE                                0x00000010</pre>
+<pre class="programlisting">#define XMLSEC_X509DATA_CRL_NODE                                0x00000010
+</pre>
 <p><dsig:X509CRL/> node found or would be written back.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-X509DATA-DEFAULT:CAPS"></a><h3>XMLSEC_X509DATA_DEFAULT</h3>
-<pre class="PROGRAMLISTING">#define             XMLSEC_X509DATA_DEFAULT</pre>
+<pre class="programlisting">#define             XMLSEC_X509DATA_DEFAULT</pre>
 <p>Default set of nodes to write in case of empty
 <dsig:X509Data/> node template.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-xmltree.html"><b><<< xmltree</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-openssl-ref.html"><b>XML Security Library for OpenSLL API Reference. >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-xmldsig.html b/docs/api/xmlsec-xmldsig.html
index 14b176e..bada3e0 100644
--- a/docs/api/xmlsec-xmldsig.html
+++ b/docs/api/xmlsec-xmldsig.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>xmldsig</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="version" href="xmlsec-version.html">
-<link rel="NEXT" title="xmlenc" href="xmlsec-xmlenc.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>xmldsig: 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-version.html" title="version">
+<link rel="next" href="xmlsec-xmlenc.html" title="xmlenc">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,713 +73,729 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-version.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-xmldsig.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-version.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-xmlenc.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-XMLDSIG"></a>xmldsig</h1>
-<div class="REFNAMEDIV">
-<a name="AEN23745"></a><h2>Name</h2>xmldsig -- XML Digital Signature support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLDSIG.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23750"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-xmldsig"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-xmldsig.top_of_page"></a>xmldsig</span></h2>
+<p>xmldsig — XML Digital Signature support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-xmldsig.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="RETURNVALUE">xmlSecDSigCtxPtr</span></a></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE">xmlSecDSigCtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecDSigCtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxCreate" title="xmlSecDSigCtxCreate ()">xmlSecDSigCtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY">xmlSecDSigCtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDestroy" title="xmlSecDSigCtxDestroy ()">xmlSecDSigCtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE">xmlSecDSigCtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxInitialize" title="xmlSecDSigCtxInitialize ()">xmlSecDSigCtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE">xmlSecDSigCtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxFinalize" title="xmlSecDSigCtxFinalize ()">xmlSecDSigCtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN">xmlSecDSigCtxSign</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxSign" title="xmlSecDSigCtxSign ()">xmlSecDSigCtxSign</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY">xmlSecDSigCtxVerify</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxVerify" title="xmlSecDSigCtxVerify ()">xmlSecDSigCtxVerify</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLEREFERENCETRANSFORM">xmlSecDSigCtxEnableReferenceTransform</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxEnableReferenceTransform" title="xmlSecDSigCtxEnableReferenceTransform ()">xmlSecDSigCtxEnableReferenceTransform</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXENABLESIGNATURETRANSFORM">xmlSecDSigCtxEnableSignatureTransform</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxEnableSignatureTransform" title="xmlSecDSigCtxEnableSignatureTransform ()">xmlSecDSigCtxEnableSignatureTransform</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXGETPRESIGNBUFFER">xmlSecDSigCtxGetPreSignBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxGetPreSignBuffer" title="xmlSecDSigCtxGetPreSignBuffer ()">xmlSecDSigCtxGetPreSignBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGDUMP">xmlSecDSigCtxDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDebugDump" title="xmlSecDSigCtxDebugDump ()">xmlSecDSigCtxDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDEBUGXMLDUMP">xmlSecDSigCtxDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDebugXmlDump" title="xmlSecDSigCtxDebugXmlDump ()">xmlSecDSigCtxDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="RETURNVALUE">xmlSecDSigReferenceCtxPtr</span></a></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXCREATE">xmlSecDSigReferenceCtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecDSigReferenceCtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxCreate" title="xmlSecDSigReferenceCtxCreate ()">xmlSecDSigReferenceCtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDESTROY">xmlSecDSigReferenceCtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDestroy" title="xmlSecDSigReferenceCtxDestroy ()">xmlSecDSigReferenceCtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXINITIALIZE">xmlSecDSigReferenceCtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxInitialize" title="xmlSecDSigReferenceCtxInitialize ()">xmlSecDSigReferenceCtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXFINALIZE">xmlSecDSigReferenceCtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxFinalize" title="xmlSecDSigReferenceCtxFinalize ()">xmlSecDSigReferenceCtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXPROCESSNODE">xmlSecDSigReferenceCtxProcessNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxProcessNode" title="xmlSecDSigReferenceCtxProcessNode ()">xmlSecDSigReferenceCtxProcessNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXGETPREDIGESTBUFFER">xmlSecDSigReferenceCtxGetPreDigestBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxGetPreDigestBuffer" title="xmlSecDSigReferenceCtxGetPreDigestBuffer ()">xmlSecDSigReferenceCtxGetPreDigestBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGDUMP">xmlSecDSigReferenceCtxDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDebugDump" title="xmlSecDSigReferenceCtxDebugDump ()">xmlSecDSigReferenceCtxDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDEBUGXMLDUMP">xmlSecDSigReferenceCtxDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDebugXmlDump" title="xmlSecDSigReferenceCtxDebugXmlDump ()">xmlSecDSigReferenceCtxDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecPtrListId</span></font></td>
-<td>
-<a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTGETKLASS">xmlSecDSigReferenceCtxListGetKlass</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecPtrListId</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxListGetKlass" title="xmlSecDSigReferenceCtxListGetKlass ()">xmlSecDSigReferenceCtxListGetKlass</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLDSIG.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23895"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmldsig.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS">xmlSecDSigStatus</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigStatus" title="enum xmlSecDSigStatus">xmlSecDSigStatus</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS:CAPS">XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS:CAPS" title="XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS">XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNATURE">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK:CAPS">XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK:CAPS" title="XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK">XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX">xmlSecDSigCtx</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx">xmlSecDSigCtx</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN">xmlSecDSigReferenceOrigin</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceOrigin" title="enum xmlSecDSigReferenceOrigin">xmlSecDSigReferenceOrigin</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX">xmlSecDSigReferenceCtx</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtx" title="struct xmlSecDSigReferenceCtx">xmlSecDSigReferenceCtx</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXLISTID">xmlSecDSigReferenceCtxListId</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxListId" title="xmlSecDSigReferenceCtxListId">xmlSecDSigReferenceCtxListId</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLDSIG.DESCRIPTION"></a><h2>Description</h2>
-<p>XML Digital Signature support.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLDSIG.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXCREATE"></a><h3>xmlSecDSigCtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="RETURNVALUE">xmlSecDSigCtxPtr</span></a>
-xmlSecDSigCtxCreate (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmldsig.description"></a><h2>Description</h2>
+<p>
+XML Digital Signature support.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmldsig.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecDSigCtxCreate"></a><h3>xmlSecDSigCtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecDSigCtxPtr</span></font>
+xmlSecDSigCtxCreate (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Creates <dsig:Signature/> element processing context.
 The caller is responsible for destroying returned object by calling
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXDESTROY"><span class="TYPE">xmlSecDSigCtxDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN23956"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23958"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxDestroy" title="xmlSecDSigCtxDestroy ()"><span class="type">xmlSecDSigCtxDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigCtxCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN23967"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated context object or NULL if an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXDESTROY"></a><h3>xmlSecDSigCtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigCtxDestroy (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre>
-<p>Destroy context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXCREATE"><span class="TYPE">xmlSecDSigCtxCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN23983"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN23985"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecDSigCtxDestroy"></a><h3>xmlSecDSigCtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigCtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>);</pre>
+<p>Destroy context object created with <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxCreate" title="xmlSecDSigCtxCreate ()"><span class="type">xmlSecDSigCtxCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigCtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXINITIALIZE"></a><h3>xmlSecDSigCtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigCtxInitialize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                         <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecDSigCtxInitialize"></a><h3>xmlSecDSigCtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigCtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                         <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Initializes <dsig:Signature/> element processing context.
 The caller is responsible for cleaning up returned object by calling
-<a href="xmlsec-xmldsig.html#XMLSECDSIGCTXFINALIZE"><span class="TYPE">xmlSecDSigCtxFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN24010"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24012"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxFinalize" title="xmlSecDSigCtxFinalize ()"><span class="type">xmlSecDSigCtxFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigCtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24027"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxInitialize.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="XMLSECDSIGCTXFINALIZE"></a><h3>xmlSecDSigCtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigCtxFinalize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre>
-<p>Cleans up <code class="PARAMETER">dsigCtx</code>
- object initialized with <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXINITIALIZE"><span class="TYPE">xmlSecDSigCtxInitialize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN24044"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24046"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecDSigCtxFinalize"></a><h3>xmlSecDSigCtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigCtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>);</pre>
+<p>Cleans up <em class="parameter"><code>dsigCtx</code></em>
+ object initialized with <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxInitialize" title="xmlSecDSigCtxInitialize ()"><span class="type">xmlSecDSigCtxInitialize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigCtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXSIGN"></a><h3>xmlSecDSigCtxSign ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigCtxSign (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> tmpl</code>);</pre>
-<p>Signs the data as described in <code class="PARAMETER">tmpl</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxSign"></a><h3>xmlSecDSigCtxSign ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigCtxSign (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>);</pre>
+<p>Signs the data as described in <em class="parameter"><code>tmpl</code></em>
  node.</p>
-<div class="REFSECT3">
-<a name="AEN24070"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24072"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxSign.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>tmpl</p></td>
-<td><p>the pointer to <dsig:Signature/> node with signature template.</p></td>
-<td> </td>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> node with signature template.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24087"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxSign.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="XMLSECDSIGCTXVERIFY"></a><h3>xmlSecDSigCtxVerify ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigCtxVerify (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Vaidates signature in the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxVerify"></a><h3>xmlSecDSigCtxVerify ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigCtxVerify (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Validates signature in the <em class="parameter"><code>node</code></em>
 . The verification result is returned
-in <font><span class="TYPE">status</span></font> member of the <code class="PARAMETER">dsigCtx</code>
+in <font><span class="type">status</span></font> member of the <em class="parameter"><code>dsigCtx</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN24108"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24110"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxVerify.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer with <dsig:Signature/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer with <dsig:Signature/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN24125"></a><h4>Returns</h4>
-<p> 0 on success (check <font><span class="TYPE">status</span></font> member of <code class="PARAMETER">dsigCtx</code>
+<div class="refsect3">
+<a name="xmlSecDSigCtxVerify.returns"></a><h4>Returns</h4>
+<p> 0 on success (check <font><span class="type">status</span></font> member of <em class="parameter"><code>dsigCtx</code></em>
 to get
 signature verification result) or a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXENABLEREFERENCETRANSFORM"></a><h3>xmlSecDSigCtxEnableReferenceTransform ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigCtxEnableReferenceTransform (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
-<p>Enables <code class="PARAMETER">transformId</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxEnableReferenceTransform"></a><h3>xmlSecDSigCtxEnableReferenceTransform ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigCtxEnableReferenceTransform (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                                       <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
+<p>Enables <em class="parameter"><code>transformId</code></em>
  for <dsig:Reference/> elements processing.</p>
-<div class="REFSECT3">
-<a name="AEN24146"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24148"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxEnableReferenceTransform.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24163"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxEnableReferenceTransform.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="XMLSECDSIGCTXENABLESIGNATURETRANSFORM"></a><h3>xmlSecDSigCtxEnableSignatureTransform ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigCtxEnableSignatureTransform (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                                       <code class="PARAMETER"><font><span class="TYPE">xmlSecTransformId</span></font> transformId</code>);</pre>
-<p>Enables <code class="PARAMETER">transformId</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxEnableSignatureTransform"></a><h3>xmlSecDSigCtxEnableSignatureTransform ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigCtxEnableSignatureTransform (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                                       <em class="parameter"><code><font><span class="type">xmlSecTransformId</span></font> transformId</code></em>);</pre>
+<p>Enables <em class="parameter"><code>transformId</code></em>
  for <dsig:SignedInfo/> element processing.</p>
-<div class="REFSECT3">
-<a name="AEN24181"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24183"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxEnableSignatureTransform.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>transformId</p></td>
-<td><p>the transform klass.</p></td>
-<td> </td>
+<td class="parameter_name"><p>transformId</p></td>
+<td class="parameter_description"><p>the transform klass.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24198"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxEnableSignatureTransform.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="XMLSECDSIGCTXGETPRESIGNBUFFER"></a><h3>xmlSecDSigCtxGetPreSignBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
-xmlSecDSigCtxGetPreSignBuffer (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecDSigCtxGetPreSignBuffer"></a><h3>xmlSecDSigCtxGetPreSignBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
+xmlSecDSigCtxGetPreSignBuffer (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>);</pre>
 <p>Gets pointer to the buffer with serialized <dsig:SignedInfo/> element
 just before signature claculation (valid if and only if
-<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> context flag is set.</p>
-<div class="REFSECT3">
-<a name="AEN24214"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24216"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNATURE"><span class="type">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> context flag is set.</p>
+<div class="refsect3">
+<a name="xmlSecDSigCtxGetPreSignBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN24225"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigCtxGetPreSignBuffer.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="XMLSECDSIGCTXDEBUGDUMP"></a><h3>xmlSecDSigCtxDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the debug information about <code class="PARAMETER">dsigCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxDebugDump"></a><h3>xmlSecDSigCtxDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigCtxDebugDump (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                        <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the debug information about <em class="parameter"><code>dsigCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN24244"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24246"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTXDEBUGXMLDUMP"></a><h3>xmlSecDSigCtxDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the debug information about <code class="PARAMETER">dsigCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecDSigCtxDebugXmlDump"></a><h3>xmlSecDSigCtxDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigCtxDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                           <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the debug information about <em class="parameter"><code>dsigCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN24277"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24279"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtxDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Signature/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXCREATE"></a><h3>xmlSecDSigReferenceCtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="RETURNVALUE">xmlSecDSigReferenceCtxPtr</span></a>
-xmlSecDSigReferenceCtxCreate (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxCreate"></a><h3>xmlSecDSigReferenceCtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecDSigReferenceCtxPtr</span></font>
+xmlSecDSigReferenceCtxCreate (<em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceOrigin" title="enum xmlSecDSigReferenceOrigin"><span class="type">xmlSecDSigReferenceOrigin</span></a> origin</code></em>);</pre>
 <p>Creates new <dsig:Reference/> element processing context. Caller is responsible
-for destroying the returned context by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXDESTROY"><span class="TYPE">xmlSecDSigReferenceCtxDestroy</span></a>
+for destroying the returned context by calling <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxDestroy" title="xmlSecDSigReferenceCtxDestroy ()"><span class="type">xmlSecDSigReferenceCtxDestroy</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN24310"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24312"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to parent <dsig:Signature/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to parent <dsig:Signature/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>origin</p></td>
-<td><p>the reference origin (<dsig:SignedInfo/> or <dsig:Manifest/> node).</p></td>
-<td> </td>
+<td class="parameter_name"><p>origin</p></td>
+<td class="parameter_description"><p>the reference origin (<dsig:SignedInfo/> or <dsig:Manifest/> node).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN24327"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly created context or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXDESTROY"></a><h3>xmlSecDSigReferenceCtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigReferenceCtxDestroy (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre>
-<p>Destroy context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXCREATE"><span class="TYPE">xmlSecDSigReferenceCtxCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN24343"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24345"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxDestroy"></a><h3>xmlSecDSigReferenceCtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigReferenceCtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>);</pre>
+<p>Destroy context object created with <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxCreate" title="xmlSecDSigReferenceCtxCreate ()"><span class="type">xmlSecDSigReferenceCtxCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXINITIALIZE"></a><h3>xmlSecDSigReferenceCtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigReferenceCtxInitialize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> dsigCtx</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> origin</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxInitialize"></a><h3>xmlSecDSigReferenceCtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigReferenceCtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlSecDSigCtxPtr</span></font> dsigCtx</code></em>,
+                                  <em class="parameter"><code><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceOrigin" title="enum xmlSecDSigReferenceOrigin"><span class="type">xmlSecDSigReferenceOrigin</span></a> origin</code></em>);</pre>
 <p>Initializes new <dsig:Reference/> element processing context. Caller is responsible
-for cleaning up the returned context by calling <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXFINALIZE"><span class="TYPE">xmlSecDSigReferenceCtxFinalize</span></a>
+for cleaning up the returned context by calling <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxFinalize" title="xmlSecDSigReferenceCtxFinalize ()"><span class="type">xmlSecDSigReferenceCtxFinalize</span></a>
 function.</p>
-<div class="REFSECT3">
-<a name="AEN24373"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24375"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dsigCtx</p></td>
-<td><p>the pointer to parent <dsig:Signature/> node processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigCtx</p></td>
+<td class="parameter_description"><p>the pointer to parent <dsig:Signature/> node processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>origin</p></td>
-<td><p>the reference origin (<dsig:SignedInfo/> or <dsig:Manifest/> node).</p></td>
-<td> </td>
+<td class="parameter_name"><p>origin</p></td>
+<td class="parameter_description"><p>the reference origin (<dsig:SignedInfo/> or <dsig:Manifest/> node).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24396"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxInitialize.returns"></a><h4>Returns</h4>
 <p> 0 on succes or aa negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXFINALIZE"></a><h3>xmlSecDSigReferenceCtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigReferenceCtxFinalize (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre>
-<p>Cleans up context object created with <a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTXINITIALIZE"><span class="TYPE">xmlSecDSigReferenceCtxInitialize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN24412"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24414"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxFinalize"></a><h3>xmlSecDSigReferenceCtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigReferenceCtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>);</pre>
+<p>Cleans up context object created with <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceCtxInitialize" title="xmlSecDSigReferenceCtxInitialize ()"><span class="type">xmlSecDSigReferenceCtxInitialize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXPROCESSNODE"></a><h3>xmlSecDSigReferenceCtxProcessNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecDSigReferenceCtxProcessNode (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>The Reference Element (http://www.w3.org/TR/xmldsig-core/<font><span class="TYPE">sec-Reference</span></font>)</p>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxProcessNode"></a><h3>xmlSecDSigReferenceCtxProcessNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecDSigReferenceCtxProcessNode (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>The Reference Element (http://www.w3.org/TR/xmldsig-core/<font><span class="type">sec-Reference</span></font>)</p>
 <p>Reference is an element that may occur one or more times. It specifies
 a digest algorithm and digest value, and optionally an identifier of the
 object being signed, the type of the object, and/or a list of transforms
@@ -817,221 +806,222 @@ data. For example, while this specification makes no requirements over
 external data, an application may wish to signal that the referent is a
 Manifest. An optional ID attribute permits a Reference to be referenced
 from elsewhere.</p>
-<div class="REFSECT3">
-<a name="AEN24440"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24442"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxProcessNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <dsig:Reference/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24457"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxProcessNode.returns"></a><h4>Returns</h4>
 <p> 0 on succes or aa negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXGETPREDIGESTBUFFER"></a><h3>xmlSecDSigReferenceCtxGetPreDigestBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxGetPreDigestBuffer"></a><h3>xmlSecDSigReferenceCtxGetPreDigestBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
 xmlSecDSigReferenceCtxGetPreDigestBuffer
-                               (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>);</pre>
+                               (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>);</pre>
 <p>Gets the results of <dsig:Reference/> node processing just before digesting
-(valid only if <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or
-<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flas of signature context
+(valid only if <a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES"><span class="type">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or
+<a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES"><span class="type">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flas of signature context
 is set).</p>
-<div class="REFSECT3">
-<a name="AEN24475"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24477"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxGetPreDigestBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN24486"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxGetPreDigestBuffer.returns"></a><h4>Returns</h4>
 <p> pointer to the buffer or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXDEBUGDUMP"></a><h3>xmlSecDSigReferenceCtxDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigReferenceCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">dsigRefCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxDebugDump"></a><h3>xmlSecDSigReferenceCtxDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigReferenceCtxDebugDump (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>dsigRefCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN24505"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24507"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXDEBUGXMLDUMP"></a><h3>xmlSecDSigReferenceCtxDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecDSigReferenceCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCECTX"><span class="TYPE">xmlSecDSigReferenceCtxPtr</span></a> dsigRefCtx</code>,
-                                    <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">dsigRefCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxDebugXmlDump"></a><h3>xmlSecDSigReferenceCtxDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecDSigReferenceCtxDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecDSigReferenceCtxPtr</span></font> dsigRefCtx</code></em>,
+                                    <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>dsigRefCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
  in output format.</p>
-<div class="REFSECT3">
-<a name="AEN24538"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24540"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dsigRefCtx</p></td>
-<td><p>the pointer to <dsig:Reference/> element processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dsigRefCtx</p></td>
+<td class="parameter_description"><p>the pointer to <dsig:Reference/> element processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXLISTGETKLASS"></a><h3>xmlSecDSigReferenceCtxListGetKlass ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecPtrListId</span></font>
-xmlSecDSigReferenceCtxListGetKlass (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxListGetKlass"></a><h3>xmlSecDSigReferenceCtxListGetKlass ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecPtrListId</span></font>
+xmlSecDSigReferenceCtxListGetKlass (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>The <dsig:Reference/> element processing contexts list klass.</p>
-<div class="REFSECT3">
-<a name="AEN24565"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtxListGetKlass.returns"></a><h4>Returns</h4>
 <p> <dsig:Reference/> element processing context list klass.</p>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLDSIG.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECDSIGSTATUS"></a><h3>enum xmlSecDSigStatus</h3>
+<div class="refsect1">
+<a name="xmlsec-xmldsig.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecDSigStatus"></a><h3>enum xmlSecDSigStatus</h3>
 <p>XML Digital signature processing status.</p>
-<div class="REFSECT3">
-<a name="AEN24575"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24577"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigStatus.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecDSigStatusUnknown</p></td>
-<td><p>the status is unknown.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecDSigStatusUnknown"></a>xmlSecDSigStatusUnknown</p></td>
+<td class="enum_member_description">
+<p>the status is unknown.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecDSigStatusSucceeded</p></td>
-<td><p>the processing succeeded.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecDSigStatusSucceeded"></a>xmlSecDSigStatusSucceeded</p></td>
+<td class="enum_member_description">
+<p>the processing succeeded.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecDSigStatusInvalid</p></td>
-<td><p>the processing failed.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecDSigStatusInvalid"></a>xmlSecDSigStatusInvalid</p></td>
+<td class="enum_member_description">
+<p>the processing failed.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-DSIG-FLAGS-IGNORE-MANIFESTS:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS                      0x00000001</pre>
+<pre class="programlisting">#define XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS                      0x00000001
+</pre>
 <p>If this flag is set then <dsig:Manifests/> nodes will not be processed.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES           0x00000002</pre>
+<pre class="programlisting">#define XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES           0x00000002
+</pre>
 <p>If this flag is set then pre-digest buffer for <dsig:Reference/> child
-of <dsig:KeyInfo/> element will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p>
+of <dsig:KeyInfo/> element will be stored in <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx"><span class="type">xmlSecDSigCtx</span></a>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES             0x00000004</pre>
+<pre class="programlisting">#define XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES             0x00000004
+</pre>
 <p>If this flag is set then pre-digest buffer for <dsig:Reference/> child
-of <dsig:Manifest/> element will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p>
+of <dsig:Manifest/> element will be stored in <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx"><span class="type">xmlSecDSigCtx</span></a>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_STORE_SIGNATURE                       0x00000008</pre>
+<pre class="programlisting">#define XMLSEC_DSIG_FLAGS_STORE_SIGNATURE                       0x00000008
+</pre>
 <p>If this flag is set then pre-signature buffer for <dsig:SignedInfo/>
-element processing will be stored in <a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtx</span></a>.</p>
+element processing will be stored in <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtx" title="struct xmlSecDSigCtx"><span class="type">xmlSecDSigCtx</span></a>.</p>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-DSIG-FLAGS-USE-VISA3D-HACK:CAPS"></a><h3>XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK                       0x00000010</pre>
+<pre class="programlisting">#define XMLSEC_DSIG_FLAGS_USE_VISA3D_HACK                       0x00000010
+</pre>
 <p>If this flag is set then URI ID references are resolved directly
 without using XPointers. This allows one to sign/verify Visa3D
 documents that don't follow XML, XPointer and XML DSig specifications.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGCTX"></a><h3>struct xmlSecDSigCtx</h3>
-<pre class="PROGRAMLISTING">struct xmlSecDSigCtx {
+<div class="refsect2">
+<a name="xmlSecDSigCtx"></a><h3>struct xmlSecDSigCtx</h3>
+<pre class="programlisting">struct xmlSecDSigCtx {
     /* these data user can set before performing the operation */
     void*                       userData;
     unsigned int                flags;
@@ -1062,186 +1052,187 @@ documents that don't follow XML, XPointer and XML DSig specifications.</p>
     /* reserved for future */
     void*                       reserved0;
     void*                       reserved1;
-};</pre>
+};
+</pre>
 <p>XML DSig processing context.</p>
-<div class="REFSECT3">
-<a name="AEN24640"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24642"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigCtx.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">userData</code>;</p></td>
-<td><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigCtx.userData"></a>userData</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
 never touches this).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags</code>;</p></td>
-<td><p>the XML Digital Signature processing flags.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML Digital Signature processing flags.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags2</code>;</p></td>
-<td><p>the XML Digital Signature processing flags.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.flags2"></a>flags2</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML Digital Signature processing flags.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoReadCtx</code>;</p></td>
-<td><p>the reading key context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.keyInfoReadCtx"></a>keyInfoReadCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the reading key context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoWriteCtx</code>;</p></td>
-<td><p>the writing key context (not used for signature verification).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.keyInfoWriteCtx"></a>keyInfoWriteCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the writing key context (not used for signature verification).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">transformCtx</code>;</p></td>
-<td><p>the <dsig:SignedInfo/> node processing context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx"><span class="type">xmlSecTransformCtx</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.transformCtx"></a>transformCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the <dsig:SignedInfo/> node processing context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMURITYPE"><span class="TYPE">xmlSecTransformUriType</span></a> <code class="STRUCTFIELD">enabledReferenceUris</code>;</p></td>
-<td><p>the URI types allowed for <dsig:Reference/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformUriType" title="xmlSecTransformUriType"><span class="type">xmlSecTransformUriType</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.enabledReferenceUris"></a>enabledReferenceUris</code></em>;</p></td>
+<td class="struct_member_description"><p>the URI types allowed for <dsig:Reference/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrListPtr</span></a> <code class="STRUCTFIELD">enabledReferenceTransforms</code>;</p></td>
-<td><p>the list of transforms allowed in <dsig:Reference/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecPtrListPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.enabledReferenceTransforms"></a>enabledReferenceTransforms</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of transforms allowed in <dsig:Reference/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTXPREEXECUTECALLBACK"><span class="TYPE">xmlSecTransformCtxPreExecuteCallback</span></a> <code class="STRUCTFIELD">referencePreExecuteCallback</code>;</p></td>
-<td><p>the callback for <dsig:Reference/> node processing.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtxPreExecuteCallback" title="xmlSecTransformCtxPreExecuteCallback ()"><span class="type">xmlSecTransformCtxPreExecuteCallback</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.referencePreExecuteCallback"></a>referencePreExecuteCallback</code></em>;</p></td>
+<td class="struct_member_description"><p>the callback for <dsig:Reference/> node processing.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlSecTransformId</span></font> <code class="STRUCTFIELD">defSignMethodId</code>;</p></td>
-<td><p>the default signing method klass.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.defSignMethodId"></a>defSignMethodId</code></em>;</p></td>
+<td class="struct_member_description"><p>the default signing method klass.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlSecTransformId</span></font> <code class="STRUCTFIELD">defC14NMethodId</code>;</p></td>
-<td><p>the default c14n method klass.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.defC14NMethodId"></a>defC14NMethodId</code></em>;</p></td>
+<td class="struct_member_description"><p>the default c14n method klass.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlSecTransformId</span></font> <code class="STRUCTFIELD">defDigestMethodId</code>;</p></td>
-<td><p>the default digest method klass.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.defDigestMethodId"></a>defDigestMethodId</code></em>;</p></td>
+<td class="struct_member_description"><p>the default digest method klass.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> <code class="STRUCTFIELD">signKey</code>;</p></td>
-<td><p>the signature key; application may set <font><span class="TYPE">signKey</span></font>
-before calling <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXSIGN"><span class="TYPE">xmlSecDSigCtxSign</span></a> or <a href="xmlsec-xmldsig.html#XMLSECDSIGCTXVERIFY"><span class="TYPE">xmlSecDSigCtxVerify</span></a>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.signKey"></a>signKey</code></em>;</p></td>
+<td class="struct_member_description"><p>the signature key; application may set <font><span class="type">signKey</span></font>
+before calling <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxSign" title="xmlSecDSigCtxSign ()"><span class="type">xmlSecDSigCtxSign</span></a> or <a class="link" href="xmlsec-xmldsig.html#xmlSecDSigCtxVerify" title="xmlSecDSigCtxVerify ()"><span class="type">xmlSecDSigCtxVerify</span></a>
 functions.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION"><span class="TYPE">xmlSecTransformOperation</span></a> <code class="STRUCTFIELD">operation</code>;</p></td>
-<td><p>the operation: sign or verify.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation"><span class="type">xmlSecTransformOperation</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.operation"></a>operation</code></em>;</p></td>
+<td class="struct_member_description"><p>the operation: sign or verify.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</p></td>
-<td><p>the pointer to signature (not valid for signature verification).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecBufferPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.result"></a>result</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to signature (not valid for signature verification).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS"><span class="TYPE">xmlSecDSigStatus</span></a> <code class="STRUCTFIELD">status</code>;</p></td>
-<td><p>the <dsig:Signatuire/> processing status.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigStatus" title="enum xmlSecDSigStatus"><span class="type">xmlSecDSigStatus</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.status"></a>status</code></em>;</p></td>
+<td class="struct_member_description"><p>the <dsig:Signatuire/> processing status.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">signMethod</code>;</p></td>
-<td><p>the pointer to signature transform.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.signMethod"></a>signMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to signature transform.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">c14nMethod</code>;</p></td>
-<td><p>the pointer to c14n transform.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.c14nMethod"></a>c14nMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to c14n transform.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">preSignMemBufMethod</code>;</p></td>
-<td><p>the pointer to binary buffer right before signature
-(valid only if <a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> flag is set).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.preSignMemBufMethod"></a>preSignMemBufMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to binary buffer right before signature
+(valid only if <a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNATURE:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNATURE"><span class="type">XMLSEC_DSIG_FLAGS_STORE_SIGNATURE</span></a> flag is set).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">signValueNode</code>;</p></td>
-<td><p>the pointer to <dsig:SignatureValue/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecDSigCtx.signValueNode"></a>signValueNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to <dsig:SignatureValue/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the pointer to Id attribute of <dsig:Signature/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecDSigCtx.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to Id attribute of <dsig:Signature/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">signedInfoReferences</code>;</p></td>
-<td><p>the list of references in <dsig:SignedInfo/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.signedInfoReferences"></a>signedInfoReferences</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of references in <dsig:SignedInfo/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-list.html#XMLSECPTRLIST"><span class="TYPE">xmlSecPtrList</span></a> <code class="STRUCTFIELD">manifestReferences</code>;</p></td>
-<td><p>the list of references in <dsig:Manifest/> nodes.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-list.html#xmlSecPtrList" title="struct xmlSecPtrList"><span class="type">xmlSecPtrList</span></a> <em class="structfield"><code><a name="xmlSecDSigCtx.manifestReferences"></a>manifestReferences</code></em>;</p></td>
+<td class="struct_member_description"><p>the list of references in <dsig:Manifest/> nodes.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigCtx.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigCtx.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCEORIGIN"></a><h3>enum xmlSecDSigReferenceOrigin</h3>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceOrigin"></a><h3>enum xmlSecDSigReferenceOrigin</h3>
 <p>The possible <dsig:Reference/> node locations: in the <dsig:SignedInfo/>
 node or in the <dsig:Manifest/> node.</p>
-<div class="REFSECT3">
-<a name="AEN24883"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24885"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceOrigin.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecDSigReferenceOriginSignedInfo</p></td>
-<td><p>reference in <dsig:SignedInfo> node.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecDSigReferenceOriginSignedInfo"></a>xmlSecDSigReferenceOriginSignedInfo</p></td>
+<td class="enum_member_description">
+<p>reference in <dsig:SignedInfo> node.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecDSigReferenceOriginManifest</p></td>
-<td><p>reference <dsig:Manifest> node.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecDSigReferenceOriginManifest"></a>xmlSecDSigReferenceOriginManifest</p></td>
+<td class="enum_member_description">
+<p>reference <dsig:Manifest> node.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTX"></a><h3>struct xmlSecDSigReferenceCtx</h3>
-<pre class="PROGRAMLISTING">struct xmlSecDSigReferenceCtx {
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtx"></a><h3>struct xmlSecDSigReferenceCtx</h3>
+<pre class="programlisting">struct xmlSecDSigReferenceCtx {
     void*                       userData;
     xmlSecDSigCtxPtr            dsigCtx;
     xmlSecDSigReferenceOrigin   origin;
@@ -1258,103 +1249,101 @@ node or in the <dsig:Manifest/> node.</p>
      /* reserved for future */
     void*                       reserved0;
     void*                       reserved1;
-};</pre>
+};
+</pre>
 <p>The <dsig:Reference/> processing context.</p>
-<div class="REFSECT3">
-<a name="AEN24906"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN24908"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecDSigReferenceCtx.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">userData</code>;</p></td>
-<td><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.userData"></a>userData</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
 never touches this).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmldsig.html#XMLSECDSIGCTX"><span class="TYPE">xmlSecDSigCtxPtr</span></a> <code class="STRUCTFIELD">dsigCtx</code>;</p></td>
-<td><p>the pointer to "parent" <dsig:Signature/> processing context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecDSigCtxPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.dsigCtx"></a>dsigCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to "parent" <dsig:Signature/> processing context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmldsig.html#XMLSECDSIGREFERENCEORIGIN"><span class="TYPE">xmlSecDSigReferenceOrigin</span></a> <code class="STRUCTFIELD">origin</code>;</p></td>
-<td><p>the signature origin (<dsig:SignedInfo/> or <dsig:Manifest/>).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigReferenceOrigin" title="enum xmlSecDSigReferenceOrigin"><span class="type">xmlSecDSigReferenceOrigin</span></a> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.origin"></a>origin</code></em>;</p></td>
+<td class="struct_member_description"><p>the signature origin (<dsig:SignedInfo/> or <dsig:Manifest/>).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">transformCtx</code>;</p></td>
-<td><p>the reference processing transforms context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx"><span class="type">xmlSecTransformCtx</span></a> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.transformCtx"></a>transformCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the reference processing transforms context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">digestMethod</code>;</p></td>
-<td><p>the pointer to digest transform.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.digestMethod"></a>digestMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to digest transform.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</p></td>
-<td><p>the pointer to digest result.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecBufferPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.result"></a>result</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to digest result.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmldsig.html#XMLSECDSIGSTATUS"><span class="TYPE">xmlSecDSigStatus</span></a> <code class="STRUCTFIELD">status</code>;</p></td>
-<td><p>the reference processing status.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmldsig.html#xmlSecDSigStatus" title="enum xmlSecDSigStatus"><span class="type">xmlSecDSigStatus</span></a> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.status"></a>status</code></em>;</p></td>
+<td class="struct_member_description"><p>the reference processing status.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">preDigestMemBufMethod</code>;</p></td>
-<td><p>the pointer to binary buffer right before digest
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecDSigReferenceCtx.preDigestMemBufMethod"></a>preDigestMemBufMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to binary buffer right before digest
 (valid only if either
-<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or
-<a href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS"><span class="TYPE">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flags are set).</p></td>
-<td> </td>
+<a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-SIGNEDINFO-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES"><span class="type">XMLSEC_DSIG_FLAGS_STORE_SIGNEDINFO_REFERENCES</span></a> or
+<a class="link" href="xmlsec-xmldsig.html#XMLSEC-DSIG-FLAGS-STORE-MANIFEST-REFERENCES:CAPS" title="XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES"><span class="type">XMLSEC_DSIG_FLAGS_STORE_MANIFEST_REFERENCES</span></a> flags are set).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the <dsig:Reference/> node ID attribute.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the <dsig:Reference/> node ID attribute.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">uri</code>;</p></td>
-<td><p>the <dsig:Reference/> node URI attribute.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.uri"></a>uri</code></em>;</p></td>
+<td class="struct_member_description"><p>the <dsig:Reference/> node URI attribute.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">type</code>;</p></td>
-<td><p>the <dsig:Reference/> node Type attribute.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.type"></a>type</code></em>;</p></td>
+<td class="struct_member_description"><p>the <dsig:Reference/> node Type attribute.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved0</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.reserved0"></a>reserved0</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecDSigReferenceCtx.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECDSIGREFERENCECTXLISTID"></a><h3>xmlSecDSigReferenceCtxListId</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecDSigReferenceCtxListId</pre>
+<div class="refsect2">
+<a name="xmlSecDSigReferenceCtxListId"></a><h3>xmlSecDSigReferenceCtxListId</h3>
+<pre class="programlisting">#define             xmlSecDSigReferenceCtxListId</pre>
 <p>The references list klass.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-version.html"><b><<< version</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-xmlenc.html"><b>xmlenc >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-xmlenc.html b/docs/api/xmlsec-xmlenc.html
index e447556..2611c1d 100644
--- a/docs/api/xmlsec-xmlenc.html
+++ b/docs/api/xmlsec-xmlenc.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>xmlenc</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="xmldsig" href="xmlsec-xmldsig.html">
-<link rel="NEXT" title="xmlsec" href="xmlsec-xmlsec.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>xmlenc: 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-xmldsig.html" title="xmldsig">
+<link rel="next" href="xmlsec-xmlsec.html" title="xmlsec">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,645 +73,654 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-xmldsig.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-xmlenc.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-xmldsig.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-xmlsec.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-XMLENC"></a>xmlenc</h1>
-<div class="REFNAMEDIV">
-<a name="AEN25043"></a><h2>Name</h2>xmlenc -- XML Encryption support.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLENC.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25048"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-xmlenc"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-xmlenc.top_of_page"></a>xmlenc</span></h2>
+<p>xmlenc — XML Encryption support.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-xmlenc.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="RETURNVALUE">xmlSecEncCtxPtr</span></a></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXCREATE">xmlSecEncCtxCreate</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecEncCtxPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()">xmlSecEncCtxCreate</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDESTROY">xmlSecEncCtxDestroy</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()">xmlSecEncCtxDestroy</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXINITIALIZE">xmlSecEncCtxInitialize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxInitialize" title="xmlSecEncCtxInitialize ()">xmlSecEncCtxInitialize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXFINALIZE">xmlSecEncCtxFinalize</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()">xmlSecEncCtxFinalize</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXCOPYUSERPREF">xmlSecEncCtxCopyUserPref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCopyUserPref" title="xmlSecEncCtxCopyUserPref ()">xmlSecEncCtxCopyUserPref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXRESET">xmlSecEncCtxReset</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxReset" title="xmlSecEncCtxReset ()">xmlSecEncCtxReset</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXBINARYENCRYPT">xmlSecEncCtxBinaryEncrypt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxBinaryEncrypt" title="xmlSecEncCtxBinaryEncrypt ()">xmlSecEncCtxBinaryEncrypt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXXMLENCRYPT">xmlSecEncCtxXmlEncrypt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxXmlEncrypt" title="xmlSecEncCtxXmlEncrypt ()">xmlSecEncCtxXmlEncrypt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXURIENCRYPT">xmlSecEncCtxUriEncrypt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxUriEncrypt" title="xmlSecEncCtxUriEncrypt ()">xmlSecEncCtxUriEncrypt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDECRYPT">xmlSecEncCtxDecrypt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecrypt" title="xmlSecEncCtxDecrypt ()">xmlSecEncCtxDecrypt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDECRYPTTOBUFFER">xmlSecEncCtxDecryptToBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlSecBufferPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDecryptToBuffer" title="xmlSecEncCtxDecryptToBuffer ()">xmlSecEncCtxDecryptToBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDEBUGDUMP">xmlSecEncCtxDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugDump" title="xmlSecEncCtxDebugDump ()">xmlSecEncCtxDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDEBUGXMLDUMP">xmlSecEncCtxDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDebugXmlDump" title="xmlSecEncCtxDebugXmlDump ()">xmlSecEncCtxDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLENC.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25144"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmlenc.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-xmlenc.html#XMLENCCTXMODE">xmlEncCtxMode</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlenc.html#xmlEncCtxMode" title="enum xmlEncCtxMode">xmlEncCtxMode</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlenc.html#XMLSEC-ENC-RETURN-REPLACED-NODE:CAPS">XMLSEC_ENC_RETURN_REPLACED_NODE</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlenc.html#XMLSEC-ENC-RETURN-REPLACED-NODE:CAPS" title="XMLSEC_ENC_RETURN_REPLACED_NODE">XMLSEC_ENC_RETURN_REPLACED_NODE</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-xmlenc.html#XMLSECENCCTX">xmlSecEncCtx</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx">xmlSecEncCtx</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLENC.DESCRIPTION"></a><h2>Description</h2>
-<p>XML Encryption support.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLENC.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXCREATE"></a><h3>xmlSecEncCtxCreate ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="RETURNVALUE">xmlSecEncCtxPtr</span></a>
-xmlSecEncCtxCreate (<code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmlenc.description"></a><h2>Description</h2>
+<p>
+XML Encryption support.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmlenc.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecEncCtxCreate"></a><h3>xmlSecEncCtxCreate ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecEncCtxPtr</span></font>
+xmlSecEncCtxCreate (<em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Creates <enc:EncryptedData/> element processing context.
 The caller is responsible for destroying returned object by calling
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXDESTROY"><span class="TYPE">xmlSecEncCtxDestroy</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN25177"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25179"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxDestroy" title="xmlSecEncCtxDestroy ()"><span class="type">xmlSecEncCtxDestroy</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecEncCtxCreate.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN25188"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxCreate.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated context object or NULL if an error
 occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXDESTROY"></a><h3>xmlSecEncCtxDestroy ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecEncCtxDestroy (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>);</pre>
-<p>Destroy context object created with <a href="xmlsec-xmlenc.html#XMLSECENCCTXCREATE"><span class="TYPE">xmlSecEncCtxCreate</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN25204"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25206"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect2">
+<a name="xmlSecEncCtxDestroy"></a><h3>xmlSecEncCtxDestroy ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecEncCtxDestroy (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>);</pre>
+<p>Destroy context object created with <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxCreate" title="xmlSecEncCtxCreate ()"><span class="type">xmlSecEncCtxCreate</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecEncCtxDestroy.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXINITIALIZE"></a><h3>xmlSecEncCtxInitialize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxInitialize (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                        <code class="PARAMETER"><a href="xmlsec-keysmngr.html#XMLSECKEYSMNGR"><span class="TYPE">xmlSecKeysMngrPtr</span></a> keysMngr</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecEncCtxInitialize"></a><h3>xmlSecEncCtxInitialize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxInitialize (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlSecKeysMngrPtr</span></font> keysMngr</code></em>);</pre>
 <p>Initializes <enc:EncryptedData/> element processing context.
 The caller is responsible for cleaning up returned object by calling
-<a href="xmlsec-xmlenc.html#XMLSECENCCTXFINALIZE"><span class="TYPE">xmlSecEncCtxFinalize</span></a> function.</p>
-<div class="REFSECT3">
-<a name="AEN25231"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25233"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtxFinalize" title="xmlSecEncCtxFinalize ()"><span class="type">xmlSecEncCtxFinalize</span></a> function.</p>
+<div class="refsect3">
+<a name="xmlSecEncCtxInitialize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>keysMngr</p></td>
-<td><p>the pointer to keys manager.</p></td>
-<td> </td>
+<td class="parameter_name"><p>keysMngr</p></td>
+<td class="parameter_description"><p>the pointer to keys manager.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN25248"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxInitialize.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="XMLSECENCCTXFINALIZE"></a><h3>xmlSecEncCtxFinalize ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecEncCtxFinalize (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>);</pre>
-<p>Cleans up <code class="PARAMETER">encCtx</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxFinalize"></a><h3>xmlSecEncCtxFinalize ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecEncCtxFinalize (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>);</pre>
+<p>Cleans up <em class="parameter"><code>encCtx</code></em>
  object.</p>
-<div class="REFSECT3">
-<a name="AEN25263"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25265"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxFinalize.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXCOPYUSERPREF"></a><h3>xmlSecEncCtxCopyUserPref ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxCopyUserPref (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> dst</code>,
-                          <code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> src</code>);</pre>
-<p>Copies user preference from <code class="PARAMETER">src</code>
- context to <code class="PARAMETER">dst</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxCopyUserPref"></a><h3>xmlSecEncCtxCopyUserPref ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxCopyUserPref (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> dst</code></em>,
+                          <em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> src</code></em>);</pre>
+<p>Copies user preference from <em class="parameter"><code>src</code></em>
+ context to <em class="parameter"><code>dst</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN25290"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25292"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxCopyUserPref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>dst</p></td>
-<td><p>the pointer to destination context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>dst</p></td>
+<td class="parameter_description"><p>the pointer to destination context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>src</p></td>
-<td><p>the pointer to source context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>src</p></td>
+<td class="parameter_description"><p>the pointer to source context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN25307"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxCopyUserPref.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="XMLSECENCCTXRESET"></a><h3>xmlSecEncCtxReset ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecEncCtxReset (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>);</pre>
-<p>Resets <code class="PARAMETER">encCtx</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxReset"></a><h3>xmlSecEncCtxReset ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecEncCtxReset (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>);</pre>
+<p>Resets <em class="parameter"><code>encCtx</code></em>
  object, user settings are not touched.</p>
-<div class="REFSECT3">
-<a name="AEN25322"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25324"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxReset.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXBINARYENCRYPT"></a><h3>xmlSecEncCtxBinaryEncrypt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxBinaryEncrypt (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                           <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> tmpl</code>,
-                           <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *data</code>,
-                           <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> dataSize</code>);</pre>
-<p>Encrypts <code class="PARAMETER">data</code>
- according to template <code class="PARAMETER">tmpl</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxBinaryEncrypt"></a><h3>xmlSecEncCtxBinaryEncrypt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxBinaryEncrypt (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                           <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</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>Encrypts <em class="parameter"><code>data</code></em>
+ according to template <em class="parameter"><code>tmpl</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN25355"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25357"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxBinaryEncrypt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>tmpl</p></td>
-<td><p>the pointer to <enc:EncryptedData/> template node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> template node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>data</p></td>
-<td><p>the pointer for binary buffer.</p></td>
-<td> </td>
+<td class="parameter_name"><p>data</p></td>
+<td class="parameter_description"><p>the pointer for binary buffer.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>dataSize</p></td>
-<td><p>the <code class="PARAMETER">data</code>
+<td class="parameter_name"><p>dataSize</p></td>
+<td class="parameter_description"><p>the <em class="parameter"><code>data</code></em>
 buffer size.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN25385"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxBinaryEncrypt.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="XMLSECENCCTXXMLENCRYPT"></a><h3>xmlSecEncCtxXmlEncrypt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxXmlEncrypt (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> tmpl</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Encrypts <code class="PARAMETER">node</code>
- according to template <code class="PARAMETER">tmpl</code>
-. If requested, <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxXmlEncrypt"></a><h3>xmlSecEncCtxXmlEncrypt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxXmlEncrypt (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Encrypts <em class="parameter"><code>node</code></em>
+ according to template <em class="parameter"><code>tmpl</code></em>
+. If requested, <em class="parameter"><code>node</code></em>
  is replaced
 with result <enc:EncryptedData/> node.</p>
-<div class="REFSECT3">
-<a name="AEN25408"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25410"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxXmlEncrypt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>tmpl</p></td>
-<td><p>the pointer to <enc:EncryptedData/> template node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> template node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node for encryption.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node for encryption.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN25431"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxXmlEncrypt.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="XMLSECENCCTXURIENCRYPT"></a><h3>xmlSecEncCtxUriEncrypt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxUriEncrypt (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                        <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> tmpl</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *uri</code>);</pre>
-<p>Encrypts data from <code class="PARAMETER">uri</code>
- according to template <code class="PARAMETER">tmpl</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxUriEncrypt"></a><h3>xmlSecEncCtxUriEncrypt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxUriEncrypt (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                        <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> tmpl</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *uri</code></em>);</pre>
+<p>Encrypts data from <em class="parameter"><code>uri</code></em>
+ according to template <em class="parameter"><code>tmpl</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN25453"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25455"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxUriEncrypt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>tmpl</p></td>
-<td><p>the pointer to <enc:EncryptedData/> template node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>tmpl</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> template node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>uri</p></td>
-<td><p>the URI.</p></td>
-<td> </td>
+<td class="parameter_name"><p>uri</p></td>
+<td class="parameter_description"><p>the URI.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN25476"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxUriEncrypt.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="XMLSECENCCTXDECRYPT"></a><h3>xmlSecEncCtxDecrypt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecEncCtxDecrypt (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                     <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Decrypts <code class="PARAMETER">node</code>
- and if necessary replaces <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxDecrypt"></a><h3>xmlSecEncCtxDecrypt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecEncCtxDecrypt (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                     <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Decrypts <em class="parameter"><code>node</code></em>
+ and if necessary replaces <em class="parameter"><code>node</code></em>
  with decrypted data.</p>
-<div class="REFSECT3">
-<a name="AEN25495"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25497"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxDecrypt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN25512"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxDecrypt.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="XMLSECENCCTXDECRYPTTOBUFFER"></a><h3>xmlSecEncCtxDecryptToBuffer ()</h3>
-<pre class="PROGRAMLISTING"><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="RETURNVALUE">xmlSecBufferPtr</span></a>
-xmlSecEncCtxDecryptToBuffer (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Decrypts <code class="PARAMETER">node</code>
- data to the <code class="PARAMETER">encCtx</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxDecryptToBuffer"></a><h3>xmlSecEncCtxDecryptToBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlSecBufferPtr</span></font>
+xmlSecEncCtxDecryptToBuffer (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                             <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Decrypts <em class="parameter"><code>node</code></em>
+ data to the <em class="parameter"><code>encCtx</code></em>
  buffer.</p>
-<div class="REFSECT3">
-<a name="AEN25531"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25533"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxDecryptToBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to <enc:EncryptedData/> node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN25548"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEncCtxDecryptToBuffer.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="XMLSECENCCTXDEBUGDUMP"></a><h3>xmlSecEncCtxDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecEncCtxDebugDump (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the debug information about <code class="PARAMETER">encCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxDebugDump"></a><h3>xmlSecEncCtxDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecEncCtxDebugDump (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                       <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the debug information about <em class="parameter"><code>encCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN25567"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25569"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTXDEBUGXMLDUMP"></a><h3>xmlSecEncCtxDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecEncCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtxPtr</span></a> encCtx</code>,
-                          <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints the debug information about <code class="PARAMETER">encCtx</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecEncCtxDebugXmlDump"></a><h3>xmlSecEncCtxDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecEncCtxDebugXmlDump (<em class="parameter"><code><font><span class="type">xmlSecEncCtxPtr</span></font> encCtx</code></em>,
+                          <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints the debug information about <em class="parameter"><code>encCtx</code></em>
+ to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN25600"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25602"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtxDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>encCtx</p></td>
-<td><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
-<td> </td>
+<td class="parameter_name"><p>encCtx</p></td>
+<td class="parameter_description"><p>the pointer to <enc:EncryptedData/> processing context.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLENC.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLENCCTXMODE"></a><h3>enum xmlEncCtxMode</h3>
-<p>The <a href="xmlsec-xmlenc.html#XMLSECENCCTX"><span class="TYPE">xmlSecEncCtx</span></a> mode.</p>
-<div class="REFSECT3">
-<a name="AEN25626"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25628"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+</table></div>
+</div>
+</div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmlenc.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlEncCtxMode"></a><h3>enum xmlEncCtxMode</h3>
+<p>The <a class="link" href="xmlsec-xmlenc.html#xmlSecEncCtx" title="struct xmlSecEncCtx"><span class="type">xmlSecEncCtx</span></a> mode.</p>
+<div class="refsect3">
+<a name="xmlEncCtxMode.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlEncCtxModeEncryptedData</p></td>
-<td><p>the <enc:EncryptedData/> element procesing.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlEncCtxModeEncryptedData"></a>xmlEncCtxModeEncryptedData</p></td>
+<td class="enum_member_description">
+<p>the <enc:EncryptedData/> element procesing.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlEncCtxModeEncryptedKey</p></td>
-<td><p>the <enc:EncryptedKey/> element processing.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlEncCtxModeEncryptedKey"></a>xmlEncCtxModeEncryptedKey</p></td>
+<td class="enum_member_description">
+<p>the <enc:EncryptedKey/> element processing.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
+<div class="refsect2">
 <a name="XMLSEC-ENC-RETURN-REPLACED-NODE:CAPS"></a><h3>XMLSEC_ENC_RETURN_REPLACED_NODE</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_ENC_RETURN_REPLACED_NODE                 0x00000001</pre>
+<pre class="programlisting">#define XMLSEC_ENC_RETURN_REPLACED_NODE                 0x00000001
+</pre>
 <p>If this flag is set, then the replaced node will be returned in the replacedNodeList</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENCCTX"></a><h3>struct xmlSecEncCtx</h3>
-<pre class="PROGRAMLISTING">struct xmlSecEncCtx {
+<div class="refsect2">
+<a name="xmlSecEncCtx"></a><h3>struct xmlSecEncCtx</h3>
+<pre class="programlisting">struct xmlSecEncCtx {
     /* these data user can set before performing the operation */
     void*                       userData;
     unsigned int                flags;
@@ -773,167 +755,165 @@ xmlSecEncCtxDebugXmlDump (<code class="PARAMETER"><a href="xmlsec-xmlenc.html#XM
 
     xmlNodePtr                  replacedNodeList; /* the pointer to the replaced node */
     void*                       reserved1;        /* reserved for future */
-};</pre>
+};
+</pre>
 <p>XML Encrypiton context.</p>
-<div class="REFSECT3">
-<a name="AEN25655"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25657"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEncCtx.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">userData</code>;</p></td>
-<td><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.userData"></a>userData</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to user data (xmlsec and xmlsec-crypto libraries
 never touches this).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags</code>;</p></td>
-<td><p>the XML Encryption processing flags.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.flags"></a>flags</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML Encryption processing flags.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>unsigned <font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">flags2</code>;</p></td>
-<td><p>the XML Encryption processing flags.</p></td>
-<td> </td>
+<td class="struct_member_name"><p>unsigned <font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.flags2"></a>flags2</code></em>;</p></td>
+<td class="struct_member_description"><p>the XML Encryption processing flags.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmlenc.html#XMLENCCTXMODE"><span class="TYPE">xmlEncCtxMode</span></a> <code class="STRUCTFIELD">mode</code>;</p></td>
-<td><p>the mode.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmlenc.html#xmlEncCtxMode" title="enum xmlEncCtxMode"><span class="type">xmlEncCtxMode</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.mode"></a>mode</code></em>;</p></td>
+<td class="struct_member_description"><p>the mode.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoReadCtx</code>;</p></td>
-<td><p>the reading key context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoReadCtx"></a>keyInfoReadCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the reading key context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keyinfo.html#XMLSECKEYINFOCTX"><span class="TYPE">xmlSecKeyInfoCtx</span></a> <code class="STRUCTFIELD">keyInfoWriteCtx</code>;</p></td>
-<td><p>the writing key context (not used for signature verification).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-keyinfo.html#xmlSecKeyInfoCtx" title="struct xmlSecKeyInfoCtx"><span class="type">xmlSecKeyInfoCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoWriteCtx"></a>keyInfoWriteCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the writing key context (not used for signature verification).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMCTX"><span class="TYPE">xmlSecTransformCtx</span></a> <code class="STRUCTFIELD">transformCtx</code>;</p></td>
-<td><p>the transforms processing context.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformCtx" title="struct xmlSecTransformCtx"><span class="type">xmlSecTransformCtx</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.transformCtx"></a>transformCtx</code></em>;</p></td>
+<td class="struct_member_description"><p>the transforms processing context.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlSecTransformId</span></font> <code class="STRUCTFIELD">defEncMethodId</code>;</p></td>
-<td><p>the default encryption method (used if
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformId</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.defEncMethodId"></a>defEncMethodId</code></em>;</p></td>
+<td class="struct_member_description"><p>the default encryption method (used if
 <enc:EncryptionMethod/> node is not present).</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-keys.html#XMLSECKEY"><span class="TYPE">xmlSecKeyPtr</span></a> <code class="STRUCTFIELD">encKey</code>;</p></td>
-<td><p>the signature key; application may set <font><span class="TYPE">encKey</span></font>
+<td class="struct_member_name"><p><font><span class="type">xmlSecKeyPtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encKey"></a>encKey</code></em>;</p></td>
+<td class="struct_member_description"><p>the signature key; application may set <font><span class="type">encKey</span></font>
 before calling encryption/decryption functions.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORMOPERATION"><span class="TYPE">xmlSecTransformOperation</span></a> <code class="STRUCTFIELD">operation</code>;</p></td>
-<td><p>the operation: encrypt or decrypt.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-transforms.html#xmlSecTransformOperation" title="enum xmlSecTransformOperation"><span class="type">xmlSecTransformOperation</span></a> <em class="structfield"><code><a name="xmlSecEncCtx.operation"></a>operation</code></em>;</p></td>
+<td class="struct_member_description"><p>the operation: encrypt or decrypt.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-buffer.html#XMLSECBUFFER"><span class="TYPE">xmlSecBufferPtr</span></a> <code class="STRUCTFIELD">result</code>;</p></td>
-<td><p>the pointer to signature (not valid for signature verification).</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecBufferPtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.result"></a>result</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to signature (not valid for signature verification).</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">resultBase64Encoded</code>;</p></td>
-<td><p>the flag: if set then result in <font><span class="TYPE">result</span></font> is base64 encoded.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.resultBase64Encoded"></a>resultBase64Encoded</code></em>;</p></td>
+<td class="struct_member_description"><p>the flag: if set then result in <font><span class="type">result</span></font> is base64 encoded.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">resultReplaced</code>;</p></td>
-<td><p>the flag: if set then resulted <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.resultReplaced"></a>resultReplaced</code></em>;</p></td>
+<td class="struct_member_description"><p>the flag: if set then resulted <enc:EncryptedData/>
 or <enc:EncryptedKey/> node is added to the document.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-transforms.html#XMLSECTRANSFORM"><span class="TYPE">xmlSecTransformPtr</span></a> <code class="STRUCTFIELD">encMethod</code>;</p></td>
-<td><p>the pointer to encryption transform.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlSecTransformPtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encMethod"></a>encMethod</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to encryption transform.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">id</code>;</p></td>
-<td><p>the ID attribute of <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.id"></a>id</code></em>;</p></td>
+<td class="struct_member_description"><p>the ID attribute of <enc:EncryptedData/>
 or <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">type</code>;</p></td>
-<td><p>the Type attribute of <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.type"></a>type</code></em>;</p></td>
+<td class="struct_member_description"><p>the Type attribute of <enc:EncryptedData/>
 or <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">mimeType</code>;</p></td>
-<td><p>the MimeType attribute of <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.mimeType"></a>mimeType</code></em>;</p></td>
+<td class="struct_member_description"><p>the MimeType attribute of <enc:EncryptedData/>
 or <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">encoding</code>;</p></td>
-<td><p>the Encoding attributeof <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.encoding"></a>encoding</code></em>;</p></td>
+<td class="struct_member_description"><p>the Encoding attributeof <enc:EncryptedData/>
 or <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">recipient</code>;</p></td>
-<td><p>the Recipient attribute of <enc:EncryptedKey/> node..</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.recipient"></a>recipient</code></em>;</p></td>
+<td class="struct_member_description"><p>the Recipient attribute of <enc:EncryptedKey/> node..</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">carriedKeyName</code>;</p></td>
-<td><p>the CarriedKeyName attribute of <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.carriedKeyName"></a>carriedKeyName</code></em>;</p></td>
+<td class="struct_member_description"><p>the CarriedKeyName attribute of <enc:EncryptedKey/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">encDataNode</code>;</p></td>
-<td><p>the pointer to <enc:EncryptedData/>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encDataNode"></a>encDataNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to <enc:EncryptedData/>
 or <enc:EncryptedKey/> node.</p></td>
-<td> </td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">encMethodNode</code>;</p></td>
-<td><p>the pointer to <enc:EncryptionMethod/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.encMethodNode"></a>encMethodNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to <enc:EncryptionMethod/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">keyInfoNode</code>;</p></td>
-<td><p>the pointer to <enc:KeyInfo/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.keyInfoNode"></a>keyInfoNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to <enc:KeyInfo/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">cipherValueNode</code>;</p></td>
-<td><p>the pointer to <enc:CipherValue/> node.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.cipherValueNode"></a>cipherValueNode</code></em>;</p></td>
+<td class="struct_member_description"><p>the pointer to <enc:CipherValue/> node.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">xmlNodePtr</span></font> <code class="STRUCTFIELD">replacedNodeList</code>;</p></td>
-<td><p>the first node of the list of replaced nodes depending on the nodeReplacementMode</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">xmlNodePtr</span></font> <em class="structfield"><code><a name="xmlSecEncCtx.replacedNodeList"></a>replacedNodeList</code></em>;</p></td>
+<td class="struct_member_description"><p>the first node of the list of replaced nodes depending on the nodeReplacementMode</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">void</span></font> *<code class="STRUCTFIELD">reserved1</code>;</p></td>
-<td><p>reserved for the future.</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">void</span></font> *<em class="structfield"><code><a name="xmlSecEncCtx.reserved1"></a>reserved1</code></em>;</p></td>
+<td class="struct_member_description"><p>reserved for the future.</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-xmldsig.html"><b><<< xmldsig</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-xmlsec.html"><b>xmlsec >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-xmlsec.html b/docs/api/xmlsec-xmlsec.html
index 692e69f..576031f 100644
--- a/docs/api/xmlsec-xmlsec.html
+++ b/docs/api/xmlsec-xmlsec.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>xmlsec</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="xmlenc" href="xmlsec-xmlenc.html">
-<link rel="NEXT" title="xmltree" href="xmlsec-xmltree.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>xmlsec: 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-xmlenc.html" title="xmlenc">
+<link rel="next" href="xmlsec-xmltree.html" title="xmltree">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,400 +73,332 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-xmlenc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-xmlsec.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-xmlenc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-xmltree.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-XMLSEC"></a>xmlsec</h1>
-<div class="REFNAMEDIV">
-<a name="AEN25903"></a><h2>Name</h2>xmlsec -- Utility functions.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLSEC.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25908"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-xmlsec"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-xmlsec.top_of_page"></a>xmlsec</span></h2>
+<p>xmlsec — Utility functions.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-xmlsec.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSEC-SIZE-BAD-CAST:CAPS">XMLSEC_SIZE_BAD_CAST</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#XMLSEC-SIZE-BAD-CAST:CAPS" title="XMLSEC_SIZE_BAD_CAST()">XMLSEC_SIZE_BAD_CAST</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSECINIT">xmlSecInit</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSECSHUTDOWN">xmlSecShutdown</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecInit" title="xmlSecInit ()">xmlSecInit</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSECGETDEFAULTCRYPTO">xmlSecGetDefaultCrypto</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecShutdown" title="xmlSecShutdown ()">xmlSecShutdown</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#XMLSEC-CRYPTO:CAPS">XMLSEC_CRYPTO</a></td>
-</tr>
-<tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONEXACT">xmlSecCheckVersionExact</a></td>
-</tr>
-<tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSION">xmlSecCheckVersion</a></td>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecGetDefaultCrypto" title="xmlSecGetDefaultCrypto ()">xmlSecGetDefaultCrypto</a> <span class="c_punctuation">()</span>
+</td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONEXT">xmlSecCheckVersionExt</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecSetExternalEntityLoader" title="xmlSecSetExternalEntityLoader ()">xmlSecSetExternalEntityLoader</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSEC-PTR-TO-FUNC-IMPL:CAPS">XMLSEC_PTR_TO_FUNC_IMPL</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
-</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionExact" title="xmlSecCheckVersionExact">xmlSecCheckVersionExact</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSEC-PTR-TO-FUNC:CAPS">XMLSEC_PTR_TO_FUNC</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
-</td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersion" title="xmlSecCheckVersion">xmlSecCheckVersion</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmlsec.html#XMLSEC-FUNC-TO-PTR:CAPS">XMLSEC_FUNC_TO_PTR</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionExt" title="xmlSecCheckVersionExt ()">xmlSecCheckVersionExt</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLSEC.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN25973"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmlsec.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>typedef</td>
-<td><font>xmlSecPtr</font></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecPtr" title="xmlSecPtr">xmlSecPtr</a></td>
+</tr>
+<tr>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecSize" title="xmlSecSize">xmlSecSize</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#XMLSECSIZE">xmlSecSize</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte">xmlSecByte</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#XMLSECBYTE">xmlSecByte</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#XMLSEC-CRYPTO:CAPS" title="XMLSEC_CRYPTO">XMLSEC_CRYPTO</a></td>
 </tr>
 <tr>
-<td>enum</td>
-<td><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONMODE">xmlSecCheckVersionMode</a></td>
+<td class="define_keyword">#define</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#XMLSEC-DEPRECATED:CAPS" title="XMLSEC_DEPRECATED">XMLSEC_DEPRECATED</a></td>
 </tr>
 <tr>
-<td>#define</td>
-<td><a href="xmlsec-xmlsec.html#ATTRIBUTE-UNUSED:CAPS">ATTRIBUTE_UNUSED</a></td>
+<td class="datatype_keyword">enum</td>
+<td class="function_name"><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionMode" title="enum xmlSecCheckVersionMode">xmlSecCheckVersionMode</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLSEC.DESCRIPTION"></a><h2>Description</h2>
-<p>Utility functions.</p>
+<div class="refsect1">
+<a name="xmlsec-xmlsec.description"></a><h2>Description</h2>
+<p>
+Utility functions.
+</p>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLSEC.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
+<div class="refsect1">
+<a name="xmlsec-xmlsec.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
 <a name="XMLSEC-SIZE-BAD-CAST:CAPS"></a><h3>XMLSEC_SIZE_BAD_CAST()</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_SIZE_BAD_CAST(val)               ((xmlSecSize)(val))</pre>
+<pre class="programlisting">#define XMLSEC_SIZE_BAD_CAST(val)               ((xmlSecSize)(val))
+</pre>
 <p>Bad cast to xmlSecSize</p>
-<div class="REFSECT3">
-<a name="AEN26007"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26009"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="XMLSEC-SIZE-BAD-CAST.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>val</p></td>
-<td><p>the value to cast</p></td>
-<td> </td>
+<td class="parameter_name"><p>val</p></td>
+<td class="parameter_description"><p>the value to cast</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECINIT"></a><h3>xmlSecInit ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecInit (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecInit"></a><h3>xmlSecInit ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecInit (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Initializes XML Security Library. The depended libraries
 (LibXML and LibXSLT) must be initialized before.</p>
-<div class="REFSECT3">
-<a name="AEN26028"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecInit.returns"></a><h4>Returns</h4>
 <p> 0 on success or a negative value otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSHUTDOWN"></a><h3>xmlSecShutdown ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecShutdown (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
+<div class="refsect2">
+<a name="xmlSecShutdown"></a><h3>xmlSecShutdown ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecShutdown (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
 <p>Gets the default crypto engine ("openssl", "nss", etc.) for the XML Security Library.</p>
-<div class="REFSECT3">
-<a name="AEN26041"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecShutdown.returns"></a><h4>Returns</h4>
 <p> the default crypto engine ("openssl", "nss", etc.).</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETDEFAULTCRYPTO"></a><h3>xmlSecGetDefaultCrypto ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecGetDefaultCrypto (<code class="PARAMETER"><span class="TYPE">void</span></code>);</pre>
-<p></p>
+<div class="refsect2">
+<a name="xmlSecGetDefaultCrypto"></a><h3>xmlSecGetDefaultCrypto ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
+xmlSecGetDefaultCrypto (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSEC-CRYPTO:CAPS"></a><h3>XMLSEC_CRYPTO</h3>
-<pre class="PROGRAMLISTING">#define XMLSEC_CRYPTO                          (xmlSecGetDefaultCrypto())</pre>
-<p>Macro. Deprecated. Defined for backward compatibility only. Do not use
-in your code and use <a href="xmlsec-xmlsec.html#XMLSECGETDEFAULTCRYPTO"><code class="FUNCTION">xmlSecGetDefaultCrypto()</code></a> function instead.</p>
-<p>Returns the default crypto engine.</p>
+<div class="refsect2">
+<a name="xmlSecSetExternalEntityLoader"></a><h3>xmlSecSetExternalEntityLoader ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecSetExternalEntityLoader (<em class="parameter"><code><font><span class="type">xmlExternalEntityLoader</span></font> Param1</code></em>);</pre>
+<p>
+</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCHECKVERSIONEXACT"></a><h3>xmlSecCheckVersionExact</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecCheckVersionExact()</pre>
+<div class="refsect2">
+<a name="xmlSecCheckVersionExact"></a><h3>xmlSecCheckVersionExact</h3>
+<pre class="programlisting">#define             xmlSecCheckVersionExact()</pre>
 <p>Macro. Returns 1 if the loaded xmlsec library version exactly matches
 the one used to compile the caller, 0 if it does not or a negative
 value if an error occurs.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCHECKVERSION"></a><h3>xmlSecCheckVersion</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecCheckVersion()</pre>
+<div class="refsect2">
+<a name="xmlSecCheckVersion"></a><h3>xmlSecCheckVersion</h3>
+<pre class="programlisting">#define             xmlSecCheckVersion()</pre>
 <p>Macro. Returns 1 if the loaded xmlsec library version ABI compatible with
 the one used to compile the caller, 0 if it does not or a negative
 value if an error occurs.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCHECKVERSIONEXT"></a><h3>xmlSecCheckVersionExt ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCheckVersionExt (<code class="PARAMETER"><font><span class="TYPE">int</span></font> major</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">int</span></font> minor</code>,
-                       <code class="PARAMETER"><font><span class="TYPE">int</span></font> subminor</code>,
-                       <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECCHECKVERSIONMODE"><span class="TYPE">xmlSecCheckVersionMode</span></a> mode</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCheckVersionExt"></a><h3>xmlSecCheckVersionExt ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCheckVersionExt (<em class="parameter"><code><font><span class="type">int</span></font> major</code></em>,
+                       <em class="parameter"><code><font><span class="type">int</span></font> minor</code></em>,
+                       <em class="parameter"><code><font><span class="type">int</span></font> subminor</code></em>,
+                       <em class="parameter"><code><a class="link" href="xmlsec-xmlsec.html#xmlSecCheckVersionMode" title="enum xmlSecCheckVersionMode"><span class="type">xmlSecCheckVersionMode</span></a> mode</code></em>);</pre>
 <p>Checks if the loaded version of xmlsec library could be used.</p>
-<div class="REFSECT3">
-<a name="AEN26095"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26097"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCheckVersionExt.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>major</p></td>
-<td><p>the major version number.</p></td>
-<td> </td>
+<td class="parameter_name"><p>major</p></td>
+<td class="parameter_description"><p>the major version number.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>minor</p></td>
-<td><p>the minor version number.</p></td>
-<td> </td>
+<td class="parameter_name"><p>minor</p></td>
+<td class="parameter_description"><p>the minor version number.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>subminor</p></td>
-<td><p>the subminor version number.</p></td>
-<td> </td>
+<td class="parameter_name"><p>subminor</p></td>
+<td class="parameter_description"><p>the subminor version number.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mode</p></td>
-<td><p>the version check mode.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mode</p></td>
+<td class="parameter_description"><p>the version check mode.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN26124"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCheckVersionExt.returns"></a><h4>Returns</h4>
 <p> 1 if the loaded xmlsec library version is OK to use
 0 if it is not or a negative value if an error occurs.</p>
 </div>
 </div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSEC-PTR-TO-FUNC-IMPL:CAPS"></a><h3>XMLSEC_PTR_TO_FUNC_IMPL()</h3>
-<pre class="PROGRAMLISTING">#define             XMLSEC_PTR_TO_FUNC_IMPL(func_type)</pre>
-<p>Macro declares helper functions to convert between "void *" pointer and
-function pointer.</p>
-<div class="REFSECT3">
-<a name="AEN26133"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26135"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
-<tbody><tr>
-<td><p>func_type</p></td>
-<td><p>the function type.</p></td>
-<td> </td>
-</tr></tbody>
-</table>
-<p></p>
-</div>
-</div>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSEC-PTR-TO-FUNC:CAPS"></a><h3>XMLSEC_PTR_TO_FUNC()</h3>
-<pre class="PROGRAMLISTING">#define             XMLSEC_PTR_TO_FUNC(func_type, ptr)</pre>
-<p>Macro converts from "void*" pointer to "func_type" function pointer.</p>
-<div class="REFSECT3">
-<a name="AEN26150"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26152"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
-<tbody>
-<tr>
-<td><p>func_type</p></td>
-<td><p>the function type.</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>ptr</p></td>
-<td><p>the "void*" pointer to be converted.</p></td>
-<td> </td>
-</tr>
-</tbody>
-</table>
-<p></p>
-</div>
-</div>
 </div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSEC-FUNC-TO-PTR:CAPS"></a><h3>XMLSEC_FUNC_TO_PTR()</h3>
-<pre class="PROGRAMLISTING">#define             XMLSEC_FUNC_TO_PTR(func_type, func)</pre>
-<p>Macro converts from "func_type" function pointer to "void*" pointer.</p>
-<div class="REFSECT3">
-<a name="AEN26173"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26175"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
-<tbody>
-<tr>
-<td><p>func_type</p></td>
-<td><p>the function type.</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>func</p></td>
-<td><p>the "func_type" function pointer to be converted.</p></td>
-<td> </td>
-</tr>
-</tbody>
-</table>
-<p></p>
-</div>
-</div>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLSEC.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECPTR"></a><h3>xmlSecPtr</h3>
-<pre class="PROGRAMLISTING">typedef void*                                   xmlSecPtr;</pre>
+<div class="refsect1">
+<a name="xmlsec-xmlsec.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecPtr"></a><h3>xmlSecPtr</h3>
+<pre class="programlisting">typedef void*                                   xmlSecPtr;
+</pre>
 <p>Void pointer.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECSIZE"></a><h3>xmlSecSize</h3>
-<pre class="PROGRAMLISTING">#define xmlSecSize                              unsigned int</pre>
+<div class="refsect2">
+<a name="xmlSecSize"></a><h3>xmlSecSize</h3>
+<pre class="programlisting">#define xmlSecSize                              unsigned int
+</pre>
 <p>Size of something. Should be typedef instead of define
 but it will break ABI (todo).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBYTE"></a><h3>xmlSecByte</h3>
-<pre class="PROGRAMLISTING">#define xmlSecByte                              unsigned char</pre>
+<div class="refsect2">
+<a name="xmlSecByte"></a><h3>xmlSecByte</h3>
+<pre class="programlisting">#define xmlSecByte                              unsigned char
+</pre>
 <p>One byte. Should be typedef instead of define
 but it will break ABI (todo).</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCHECKVERSIONMODE"></a><h3>enum xmlSecCheckVersionMode</h3>
+<div class="refsect2">
+<a name="XMLSEC-CRYPTO:CAPS"></a><h3>XMLSEC_CRYPTO</h3>
+<pre class="programlisting">#define XMLSEC_CRYPTO                          (xmlSecGetDefaultCrypto())
+</pre>
+<p>Macro. Deprecated. Defined for backward compatibility only. Do not use
+in your code and use <a class="link" href="xmlsec-xmlsec.html#xmlSecGetDefaultCrypto" title="xmlSecGetDefaultCrypto ()"><code class="function">xmlSecGetDefaultCrypto()</code></a> function instead.</p>
+<p>Returns the default crypto engine.</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="XMLSEC-DEPRECATED:CAPS"></a><h3>XMLSEC_DEPRECATED</h3>
+<pre class="programlisting">#define XMLSEC_DEPRECATED __attribute__((deprecated))
+</pre>
+<p>
+</p>
+</div>
+<hr>
+<div class="refsect2">
+<a name="xmlSecCheckVersionMode"></a><h3>enum xmlSecCheckVersionMode</h3>
 <p>The xmlsec library version mode.</p>
-<div class="REFSECT3">
-<a name="AEN26215"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26217"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCheckVersionMode.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="enum_members_name">
+<col class="enum_members_description">
+<col width="200px" class="enum_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>xmlSecCheckVersionExactMatch</p></td>
-<td><p>the version should match exactly.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecCheckVersionExactMatch"></a>xmlSecCheckVersionExactMatch</p></td>
+<td class="enum_member_description">
+<p>the version should match exactly.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>xmlSecCheckVersionABICompatible</p></td>
-<td><p>the version should be ABI compatible.</p></td>
-<td> </td>
+<td class="enum_member_name"><p><a name="xmlSecCheckVersionABICompatible"></a>xmlSecCheckVersionABICompatible</p></td>
+<td class="enum_member_description">
+<p>the version should be ABI compatible.</p>
+</td>
+<td class="enum_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
 </div>
 </div>
-<hr>
-<div class="REFSECT2">
-<a name="ATTRIBUTE-UNUSED:CAPS"></a><h3>ATTRIBUTE_UNUSED</h3>
-<pre class="PROGRAMLISTING">#define ATTRIBUTE_UNUSED</pre>
-<p>Macro used to signal to GCC unused function parameters</p>
 </div>
-</div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-xmlenc.html"><b><<< xmlenc</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-xmltree.html"><b>xmltree >>></b></a></td>
-</tr></table>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/api/xmlsec-xmltree.html b/docs/api/xmlsec-xmltree.html
index 03f5d7d..3790ec8 100644
--- a/docs/api/xmlsec-xmltree.html
+++ b/docs/api/xmlsec-xmltree.html
@@ -1,41 +1,14 @@
 <html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
-<title>xmltree</title>
-<meta name="GENERATOR" content="Modular DocBook HTML Stylesheet Version 1.79">
-<link rel="HOME" title="XML Security Library Reference Manual" href="index.html">
-<link rel="UP" title="XML Security Core Library API Reference." href="xmlsec-ref.html">
-<link rel="PREVIOUS" title="xmlsec" href="xmlsec-xmlsec.html">
-<link rel="NEXT" title="x509" href="xmlsec-x509.html">
-<style type="text/css">.synopsis, .classsynopsis {
-    background: #eeeeee;
-    border: solid 1px #aaaaaa;
-    padding: 0.5em;
-}
-.programlisting {
-    background: #eeeeff;
-    border: solid 1px #aaaaff;
-    padding: 0.5em;
-}
-.variablelist {
-    padding: 4px;
-    margin-left: 3em;
-}
-.navigation {
-    background: #ffeeee;
-    border: solid 1px #ffaaaa;
-    margin-top: 0.5em;
-    margin-bottom: 0.5em;
-}
-.navigation a {
-    color: #770000;
-}
-.navigation a:visited {
-    color: #550000;
-}
-.navigation .title {
-    font-size: 200%;
-}</style>
+<title>xmltree: 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-xmlsec.html" title="xmlsec">
+<link rel="next" href="xmlsec-x509.html" title="x509">
+<meta name="generator" content="GTK-Doc V1.25 (XML mode)">
+<link rel="stylesheet" href="style.css" type="text/css">
 <style type="text/css">
 table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     width: 20em;
@@ -100,2530 +73,2422 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </table>
 </td>
 <td valign="top"><table width="100%" valign="top"><tr><td valign="top" align="left" id="xmlsecContent">
-<table width="100%" class="navigation" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td><a accesskey="p" href="xmlsec-xmlsec.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
-<td><a accesskey="u" href="xmlsec-ref.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
+<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-xmltree.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>
-<th width="100%" align="center">XML Security Library Reference Manual</th>
+<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-xmlsec.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 <td><a accesskey="n" href="xmlsec-x509.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 </tr></table>
-<h1>
-<a name="XMLSEC-XMLTREE"></a>xmltree</h1>
-<div class="REFNAMEDIV">
-<a name="AEN26243"></a><h2>Name</h2>xmltree -- XML tree operations.</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLTREE.FUNCTIONS"></a><h2>Functions</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26248"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+<div class="refentry">
+<a name="xmlsec-xmltree"></a><div class="titlepage"></div>
+<div class="refnamediv"><table width="100%"><tr>
+<td valign="top">
+<h2><span class="refentrytitle"><a name="xmlsec-xmltree.top_of_page"></a>xmltree</span></h2>
+<p>xmltree — XML tree operations.</p>
+</td>
+<td class="gallery_image" valign="top" align="right"></td>
+</tr></table></div>
+<div class="refsect1">
+<a name="xmlsec-xmltree.functions"></a><h2>Functions</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="functions_return">
+<col class="functions_name">
+</colgroup>
 <tbody>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECNODEGETNAME">xmlSecNodeGetName</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecNodeGetName" title="xmlSecNodeGetName()">xmlSecNodeGetName</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>const <font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGETNODENSHREF">xmlSecGetNodeNsHref</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">const <font><span class="returnvalue">xmlChar</span></font> *
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECCHECKNODENAME">xmlSecCheckNodeName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecGetNodeNsHref" title="xmlSecGetNodeNsHref ()">xmlSecGetNodeNsHref</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGETNEXTELEMENTNODE">xmlSecGetNextElementNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
 </td>
-</tr>
-<tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECFINDSIBLING">xmlSecFindSibling</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecCheckNodeName" title="xmlSecCheckNodeName ()">xmlSecCheckNodeName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECFINDCHILD">xmlSecFindChild</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecGetNextElementNode" title="xmlSecGetNextElementNode ()">xmlSecGetNextElementNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECFINDPARENT">xmlSecFindParent</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecFindSibling" title="xmlSecFindSibling ()">xmlSecFindSibling</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECFINDNODE">xmlSecFindNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecFindChild" title="xmlSecFindChild ()">xmlSecFindChild</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECADDCHILD">xmlSecAddChild</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecFindParent" title="xmlSecFindParent ()">xmlSecFindParent</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECENSUREEMPTYCHILD">xmlSecEnsureEmptyChild</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecFindNode" title="xmlSecFindNode ()">xmlSecFindNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECADDCHILDNODE">xmlSecAddChildNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecAddChild" title="xmlSecAddChild ()">xmlSecAddChild</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECADDNEXTSIBLING">xmlSecAddNextSibling</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecEnsureEmptyChild" title="xmlSecEnsureEmptyChild ()">xmlSecEnsureEmptyChild</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlNodePtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECADDPREVSIBLING">xmlSecAddPrevSibling</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecAddChildNode" title="xmlSecAddChildNode ()">xmlSecAddChildNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACENODE">xmlSecReplaceNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecAddNextSibling" title="xmlSecAddNextSibling ()">xmlSecAddNextSibling</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACENODEANDRETURN">xmlSecReplaceNodeAndReturn</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlNodePtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecAddPrevSibling" title="xmlSecAddPrevSibling ()">xmlSecAddPrevSibling</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACECONTENT">xmlSecReplaceContent</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNode" title="xmlSecReplaceNode ()">xmlSecReplaceNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACECONTENTANDRETURN">xmlSecReplaceContentAndReturn</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeAndReturn" title="xmlSecReplaceNodeAndReturn ()">xmlSecReplaceNodeAndReturn</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACENODEBUFFER">xmlSecReplaceNodeBuffer</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceContent" title="xmlSecReplaceContent ()">xmlSecReplaceContent</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECREPLACENODEBUFFERANDRETURN">xmlSecReplaceNodeBufferAndReturn</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceContentAndReturn" title="xmlSecReplaceContentAndReturn ()">xmlSecReplaceContentAndReturn</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECNODEENCODEANDSETCONTENT">xmlSecNodeEncodeAndSetContent</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeBuffer" title="xmlSecReplaceNodeBuffer ()">xmlSecReplaceNodeBuffer</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECADDIDS">xmlSecAddIDs</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecReplaceNodeBufferAndReturn" title="xmlSecReplaceNodeBufferAndReturn ()">xmlSecReplaceNodeBufferAndReturn</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGENERATEANDADDID">xmlSecGenerateAndAddID</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecNodeEncodeAndSetContent" title="xmlSecNodeEncodeAndSetContent ()">xmlSecNodeEncodeAndSetContent</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGENERATEID">xmlSecGenerateID</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecAddIDs" title="xmlSecAddIDs ()">xmlSecAddIDs</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlDocPtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECCREATETREE">xmlSecCreateTree</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlDocPtr</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecCreateTree" title="xmlSecCreateTree ()">xmlSecCreateTree</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECISEMPTYNODE">xmlSecIsEmptyNode</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecIsEmptyNode" title="xmlSecIsEmptyNode ()">xmlSecIsEmptyNode</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECISEMPTYSTRING">xmlSecIsEmptyString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecIsEmptyString" title="xmlSecIsEmptyString ()">xmlSecIsEmptyString</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGETQNAME">xmlSecGetQName</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecGetQName" title="xmlSecGetQName ()">xmlSecGetQName</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECPRINTXMLSTRING">xmlSecPrintXmlString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecPrintXmlString" title="xmlSecPrintXmlString ()">xmlSecPrintXmlString</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECISHEX">xmlSecIsHex</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecIsHex" title="xmlSecIsHex()">xmlSecIsHex</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>#define</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECGETHEX">xmlSecGetHex</a><span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="define_keyword">#define</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecGetHex" title="xmlSecGetHex()">xmlSecGetHex</a><span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecQName2IntegerInfoConstPtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINFO">xmlSecQName2IntegerGetInfo</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="returnvalue">xmlSecQName2IntegerInfoConstPtr</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetInfo" title="xmlSecQName2IntegerGetInfo ()">xmlSecQName2IntegerGetInfo</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINTEGER">xmlSecQName2IntegerGetInteger</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetInteger" title="xmlSecQName2IntegerGetInteger ()">xmlSecQName2IntegerGetInteger</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETINTEGERFROMSTRING">xmlSecQName2IntegerGetIntegerFromString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetIntegerFromString" title="xmlSecQName2IntegerGetIntegerFromString ()">xmlSecQName2IntegerGetIntegerFromString</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERGETSTRINGFROMINTEGER">xmlSecQName2IntegerGetStringFromInteger</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerGetStringFromInteger" title="xmlSecQName2IntegerGetStringFromInteger ()">xmlSecQName2IntegerGetStringFromInteger</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERNODEREAD">xmlSecQName2IntegerNodeRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerNodeRead" title="xmlSecQName2IntegerNodeRead ()">xmlSecQName2IntegerNodeRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERNODEWRITE">xmlSecQName2IntegerNodeWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerNodeWrite" title="xmlSecQName2IntegerNodeWrite ()">xmlSecQName2IntegerNodeWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERATTRIBUTEREAD">xmlSecQName2IntegerAttributeRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerAttributeRead" title="xmlSecQName2IntegerAttributeRead ()">xmlSecQName2IntegerAttributeRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERATTRIBUTEWRITE">xmlSecQName2IntegerAttributeWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerAttributeWrite" title="xmlSecQName2IntegerAttributeWrite ()">xmlSecQName2IntegerAttributeWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERDEBUGDUMP">xmlSecQName2IntegerDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerDebugDump" title="xmlSecQName2IntegerDebugDump ()">xmlSecQName2IntegerDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERDEBUGXMLDUMP">xmlSecQName2IntegerDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerDebugXmlDump" title="xmlSecQName2IntegerDebugXmlDump ()">xmlSecQName2IntegerDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">xmlSecQName2BitMaskInfoConstPtr</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETINFO">xmlSecQName2BitMaskGetInfo</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="returnvalue">xmlSecQName2BitMaskInfoConstPtr</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetInfo" title="xmlSecQName2BitMaskGetInfo ()">xmlSecQName2BitMaskGetInfo</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETBITMASK">xmlSecQName2BitMaskGetBitMask</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetBitMask" title="xmlSecQName2BitMaskGetBitMask ()">xmlSecQName2BitMaskGetBitMask</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKNODESREAD">xmlSecQName2BitMaskNodesRead</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskNodesRead" title="xmlSecQName2BitMaskNodesRead ()">xmlSecQName2BitMaskNodesRead</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETBITMASKFROMSTRING">xmlSecQName2BitMaskGetBitMaskFromString</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetBitMaskFromString" title="xmlSecQName2BitMaskGetBitMaskFromString ()">xmlSecQName2BitMaskGetBitMaskFromString</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td>
-<font><span class="RETURNVALUE">xmlChar</span></font> *</td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKGETSTRINGFROMBITMASK">xmlSecQName2BitMaskGetStringFromBitMask</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">xmlChar</span></font> *
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskGetStringFromBitMask" title="xmlSecQName2BitMaskGetStringFromBitMask ()">xmlSecQName2BitMaskGetStringFromBitMask</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">int</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKNODESWRITE">xmlSecQName2BitMaskNodesWrite</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">int</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskNodesWrite" title="xmlSecQName2BitMaskNodesWrite ()">xmlSecQName2BitMaskNodesWrite</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKDEBUGDUMP">xmlSecQName2BitMaskDebugDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskDebugDump" title="xmlSecQName2BitMaskDebugDump ()">xmlSecQName2BitMaskDebugDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 <tr>
-<td><font><span class="RETURNVALUE">void</span></font></td>
-<td>
-<a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKDEBUGXMLDUMP">xmlSecQName2BitMaskDebugXmlDump</a> <span class="c_punctuation"><span class="PHRASE">()</span></span>
+<td class="function_type">
+<font><span class="returnvalue">void</span></font>
+</td>
+<td class="function_name">
+<a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskDebugXmlDump" title="xmlSecQName2BitMaskDebugXmlDump ()">xmlSecQName2BitMaskDebugXmlDump</a> <span class="c_punctuation">()</span>
 </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLTREE.OTHER"></a><h2>Types and Values</h2>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26583"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmltree.other"></a><h2>Types and Values</h2>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="name">
+<col class="description">
+</colgroup>
 <tbody>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-xmltree.html#XMLSECQNAME2INTEGERINFO">xmlSecQName2IntegerInfo</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfo" title="struct xmlSecQName2IntegerInfo">xmlSecQName2IntegerInfo</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><font>xmlSecQName2IntegerInfoConstPtr</font></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr">xmlSecQName2IntegerInfoConstPtr</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><a href="xmlsec-xmltree.html#XMLSECBITMASK">xmlSecBitMask</a></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask">xmlSecBitMask</a></td>
 </tr>
 <tr>
-<td>struct</td>
-<td><a href="xmlsec-xmltree.html#XMLSECQNAME2BITMASKINFO">xmlSecQName2BitMaskInfo</a></td>
+<td class="datatype_keyword">struct</td>
+<td class="function_name"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfo" title="struct xmlSecQName2BitMaskInfo">xmlSecQName2BitMaskInfo</a></td>
 </tr>
 <tr>
-<td>typedef</td>
-<td><font>xmlSecQName2BitMaskInfoConstPtr</font></td>
+<td class="typedef_keyword">typedef</td>
+<td class="function_name"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr">xmlSecQName2BitMaskInfoConstPtr</a></td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLTREE.DESCRIPTION"></a><h2>Description</h2>
-<p>XML tree operations.</p>
-</div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLTREE.FUNCTIONS_DETAILS"></a><h2>Functions</h2>
-<div class="REFSECT2">
-<a name="XMLSECNODEGETNAME"></a><h3>xmlSecNodeGetName()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecNodeGetName(node)</pre>
+</table></div>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmltree.description"></a><h2>Description</h2>
+<p>
+XML tree operations.
+</p>
+</div>
+<div class="refsect1">
+<a name="xmlsec-xmltree.functions_details"></a><h2>Functions</h2>
+<div class="refsect2">
+<a name="xmlSecNodeGetName"></a><h3>xmlSecNodeGetName()</h3>
+<pre class="programlisting">#define             xmlSecNodeGetName(node)</pre>
 <p>Macro. Returns node's name.</p>
-<div class="REFSECT3">
-<a name="AEN26617"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26619"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeGetName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETNODENSHREF"></a><h3>xmlSecGetNodeNsHref ()</h3>
-<pre class="PROGRAMLISTING">const <font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecGetNodeNsHref (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGetNodeNsHref"></a><h3>xmlSecGetNodeNsHref ()</h3>
+<pre class="programlisting">const <font><span class="returnvalue">xmlChar</span></font> *
+xmlSecGetNodeNsHref (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>);</pre>
 <p>Get's node's namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26639"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26641"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGetNodeNsHref.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>cur</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26650"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGetNodeNsHref.returns"></a><h4>Returns</h4>
 <p> node's namespace href.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECCHECKNODENAME"></a><h3>xmlSecCheckNodeName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecCheckNodeName (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                     <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecCheckNodeName"></a><h3>xmlSecCheckNodeName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecCheckNodeName (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                     <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
 <p>Checks that the node has a given name and a given namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26670"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26672"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCheckNodeName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<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><p>name</p></td>
-<td><p>the name,</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name,</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN26693"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCheckNodeName.returns"></a><h4>Returns</h4>
 <p> 1 if the node matches or 0 otherwise.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETNEXTELEMENTNODE"></a><h3>xmlSecGetNextElementNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecGetNextElementNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>);</pre>
+<div class="refsect2">
+<a name="xmlSecGetNextElementNode"></a><h3>xmlSecGetNextElementNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecGetNextElementNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>);</pre>
 <p>Seraches for the next element node.</p>
-<div class="REFSECT3">
-<a name="AEN26707"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26709"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGetNextElementNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<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></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26718"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGetNextElementNode.returns"></a><h4>Returns</h4>
 <p> the pointer to next element node or NULL if it is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECFINDSIBLING"></a><h3>xmlSecFindSibling ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecFindSibling (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                   <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                   <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Searches <code class="PARAMETER">cur</code>
- and the next siblings of the <code class="PARAMETER">cur</code>
+<div class="refsect2">
+<a name="xmlSecFindSibling"></a><h3>xmlSecFindSibling ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecFindSibling (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                   <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                   <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Searches <em class="parameter"><code>cur</code></em>
+ and the next siblings of the <em class="parameter"><code>cur</code></em>
  node having given name and
 namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26740"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26742"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecFindSibling.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer to XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>cur</p></td>
+<td class="parameter_description"><p>the pointer to XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26763"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecFindSibling.returns"></a><h4>Returns</h4>
 <p> the pointer to the found node or NULL if an error occurs or
 node is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECFINDCHILD"></a><h3>xmlSecFindChild ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecFindChild (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Searches a direct child of the <code class="PARAMETER">parent</code>
+<div class="refsect2">
+<a name="xmlSecFindChild"></a><h3>xmlSecFindChild ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecFindChild (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Searches a direct child of the <em class="parameter"><code>parent</code></em>
  node having given name and
 namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26784"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26786"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecFindChild.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN26807"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecFindChild.returns"></a><h4>Returns</h4>
 <p> the pointer to the found node or NULL if an error occurs or
 node is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECFINDPARENT"></a><h3>xmlSecFindParent ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecFindParent (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Searches the ancestors axis of the <code class="PARAMETER">cur</code>
+<div class="refsect2">
+<a name="xmlSecFindParent"></a><h3>xmlSecFindParent ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecFindParent (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Searches the ancestors axis of the <em class="parameter"><code>cur</code></em>
  node for a node having given name
 and namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26828"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26830"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecFindParent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<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><p>name</p></td>
-<td><p>the name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26851"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecFindParent.returns"></a><h4>Returns</h4>
 <p> the pointer to the found node or NULL if an error occurs or
 node is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECFINDNODE"></a><h3>xmlSecFindNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecFindNode (<code class="PARAMETER">const <font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Searches all children of the <code class="PARAMETER">parent</code>
+<div class="refsect2">
+<a name="xmlSecFindNode"></a><h3>xmlSecFindNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecFindNode (<em class="parameter"><code>const <font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Searches all children of the <em class="parameter"><code>parent</code></em>
  node having given name and
 namespace href.</p>
-<div class="REFSECT3">
-<a name="AEN26872"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26874"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecFindNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26895"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecFindNode.returns"></a><h4>Returns</h4>
 <p> the pointer to the found node or NULL if an error occurs or
 node is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECADDCHILD"></a><h3>xmlSecAddChild ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecAddChild (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Adds a child to the node <code class="PARAMETER">parent</code>
- with given <code class="PARAMETER">name</code>
- and namespace <code class="PARAMETER">ns</code>
+<div class="refsect2">
+<a name="xmlSecAddChild"></a><h3>xmlSecAddChild ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecAddChild (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Adds a child to the node <em class="parameter"><code>parent</code></em>
+ with given <em class="parameter"><code>name</code></em>
+ and namespace <em class="parameter"><code>ns</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN26918"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26920"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAddChild.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the new node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the new node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the new node namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the new node namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN26941"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecAddChild.returns"></a><h4>Returns</h4>
 <p> pointer to the new node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECENSUREEMPTYCHILD"></a><h3>xmlSecEnsureEmptyChild ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecEnsureEmptyChild (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Searches a direct child of the <code class="PARAMETER">parent</code>
+<div class="refsect2">
+<a name="xmlSecEnsureEmptyChild"></a><h3>xmlSecEnsureEmptyChild ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecEnsureEmptyChild (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                        <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Searches a direct child of the <em class="parameter"><code>parent</code></em>
  node having given name and
 namespace href. If not found then element node with given name / namespace
 is added.</p>
-<div class="REFSECT3">
-<a name="AEN26962"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN26964"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecEnsureEmptyChild.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the namespace href (may be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the namespace href (may be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN26985"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecEnsureEmptyChild.returns"></a><h4>Returns</h4>
 <p> the pointer to the found or created node; or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECADDCHILDNODE"></a><h3>xmlSecAddChildNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecAddChildNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> parent</code>,
-                    <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> child</code>);</pre>
-<p>Adds <code class="PARAMETER">child</code>
- node to the <code class="PARAMETER">parent</code>
+<div class="refsect2">
+<a name="xmlSecAddChildNode"></a><h3>xmlSecAddChildNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecAddChildNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> parent</code></em>,
+                    <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> child</code></em>);</pre>
+<p>Adds <em class="parameter"><code>child</code></em>
+ node to the <em class="parameter"><code>parent</code></em>
  node.</p>
-<div class="REFSECT3">
-<a name="AEN27004"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27006"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAddChildNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>parent</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>parent</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>child</p></td>
-<td><p>the new node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>child</p></td>
+<td class="parameter_description"><p>the new node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27021"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecAddChildNode.returns"></a><h4>Returns</h4>
 <p> pointer to the new node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECADDNEXTSIBLING"></a><h3>xmlSecAddNextSibling ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecAddNextSibling (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Adds next sibling to the node <code class="PARAMETER">node</code>
- with given <code class="PARAMETER">name</code>
- and namespace <code class="PARAMETER">ns</code>
+<div class="refsect2">
+<a name="xmlSecAddNextSibling"></a><h3>xmlSecAddNextSibling ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecAddNextSibling (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Adds next sibling to the node <em class="parameter"><code>node</code></em>
+ with given <em class="parameter"><code>name</code></em>
+ and namespace <em class="parameter"><code>ns</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27044"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27046"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAddNextSibling.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the new node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the new node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the new node namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the new node namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27067"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecAddNextSibling.returns"></a><h4>Returns</h4>
 <p> pointer to the new node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECADDPREVSIBLING"></a><h3>xmlSecAddPrevSibling ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlNodePtr</span></font>
-xmlSecAddPrevSibling (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *ns</code>);</pre>
-<p>Adds prev sibling to the node <code class="PARAMETER">node</code>
- with given <code class="PARAMETER">name</code>
- and namespace <code class="PARAMETER">ns</code>
+<div class="refsect2">
+<a name="xmlSecAddPrevSibling"></a><h3>xmlSecAddPrevSibling ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlNodePtr</span></font>
+xmlSecAddPrevSibling (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *ns</code></em>);</pre>
+<p>Adds prev sibling to the node <em class="parameter"><code>node</code></em>
+ with given <em class="parameter"><code>name</code></em>
+ and namespace <em class="parameter"><code>ns</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27090"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27092"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAddPrevSibling.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the new node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the new node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>ns</p></td>
-<td><p>the new node namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ns</p></td>
+<td class="parameter_description"><p>the new node namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27113"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecAddPrevSibling.returns"></a><h4>Returns</h4>
 <p> pointer to the new node or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECREPLACENODE"></a><h3>xmlSecReplaceNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> newNode</code>);</pre>
-<p>Swaps the <code class="PARAMETER">node</code>
- and <code class="PARAMETER">newNode</code>
+<div class="refsect2">
+<a name="xmlSecReplaceNode"></a><h3>xmlSecReplaceNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> newNode</code></em>);</pre>
+<p>Swaps the <em class="parameter"><code>node</code></em>
+ and <em class="parameter"><code>newNode</code></em>
  in the XML tree.</p>
-<div class="REFSECT3">
-<a name="AEN27132"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27134"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNode</p></td>
-<td><p>the new node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNode</p></td>
+<td class="parameter_description"><p>the new node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27149"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceNode.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="XMLSECREPLACENODEANDRETURN"></a><h3>xmlSecReplaceNodeAndReturn ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceNodeAndReturn (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> newNode</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> *replaced</code>);</pre>
-<p>Swaps the <code class="PARAMETER">node</code>
- and <code class="PARAMETER">newNode</code>
+<div class="refsect2">
+<a name="xmlSecReplaceNodeAndReturn"></a><h3>xmlSecReplaceNodeAndReturn ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceNodeAndReturn (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> newNode</code></em>,
+                            <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> *replaced</code></em>);</pre>
+<p>Swaps the <em class="parameter"><code>node</code></em>
+ and <em class="parameter"><code>newNode</code></em>
  in the XML tree.</p>
-<div class="REFSECT3">
-<a name="AEN27171"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27173"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeAndReturn.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNode</p></td>
-<td><p>the new node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNode</p></td>
+<td class="parameter_description"><p>the new node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>replaced</p></td>
-<td><p>the replaced node, or release it if NULL is given</p></td>
-<td> </td>
+<td class="parameter_name"><p>replaced</p></td>
+<td class="parameter_description"><p>the replaced node, or release it if NULL is given</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27194"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeAndReturn.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="XMLSECREPLACECONTENT"></a><h3>xmlSecReplaceContent ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceContent (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                      <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> newNode</code>);</pre>
-<p>Swaps the content of <code class="PARAMETER">node</code>
- and <code class="PARAMETER">newNode</code>
+<div class="refsect2">
+<a name="xmlSecReplaceContent"></a><h3>xmlSecReplaceContent ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceContent (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                      <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> newNode</code></em>);</pre>
+<p>Swaps the content of <em class="parameter"><code>node</code></em>
+ and <em class="parameter"><code>newNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27213"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27215"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceContent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNode</p></td>
-<td><p>the new node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNode</p></td>
+<td class="parameter_description"><p>the new node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27230"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceContent.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="XMLSECREPLACECONTENTANDRETURN"></a><h3>xmlSecReplaceContentAndReturn ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceContentAndReturn (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> newNode</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> *replaced</code>);</pre>
-<p>Swaps the content of <code class="PARAMETER">node</code>
- and <code class="PARAMETER">newNode</code>
+<div class="refsect2">
+<a name="xmlSecReplaceContentAndReturn"></a><h3>xmlSecReplaceContentAndReturn ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceContentAndReturn (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> newNode</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> *replaced</code></em>);</pre>
+<p>Swaps the content of <em class="parameter"><code>node</code></em>
+ and <em class="parameter"><code>newNode</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27252"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27254"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceContentAndReturn.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>newNode</p></td>
-<td><p>the new node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>newNode</p></td>
+<td class="parameter_description"><p>the new node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>replaced</p></td>
-<td><p>the replaced nodes, or release them if NULL is given</p></td>
-<td> </td>
+<td class="parameter_name"><p>replaced</p></td>
+<td class="parameter_description"><p>the replaced nodes, or release them if NULL is given</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27275"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceContentAndReturn.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="XMLSECREPLACENODEBUFFER"></a><h3>xmlSecReplaceNodeBuffer ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceNodeBuffer (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                         <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buffer</code>,
-                         <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>);</pre>
-<p>Swaps the <code class="PARAMETER">node</code>
- and the parsed XML data from the <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecReplaceNodeBuffer"></a><h3>xmlSecReplaceNodeBuffer ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceNodeBuffer (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                         <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buffer</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>Swaps the <em class="parameter"><code>node</code></em>
+ and the parsed XML data from the <em class="parameter"><code>buffer</code></em>
  in the XML tree.</p>
-<div class="REFSECT3">
-<a name="AEN27297"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27299"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeBuffer.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the XML data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the XML data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the XML data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the XML data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27320"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeBuffer.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="XMLSECREPLACENODEBUFFERANDRETURN"></a><h3>xmlSecReplaceNodeBufferAndReturn ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecReplaceNodeBufferAndReturn (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                  <code class="PARAMETER">const <a href="xmlsec-xmlsec.html#XMLSECBYTE"><span class="TYPE">xmlSecByte</span></a> *buffer</code>,
-                                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> size</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> *replaced</code>);</pre>
-<p>Swaps the <code class="PARAMETER">node</code>
- and the parsed XML data from the <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecReplaceNodeBufferAndReturn"></a><h3>xmlSecReplaceNodeBufferAndReturn ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecReplaceNodeBufferAndReturn (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                  <em class="parameter"><code>const <a class="link" href="xmlsec-xmlsec.html#xmlSecByte" title="xmlSecByte"><span class="type">xmlSecByte</span></a> *buffer</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>,
+                                  <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> *replaced</code></em>);</pre>
+<p>Swaps the <em class="parameter"><code>node</code></em>
+ and the parsed XML data from the <em class="parameter"><code>buffer</code></em>
  in the XML tree.</p>
-<div class="REFSECT3">
-<a name="AEN27345"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27347"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeBufferAndReturn.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the current node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the current node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the XML data.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the XML data.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>size</p></td>
-<td><p>the XML data size.</p></td>
-<td> </td>
+<td class="parameter_name"><p>size</p></td>
+<td class="parameter_description"><p>the XML data size.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>replaced</p></td>
-<td><p>the replaced nodes, or release them if NULL is given</p></td>
-<td> </td>
+<td class="parameter_name"><p>replaced</p></td>
+<td class="parameter_description"><p>the replaced nodes, or release them if NULL is given</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27374"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecReplaceNodeBufferAndReturn.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="XMLSECNODEENCODEANDSETCONTENT"></a><h3>xmlSecNodeEncodeAndSetContent ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecNodeEncodeAndSetContent (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *buffer</code>);</pre>
-<p>Encodes "special" characters in the <code class="PARAMETER">buffer</code>
+<div class="refsect2">
+<a name="xmlSecNodeEncodeAndSetContent"></a><h3>xmlSecNodeEncodeAndSetContent ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecNodeEncodeAndSetContent (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *buffer</code></em>);</pre>
+<p>Encodes "special" characters in the <em class="parameter"><code>buffer</code></em>
  and sets the result
 as the node content.</p>
-<div class="REFSECT3">
-<a name="AEN27392"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27394"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecNodeEncodeAndSetContent.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to an XML node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>buffer</p></td>
-<td><p>the pointer to the node content.</p></td>
-<td> </td>
+<td class="parameter_name"><p>buffer</p></td>
+<td class="parameter_description"><p>the pointer to the node content.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27409"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecNodeEncodeAndSetContent.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="XMLSECADDIDS"></a><h3>xmlSecAddIDs ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecAddIDs (<code class="PARAMETER"><font><span class="TYPE">xmlDocPtr</span></font> doc</code>,
-              <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> cur</code>,
-              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> **ids</code>);</pre>
-<p>Walks thru all children of the <code class="PARAMETER">cur</code>
+<div class="refsect2">
+<a name="xmlSecAddIDs"></a><h3>xmlSecAddIDs ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecAddIDs (<em class="parameter"><code><font><span class="type">xmlDocPtr</span></font> doc</code></em>,
+              <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> cur</code></em>,
+              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> **ids</code></em>);</pre>
+<p>Walks thru all children of the <em class="parameter"><code>cur</code></em>
  node and adds all attributes
-from the <code class="PARAMETER">ids</code>
- list to the <code class="PARAMETER">doc</code>
+from the <em class="parameter"><code>ids</code></em>
+ list to the <em class="parameter"><code>doc</code></em>
  document IDs attributes hash.</p>
-<div class="REFSECT3">
-<a name="AEN27432"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27434"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
-<tbody>
-<tr>
-<td><p>doc</p></td>
-<td><p>the pointer to an XML document.</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>cur</p></td>
-<td><p>the pointer to an XML node.</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>ids</p></td>
-<td><p>the pointer to a NULL terminated list of ID attributes.</p></td>
-<td> </td>
-</tr>
-</tbody>
-</table>
-<p></p>
-</div>
-</div>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECGENERATEANDADDID"></a><h3>xmlSecGenerateAndAddID ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecGenerateAndAddID (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *attrName</code>,
-                        <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *prefix</code>,
-                        <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> len</code>);</pre>
-<p>Generates a unique ID in the format <<code class="PARAMETER">prefix</code>
->base64-encoded(<code class="PARAMETER">len</code>
- random bytes)
-and puts it in the attribute <code class="PARAMETER">attrName</code>
-.</p>
-<div class="REFSECT3">
-<a name="AEN27478"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27480"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecAddIDs.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the node to ID attr to.</p></td>
-<td> </td>
+<td class="parameter_name"><p>doc</p></td>
+<td class="parameter_description"><p>the pointer to an XML document.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>attrName</p></td>
-<td><p>the ID attr name.</p></td>
-<td> </td>
+<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><p>prefix</p></td>
-<td><p>the prefix to add to the generated ID (can be NULL).</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>len</p></td>
-<td><p>the length of ID.</p></td>
-<td> </td>
+<td class="parameter_name"><p>ids</p></td>
+<td class="parameter_description"><p>the pointer to a NULL terminated list of ID attributes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27507"></a><h4>Returns</h4>
-<p> 0 on success or a negative value if an error occurs.</p>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGENERATEID"></a><h3>xmlSecGenerateID ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecGenerateID (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *prefix</code>,
-                  <code class="PARAMETER"><a href="xmlsec-xmlsec.html#XMLSECSIZE"><span class="TYPE">xmlSecSize</span></a> len</code>);</pre>
-<p>Generates a unique ID in the format <<code class="PARAMETER">prefix</code>
->base64-encoded(<code class="PARAMETER">len</code>
- random bytes).
-The caller is responsible for freeing returned string using <code class="PARAMETER">xmlFree</code>
- function.</p>
-<div class="REFSECT3">
-<a name="AEN27527"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27529"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
-<tbody>
-<tr>
-<td><p>prefix</p></td>
-<td><p>the prefix to add to the generated ID (can be NULL).</p></td>
-<td> </td>
-</tr>
-<tr>
-<td><p>len</p></td>
-<td><p>the length of ID.</p></td>
-<td> </td>
-</tr>
-</tbody>
-</table>
-<p></p>
-</div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27544"></a><h4>Returns</h4>
-<p> pointer to generated ID string or NULL if an error occurs.</p>
-</div>
-</div>
-<hr>
-<div class="REFSECT2">
-<a name="XMLSECCREATETREE"></a><h3>xmlSecCreateTree ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlDocPtr</span></font>
-xmlSecCreateTree (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *rootNodeName</code>,
-                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *rootNodeNs</code>);</pre>
-<p>Creates a new XML tree with one root node <code class="PARAMETER">rootNodeName</code>
+<div class="refsect2">
+<a name="xmlSecCreateTree"></a><h3>xmlSecCreateTree ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlDocPtr</span></font>
+xmlSecCreateTree (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *rootNodeName</code></em>,
+                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *rootNodeNs</code></em>);</pre>
+<div class="warning"><p><code class="literal">xmlSecCreateTree</code> is deprecated and should not be used in newly-written code.</p></div>
+<p>Creates a new XML tree with one root node <em class="parameter"><code>rootNodeName</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27562"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27564"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecCreateTree.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>rootNodeName</p></td>
-<td><p>the root node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>rootNodeName</p></td>
+<td class="parameter_description"><p>the root node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>rootNodeNs</p></td>
-<td><p>the root node namespace (otpional).</p></td>
-<td> </td>
+<td class="parameter_name"><p>rootNodeNs</p></td>
+<td class="parameter_description"><p>the root node namespace (otpional).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27579"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecCreateTree.returns"></a><h4>Returns</h4>
 <p> pointer to the newly created tree or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECISEMPTYNODE"></a><h3>xmlSecIsEmptyNode ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecIsEmptyNode (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>);</pre>
-<p>Checks whethere the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecIsEmptyNode"></a><h3>xmlSecIsEmptyNode ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecIsEmptyNode (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>);</pre>
+<p>Checks whethere the <em class="parameter"><code>node</code></em>
  is empty (i.e. has only whitespaces children).</p>
-<div class="REFSECT3">
-<a name="AEN27594"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27596"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecIsEmptyNode.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>node</p></td>
-<td><p>the node to check</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the node to check</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27605"></a><h4>Returns</h4>
-<p> 1 if <code class="PARAMETER">node</code>
+<div class="refsect3">
+<a name="xmlSecIsEmptyNode.returns"></a><h4>Returns</h4>
+<p> 1 if <em class="parameter"><code>node</code></em>
 is empty, 0 otherwise or a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECISEMPTYSTRING"></a><h3>xmlSecIsEmptyString ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecIsEmptyString (<code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
-<p>Checks whethere the <code class="PARAMETER">str</code>
+<div class="refsect2">
+<a name="xmlSecIsEmptyString"></a><h3>xmlSecIsEmptyString ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecIsEmptyString (<em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
+<p>Checks whethere the <em class="parameter"><code>str</code></em>
  is empty (i.e. has only whitespaces children).</p>
-<div class="REFSECT3">
-<a name="AEN27621"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27623"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecIsEmptyString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>str</p></td>
-<td><p>the string to check</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string to check</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27632"></a><h4>Returns</h4>
-<p> 1 if <code class="PARAMETER">str</code>
+<div class="refsect3">
+<a name="xmlSecIsEmptyString.returns"></a><h4>Returns</h4>
+<p> 1 if <em class="parameter"><code>str</code></em>
 is empty, 0 otherwise or a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETQNAME"></a><h3>xmlSecGetQName ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
-xmlSecGetQName (<code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *href</code>,
-                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *local</code>);</pre>
-<p>Creates QName (prefix:local) from <code class="PARAMETER">href</code>
- and <code class="PARAMETER">local</code>
- in the context of the <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecGetQName"></a><h3>xmlSecGetQName ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
+xmlSecGetQName (<em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *href</code></em>,
+                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *local</code></em>);</pre>
+<p>Creates QName (prefix:local) from <em class="parameter"><code>href</code></em>
+ and <em class="parameter"><code>local</code></em>
+ in the context of the <em class="parameter"><code>node</code></em>
 .
 Caller is responsible for freeing returned string with xmlFree.</p>
-<div class="REFSECT3">
-<a name="AEN27656"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27658"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGetQName.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>node</p></td>
-<td><p>the context node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the context node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>href</p></td>
-<td><p>the QName href (can be NULL).</p></td>
-<td> </td>
+<td class="parameter_name"><p>href</p></td>
+<td class="parameter_description"><p>the QName href (can be NULL).</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>local</p></td>
-<td><p>the QName local part.</p></td>
-<td> </td>
+<td class="parameter_name"><p>local</p></td>
+<td class="parameter_description"><p>the QName local part.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27679"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecGetQName.returns"></a><h4>Returns</h4>
 <p> qname or NULL if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECPRINTXMLSTRING"></a><h3>xmlSecPrintXmlString ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecPrintXmlString (<code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *fd</code>,
-                      <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *str</code>);</pre>
-<p>Encodes the <code class="PARAMETER">str</code>
- (e.g. replaces '&' with '&') and writes it to <code class="PARAMETER">fd</code>
+<div class="refsect2">
+<a name="xmlSecPrintXmlString"></a><h3>xmlSecPrintXmlString ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecPrintXmlString (<em class="parameter"><code><font><span class="type">FILE</span></font> *fd</code></em>,
+                      <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *str</code></em>);</pre>
+<p>Encodes the <em class="parameter"><code>str</code></em>
+ (e.g. replaces '&' with '&') and writes it to <em class="parameter"><code>fd</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27698"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27700"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecPrintXmlString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>fd</p></td>
-<td><p>the file descriptor to write the XML string to</p></td>
-<td> </td>
+<td class="parameter_name"><p>fd</p></td>
+<td class="parameter_description"><p>the file descriptor to write the XML string to</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>str</p></td>
-<td><p>the string</p></td>
-<td> </td>
+<td class="parameter_name"><p>str</p></td>
+<td class="parameter_description"><p>the string</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27715"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecPrintXmlString.returns"></a><h4>Returns</h4>
 <p> he number of bytes transmitted or a negative value if an error occurs.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECISHEX"></a><h3>xmlSecIsHex()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecIsHex(c)</pre>
-<p>Macro. Returns 1 if <code class="PARAMETER">c</code>
+<div class="refsect2">
+<a name="xmlSecIsHex"></a><h3>xmlSecIsHex()</h3>
+<pre class="programlisting">#define             xmlSecIsHex(c)</pre>
+<p>Macro. Returns 1 if <em class="parameter"><code>c</code></em>
  is a hex digit or 0 other wise.</p>
-<div class="REFSECT3">
-<a name="AEN27725"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27727"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecIsHex.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>c</p></td>
-<td><p>the character.</p></td>
-<td> </td>
+<td class="parameter_name"><p>c</p></td>
+<td class="parameter_description"><p>the character.</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECGETHEX"></a><h3>xmlSecGetHex()</h3>
-<pre class="PROGRAMLISTING">#define             xmlSecGetHex(c)</pre>
-<p>Macro. Returns the hex value of the <code class="PARAMETER">c</code>
+<div class="refsect2">
+<a name="xmlSecGetHex"></a><h3>xmlSecGetHex()</h3>
+<pre class="programlisting">#define             xmlSecGetHex(c)</pre>
+<p>Macro. Returns the hex value of the <em class="parameter"><code>c</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27743"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27745"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecGetHex.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody><tr>
-<td><p>c</p></td>
-<td><p>the character,</p></td>
-<td> </td>
+<td class="parameter_name"><p>c</p></td>
+<td class="parameter_description"><p>the character,</p></td>
+<td class="parameter_annotations"> </td>
 </tr></tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERGETINFO"></a><h3>xmlSecQName2IntegerGetInfo ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecQName2IntegerInfoConstPtr</span></font>
-xmlSecQName2IntegerGetInfo (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                            <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>);</pre>
-<p>Maps integer <code class="PARAMETER">intValue</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerGetInfo"></a><h3>xmlSecQName2IntegerGetInfo ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="returnvalue">xmlSecQName2IntegerInfoConstPtr</span></a>
+xmlSecQName2IntegerGetInfo (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                            <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>);</pre>
+<p>Maps integer <em class="parameter"><code>intValue</code></em>
  to a QName prefix.</p>
-<div class="REFSECT3">
-<a name="AEN27769"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27771"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetInfo.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27786"></a><h4>Returns</h4>
-<p> the QName info that is mapped to <code class="PARAMETER">intValue</code>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetInfo.returns"></a><h4>Returns</h4>
+<p> the QName info that is mapped to <em class="parameter"><code>intValue</code></em>
 or NULL if such value
 is not found.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERGETINTEGER"></a><h3>xmlSecQName2IntegerGetInteger ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2IntegerGetInteger (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qnameHref</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qnameLocalPart</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">int</span></font> *intValue</code>);</pre>
-<p>Maps qname qname to an integer and returns it in <code class="PARAMETER">intValue</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerGetInteger"></a><h3>xmlSecQName2IntegerGetInteger ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2IntegerGetInteger (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qnameHref</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qnameLocalPart</code></em>,
+                               <em class="parameter"><code><font><span class="type">int</span></font> *intValue</code></em>);</pre>
+<p>Maps qname qname to an integer and returns it in <em class="parameter"><code>intValue</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27811"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27813"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetInteger.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qnameHref</p></td>
-<td><p>the qname href value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qnameHref</p></td>
+<td class="parameter_description"><p>the qname href value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qnameLocalPart</p></td>
-<td><p>the qname local part value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qnameLocalPart</p></td>
+<td class="parameter_description"><p>the qname local part value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the pointer to result integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the pointer to result integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27840"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetInteger.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="XMLSECQNAME2INTEGERGETINTEGERFROMSTRING"></a><h3>xmlSecQName2IntegerGetIntegerFromString ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerGetIntegerFromString"></a><h3>xmlSecQName2IntegerGetIntegerFromString ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecQName2IntegerGetIntegerFromString
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qname</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">int</span></font> *intValue</code>);</pre>
-<p>Converts <code class="PARAMETER">qname</code>
- into integer in context of <code class="PARAMETER">node</code>
+                               (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qname</code></em>,
+                                <em class="parameter"><code><font><span class="type">int</span></font> *intValue</code></em>);</pre>
+<p>Converts <em class="parameter"><code>qname</code></em>
+ into integer in context of <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27865"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27867"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetIntegerFromString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qname</p></td>
-<td><p>the qname string.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qname</p></td>
+<td class="parameter_description"><p>the qname string.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the pointer to result integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the pointer to result integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27894"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetIntegerFromString.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="XMLSECQNAME2INTEGERGETSTRINGFROMINTEGER"></a><h3>xmlSecQName2IntegerGetStringFromInteger ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
+<div class="refsect2">
+<a name="xmlSecQName2IntegerGetStringFromInteger"></a><h3>xmlSecQName2IntegerGetStringFromInteger ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
 xmlSecQName2IntegerGetStringFromInteger
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>);</pre>
-<p>Creates qname string for <code class="PARAMETER">intValue</code>
- in context of given <code class="PARAMETER">node</code>
+                               (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>);</pre>
+<p>Creates qname string for <em class="parameter"><code>intValue</code></em>
+ in context of given <em class="parameter"><code>node</code></em>
 . Caller
-is responsible for freeing returned string with <code class="PARAMETER">xmlFree</code>
+is responsible for freeing returned string with <em class="parameter"><code>xmlFree</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27917"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27919"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetStringFromInteger.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN27940"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerGetStringFromInteger.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated string on success or NULL if an error occurs,</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERNODEREAD"></a><h3>xmlSecQName2IntegerNodeRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2IntegerNodeRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                             <code class="PARAMETER"><font><span class="TYPE">int</span></font> *intValue</code>);</pre>
-<p>Reads the content of <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerNodeRead"></a><h3>xmlSecQName2IntegerNodeRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2IntegerNodeRead (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                             <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                             <em class="parameter"><code><font><span class="type">int</span></font> *intValue</code></em>);</pre>
+<p>Reads the content of <em class="parameter"><code>node</code></em>
  and converts it to an integer using mapping
-from <code class="PARAMETER">info</code>
+from <em class="parameter"><code>info</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN27962"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN27964"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerNodeRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the pointer to result integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the pointer to result integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN27985"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerNodeRead.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="XMLSECQNAME2INTEGERNODEWRITE"></a><h3>xmlSecQName2IntegerNodeWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2IntegerNodeWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeName</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeNs</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>);</pre>
-<p>Creates new child node in <code class="PARAMETER">node</code>
- and sets its value to <code class="PARAMETER">intValue</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerNodeWrite"></a><h3>xmlSecQName2IntegerNodeWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2IntegerNodeWrite (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeName</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeNs</code></em>,
+                              <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>);</pre>
+<p>Creates new child node in <em class="parameter"><code>node</code></em>
+ and sets its value to <em class="parameter"><code>intValue</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28013"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28015"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerNodeWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the parent node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the parent node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeName</p></td>
-<td><p>the child node name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeName</p></td>
+<td class="parameter_description"><p>the child node name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeNs</p></td>
-<td><p>the child node namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeNs</p></td>
+<td class="parameter_description"><p>the child node namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28048"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerNodeWrite.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="XMLSECQNAME2INTEGERATTRIBUTEREAD"></a><h3>xmlSecQName2IntegerAttributeRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2IntegerAttributeRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                  <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *attrName</code>,
-                                  <code class="PARAMETER"><font><span class="TYPE">int</span></font> *intValue</code>);</pre>
-<p>Gets the value of <code class="PARAMETER">attrName</code>
- atrtibute from <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerAttributeRead"></a><h3>xmlSecQName2IntegerAttributeRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2IntegerAttributeRead (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                                  <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                  <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *attrName</code></em>,
+                                  <em class="parameter"><code><font><span class="type">int</span></font> *intValue</code></em>);</pre>
+<p>Gets the value of <em class="parameter"><code>attrName</code></em>
+ atrtibute from <em class="parameter"><code>node</code></em>
  and converts it to integer
-according to <code class="PARAMETER">info</code>
+according to <em class="parameter"><code>info</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28074"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28076"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerAttributeRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the element node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the element node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>attrName</p></td>
-<td><p>the attribute name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>attrName</p></td>
+<td class="parameter_description"><p>the attribute name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the pointer to result integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the pointer to result integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28103"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerAttributeRead.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="XMLSECQNAME2INTEGERATTRIBUTEWRITE"></a><h3>xmlSecQName2IntegerAttributeWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2IntegerAttributeWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                   <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *attrName</code>,
-                                   <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>);</pre>
-<p>Converts <code class="PARAMETER">intValue</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerAttributeWrite"></a><h3>xmlSecQName2IntegerAttributeWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2IntegerAttributeWrite (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                                   <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                   <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *attrName</code></em>,
+                                   <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>);</pre>
+<p>Converts <em class="parameter"><code>intValue</code></em>
  to a qname and sets it to the value of
-attribute <code class="PARAMETER">attrName</code>
- in <code class="PARAMETER">node</code>
+attribute <em class="parameter"><code>attrName</code></em>
+ in <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28129"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28131"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerAttributeWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the parent node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the parent node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>attrName</p></td>
-<td><p>the name of attribute.</p></td>
-<td> </td>
+<td class="parameter_name"><p>attrName</p></td>
+<td class="parameter_description"><p>the name of attribute.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN28158"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerAttributeWrite.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="XMLSECQNAME2INTEGERDEBUGDUMP"></a><h3>xmlSecQName2IntegerDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecQName2IntegerDebugDump (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints <code class="PARAMETER">intValue</code>
- into <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerDebugDump"></a><h3>xmlSecQName2IntegerDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecQName2IntegerDebugDump (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                              <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                              <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints <em class="parameter"><code>intValue</code></em>
+ into <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28183"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28185"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the value name to print.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the value name to print.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERDEBUGXMLDUMP"></a><h3>xmlSecQName2IntegerDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecQName2IntegerDebugXmlDump (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2IntegerInfoConstPtr</span></font> info</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">int</span></font> intValue</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints <code class="PARAMETER">intValue</code>
- into <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerDebugXmlDump"></a><h3>xmlSecQName2IntegerDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecQName2IntegerDebugXmlDump (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2IntegerInfoConstPtr" title="xmlSecQName2IntegerInfoConstPtr"><span class="type">xmlSecQName2IntegerInfoConstPtr</span></a> info</code></em>,
+                                 <em class="parameter"><code><font><span class="type">int</span></font> intValue</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints <em class="parameter"><code>intValue</code></em>
+ into <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN28234"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28236"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>intValue</p></td>
-<td><p>the integer value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>intValue</p></td>
+<td class="parameter_description"><p>the integer value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the value name to print.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the value name to print.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKGETINFO"></a><h3>xmlSecQName2BitMaskGetInfo ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlSecQName2BitMaskInfoConstPtr</span></font>
-xmlSecQName2BitMaskGetInfo (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                            <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> mask</code>);</pre>
-<p>Converts <code class="PARAMETER">mask</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskGetInfo"></a><h3>xmlSecQName2BitMaskGetInfo ()</h3>
+<pre class="programlisting"><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="returnvalue">xmlSecQName2BitMaskInfoConstPtr</span></a>
+xmlSecQName2BitMaskGetInfo (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                            <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> mask</code></em>);</pre>
+<p>Converts <em class="parameter"><code>mask</code></em>
  to qname.</p>
-<div class="REFSECT3">
-<a name="AEN28278"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28280"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetInfo.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the bit mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the bit mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN28295"></a><h4>Returns</h4>
-<p> pointer to the qname info for <code class="PARAMETER">mask</code>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetInfo.returns"></a><h4>Returns</h4>
+<p> pointer to the qname info for <em class="parameter"><code>mask</code></em>
 or NULL if mask is unknown.</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKGETBITMASK"></a><h3>xmlSecQName2BitMaskGetBitMask ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2BitMaskGetBitMask (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qnameLocalPart</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qnameHref</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> *mask</code>);</pre>
-<p>Converts <code class="PARAMETER">qnameLocalPart</code>
- to <code class="PARAMETER">mask</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskGetBitMask"></a><h3>xmlSecQName2BitMaskGetBitMask ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2BitMaskGetBitMask (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qnameLocalPart</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qnameHref</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> *mask</code></em>);</pre>
+<p>Converts <em class="parameter"><code>qnameLocalPart</code></em>
+ to <em class="parameter"><code>mask</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28321"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28323"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetBitMask.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qnameLocalPart</p></td>
-<td><p>the qname LocalPart value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qnameLocalPart</p></td>
+<td class="parameter_description"><p>the qname LocalPart value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qnameHref</p></td>
-<td><p>the qname Href value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qnameHref</p></td>
+<td class="parameter_description"><p>the qname Href value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the pointer to result mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the pointer to result mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28350"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetBitMask.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="XMLSECQNAME2BITMASKNODESREAD"></a><h3>xmlSecQName2BitMaskNodesRead ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2BitMaskNodesRead (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> *node</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeName</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeNs</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">int</span></font> stopOnUnknown</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> *mask</code>);</pre>
-<p>Reads <<code class="PARAMETER">nodeNs</code>
-:<code class="PARAMETER">nodeName</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskNodesRead"></a><h3>xmlSecQName2BitMaskNodesRead ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2BitMaskNodesRead (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                              <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> *node</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeName</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeNs</code></em>,
+                              <em class="parameter"><code><font><span class="type">int</span></font> stopOnUnknown</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> *mask</code></em>);</pre>
+<p>Reads <<em class="parameter"><code>nodeNs</code></em>
+:<em class="parameter"><code>nodeName</code></em>
 > elements and puts the result bit mask
-into <code class="PARAMETER">mask</code>
-. When function exits, <code class="PARAMETER">node</code>
+into <em class="parameter"><code>mask</code></em>
+. When function exits, <em class="parameter"><code>node</code></em>
  points to the first element node
-after all the <<code class="PARAMETER">nodeNs</code>
-:<code class="PARAMETER">nodeName</code>
+after all the <<em class="parameter"><code>nodeNs</code></em>
+:<em class="parameter"><code>nodeName</code></em>
 > elements.</p>
-<div class="REFSECT3">
-<a name="AEN28385"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28387"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskNodesRead.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the start.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the start.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeName</p></td>
-<td><p>the mask nodes name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeName</p></td>
+<td class="parameter_description"><p>the mask nodes name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeNs</p></td>
-<td><p>the mask nodes namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeNs</p></td>
+<td class="parameter_description"><p>the mask nodes namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>stopOnUnknown</p></td>
-<td><p>if this flag is set then function exits if unknown
+<td class="parameter_name"><p>stopOnUnknown</p></td>
+<td class="parameter_description"><p>if this flag is set then function exits if unknown
 value was found.</p></td>
-<td> </td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the pointer to result mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the pointer to result mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28426"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskNodesRead.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="XMLSECQNAME2BITMASKGETBITMASKFROMSTRING"></a><h3>xmlSecQName2BitMaskGetBitMaskFromString ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskGetBitMaskFromString"></a><h3>xmlSecQName2BitMaskGetBitMaskFromString ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
 xmlSecQName2BitMaskGetBitMaskFromString
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *qname</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> *mask</code>);</pre>
-<p>Converts <code class="PARAMETER">qname</code>
- into integer in context of <code class="PARAMETER">node</code>
+                               (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *qname</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> *mask</code></em>);</pre>
+<p>Converts <em class="parameter"><code>qname</code></em>
+ into integer in context of <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28451"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28453"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetBitMaskFromString.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>qname</p></td>
-<td><p>the qname string.</p></td>
-<td> </td>
+<td class="parameter_name"><p>qname</p></td>
+<td class="parameter_description"><p>the qname string.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the pointer to result msk value.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the pointer to result msk value.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
+</table></div>
 </div>
-</div>
-<div class="REFSECT3">
-<a name="AEN28480"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetBitMaskFromString.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="XMLSECQNAME2BITMASKGETSTRINGFROMBITMASK"></a><h3>xmlSecQName2BitMaskGetStringFromBitMask ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">xmlChar</span></font> *
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskGetStringFromBitMask"></a><h3>xmlSecQName2BitMaskGetStringFromBitMask ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">xmlChar</span></font> *
 xmlSecQName2BitMaskGetStringFromBitMask
-                               (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                                <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                                <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> mask</code>);</pre>
-<p>Creates qname string for <code class="PARAMETER">mask</code>
- in context of given <code class="PARAMETER">node</code>
+                               (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                                <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                                <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> mask</code></em>);</pre>
+<p>Creates qname string for <em class="parameter"><code>mask</code></em>
+ in context of given <em class="parameter"><code>node</code></em>
 . Caller
-is responsible for freeing returned string with <code class="PARAMETER">xmlFree</code>
+is responsible for freeing returned string with <em class="parameter"><code>xmlFree</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28503"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28505"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetStringFromBitMask.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->integer mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->integer mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the pointer to node.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the pointer to node.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28526"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskGetStringFromBitMask.returns"></a><h4>Returns</h4>
 <p> pointer to newly allocated string on success or NULL if an error occurs,</p>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKNODESWRITE"></a><h3>xmlSecQName2BitMaskNodesWrite ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">int</span></font>
-xmlSecQName2BitMaskNodesWrite (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                               <code class="PARAMETER"><font><span class="TYPE">xmlNodePtr</span></font> node</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeName</code>,
-                               <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *nodeNs</code>,
-                               <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> mask</code>);</pre>
-<p>Writes <<code class="PARAMETER">nodeNs</code>
-:<code class="PARAMETER">nodeName</code>
-> elemnts with values from <code class="PARAMETER">mask</code>
- to <code class="PARAMETER">node</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskNodesWrite"></a><h3>xmlSecQName2BitMaskNodesWrite ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">int</span></font>
+xmlSecQName2BitMaskNodesWrite (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                               <em class="parameter"><code><font><span class="type">xmlNodePtr</span></font> node</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeName</code></em>,
+                               <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *nodeNs</code></em>,
+                               <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> mask</code></em>);</pre>
+<p>Writes <<em class="parameter"><code>nodeNs</code></em>
+:<em class="parameter"><code>nodeName</code></em>
+> elemnts with values from <em class="parameter"><code>mask</code></em>
+ to <em class="parameter"><code>node</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28556"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28558"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskNodesWrite.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>node</p></td>
-<td><p>the parent element for mask nodes.</p></td>
-<td> </td>
+<td class="parameter_name"><p>node</p></td>
+<td class="parameter_description"><p>the parent element for mask nodes.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeName</p></td>
-<td><p>the mask nodes name.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeName</p></td>
+<td class="parameter_description"><p>the mask nodes name.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>nodeNs</p></td>
-<td><p>the mask nodes namespace.</p></td>
-<td> </td>
+<td class="parameter_name"><p>nodeNs</p></td>
+<td class="parameter_description"><p>the mask nodes namespace.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the bit mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the bit mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
-<div class="REFSECT3">
-<a name="AEN28591"></a><h4>Returns</h4>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskNodesWrite.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="XMLSECQNAME2BITMASKDEBUGDUMP"></a><h3>xmlSecQName2BitMaskDebugDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecQName2BitMaskDebugDump (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                              <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> mask</code>,
-                              <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                              <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">mask</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskDebugDump"></a><h3>xmlSecQName2BitMaskDebugDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecQName2BitMaskDebugDump (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                              <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> mask</code></em>,
+                              <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                              <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>mask</code></em>
+ to <em class="parameter"><code>output</code></em>
 .</p>
-<div class="REFSECT3">
-<a name="AEN28616"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28618"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskDebugDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the bit mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the bit mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the value name to print.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the value name to print.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKDEBUGXMLDUMP"></a><h3>xmlSecQName2BitMaskDebugXmlDump ()</h3>
-<pre class="PROGRAMLISTING"><font><span class="RETURNVALUE">void</span></font>
-xmlSecQName2BitMaskDebugXmlDump (<code class="PARAMETER"><font><span class="TYPE">xmlSecQName2BitMaskInfoConstPtr</span></font> info</code>,
-                                 <code class="PARAMETER"><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> mask</code>,
-                                 <code class="PARAMETER">const <font><span class="TYPE">xmlChar</span></font> *name</code>,
-                                 <code class="PARAMETER"><font><span class="TYPE">FILE</span></font> *output</code>);</pre>
-<p>Prints debug information about <code class="PARAMETER">mask</code>
- to <code class="PARAMETER">output</code>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskDebugXmlDump"></a><h3>xmlSecQName2BitMaskDebugXmlDump ()</h3>
+<pre class="programlisting"><font><span class="returnvalue">void</span></font>
+xmlSecQName2BitMaskDebugXmlDump (<em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecQName2BitMaskInfoConstPtr" title="xmlSecQName2BitMaskInfoConstPtr"><span class="type">xmlSecQName2BitMaskInfoConstPtr</span></a> info</code></em>,
+                                 <em class="parameter"><code><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> mask</code></em>,
+                                 <em class="parameter"><code>const <font><span class="type">xmlChar</span></font> *name</code></em>,
+                                 <em class="parameter"><code><font><span class="type">FILE</span></font> *output</code></em>);</pre>
+<p>Prints debug information about <em class="parameter"><code>mask</code></em>
+ to <em class="parameter"><code>output</code></em>
  in XML format.</p>
-<div class="REFSECT3">
-<a name="AEN28667"></a><h4>Parameters</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28669"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskDebugXmlDump.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>info</p></td>
-<td><p>the qname<->bit mask mapping information.</p></td>
-<td> </td>
+<td class="parameter_name"><p>info</p></td>
+<td class="parameter_description"><p>the qname<->bit mask mapping information.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>mask</p></td>
-<td><p>the bit mask.</p></td>
-<td> </td>
+<td class="parameter_name"><p>mask</p></td>
+<td class="parameter_description"><p>the bit mask.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>name</p></td>
-<td><p>the value name to print.</p></td>
-<td> </td>
+<td class="parameter_name"><p>name</p></td>
+<td class="parameter_description"><p>the value name to print.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 <tr>
-<td><p>output</p></td>
-<td><p>the pointer to output FILE.</p></td>
-<td> </td>
+<td class="parameter_name"><p>output</p></td>
+<td class="parameter_description"><p>the pointer to output FILE.</p></td>
+<td class="parameter_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 </div>
-<div class="REFSECT1">
-<a name="XMLSEC-XMLTREE.OTHER_DETAILS"></a><h2>Types and Values</h2>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERINFO"></a><h3>struct xmlSecQName2IntegerInfo</h3>
-<pre class="PROGRAMLISTING">struct xmlSecQName2IntegerInfo {
+<div class="refsect1">
+<a name="xmlsec-xmltree.other_details"></a><h2>Types and Values</h2>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerInfo"></a><h3>struct xmlSecQName2IntegerInfo</h3>
+<pre class="programlisting">struct xmlSecQName2IntegerInfo {
     const xmlChar*      qnameHref;
     const xmlChar*      qnameLocalPart;
     int                 intValue;
-};</pre>
+};
+</pre>
 <p>QName <-> Integer conversion definition.</p>
-<div class="REFSECT3">
-<a name="AEN28704"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28706"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2IntegerInfo.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">qnameHref</code>;</p></td>
-<td><p>the QName href</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecQName2IntegerInfo.qnameHref"></a>qnameHref</code></em>;</p></td>
+<td class="struct_member_description"><p>the QName href</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">qnameLocalPart</code>;</p></td>
-<td><p>the QName local</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecQName2IntegerInfo.qnameLocalPart"></a>qnameLocalPart</code></em>;</p></td>
+<td class="struct_member_description"><p>the QName local</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><font><span class="TYPE">int</span></font> <code class="STRUCTFIELD">intValue</code>;</p></td>
-<td><p>the integer value</p></td>
-<td> </td>
+<td class="struct_member_name"><p><font><span class="type">int</span></font> <em class="structfield"><code><a name="xmlSecQName2IntegerInfo.intValue"></a>intValue</code></em>;</p></td>
+<td class="struct_member_description"><p>the integer value</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2INTEGERINFOCONSTPTR"></a><h3>xmlSecQName2IntegerInfoConstPtr</h3>
-<pre class="PROGRAMLISTING">typedef const xmlSecQName2IntegerInfo *         xmlSecQName2IntegerInfoConstPtr;</pre>
+<div class="refsect2">
+<a name="xmlSecQName2IntegerInfoConstPtr"></a><h3>xmlSecQName2IntegerInfoConstPtr</h3>
+<pre class="programlisting">typedef const xmlSecQName2IntegerInfo *         xmlSecQName2IntegerInfoConstPtr;
+</pre>
 <p>Pointer to constant QName <-> Integer conversion definition.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECBITMASK"></a><h3>xmlSecBitMask</h3>
-<pre class="PROGRAMLISTING">typedef unsigned int                                    xmlSecBitMask;</pre>
+<div class="refsect2">
+<a name="xmlSecBitMask"></a><h3>xmlSecBitMask</h3>
+<pre class="programlisting">typedef unsigned int                                    xmlSecBitMask;
+</pre>
 <p>Bitmask datatype.</p>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKINFO"></a><h3>struct xmlSecQName2BitMaskInfo</h3>
-<pre class="PROGRAMLISTING">struct xmlSecQName2BitMaskInfo {
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskInfo"></a><h3>struct xmlSecQName2BitMaskInfo</h3>
+<pre class="programlisting">struct xmlSecQName2BitMaskInfo {
     const xmlChar*      qnameHref;
     const xmlChar*      qnameLocalPart;
     xmlSecBitMask       mask;
-};</pre>
+};
+</pre>
 <p>QName <-> Bitmask conversion definition.</p>
-<div class="REFSECT3">
-<a name="AEN28754"></a><h4>Members</h4>
-<div class="INFORMALTABLE">
-<p></p>
-<a name="AEN28756"></a><table border="0" frame="void" width="100%" class="CALSTABLE">
-<col>
-<col>
-<col>
+<div class="refsect3">
+<a name="xmlSecQName2BitMaskInfo.members"></a><h4>Members</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="300px" class="struct_members_name">
+<col class="struct_members_description">
+<col width="200px" class="struct_members_annotations">
+</colgroup>
 <tbody>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">qnameHref</code>;</p></td>
-<td><p>the QName href</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecQName2BitMaskInfo.qnameHref"></a>qnameHref</code></em>;</p></td>
+<td class="struct_member_description"><p>the QName href</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p>const <font><span class="TYPE">xmlChar</span></font> *<code class="STRUCTFIELD">qnameLocalPart</code>;</p></td>
-<td><p>the QName local</p></td>
-<td> </td>
+<td class="struct_member_name"><p>const <font><span class="type">xmlChar</span></font> *<em class="structfield"><code><a name="xmlSecQName2BitMaskInfo.qnameLocalPart"></a>qnameLocalPart</code></em>;</p></td>
+<td class="struct_member_description"><p>the QName local</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 <tr>
-<td><p><a href="xmlsec-xmltree.html#XMLSECBITMASK"><span class="TYPE">xmlSecBitMask</span></a> <code class="STRUCTFIELD">mask</code>;</p></td>
-<td><p>the bitmask value</p></td>
-<td> </td>
+<td class="struct_member_name"><p><a class="link" href="xmlsec-xmltree.html#xmlSecBitMask" title="xmlSecBitMask"><span class="type">xmlSecBitMask</span></a> <em class="structfield"><code><a name="xmlSecQName2BitMaskInfo.mask"></a>mask</code></em>;</p></td>
+<td class="struct_member_description"><p>the bitmask value</p></td>
+<td class="struct_member_annotations"> </td>
 </tr>
 </tbody>
-</table>
-<p></p>
-</div>
+</table></div>
 </div>
 </div>
 <hr>
-<div class="REFSECT2">
-<a name="XMLSECQNAME2BITMASKINFOCONSTPTR"></a><h3>xmlSecQName2BitMaskInfoConstPtr</h3>
-<pre class="PROGRAMLISTING">typedef const xmlSecQName2BitMaskInfo*          xmlSecQName2BitMaskInfoConstPtr;</pre>
+<div class="refsect2">
+<a name="xmlSecQName2BitMaskInfoConstPtr"></a><h3>xmlSecQName2BitMaskInfoConstPtr</h3>
+<pre class="programlisting">typedef const xmlSecQName2BitMaskInfo*          xmlSecQName2BitMaskInfoConstPtr;
+</pre>
 <p>Pointer to constant QName <-> Bitmask conversion definition.</p>
 </div>
 </div>
-<table class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="2"><tr valign="middle">
-<td align="left"><a accesskey="p" href="xmlsec-xmlsec.html"><b><<< xmlsec</b></a></td>
-<td align="right"><a accesskey="n" href="xmlsec-x509.html"><b>x509 >>></b></a></td>
-</tr></table>
+</div>
+<div class="footer">
+<hr>Generated by GTK-Doc V1.25</div>
 </td></tr></table></td>
 </tr></table></body>
 </html>
diff --git a/docs/authors.html b/docs/authors.html
index 348ae53..707468a 100644
--- a/docs/authors.html
+++ b/docs/authors.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/bugs.html b/docs/bugs.html
index e843ca6..097fe0c 100644
--- a/docs/bugs.html
+++ b/docs/bugs.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/c14n.html b/docs/c14n.html
index 92842ec..3818e41 100644
--- a/docs/c14n.html
+++ b/docs/c14n.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/documentation.html b/docs/documentation.html
index 4ecaa6c..8aa6f69 100644
--- a/docs/documentation.html
+++ b/docs/documentation.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/download.html b/docs/download.html
index 3945a74..49020c6 100644
--- a/docs/download.html
+++ b/docs/download.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
@@ -98,10 +144,10 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
       <h1>Download</h1>
       </div>
 <h2>Stable releases.</h2>
-<p>The latest stable XML Security Library version is <b>1.2.23</b>:</p>
+<p>The latest stable XML Security Library version is <b>1.2.24</b>:</p>
 <ul>
 <li>
-        <a href="http://www.aleksey.com/xmlsec/download/xmlsec1-1.2.23.tar.gz">Sources 
+        <a href="http://www.aleksey.com/xmlsec/download/xmlsec1-1.2.24.tar.gz">Sources 
 	for latest version</a>.
     </li>
     <li>
@@ -129,18 +175,15 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </ul>
 <p>and one of the following cryptographic libraries:</p>
 <ul>
-<li>
-<a href="http://www.openssl.org/">OpenSSL</a> version 0.9.8 (or later).</li>
-	<li>
-<a href="http://www.gnu.org/software/gnutls/">GnuTLS</a>
+        <li><a href="http://www.openssl.org/">OpenSSL</a> version 1.0.0 (or later). The OpenSSL 0.9.8 support is deprecated
+and will be removed in the next release of the XMLSec library</li>
+	<li><a href="http://www.gnu.org/software/gnutls/">GnuTLS</a>
 	</li>
-	<li>
-<a href="http://www.gnu.org/directory/security/libgcrypt.html">Libgcrypt</a>
+	<li><a href="http://www.gnu.org/directory/security/libgcrypt.html">Libgcrypt</a>
 	</li>
-        <li>
-<a href="http://www.mozilla.org/projects/security/pki/nss/">NSS</a> -
-	Mozilla cryptographic library.
+        <li><a href="http://www.mozilla.org/projects/security/pki/nss/">NSS</a> (Mozilla cryptographic library).
 	</li>
+	<li>Microsoft Crypto API (Windows only)</li>
     </ul>
 <h2>Installation (source archive)</h2>
 <p>
diff --git a/docs/faq.html b/docs/faq.html
index 36f831f..34945b1 100644
--- a/docs/faq.html
+++ b/docs/faq.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/index.html b/docs/index.html
index 9de530a..2498874 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
@@ -117,7 +163,22 @@ XML Security Library is released under the
 see the Copyright file in the distribution  for details.<br><br></p>
 <p><b>News</b></p>
 <ul>
-<li>October 16 2016<br>
+<li>April 20 2017<br>
+        The <a href="download.html">XML Security Library 1.2.24</a> release includes the following changes:
+        <ul>
+        <li>Added ECDSA-SHA1, ECDSA-SHA256, ECDSA-SHA512 support for xmlsec-nss (vmiklos).</li>
+        <li>Fixed XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS handling (vmiklos).</li>
+        <li>Disabled external entities loading by xmlsec utility app by default to prevent XXE attacks (d-hat).</li>
+        <li>Improved OpenSSL version and features detection.</li>
+        <li>Cleaned up, simplified, and standardized internal error reporting.</li>
+        <li>Fixed a few Coverity-discovered bugs (<a href="https://scan.coverity.com/projects/xmlsec">report</a>).</li>
+        <li>Marked as deprecated all the functions in xmlsec/soap.h file and a couple other functions no longer
+        required by xmlsec. These functions will be removed in the future releases.</li>
+        <li>Several other small fixes (<a href="https://github.com/lsh123/xmlsec/commits/master">more details</a>).</li>
+        </ul>
+        Please note that OpenSSL 0.9.8 support will be remmoved in the next release of XMLSec library.
+</li>
+<br><li>October 16 2016<br>
         The <a href="download.html">XML Security Library 1.2.23</a> release includes the following changes:
         <ul>
         <li>Full support for OpenSSL 1.1.0.</li>
@@ -149,15 +210,6 @@ see the Copyright file in the distribution  for details.<br><br></p>
         The XML Security Library was migrated to <a href="https://github.com/lsh123/xmlsec">GitHub</a>. Please use GitHub for
         accessing source code and reporting issues.
 </li>
-<br><li>May 27 2014<br>
-        The <a href="download.html">XML Security Library 1.2.20</a> release fixes a number of miscellaneous bugs and 
-        updates expired or soon-to-be-expired certificates in the test suite.
-</li>
-<br><li>March 24 2013<br>
-        The <a href="download.html">XML Security Library 1.2.19</a> release adds support for DSA-SHA256, ECDSA-SHA1,
-        ECDSA-SHA224, ECDSA-SHA256, ECDSA-SHA384, ECDSA-SHA512 and fixes a number of miscellaneous bugs.
-</li>
-<br>
 </ul>
 </td></tr></table></td>
 </tr></table></body>
diff --git a/docs/news.html b/docs/news.html
index 5358519..aed4ac1 100644
--- a/docs/news.html
+++ b/docs/news.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
@@ -98,6 +144,22 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 <h1>XML Security Library News</h1>
 </div>
 <ul>
+<li>April 20 2017<br>
+        The <a href="download.html">XML Security Library 1.2.24</a> release includes the following changes:
+        <ul>
+        <li>Added ECDSA-SHA1, ECDSA-SHA256, ECDSA-SHA512 support for xmlsec-nss (vmiklos).</li>
+        <li>Fixed XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS handling (vmiklos).</li>
+        <li>Disabled external entities loading by xmlsec utility app by default to prevent XXE attacks (d-hat).</li>
+        <li>Improved OpenSSL version and features detection.</li>
+        <li>Cleaned up, simplified, and standardized internal error reporting.</li>
+        <li>Marked as deprecated all the functions in xmlsec/soap.h file and a couple other functions no longer
+        required by xmlsec. These functions will be removed in the future releases.</li>
+        <li>Fixed a few Coverity-discovered bugs (<a href="https://scan.coverity.com/projects/xmlsec">report</a>).</li>
+        <li>Several other small fixes (<a href="https://github.com/lsh123/xmlsec/commits/master">more details</a>).</li>
+        </ul>
+        Please note that OpenSSL 0.9.8 support will be remmoved in the next release of XMLSec library.
+</li>
+<br>
 <li>October 16 2016<br>
         The <a href="download.html">XML Security Library 1.2.23</a> release includes the following changes:
         <ul>
diff --git a/docs/related.html b/docs/related.html
index 50bdf5d..c4af974 100644
--- a/docs/related.html
+++ b/docs/related.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/xmldsig-verifier.html b/docs/xmldsig-verifier.html
index 52389a0..5e30ce2 100644
--- a/docs/xmldsig-verifier.html
+++ b/docs/xmldsig-verifier.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/xmldsig.html b/docs/xmldsig.html
index da31c35..f8adf18 100644
--- a/docs/xmldsig.html
+++ b/docs/xmldsig.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/xmlenc.html b/docs/xmlenc.html
index 182449e..c47ab58 100644
--- a/docs/xmlenc.html
+++ b/docs/xmlenc.html
@@ -53,6 +53,52 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
     color: initial;
 }
 </style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
+<style type="text/css">
+table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
+    width: 20em;
+}
+.synopsis, .classsynopsis {
+    background: #eeeeee;
+    border: solid 1px #aaaaaa;
+}
+.programlisting {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation {
+    background: #eeeeee;
+    border: solid 1px #000000;
+}
+.navigation a {
+    color: initial;
+}
+.navigation a:visited {
+    color: initial;
+}
+</style>
 </head>
 <body><table width="100%" valign="top"><tr valign="top">
 <td valign="top" align="left" width="210">
diff --git a/docs/xmlsec-man.html b/docs/xmlsec-man.html
index c11000a..17fa7cb 100644
--- a/docs/xmlsec-man.html
+++ b/docs/xmlsec-man.html
@@ -258,6 +258,10 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </dt>
 <dd> <dd>skip strict checking of X509 data </dd>
 </dd>
+<dt> <b>--insecure</b> <dt></dt>
+</dt>
+<dd> <dd>do not verify certificates </dd>
+</dd>
 <dt> <b>--crypto</b> <name> <dt></dt>
 </dt>
 <dd> <dd>the name of the crypto engine to use from the following list: openssl, mscrypto, nss, gnutls, gcrypt (if no crypto engine is specified then the default one is used) </dd>
@@ -282,6 +286,10 @@ table.CALSTABLE > tbody > tr:nth-child(1) > td:nth-child(1) {
 </dt>
 <dd> <dd>print help information about the command </dd>
 </dd>
+<dt> <b>--xxe</b> <dt></dt>
+</dt>
+<dd> <dd>enable External Entity resolution. WARNING: this may allow the reading of arbitrary files and URLs, controlled by the input XML document.  Use with caution! </dd>
+</dd>
 </dl>
 <a name="lbAF"> </a><h2>AUTHOR</h2>
 <a href="mailto:aleksey at aleksey.com">aleksey at aleksey.com</a><a name="lbAG"> </a><h2>REPORTING BUGS</h2>
diff --git a/include/Makefile.in b/include/Makefile.in
index 55f26df..2a1b664 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -244,6 +244,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -291,6 +292,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -307,6 +309,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -396,6 +399,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/Makefile.in b/include/xmlsec/Makefile.in
index 81bf7c8..ef7335f 100644
--- a/include/xmlsec/Makefile.in
+++ b/include/xmlsec/Makefile.in
@@ -275,6 +275,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -322,6 +323,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -338,6 +340,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -427,6 +430,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/app.h b/include/xmlsec/app.h
index 7b8e510..03a0025 100644
--- a/include/xmlsec/app.h
+++ b/include/xmlsec/app.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  *
diff --git a/include/xmlsec/base64.h b/include/xmlsec/base64.h
index a40c452..36d8a49 100644
--- a/include/xmlsec/base64.h
+++ b/include/xmlsec/base64.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Base64 encode/decode transform and utility functions.
diff --git a/include/xmlsec/bn.h b/include/xmlsec/bn.h
index 616919b..f9d2b6d 100644
--- a/include/xmlsec/bn.h
+++ b/include/xmlsec/bn.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Simple Big Numbers processing.
diff --git a/include/xmlsec/buffer.h b/include/xmlsec/buffer.h
index 4d8c739..d1f3952 100644
--- a/include/xmlsec/buffer.h
+++ b/include/xmlsec/buffer.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Memory buffer.
diff --git a/include/xmlsec/crypto.h b/include/xmlsec/crypto.h
index 75d92d0..54ecb14 100644
--- a/include/xmlsec/crypto.h
+++ b/include/xmlsec/crypto.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Crypto engine selection.
diff --git a/include/xmlsec/dl.h b/include/xmlsec/dl.h
index e04f4f9..dc73ecd 100644
--- a/include/xmlsec/dl.h
+++ b/include/xmlsec/dl.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  *
diff --git a/include/xmlsec/errors.h b/include/xmlsec/errors.h
index 32ac2fe..a7b35c8 100644
--- a/include/xmlsec/errors.h
+++ b/include/xmlsec/errors.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Error codes and error reporting functions.
@@ -23,7 +23,7 @@ extern "C" {
 /**
  * XMLSEC_ERRORS_R_XMLSEC_FAILED:
  *
- * An XMLSec function failed (error subject is the failed function).
+ * An XMLSec function failed.
  */
 #define XMLSEC_ERRORS_R_XMLSEC_FAILED                   1
 
@@ -44,21 +44,21 @@ extern "C" {
 /**
  * XMLSEC_ERRORS_R_CRYPTO_FAILED:
  *
- * Crypto (OpenSSL) function failed (error subject is the failed function).
+ * Crypto (e.g. OpenSSL) function failed.
  */
 #define XMLSEC_ERRORS_R_CRYPTO_FAILED                   4
 
 /**
  * XMLSEC_ERRORS_R_XML_FAILED:
  *
- * LibXML function failed (error subject is the failed function).
+ * LibXML function failed.
  */
 #define XMLSEC_ERRORS_R_XML_FAILED                      5
 
 /**
  * XMLSEC_ERRORS_R_XSLT_FAILED:
  *
- * LibXSLT function failed (error subject is the failed function).
+ * LibXSLT function failed.
  */
 #define XMLSEC_ERRORS_R_XSLT_FAILED                     6
 
@@ -86,6 +86,13 @@ extern "C" {
 #define XMLSEC_ERRORS_R_NOT_IMPLEMENTED                 9
 
 /**
+ * XMLSEC_ERRORS_R_INVALID_CONFIG:
+ *
+ * The configuration is invalid.
+ */
+#define XMLSEC_ERRORS_R_INVALID_CONFIG                  10
+
+/**
  * XMLSEC_ERRORS_R_INVALID_SIZE:
  *
  * Invalid size.
@@ -142,30 +149,37 @@ extern "C" {
 #define XMLSEC_ERRORS_R_DATA_NOT_MATCH                  18
 
 /**
+ * XMLSEC_ERRORS_R_INVALID_VERSION:
+ *
+ * Version mismatch.
+ */
+#define XMLSEC_ERRORS_R_INVALID_VERSION                 19
+
+/**
  * XMLSEC_ERRORS_R_INVALID_NODE:
  *
- * Invalid node (error subject is the node name).
+ * Invalid node.
  */
 #define XMLSEC_ERRORS_R_INVALID_NODE                    21
 
 /**
  * XMLSEC_ERRORS_R_INVALID_NODE_CONTENT:
  *
- * Invalid node content (error subject is the node name).
+ * Invalid node content.
  */
 #define XMLSEC_ERRORS_R_INVALID_NODE_CONTENT            22
 
 /**
  * XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE:
  *
- * Invalid node attribute (error subject is the node name).
+ * Invalid node attribute.
  */
 #define XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE          23
 
 /**
  * XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE:
  *
- * Missing node attribute (error subject is the node name).
+ * Missing node attribute.
  */
 #define XMLSEC_ERRORS_R_MISSING_NODE_ATTRIBUTE          25
 
@@ -179,21 +193,21 @@ extern "C" {
 /**
  * XMLSEC_ERRORS_R_UNEXPECTED_NODE:
  *
- * Unexpected node (error subject is the node name).
+ * Unexpected node.
  */
 #define XMLSEC_ERRORS_R_UNEXPECTED_NODE                 27
 
 /**
  * XMLSEC_ERRORS_R_NODE_NOT_FOUND:
  *
- * Node not found (error subject is the required node name).
+ * Node not found.
  */
 #define XMLSEC_ERRORS_R_NODE_NOT_FOUND                  28
 
 /**
  * XMLSEC_ERRORS_R_INVALID_TRANSFORM:
  *
- * This transform is invlaid here.
+ * This transform is invalid.
  */
 #define XMLSEC_ERRORS_R_INVALID_TRANSFORM               31
 
@@ -235,7 +249,7 @@ extern "C" {
 /**
  * XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND:
  *
- * Data is not found (error subject is the data name).
+ * Data is not found.
  */
 #define XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND              42
 
@@ -435,7 +449,7 @@ XMLSEC_EXPORT const char*       xmlSecErrorsGetMsg              (xmlSecSize pos)
  * Macro. Returns @str if it is not NULL or pointer to "NULL" otherwise.
  */
 #define xmlSecErrorsSafeString(str) \
-        (((str) != NULL) ? ((char*)(str)) : (char*)"NULL")
+        (((str) != NULL) ? ((const char*)(str)) : (const char*)"NULL")
 
 /**
  * XMLSEC_ERRORS_NO_MESSAGE:
@@ -453,8 +467,6 @@ XMLSEC_EXPORT void xmlSecError                          (const char* file,
                                                          int reason,
                                                          const char* msg, ...) XMLSEC_ERRORS_PRINTF_ATTRIBUTE;
 
-
-
 /**********************************************************************
  *
  * Assertions
@@ -494,7 +506,6 @@ XMLSEC_EXPORT void xmlSecError                          (const char* file,
         }
 
 
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
diff --git a/include/xmlsec/exports.h b/include/xmlsec/exports.h
index a2abf3f..c6ed95b 100644
--- a/include/xmlsec/exports.h
+++ b/include/xmlsec/exports.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Export macro declarations for Win32 platform.
diff --git a/include/xmlsec/gcrypt/Makefile.in b/include/xmlsec/gcrypt/Makefile.in
index 448a6e7..d54784c 100644
--- a/include/xmlsec/gcrypt/Makefile.in
+++ b/include/xmlsec/gcrypt/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/gcrypt/app.h b/include/xmlsec/gcrypt/app.h
index 20bd78e..f0eb88f 100644
--- a/include/xmlsec/gcrypt/app.h
+++ b/include/xmlsec/gcrypt/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gcrypt/crypto.h b/include/xmlsec/gcrypt/crypto.h
index 1035ea3..197f092 100644
--- a/include/xmlsec/gcrypt/crypto.h
+++ b/include/xmlsec/gcrypt/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gcrypt/symbols.h b/include/xmlsec/gcrypt/symbols.h
index 371efd3..d011e65 100644
--- a/include/xmlsec/gcrypt/symbols.h
+++ b/include/xmlsec/gcrypt/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gnutls/Makefile.in b/include/xmlsec/gnutls/Makefile.in
index 927c00c..4c7493c 100644
--- a/include/xmlsec/gnutls/Makefile.in
+++ b/include/xmlsec/gnutls/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/gnutls/app.h b/include/xmlsec/gnutls/app.h
index c579a34..f13c085 100644
--- a/include/xmlsec/gnutls/app.h
+++ b/include/xmlsec/gnutls/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gnutls/crypto.h b/include/xmlsec/gnutls/crypto.h
index f0e07c6..399e26f 100644
--- a/include/xmlsec/gnutls/crypto.h
+++ b/include/xmlsec/gnutls/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gnutls/symbols.h b/include/xmlsec/gnutls/symbols.h
index cd65437..5c4a726 100644
--- a/include/xmlsec/gnutls/symbols.h
+++ b/include/xmlsec/gnutls/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/gnutls/x509.h b/include/xmlsec/gnutls/x509.h
index e00bf75..1da86d3 100644
--- a/include/xmlsec/gnutls/x509.h
+++ b/include/xmlsec/gnutls/x509.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/io.h b/include/xmlsec/io.h
index 3e9757f..8478663 100644
--- a/include/xmlsec/io.h
+++ b/include/xmlsec/io.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Input uri transform and utility functions.
diff --git a/include/xmlsec/keyinfo.h b/include/xmlsec/keyinfo.h
index fd87285..b4f080c 100644
--- a/include/xmlsec/keyinfo.h
+++ b/include/xmlsec/keyinfo.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * <dsig:KeyInfo> element processing
diff --git a/include/xmlsec/keys.h b/include/xmlsec/keys.h
index 13b37df..0784ef8 100644
--- a/include/xmlsec/keys.h
+++ b/include/xmlsec/keys.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Keys.
diff --git a/include/xmlsec/keysdata.h b/include/xmlsec/keysdata.h
index f833a27..a32240a 100644
--- a/include/xmlsec/keysdata.h
+++ b/include/xmlsec/keysdata.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Key data.
diff --git a/include/xmlsec/keysmngr.h b/include/xmlsec/keysmngr.h
index ed0250d..2b2b7db 100644
--- a/include/xmlsec/keysmngr.h
+++ b/include/xmlsec/keysmngr.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Keys Manager
diff --git a/include/xmlsec/list.h b/include/xmlsec/list.h
index e976402..9129f7b 100644
--- a/include/xmlsec/list.h
+++ b/include/xmlsec/list.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * List of pointers.
diff --git a/include/xmlsec/membuf.h b/include/xmlsec/membuf.h
index 0eab206..fcc6eaf 100644
--- a/include/xmlsec/membuf.h
+++ b/include/xmlsec/membuf.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Memory buffer transform
diff --git a/include/xmlsec/mscrypto/Makefile.in b/include/xmlsec/mscrypto/Makefile.in
index f010d55..e613f83 100644
--- a/include/xmlsec/mscrypto/Makefile.in
+++ b/include/xmlsec/mscrypto/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/mscrypto/app.h b/include/xmlsec/mscrypto/app.h
index 3d23d0e..a370d4d 100644
--- a/include/xmlsec/mscrypto/app.h
+++ b/include/xmlsec/mscrypto/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/mscrypto/certkeys.h b/include/xmlsec/mscrypto/certkeys.h
index d5e1b57..0e818f4 100644
--- a/include/xmlsec/mscrypto/certkeys.h
+++ b/include/xmlsec/mscrypto/certkeys.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/mscrypto/crypto.h b/include/xmlsec/mscrypto/crypto.h
index 5f3142f..9527662 100644
--- a/include/xmlsec/mscrypto/crypto.h
+++ b/include/xmlsec/mscrypto/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/mscrypto/keysstore.h b/include/xmlsec/mscrypto/keysstore.h
index afaf6a9..49dc319 100644
--- a/include/xmlsec/mscrypto/keysstore.h
+++ b/include/xmlsec/mscrypto/keysstore.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * MSCrypto keys store
  *
diff --git a/include/xmlsec/mscrypto/symbols.h b/include/xmlsec/mscrypto/symbols.h
index 17000cc..d0ed129 100644
--- a/include/xmlsec/mscrypto/symbols.h
+++ b/include/xmlsec/mscrypto/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/mscrypto/x509.h b/include/xmlsec/mscrypto/x509.h
index 60066bd..3199f16 100644
--- a/include/xmlsec/mscrypto/x509.h
+++ b/include/xmlsec/mscrypto/x509.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/nodeset.h b/include/xmlsec/nodeset.h
index 3c0cfc7..028398d 100644
--- a/include/xmlsec/nodeset.h
+++ b/include/xmlsec/nodeset.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Enchanced nodes Set
diff --git a/include/xmlsec/nss/Makefile.in b/include/xmlsec/nss/Makefile.in
index 68aceff..ee5c02e 100644
--- a/include/xmlsec/nss/Makefile.in
+++ b/include/xmlsec/nss/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/nss/app.h b/include/xmlsec/nss/app.h
index aeac55e..93f6c63 100644
--- a/include/xmlsec/nss/app.h
+++ b/include/xmlsec/nss/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/nss/bignum.h b/include/xmlsec/nss/bignum.h
index 6147d20..af8f313 100644
--- a/include/xmlsec/nss/bignum.h
+++ b/include/xmlsec/nss/bignum.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Reading/writing BIGNUM values
  *
diff --git a/include/xmlsec/nss/crypto.h b/include/xmlsec/nss/crypto.h
index 87f31bf..a41ac6a 100644
--- a/include/xmlsec/nss/crypto.h
+++ b/include/xmlsec/nss/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -189,6 +189,60 @@ XMLSEC_CRYPTO_EXPORT xmlSecTransformId xmlSecNssTransformDsaSha1GetKlass(void);
 
 /********************************************************************
  *
+ * ECDSA transform
+ *
+ *******************************************************************/
+#ifndef XMLSEC_NO_ECDSA
+
+/**
+ * xmlSecNssKeyDataEcdsaId:
+ *
+ * The ECDSA key klass.
+ */
+#define xmlSecNssKeyDataEcdsaId xmlSecNssKeyDataEcdsaGetKlass()
+XMLSEC_CRYPTO_EXPORT xmlSecKeyDataId xmlSecNssKeyDataEcdsaGetKlass(void);
+
+#ifndef XMLSEC_NO_SHA1
+
+/**
+ * xmlSecNssTransformEcdsaSha1Id:
+ *
+ * The ECDSA SHA1 signature transform klass.
+ */
+#define xmlSecNssTransformEcdsaSha1Id xmlSecNssTransformEcdsaSha1GetKlass()
+XMLSEC_CRYPTO_EXPORT xmlSecTransformId xmlSecNssTransformEcdsaSha1GetKlass(void);
+
+#endif /* XMLSEC_NO_SHA1 */
+
+#ifndef XMLSEC_NO_SHA256
+
+/**
+ * xmlSecNssTransformEcdsaSha256Id:
+ *
+ * The ECDSA SHA256 signature transform klass.
+ */
+#define xmlSecNssTransformEcdsaSha256Id xmlSecNssTransformEcdsaSha256GetKlass()
+XMLSEC_CRYPTO_EXPORT xmlSecTransformId xmlSecNssTransformEcdsaSha256GetKlass(void);
+
+#endif /* XMLSEC_NO_SHA256 */
+
+#ifndef XMLSEC_NO_SHA512
+
+/**
+ * xmlSecNssTransformEcdsaSha512Id:
+ *
+ * The ECDSA SHA512 signature transform klass.
+ */
+#define xmlSecNssTransformEcdsaSha512Id xmlSecNssTransformEcdsaSha512GetKlass()
+XMLSEC_CRYPTO_EXPORT xmlSecTransformId xmlSecNssTransformEcdsaSha512GetKlass(void);
+
+#endif /* XMLSEC_NO_SHA512 */
+
+#endif /* XMLSEC_NO_ECDSA */
+
+
+/********************************************************************
+ *
  * HMAC transforms
  *
  *******************************************************************/
diff --git a/include/xmlsec/nss/keysstore.h b/include/xmlsec/nss/keysstore.h
index a2cc289..eb64d3c 100644
--- a/include/xmlsec/nss/keysstore.h
+++ b/include/xmlsec/nss/keysstore.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Nss keys store
  *
diff --git a/include/xmlsec/nss/pkikeys.h b/include/xmlsec/nss/pkikeys.h
index cb49848..b987afe 100644
--- a/include/xmlsec/nss/pkikeys.h
+++ b/include/xmlsec/nss/pkikeys.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/nss/symbols.h b/include/xmlsec/nss/symbols.h
index 23653ed..3cd0f9c 100644
--- a/include/xmlsec/nss/symbols.h
+++ b/include/xmlsec/nss/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -65,6 +65,9 @@ extern "C" {
 #define xmlSecTransformDes3CbcId                xmlSecNssTransformDes3CbcId
 #define xmlSecTransformKWDes3Id                 xmlSecNssTransformKWDes3Id
 #define xmlSecTransformDsaSha1Id                xmlSecNssTransformDsaSha1Id
+#define xmlSecTransformEcdsaSha1Id              xmlSecNssTransformEcdsaSha1Id
+#define xmlSecTransformEcdsaSha256Id            xmlSecNssTransformEcdsaSha256Id
+#define xmlSecTransformEcdsaSha512Id            xmlSecNssTransformEcdsaSha512Id
 #define xmlSecTransformHmacMd5Id                xmlSecNssTransformHmacMd5Id
 #define xmlSecTransformHmacRipemd160Id          xmlSecNssTransformHmacRipemd160Id
 #define xmlSecTransformHmacSha1Id               xmlSecNssTransformHmacSha1Id
diff --git a/include/xmlsec/nss/x509.h b/include/xmlsec/nss/x509.h
index fe5ceb4..1290bde 100644
--- a/include/xmlsec/nss/x509.h
+++ b/include/xmlsec/nss/x509.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/openssl/Makefile.in b/include/xmlsec/openssl/Makefile.in
index b6a2b98..14b3be9 100644
--- a/include/xmlsec/openssl/Makefile.in
+++ b/include/xmlsec/openssl/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/openssl/app.h b/include/xmlsec/openssl/app.h
index 5c5325f..8280b38 100644
--- a/include/xmlsec/openssl/app.h
+++ b/include/xmlsec/openssl/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -60,7 +60,7 @@ XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLAppKeysMngrCertLoadBIO(xmlS
 XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLAppKeysMngrAddCertsPath(xmlSecKeysMngrPtr mngr,
                                                                          const char *path);
 XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLAppKeysMngrAddCertsFile(xmlSecKeysMngrPtr mngr,
-                                                                         const char *file);
+                                                                         const char *filename);
 
 #endif /* XMLSEC_NO_X509 */
 
diff --git a/include/xmlsec/openssl/bn.h b/include/xmlsec/openssl/bn.h
index 7415a9b..fa42a28 100644
--- a/include/xmlsec/openssl/bn.h
+++ b/include/xmlsec/openssl/bn.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Reading/writing BIGNUM values
  *
diff --git a/include/xmlsec/openssl/crypto.h b/include/xmlsec/openssl/crypto.h
index c734c14..103522c 100644
--- a/include/xmlsec/openssl/crypto.h
+++ b/include/xmlsec/openssl/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -19,6 +19,7 @@ extern "C" {
 #include <xmlsec/dl.h>
 
 #include <openssl/err.h>
+#include <openssl/opensslconf.h>
 
 XMLSEC_CRYPTO_EXPORT xmlSecCryptoDLFunctionsPtr xmlSecCryptoGetFunctions_openssl(void);
 
@@ -39,6 +40,94 @@ XMLSEC_CRYPTO_EXPORT const xmlChar*     xmlSecOpenSSLGetDefaultTrustedCertsFolde
 
 /********************************************************************
  *
+ * What version of the openssl API do we have? (also see configure.ac)
+ *
+ *******************************************************************/
+#if OPENSSL_VERSION_NUMBER == 0x20000000L && defined(LIBRESSL_VERSION_NUMBER)
+/* Libressl decided to take over OpenSSL version 2.0.0, likely will create
+ * issues down the road...
+ */
+#define XMLSEC_OPENSSL_API_100      1
+#elif OPENSSL_VERSION_NUMBER >= 0x10100000L
+#define XMLSEC_OPENSSL_API_110      1
+#elif OPENSSL_VERSION_NUMBER >= 0x10000000L
+#define XMLSEC_OPENSSL_API_100      1
+#elif OPENSSL_VERSION_NUMBER >= 0x00908000L
+#define XMLSEC_OPENSSL_API_098      1
+#else  /* OPENSSL_VERSION_NUMBER */
+#error "This version of OpenSSL library is not supported"
+#endif /* OPENSSL_VERSION_NUMBER */
+
+/********************************************************************
+ *
+ * What is supported by the openssl?
+ *
+ *******************************************************************/
+#if defined(XMLSEC_OPENSSL_API_098)
+#define XMLSEC_NO_ECDSA     1
+#define XMLSEC_NO_SHA224    1
+#define XMLSEC_NO_SHA256    1
+#define XMLSEC_NO_SHA384    1
+#define XMLSEC_NO_SHA512    1
+#endif /* defined(XMLSEC_OPENSSL_API_098) */
+
+#ifdef OPENSSL_NO_AES
+#define XMLSEC_NO_AES       1
+#endif /* OPENSSL_NO_AES */
+
+#ifdef OPENSSL_NO_DES
+#define XMLSEC_NO_DES       1
+#endif /* OPENSSL_NO_DES */
+
+#ifdef OPENSSL_NO_DSA
+#define XMLSEC_NO_DSA       1
+#endif /* OPENSSL_NO_DSA */
+
+#ifdef OPENSSL_NO_ECDSA
+#define XMLSEC_NO_ECDSA     1
+#endif /* OPENSSL_NO_ECDSA */
+
+#ifdef OPENSSL_NO_GOST
+#define XMLSEC_NO_GOST      1
+#define XMLSEC_NO_GOST2012  1
+#endif /* OPENSSL_NO_GOST */
+
+#ifdef OPENSSL_NO_HMAC
+#define XMLSEC_NO_HMAC      1
+#endif /* OPENSSL_NO_HMAC */
+
+#ifdef OPENSSL_NO_MD5
+#define XMLSEC_NO_MD5       1
+#endif /* OPENSSL_NO_MD5 */
+
+#ifdef OPENSSL_NO_RIPEMD160
+#define XMLSEC_NO_RIPEMD160 1
+#endif /* OPENSSL_NO_RIPEMD160 */
+
+#ifdef OPENSSL_NO_RSA
+#define XMLSEC_NO_RSA       1
+#endif /* OPENSSL_NO_RSA */
+
+#ifdef OPENSSL_NO_SHA1
+#define XMLSEC_NO_SHA1      1
+#endif /* OPENSSL_NO_SHA1 */
+
+#ifdef OPENSSL_NO_SHA256
+#define XMLSEC_NO_SHA256    1
+#define XMLSEC_NO_SHA224    1
+#endif /* OPENSSL_NO_SHA256 */
+
+#ifdef OPENSSL_NO_SHA512
+#define XMLSEC_NO_SHA384    1
+#define XMLSEC_NO_SHA512    1
+#endif /* OPENSSL_NO_SHA512 */
+
+#if defined(OPENSSL_NO_X509) || defined(OPENSSL_NO_X509_VERIFY)
+#define XMLSEC_NO_X509      1
+#endif /* defined(OPENSSL_NO_X509) || defined(OPENSSL_NO_X509_VERIFY) */
+
+/********************************************************************
+ *
  * AES transforms
  *
  *******************************************************************/
@@ -721,26 +810,6 @@ XMLSEC_CRYPTO_EXPORT xmlSecTransformId xmlSecOpenSSLTransformSha512GetKlass(void
 #endif /* XMLSEC_NO_SHA512 */
 
 
-
-/**************************************************************
- *
- * Error constants for OpenSSL
- *
- *************************************************************/
-/**
- * XMLSEC_OPENSSL_ERRORS_LIB:
- *
- * Macro. The XMLSec library klass for OpenSSL errors reporting functions.
- */
-#define XMLSEC_OPENSSL_ERRORS_LIB                       (ERR_LIB_USER + 57)
-
-/**
- * XMLSEC_OPENSSL_ERRORS_FUNCTION:
- *
- * Macro. The XMLSec library functions OpenSSL errors reporting functions.
- */
-#define XMLSEC_OPENSSL_ERRORS_FUNCTION                  0
-
 XMLSEC_CRYPTO_EXPORT void       xmlSecOpenSSLErrorsDefaultCallback      (const char* file,
                                                                          int line,
                                                                          const char* func,
@@ -749,6 +818,7 @@ XMLSEC_CRYPTO_EXPORT void       xmlSecOpenSSLErrorsDefaultCallback      (const c
                                                                          int reason,
                                                                          const char* msg);
 
+
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
diff --git a/include/xmlsec/openssl/evp.h b/include/xmlsec/openssl/evp.h
index 2f964e8..7dbd790 100644
--- a/include/xmlsec/openssl/evp.h
+++ b/include/xmlsec/openssl/evp.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/openssl/symbols.h b/include/xmlsec/openssl/symbols.h
index 74a801a..c080f9d 100644
--- a/include/xmlsec/openssl/symbols.h
+++ b/include/xmlsec/openssl/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/openssl/x509.h b/include/xmlsec/openssl/x509.h
index 0163c23..6bb0d22 100644
--- a/include/xmlsec/openssl/x509.h
+++ b/include/xmlsec/openssl/x509.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -98,7 +98,7 @@ XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLX509StoreAdoptCrl  (xmlSecK
 XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLX509StoreAddCertsPath(xmlSecKeyDataStorePtr store,
                                                                          const char* path);
 XMLSEC_CRYPTO_EXPORT int                xmlSecOpenSSLX509StoreAddCertsFile(xmlSecKeyDataStorePtr store,
-                                                                         const char* file);
+                                                                         const char* filename);
 
 #endif /* XMLSEC_NO_X509 */
 
diff --git a/include/xmlsec/parser.h b/include/xmlsec/parser.h
index b91aa8d..bb1071f 100644
--- a/include/xmlsec/parser.h
+++ b/include/xmlsec/parser.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * XML Parser transform and utility functions.
diff --git a/include/xmlsec/private.h b/include/xmlsec/private.h
index 0a9d74a..757cc8f 100644
--- a/include/xmlsec/private.h
+++ b/include/xmlsec/private.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * These are internal private declarations. You don't want to use this file
@@ -491,21 +491,91 @@ struct _xmlSecCryptoDLFunctions {
     void*                                        cryptoAppDefaultPwdCallback;
 };
 
-#include <libxml/xmlstring.h>
+/**
+ * ATTRIBUTE_UNUSED:
+ *
+ * Macro used to signal to GCC unused function parameters
+ */
+#ifdef __GNUC__
+#ifdef HAVE_ANSIDECL_H
+#include <ansidecl.h>
+#endif
+#ifndef ATTRIBUTE_UNUSED
+#define ATTRIBUTE_UNUSED
+#endif
+#else
+#define ATTRIBUTE_UNUSED
+#endif
+
+/***********************************************************************
+ *
+ * Helpers to convert from void* to function pointer, this silence
+ * gcc warning
+ *
+ *     warning: ISO C forbids conversion of object pointer to function
+ *     pointer type
+ *
+ * The workaround is to declare a union that does the conversion. This is
+ * guaranteed (ISO/IEC 9899:1990 "C89"/"C90") to match exactly.
+ *
+ ***********************************************************************/
+
+/**
+ * XMLSEC_PTR_TO_FUNC_IMPL:
+ * @func_type:          the function type.
+ *
+ * Macro declares helper functions to convert from "void *" pointer to
+ * function pointer.
+ */
+#define XMLSEC_PTR_TO_FUNC_IMPL(func_type) \
+    union xmlSecPtrToFuncUnion_ ##func_type { \
+        void *ptr; \
+        func_type * func; \
+    } ; \
+    static func_type * xmlSecPtrToFunc_ ##func_type(void * ptr) { \
+         union xmlSecPtrToFuncUnion_ ##func_type x; \
+         x.ptr = ptr; \
+         return (x.func); \
+    }
 
 /**
- * xmlSecStrPrintf:
+ * XMLSEC_PTR_TO_FUNC:
+ * @func_type:          the function type.
+ * @ptr:                the "void*" pointer to be converted.
  *
- * Prints a string (see @xmlStrPrintf).
+ * Macro converts from "void*" pointer to "func_type" function pointer.
  */
-#define xmlSecStrPrintf         xmlStrPrintf
+#define XMLSEC_PTR_TO_FUNC(func_type, ptr) \
+    xmlSecPtrToFunc_ ##func_type((ptr))
 
 /**
- * xmlSecStrVPrintf:
+ * XMLSEC_FUNC_TO_PTR_IMPL:
+ * @func_type:          the function type.
  *
- * Prints a string (see @xmlStrVPrintf).
+ * Macro declares helper functions to convert from function pointer to
+ * "void *" pointer;
  */
-#define xmlSecStrVPrintf        xmlStrVPrintf
+#define XMLSEC_FUNC_TO_PTR_IMPL(func_type) \
+    union xmlSecFuncToPtrUnion_ ##func_type { \
+        void *ptr; \
+        func_type * func; \
+    } ; \
+    static void * xmlSecFuncToPtr_ ##func_type(func_type * func) { \
+         union xmlSecFuncToPtrUnion_ ##func_type x; \
+         x.func = func; \
+         return (x.ptr); \
+    }
+
+/**
+ * XMLSEC_FUNC_TO_PTR:
+ * @func_type:          the function type.
+ * @func:               the "func_type" function pointer to be converted.
+ *
+ * Macro converts from "func_type" function pointer to "void*" pointer.
+ */
+#define XMLSEC_FUNC_TO_PTR(func_type, func) \
+    xmlSecFuncToPtr_ ##func_type((func))
+
 
 #ifdef __cplusplus
 }
diff --git a/include/xmlsec/private/Makefile.in b/include/xmlsec/private/Makefile.in
index 3d8be64..b281646 100644
--- a/include/xmlsec/private/Makefile.in
+++ b/include/xmlsec/private/Makefile.in
@@ -233,6 +233,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -280,6 +281,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -296,6 +298,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -385,6 +388,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/include/xmlsec/private/xslt.h b/include/xmlsec/private/xslt.h
index ee3e728..9fbcc3a 100644
--- a/include/xmlsec/private/xslt.h
+++ b/include/xmlsec/private/xslt.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * XSLT helper functions
diff --git a/include/xmlsec/skeleton/app.h b/include/xmlsec/skeleton/app.h
index 3d29c32..25b2452 100644
--- a/include/xmlsec/skeleton/app.h
+++ b/include/xmlsec/skeleton/app.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/skeleton/crypto.h b/include/xmlsec/skeleton/crypto.h
index a81ba06..69d7dce 100644
--- a/include/xmlsec/skeleton/crypto.h
+++ b/include/xmlsec/skeleton/crypto.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/skeleton/symbols.h b/include/xmlsec/skeleton/symbols.h
index aa7ed38..5800445 100644
--- a/include/xmlsec/skeleton/symbols.h
+++ b/include/xmlsec/skeleton/symbols.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/include/xmlsec/soap.h b/include/xmlsec/soap.h
index c4efc00..e397d09 100644
--- a/include/xmlsec/soap.h
+++ b/include/xmlsec/soap.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Simple SOAP messages parsing/creation.
@@ -6,7 +6,7 @@
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
  *
- * Copyright (C) 2002-2003 Aleksey Sanin <aleksey at aleksey.com>
+ * Copyright (C) 2002-2017 Aleksey Sanin <aleksey at aleksey.com>
  */
 #ifndef __XMLSEC_SOAP_H__
 #define __XMLSEC_SOAP_H__
@@ -26,22 +26,22 @@ extern "C" {
  * SOAP 1.1
  *
  **********************************************************************/
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11CreateEnvelope      (xmlDocPtr doc);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11EnsureHeader        (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11AddBodyEntry        (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11CreateEnvelope      (xmlDocPtr doc);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11EnsureHeader        (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11AddBodyEntry        (xmlNodePtr envNode,
                                                                  xmlNodePtr entryNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11AddFaultEntry       (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11AddFaultEntry       (xmlNodePtr envNode,
                                                                  const xmlChar* faultCodeHref,
                                                                  const xmlChar* faultCodeLocalPart,
                                                                  const xmlChar* faultString,
                                                                  const xmlChar* faultActor);
-XMLSEC_EXPORT int               xmlSecSoap11CheckEnvelope       (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetHeader           (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetBody             (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlSecSize        xmlSecSoap11GetBodyEntriesNumber(xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetBodyEntry        (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT int               xmlSecSoap11CheckEnvelope       (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetHeader           (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetBody             (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlSecSize        xmlSecSoap11GetBodyEntriesNumber(xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetBodyEntry        (xmlNodePtr envNode,
                                                                  xmlSecSize pos);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetFaultEntry       (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap11GetFaultEntry       (xmlNodePtr envNode);
 
 
 /***********************************************************************
@@ -92,31 +92,31 @@ typedef enum {
     xmlSecSoap12FaultCodeReceiver
 } xmlSecSoap12FaultCode;
 
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12CreateEnvelope      (xmlDocPtr doc);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12EnsureHeader        (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddBodyEntry        (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12CreateEnvelope      (xmlDocPtr doc);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12EnsureHeader        (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddBodyEntry        (xmlNodePtr envNode,
                                                                  xmlNodePtr entryNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultEntry       (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultEntry       (xmlNodePtr envNode,
                                                                  xmlSecSoap12FaultCode faultCode,
                                                                  const xmlChar* faultReasonText,
                                                                  const xmlChar* faultReasonLang,
                                                                  const xmlChar* faultNodeURI,
                                                                  const xmlChar* faultRole);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultSubcode     (xmlNodePtr faultNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultSubcode     (xmlNodePtr faultNode,
                                                                  const xmlChar* subCodeHref,
                                                                  const xmlChar* subCodeName);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultReasonText  (xmlNodePtr faultNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultReasonText  (xmlNodePtr faultNode,
                                                                  const xmlChar* faultReasonText,
                                                                  const xmlChar* faultReasonLang);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultDetailEntry (xmlNodePtr faultNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12AddFaultDetailEntry (xmlNodePtr faultNode,
                                                                  xmlNodePtr detailEntryNode);
-XMLSEC_EXPORT int               xmlSecSoap12CheckEnvelope       (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetHeader           (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetBody             (xmlNodePtr envNode);
-XMLSEC_EXPORT xmlSecSize        xmlSecSoap12GetBodyEntriesNumber(xmlNodePtr envNode);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetBodyEntry        (xmlNodePtr envNode,
+XMLSEC_DEPRECATED XMLSEC_EXPORT int               xmlSecSoap12CheckEnvelope       (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetHeader           (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetBody             (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlSecSize        xmlSecSoap12GetBodyEntriesNumber(xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetBodyEntry        (xmlNodePtr envNode,
                                                                  xmlSecSize pos);
-XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetFaultEntry       (xmlNodePtr envNode);
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlNodePtr        xmlSecSoap12GetFaultEntry       (xmlNodePtr envNode);
 
 
 #endif /* XMLSEC_NO_SOAP */
diff --git a/include/xmlsec/strings.h b/include/xmlsec/strings.h
index 42f5117..1a945ec 100644
--- a/include/xmlsec/strings.h
+++ b/include/xmlsec/strings.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * All the string constans.
diff --git a/include/xmlsec/templates.h b/include/xmlsec/templates.h
index 94ee740..fafcdcc 100644
--- a/include/xmlsec/templates.h
+++ b/include/xmlsec/templates.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * KeyInfo node processing
diff --git a/include/xmlsec/transforms.h b/include/xmlsec/transforms.h
index 7765afc..751efcd 100644
--- a/include/xmlsec/transforms.h
+++ b/include/xmlsec/transforms.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * The transforms engine
diff --git a/include/xmlsec/version.h b/include/xmlsec/version.h
index 7c09710..30345a1 100644
--- a/include/xmlsec/version.h
+++ b/include/xmlsec/version.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Version information
@@ -19,9 +19,9 @@ extern "C" {
  * XMLSEC_VERSION:
  *
  * The library version string in the format
- * "<major-number>.<minor-number>.<sub-minor-number>".
+ * "$major_number.$minor_number.$sub_minor_number".
  */
-#define XMLSEC_VERSION			"1.2.23"
+#define XMLSEC_VERSION			"1.2.24"
 
 /**
  * XMLSEC_VERSION_MAJOR:
@@ -42,15 +42,15 @@ extern "C" {
  *
  * The library sub-minor version number.
  */
-#define XMLSEC_VERSION_SUBMINOR		23
+#define XMLSEC_VERSION_SUBMINOR		24
 
 /**
  * XMLSEC_VERSION_INFO:
  *
  * The library version info string in the format
- * "<major-number>+<minor-number>:<sub-minor-number>:<minor-number>".
+ * "$major_number+$minor_number:$sub_minor_number:$minor_number".
  */
-#define XMLSEC_VERSION_INFO		"3:23:2"
+#define XMLSEC_VERSION_INFO		"3:24:2"
 
 
 #ifdef __cplusplus
diff --git a/include/xmlsec/version.h.in b/include/xmlsec/version.h.in
index 6679205..31cee4b 100644
--- a/include/xmlsec/version.h.in
+++ b/include/xmlsec/version.h.in
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Version information
@@ -19,7 +19,7 @@ extern "C" {
  * XMLSEC_VERSION:
  *
  * The library version string in the format
- * "<major-number>.<minor-number>.<sub-minor-number>".
+ * "$major_number.$minor_number.$sub_minor_number".
  */
 #define XMLSEC_VERSION			"@XMLSEC_VERSION@"
 
@@ -48,7 +48,7 @@ extern "C" {
  * XMLSEC_VERSION_INFO:
  *
  * The library version info string in the format
- * "<major-number>+<minor-number>:<sub-minor-number>:<minor-number>".
+ * "$major_number+$minor_number:$sub_minor_number:$minor_number".
  */
 #define XMLSEC_VERSION_INFO		"@XMLSEC_VERSION_INFO@"
 
diff --git a/include/xmlsec/x509.h b/include/xmlsec/x509.h
index a53098a..731e63d 100644
--- a/include/xmlsec/x509.h
+++ b/include/xmlsec/x509.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
diff --git a/include/xmlsec/xmldsig.h b/include/xmlsec/xmldsig.h
index ec59f4d..57e36c6 100644
--- a/include/xmlsec/xmldsig.h
+++ b/include/xmlsec/xmldsig.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * "XML Digital Signature" implementation
diff --git a/include/xmlsec/xmlenc.h b/include/xmlsec/xmlenc.h
index 0253e3e..85d7283 100644
--- a/include/xmlsec/xmlenc.h
+++ b/include/xmlsec/xmlenc.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * "XML Encryption" implementation
diff --git a/include/xmlsec/xmlsec.h b/include/xmlsec/xmlsec.h
index 963b37a..69d765f 100644
--- a/include/xmlsec/xmlsec.h
+++ b/include/xmlsec/xmlsec.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * General functions and forward declarations.
@@ -86,6 +86,7 @@ typedef struct _xmlSecEncCtx                    xmlSecEncCtx, *xmlSecEncCtxPtr;
 XMLSEC_EXPORT int                               xmlSecInit              (void);
 XMLSEC_EXPORT int                               xmlSecShutdown          (void);
 XMLSEC_EXPORT const xmlChar *                   xmlSecGetDefaultCrypto  (void);
+XMLSEC_EXPORT void                              xmlSecSetExternalEntityLoader (xmlExternalEntityLoader);
 
 /**
  * XMLSEC_CRYPTO:
@@ -97,6 +98,19 @@ XMLSEC_EXPORT const xmlChar *                   xmlSecGetDefaultCrypto  (void);
  */
 #define XMLSEC_CRYPTO                          (xmlSecGetDefaultCrypto())
 
+/*
+ * XMLSEC_DEPRECATED function definition
+ */
+#ifdef __GNUC__
+#define XMLSEC_DEPRECATED __attribute__((deprecated))
+#elif defined(_MSC_VER)
+#define XMLSEC_DEPRECATED __declspec(deprecated)
+#else /* defined(_MSC_VER) */
+#pragma message("WARNING: You need to implement XMLSEC_DEPRECATED for this compiler")
+#define XMLSEC_DEPRECATED
+#endif /* defined(_MSC_VER) */
+
+
 /***********************************************************************
  *
  * Version checking
@@ -139,79 +153,6 @@ XMLSEC_EXPORT int       xmlSecCheckVersionExt   (int major,
                                                  int subminor,
                                                  xmlSecCheckVersionMode mode);
 
-/**
- * ATTRIBUTE_UNUSED:
- *
- * Macro used to signal to GCC unused function parameters
- */
-#ifdef __GNUC__
-#ifdef HAVE_ANSIDECL_H
-#include <ansidecl.h>
-#endif
-#ifndef ATTRIBUTE_UNUSED
-#define ATTRIBUTE_UNUSED
-#endif
-#else
-#define ATTRIBUTE_UNUSED
-#endif
-
-/***********************************************************************
- *
- * Helpers to convert from void* to function pointer, this silence
- * gcc warning
- *
- *     warning: ISO C forbids conversion of object pointer to function
- *     pointer type
- *
- * The workaround is to declare a union that does the conversion. This is
- * guaranteed (ISO/IEC 9899:1990 "C89"/"C90") to match exactly.
- *
- ***********************************************************************/
-
-/**
- * XMLSEC_PTR_TO_FUNC_IMPL:
- * @func_type:          the function type.
- *
- * Macro declares helper functions to convert between "void *" pointer and
- * function pointer.
- */
-#define XMLSEC_PTR_TO_FUNC_IMPL(func_type) \
-    union xmlSecPtrToFuncUnion_ ##func_type { \
-        void *ptr; \
-        func_type * func; \
-    } ; \
-    static func_type * xmlSecPtrToFunc_ ##func_type(void * ptr) { \
-         union xmlSecPtrToFuncUnion_ ##func_type x; \
-         x.ptr = ptr; \
-         return (x.func); \
-    } \
-    static void * xmlSecFuncToPtr_ ##func_type(func_type * func) { \
-         union xmlSecPtrToFuncUnion_ ##func_type x; \
-         x.func = func; \
-         return (x.ptr); \
-    }
-
-/**
- * XMLSEC_PTR_TO_FUNC:
- * @func_type:          the function type.
- * @ptr:                the "void*" pointer to be converted.
- *
- * Macro converts from "void*" pointer to "func_type" function pointer.
- */
-#define XMLSEC_PTR_TO_FUNC(func_type, ptr) \
-    xmlSecPtrToFunc_ ##func_type((ptr))
-
-/**
- * XMLSEC_FUNC_TO_PTR:
- * @func_type:          the function type.
- * @func:               the "func_type" function pointer to be converted.
- *
- * Macro converts from "func_type" function pointer to "void*" pointer.
- */
-#define XMLSEC_FUNC_TO_PTR(func_type, func) \
-    xmlSecFuncToPtr_ ##func_type((func))
-
-
 #ifdef __cplusplus
 }
 #endif /* __cplusplus */
diff --git a/include/xmlsec/xmltree.h b/include/xmlsec/xmltree.h
index b26a092..64df99a 100644
--- a/include/xmlsec/xmltree.h
+++ b/include/xmlsec/xmltree.h
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Common XML utility functions
@@ -88,11 +88,11 @@ XMLSEC_EXPORT int               xmlSecNodeEncodeAndSetContent
 XMLSEC_EXPORT void              xmlSecAddIDs            (xmlDocPtr doc,
                                                          xmlNodePtr cur,
                                                          const xmlChar** ids);
-XMLSEC_EXPORT int               xmlSecGenerateAndAddID  (xmlNodePtr node,
+XMLSEC_DEPRECATED XMLSEC_EXPORT int xmlSecGenerateAndAddID (xmlNodePtr node,
                                                          const xmlChar* attrName,
                                                          const xmlChar* prefix,
                                                          xmlSecSize len);
-XMLSEC_EXPORT xmlChar*          xmlSecGenerateID        (const xmlChar* prefix,
+XMLSEC_DEPRECATED XMLSEC_EXPORT xmlChar* xmlSecGenerateID (const xmlChar* prefix,
                                                          xmlSecSize len);
 
 XMLSEC_EXPORT xmlDocPtr         xmlSecCreateTree        (const xmlChar* rootNodeName,
diff --git a/install-sh b/install-sh
index 0b0fdcb..59990a1 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2013-12-25.23; # UTC
+scriptversion=2014-09-12.12; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -324,34 +324,41 @@ do
             # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
             ;;
           *)
+            # $RANDOM is not portable (e.g. dash);  use it when possible to
+            # lower collision chance
             tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
-            trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+            trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
 
+            # As "mkdir -p" follows symlinks and we work in /tmp possibly;  so
+            # create the $tmpdir first (and fail if unsuccessful) to make sure
+            # that nobody tries to guess the $tmpdir name.
             if (umask $mkdir_umask &&
-                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+                $mkdirprog $mkdir_mode "$tmpdir" &&
+                exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
             then
               if test -z "$dir_arg" || {
                    # Check for POSIX incompatibilities with -m.
                    # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
                    # other-writable bit of parent directory when it shouldn't.
                    # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
-                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
+                   test_tmpdir="$tmpdir/a"
+                   ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
                    case $ls_ld_tmpdir in
                      d????-?r-*) different_mode=700;;
                      d????-?--*) different_mode=755;;
                      *) false;;
                    esac &&
-                   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
-                     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+                   $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
+                     ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
                      test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
                    }
                  }
               then posix_mkdir=:
               fi
-              rmdir "$tmpdir/d" "$tmpdir"
+              rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
             else
               # Remove any dirs left behind by ancient mkdir implementations.
-              rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+              rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
             fi
             trap '' 0;;
         esac;;
diff --git a/ltmain.sh b/ltmain.sh
index bffda54..147d758 100644
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -1,9 +1,12 @@
+#! /bin/sh
+## DO NOT EDIT - This file generated from ./build-aux/ltmain.in
+##               by inline-source v2014-01-03.01
 
-# libtool (GNU libtool) 2.4.2
+# libtool (GNU libtool) 2.4.6
+# Provide generalized library-building support services.
 # Written by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
-# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 1996-2015 Free Software Foundation, Inc.
 # This is free software; see the source for copying conditions.  There is NO
 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
@@ -23,881 +26,2112 @@
 # General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html,
-# or obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Usage: $progname [OPTION]... [MODE-ARG]...
-#
-# Provide generalized library-building support services.
-#
-#       --config             show all configuration variables
-#       --debug              enable verbose shell tracing
-#   -n, --dry-run            display commands without modifying any files
-#       --features           display basic configuration information and exit
-#       --mode=MODE          use operation mode MODE
-#       --preserve-dup-deps  don't remove duplicate dependency libraries
-#       --quiet, --silent    don't print informational messages
-#       --no-quiet, --no-silent
-#                            print informational messages (default)
-#       --no-warn            don't display warning messages
-#       --tag=TAG            use configuration variables from tag TAG
-#   -v, --verbose            print more informational messages than default
-#       --no-verbose         don't print the extra informational messages
-#       --version            print version information
-#   -h, --help, --help-all   print short, long, or detailed help message
-#
-# MODE must be one of the following:
-#
-#         clean              remove files from the build directory
-#         compile            compile a source file into a libtool object
-#         execute            automatically set library path, then run a program
-#         finish             complete the installation of libtool libraries
-#         install            install libraries or executables
-#         link               create a library or an executable
-#         uninstall          remove libraries from an installed directory
-#
-# MODE-ARGS vary depending on the MODE.  When passed as first option,
-# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that.
-# Try `$progname --help --mode=MODE' for a more detailed description of MODE.
-#
-# When reporting a bug, please describe a test case to reproduce it and
-# include the following information:
-#
-#         host-triplet:	$host
-#         shell:		$SHELL
-#         compiler:		$LTCC
-#         compiler flags:		$LTCFLAGS
-#         linker:		$LD (gnu? $with_gnu_ld)
-#         $progname:	(GNU libtool) 2.4.2 Debian-2.4.2-1.11
-#         automake:	$automake_version
-#         autoconf:	$autoconf_version
-#
-# Report bugs to <bug-libtool at gnu.org>.
-# GNU libtool home page: <http://www.gnu.org/software/libtool/>.
-# General help using GNU software: <http://www.gnu.org/gethelp/>.
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION="2.4.2 Debian-2.4.2-1.11"
-TIMESTAMP=""
-package_revision=1.3337
+VERSION="2.4.6 Debian-2.4.6-0.1"
+package_revision=2.4.6
 
-# Be Bourne compatible
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# Run './libtool --help' for help with using this script from the
+# command line.
+
+
+## ------------------------------- ##
+## User overridable command paths. ##
+## ------------------------------- ##
+
+# After configure completes, it has a better idea of some of the
+# shell tools we need than the defaults used by the functions shared
+# with bootstrap, so set those here where they can still be over-
+# ridden by the user, but otherwise take precedence.
+
+: ${AUTOCONF="autoconf"}
+: ${AUTOMAKE="automake"}
+
+
+## -------------------------- ##
+## Source external libraries. ##
+## -------------------------- ##
+
+# Much of our low-level functionality needs to be sourced from external
+# libraries, which are installed to $pkgauxdir.
+
+# Set a version string for this script.
+scriptversion=2015-01-20.17; # UTC
+
+# General shell script boiler plate, and helper functions.
+# Written by Gary V. Vaughan, 2004
+
+# Copyright (C) 2004-2015 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+
+# As a special exception to the GNU General Public License, if you distribute
+# this file as part of a program or library that is built using GNU Libtool,
+# you may include this file under the same distribution terms that you use
+# for the rest of that program.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# Please report bugs or propose patches to gary at gnu.org.
+
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# Evaluate this file near the top of your script to gain access to
+# the functions and variables defined here:
+#
+#   . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh
+#
+# If you need to override any of the default environment variable
+# settings, do that before evaluating this file.
+
+
+## -------------------- ##
+## Shell normalisation. ##
+## -------------------- ##
+
+# Some shells need a little help to be as Bourne compatible as possible.
+# Before doing anything else, make sure all that help has been provided!
+
+DUALCASE=1; export DUALCASE # for MKS sh
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
   NULLCMD=:
-  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
 else
-  case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
+  case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac
 fi
-BIN_SH=xpg4; export BIN_SH # for Tru64
-DUALCASE=1; export DUALCASE # for MKS sh
-
-# A function that is used when there is no print builtin or printf.
-func_fallback_echo ()
-{
-  eval 'cat <<_LTECHO_EOF
-$1
-_LTECHO_EOF'
-}
 
-# NLS nuisances: We save the old values to restore during execute mode.
-lt_user_locale=
-lt_safe_locale=
-for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
+# NLS nuisances: We save the old values in case they are required later.
+_G_user_locale=
+_G_safe_locale=
+for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
 do
-  eval "if test \"\${$lt_var+set}\" = set; then
-          save_$lt_var=\$$lt_var
-          $lt_var=C
-	  export $lt_var
-	  lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\"
-	  lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\"
+  eval "if test set = \"\${$_G_var+set}\"; then
+          save_$_G_var=\$$_G_var
+          $_G_var=C
+	  export $_G_var
+	  _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\"
+	  _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\"
 	fi"
 done
-LC_ALL=C
-LANGUAGE=C
-export LANGUAGE LC_ALL
 
-$lt_unset CDPATH
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Make sure IFS has a sensible default
+sp=' '
+nl='
+'
+IFS="$sp	$nl"
+
+# There are apparently some retarded systems that use ';' as a PATH separator!
+if test "${PATH_SEPARATOR+set}" != set; then
+  PATH_SEPARATOR=:
+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+      PATH_SEPARATOR=';'
+  }
+fi
 
-# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
-# is ksh but when the shell is invoked as "sh" and the current value of
-# the _XPG environment variable is not equal to 1 (one), the special
-# positional parameter $0, within a function call, is the name of the
-# function.
-progpath="$0"
 
 
+## ------------------------- ##
+## Locate command utilities. ##
+## ------------------------- ##
+
+
+# func_executable_p FILE
+# ----------------------
+# Check that FILE is an executable regular file.
+func_executable_p ()
+{
+    test -f "$1" && test -x "$1"
+}
+
+
+# func_path_progs PROGS_LIST CHECK_FUNC [PATH]
+# --------------------------------------------
+# Search for either a program that responds to --version with output
+# containing "GNU", or else returned by CHECK_FUNC otherwise, by
+# trying all the directories in PATH with each of the elements of
+# PROGS_LIST.
+#
+# CHECK_FUNC should accept the path to a candidate program, and
+# set $func_check_prog_result if it truncates its output less than
+# $_G_path_prog_max characters.
+func_path_progs ()
+{
+    _G_progs_list=$1
+    _G_check_func=$2
+    _G_PATH=${3-"$PATH"}
+
+    _G_path_prog_max=0
+    _G_path_prog_found=false
+    _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:}
+    for _G_dir in $_G_PATH; do
+      IFS=$_G_save_IFS
+      test -z "$_G_dir" && _G_dir=.
+      for _G_prog_name in $_G_progs_list; do
+        for _exeext in '' .EXE; do
+          _G_path_prog=$_G_dir/$_G_prog_name$_exeext
+          func_executable_p "$_G_path_prog" || continue
+          case `"$_G_path_prog" --version 2>&1` in
+            *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;;
+            *)     $_G_check_func $_G_path_prog
+		   func_path_progs_result=$func_check_prog_result
+		   ;;
+          esac
+          $_G_path_prog_found && break 3
+        done
+      done
+    done
+    IFS=$_G_save_IFS
+    test -z "$func_path_progs_result" && {
+      echo "no acceptable sed could be found in \$PATH" >&2
+      exit 1
+    }
+}
+
+
+# We want to be able to use the functions in this file before configure
+# has figured out where the best binaries are kept, which means we have
+# to search for them ourselves - except when the results are already set
+# where we skip the searches.
+
+# Unless the user overrides by setting SED, search the path for either GNU
+# sed, or the sed that truncates its output the least.
+test -z "$SED" && {
+  _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
+  for _G_i in 1 2 3 4 5 6 7; do
+    _G_sed_script=$_G_sed_script$nl$_G_sed_script
+  done
+  echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed
+  _G_sed_script=
+
+  func_check_prog_sed ()
+  {
+    _G_path_prog=$1
+
+    _G_count=0
+    printf 0123456789 >conftest.in
+    while :
+    do
+      cat conftest.in conftest.in >conftest.tmp
+      mv conftest.tmp conftest.in
+      cp conftest.in conftest.nl
+      echo '' >> conftest.nl
+      "$_G_path_prog" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break
+      diff conftest.out conftest.nl >/dev/null 2>&1 || break
+      _G_count=`expr $_G_count + 1`
+      if test "$_G_count" -gt "$_G_path_prog_max"; then
+        # Best one so far, save it but keep looking for a better one
+        func_check_prog_result=$_G_path_prog
+        _G_path_prog_max=$_G_count
+      fi
+      # 10*(2^10) chars as input seems more than enough
+      test 10 -lt "$_G_count" && break
+    done
+    rm -f conftest.in conftest.tmp conftest.nl conftest.out
+  }
+
+  func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin
+  rm -f conftest.sed
+  SED=$func_path_progs_result
+}
+
+
+# Unless the user overrides by setting GREP, search the path for either GNU
+# grep, or the grep that truncates its output the least.
+test -z "$GREP" && {
+  func_check_prog_grep ()
+  {
+    _G_path_prog=$1
+
+    _G_count=0
+    _G_path_prog_max=0
+    printf 0123456789 >conftest.in
+    while :
+    do
+      cat conftest.in conftest.in >conftest.tmp
+      mv conftest.tmp conftest.in
+      cp conftest.in conftest.nl
+      echo 'GREP' >> conftest.nl
+      "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' <conftest.nl >conftest.out 2>/dev/null || break
+      diff conftest.out conftest.nl >/dev/null 2>&1 || break
+      _G_count=`expr $_G_count + 1`
+      if test "$_G_count" -gt "$_G_path_prog_max"; then
+        # Best one so far, save it but keep looking for a better one
+        func_check_prog_result=$_G_path_prog
+        _G_path_prog_max=$_G_count
+      fi
+      # 10*(2^10) chars as input seems more than enough
+      test 10 -lt "$_G_count" && break
+    done
+    rm -f conftest.in conftest.tmp conftest.nl conftest.out
+  }
+
+  func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin
+  GREP=$func_path_progs_result
+}
+
+
+## ------------------------------- ##
+## User overridable command paths. ##
+## ------------------------------- ##
+
+# All uppercase variable names are used for environment variables.  These
+# variables can be overridden by the user before calling a script that
+# uses them if a suitable command of that name is not already available
+# in the command search PATH.
 
 : ${CP="cp -f"}
-test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'}
+: ${ECHO="printf %s\n"}
+: ${EGREP="$GREP -E"}
+: ${FGREP="$GREP -F"}
+: ${LN_S="ln -s"}
 : ${MAKE="make"}
 : ${MKDIR="mkdir"}
 : ${MV="mv -f"}
 : ${RM="rm -f"}
 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
-: ${Xsed="$SED -e 1s/^X//"}
-
-# Global variables:
-EXIT_SUCCESS=0
-EXIT_FAILURE=1
-EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing.
-EXIT_SKIP=77	  # $? = 77 is used to indicate a skipped test to automake.
-
-exit_status=$EXIT_SUCCESS
-
-# Make sure IFS has a sensible default
-lt_nl='
-'
-IFS=" 	$lt_nl"
 
-dirname="s,/[^/]*$,,"
-basename="s,^.*/,,"
 
-# func_dirname file append nondir_replacement
-# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
-# otherwise set result to NONDIR_REPLACEMENT.
-func_dirname ()
-{
-    func_dirname_result=`$ECHO "${1}" | $SED "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-} # func_dirname may be replaced by extended shell implementation
+## -------------------- ##
+## Useful sed snippets. ##
+## -------------------- ##
 
+sed_dirname='s|/[^/]*$||'
+sed_basename='s|^.*/||'
 
-# func_basename file
-func_basename ()
-{
-    func_basename_result=`$ECHO "${1}" | $SED "$basename"`
-} # func_basename may be replaced by extended shell implementation
+# Sed substitution that helps us do robust quoting.  It backslashifies
+# metacharacters that are still active within double-quoted strings.
+sed_quote_subst='s|\([`"$\\]\)|\\\1|g'
 
+# Same as above, but do not quote variable references.
+sed_double_quote_subst='s/\(["`\\]\)/\\\1/g'
 
-# func_dirname_and_basename file append nondir_replacement
-# perform func_basename and func_dirname in a single function
-# call:
-#   dirname:  Compute the dirname of FILE.  If nonempty,
-#             add APPEND to the result, otherwise set result
-#             to NONDIR_REPLACEMENT.
-#             value returned in "$func_dirname_result"
-#   basename: Compute filename of FILE.
-#             value retuned in "$func_basename_result"
-# Implementation must be kept synchronized with func_dirname
-# and func_basename. For efficiency, we do not delegate to
-# those functions but instead duplicate the functionality here.
-func_dirname_and_basename ()
-{
-    # Extract subdirectory from the argument.
-    func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"`
-    if test "X$func_dirname_result" = "X${1}"; then
-      func_dirname_result="${3}"
-    else
-      func_dirname_result="$func_dirname_result${2}"
-    fi
-    func_basename_result=`$ECHO "${1}" | $SED -e "$basename"`
-} # func_dirname_and_basename may be replaced by extended shell implementation
+# Sed substitution that turns a string into a regex matching for the
+# string literally.
+sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g'
 
+# Sed substitution that converts a w32 file name or path
+# that contains forward slashes, into one that contains
+# (escaped) backslashes.  A very naive implementation.
+sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
+
+# Re-'\' parameter expansions in output of sed_double_quote_subst that
+# were '\'-ed in input to the same.  If an odd number of '\' preceded a
+# '$' in input to sed_double_quote_subst, that '$' was protected from
+# expansion.  Since each input '\' is now two '\'s, look for any number
+# of runs of four '\'s followed by two '\'s and then a '$'.  '\' that '$'.
+_G_bs='\\'
+_G_bs2='\\\\'
+_G_bs4='\\\\\\\\'
+_G_dollar='\$'
+sed_double_backslash="\
+  s/$_G_bs4/&\\
+/g
+  s/^$_G_bs2$_G_dollar/$_G_bs&/
+  s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g
+  s/\n//g"
 
-# func_stripname prefix suffix name
-# strip PREFIX and SUFFIX off of NAME.
-# PREFIX and SUFFIX must not contain globbing or regex special
-# characters, hashes, percent signs, but SUFFIX may contain a leading
-# dot (in which case that matches only a dot).
-# func_strip_suffix prefix name
-func_stripname ()
-{
-    case ${2} in
-      .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-      *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
-    esac
-} # func_stripname may be replaced by extended shell implementation
 
+## ----------------- ##
+## Global variables. ##
+## ----------------- ##
 
-# These SED scripts presuppose an absolute path with a trailing slash.
-pathcar='s,^/\([^/]*\).*$,\1,'
-pathcdr='s,^/[^/]*,,'
-removedotparts=':dotsl
-		s@/\./@/@g
-		t dotsl
-		s,/\.$,/,'
-collapseslashes='s@/\{1,\}@/@g'
-finalslash='s,/*$,/,'
+# Except for the global variables explicitly listed below, the following
+# functions in the '^func_' namespace, and the '^require_' namespace
+# variables initialised in the 'Resource management' section, sourcing
+# this file will not pollute your global namespace with anything
+# else. There's no portable way to scope variables in Bourne shell
+# though, so actually running these functions will sometimes place
+# results into a variable named after the function, and often use
+# temporary variables in the '^_G_' namespace. If you are careful to
+# avoid using those namespaces casually in your sourcing script, things
+# should continue to work as you expect. And, of course, you can freely
+# overwrite any of the functions or variables defined here before
+# calling anything to customize them.
 
-# func_normal_abspath PATH
-# Remove doubled-up and trailing slashes, "." path components,
-# and cancel out any ".." path components in PATH after making
-# it an absolute path.
-#             value returned in "$func_normal_abspath_result"
-func_normal_abspath ()
-{
-  # Start from root dir and reassemble the path.
-  func_normal_abspath_result=
-  func_normal_abspath_tpath=$1
-  func_normal_abspath_altnamespace=
-  case $func_normal_abspath_tpath in
-    "")
-      # Empty path, that just means $cwd.
-      func_stripname '' '/' "`pwd`"
-      func_normal_abspath_result=$func_stripname_result
-      return
-    ;;
-    # The next three entries are used to spot a run of precisely
-    # two leading slashes without using negated character classes;
-    # we take advantage of case's first-match behaviour.
-    ///*)
-      # Unusual form of absolute path, do nothing.
-    ;;
-    //*)
-      # Not necessarily an ordinary path; POSIX reserves leading '//'
-      # and for example Cygwin uses it to access remote file shares
-      # over CIFS/SMB, so we conserve a leading double slash if found.
-      func_normal_abspath_altnamespace=/
-    ;;
-    /*)
-      # Absolute path, do nothing.
-    ;;
-    *)
-      # Relative path, prepend $cwd.
-      func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
-    ;;
-  esac
-  # Cancel out all the simple stuff to save iterations.  We also want
-  # the path to end with a slash for ease of parsing, so make sure
-  # there is one (and only one) here.
-  func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"`
-  while :; do
-    # Processed it all yet?
-    if test "$func_normal_abspath_tpath" = / ; then
-      # If we ascended to the root using ".." the result may be empty now.
-      if test -z "$func_normal_abspath_result" ; then
-        func_normal_abspath_result=/
-      fi
-      break
-    fi
-    func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$pathcar"`
-    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
-        -e "$pathcdr"`
-    # Figure out what to do with it
-    case $func_normal_abspath_tcomponent in
-      "")
-        # Trailing empty path component, ignore it.
-      ;;
-      ..)
-        # Parent dir; strip last assembled component from result.
-        func_dirname "$func_normal_abspath_result"
-        func_normal_abspath_result=$func_dirname_result
-      ;;
-      *)
-        # Actual path component, append it.
-        func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent
-      ;;
-    esac
-  done
-  # Restore leading double-slash if one was found on entry.
-  func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
-}
+EXIT_SUCCESS=0
+EXIT_FAILURE=1
+EXIT_MISMATCH=63  # $? = 63 is used to indicate version mismatch to missing.
+EXIT_SKIP=77	  # $? = 77 is used to indicate a skipped test to automake.
 
-# func_relative_path SRCDIR DSTDIR
-# generates a relative path from SRCDIR to DSTDIR, with a trailing
-# slash if non-empty, suitable for immediately appending a filename
-# without needing to append a separator.
-#             value returned in "$func_relative_path_result"
-func_relative_path ()
-{
-  func_relative_path_result=
-  func_normal_abspath "$1"
-  func_relative_path_tlibdir=$func_normal_abspath_result
-  func_normal_abspath "$2"
-  func_relative_path_tbindir=$func_normal_abspath_result
-
-  # Ascend the tree starting from libdir
-  while :; do
-    # check if we have found a prefix of bindir
-    case $func_relative_path_tbindir in
-      $func_relative_path_tlibdir)
-        # found an exact match
-        func_relative_path_tcancelled=
-        break
-        ;;
-      $func_relative_path_tlibdir*)
-        # found a matching prefix
-        func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
-        func_relative_path_tcancelled=$func_stripname_result
-        if test -z "$func_relative_path_result"; then
-          func_relative_path_result=.
-        fi
-        break
-        ;;
-      *)
-        func_dirname $func_relative_path_tlibdir
-        func_relative_path_tlibdir=${func_dirname_result}
-        if test "x$func_relative_path_tlibdir" = x ; then
-          # Have to descend all the way to the root!
-          func_relative_path_result=../$func_relative_path_result
-          func_relative_path_tcancelled=$func_relative_path_tbindir
-          break
-        fi
-        func_relative_path_result=../$func_relative_path_result
-        ;;
-    esac
-  done
+# Allow overriding, eg assuming that you follow the convention of
+# putting '$debug_cmd' at the start of all your functions, you can get
+# bash to show function call trace with:
+#
+#    debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name
+debug_cmd=${debug_cmd-":"}
+exit_cmd=:
 
-  # Now calculate path; take care to avoid doubling-up slashes.
-  func_stripname '' '/' "$func_relative_path_result"
-  func_relative_path_result=$func_stripname_result
-  func_stripname '/' '/' "$func_relative_path_tcancelled"
-  if test "x$func_stripname_result" != x ; then
-    func_relative_path_result=${func_relative_path_result}/${func_stripname_result}
-  fi
+# By convention, finish your script with:
+#
+#    exit $exit_status
+#
+# so that you can set exit_status to non-zero if you want to indicate
+# something went wrong during execution without actually bailing out at
+# the point of failure.
+exit_status=$EXIT_SUCCESS
 
-  # Normalisation. If bindir is libdir, return empty string,
-  # else relative path ending with a slash; either way, target
-  # file name can be directly appended.
-  if test ! -z "$func_relative_path_result"; then
-    func_stripname './' '' "$func_relative_path_result/"
-    func_relative_path_result=$func_stripname_result
-  fi
-}
+# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
+# is ksh but when the shell is invoked as "sh" and the current value of
+# the _XPG environment variable is not equal to 1 (one), the special
+# positional parameter $0, within a function call, is the name of the
+# function.
+progpath=$0
 
-# The name of this program:
-func_dirname_and_basename "$progpath"
-progname=$func_basename_result
+# The name of this program.
+progname=`$ECHO "$progpath" |$SED "$sed_basename"`
 
-# Make sure we have an absolute path for reexecution:
+# Make sure we have an absolute progpath for reexecution:
 case $progpath in
   [\\/]*|[A-Za-z]:\\*) ;;
   *[\\/]*)
-     progdir=$func_dirname_result
+     progdir=`$ECHO "$progpath" |$SED "$sed_dirname"`
      progdir=`cd "$progdir" && pwd`
-     progpath="$progdir/$progname"
+     progpath=$progdir/$progname
      ;;
   *)
-     save_IFS="$IFS"
+     _G_IFS=$IFS
      IFS=${PATH_SEPARATOR-:}
      for progdir in $PATH; do
-       IFS="$save_IFS"
+       IFS=$_G_IFS
        test -x "$progdir/$progname" && break
      done
-     IFS="$save_IFS"
+     IFS=$_G_IFS
      test -n "$progdir" || progdir=`pwd`
-     progpath="$progdir/$progname"
+     progpath=$progdir/$progname
      ;;
 esac
 
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed="${SED}"' -e 1s/^X//'
-sed_quote_subst='s/\([`"$\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\(["`\\]\)/\\\1/g'
 
-# Sed substitution that turns a string into a regex matching for the
-# string literally.
-sed_make_literal_regex='s,[].[^$\\*\/],\\&,g'
+## ----------------- ##
+## Standard options. ##
+## ----------------- ##
 
-# Sed substitution that converts a w32 file name or path
-# which contains forward slashes, into one that contains
-# (escaped) backslashes.  A very naive implementation.
-lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
-
-# Re-`\' parameter expansions in output of double_quote_subst that were
-# `\'-ed in input to the same.  If an odd number of `\' preceded a '$'
-# in input to double_quote_subst, that '$' was protected from expansion.
-# Since each input `\' is now two `\'s, look for any number of runs of
-# four `\'s followed by two `\'s and then a '$'.  `\' that '$'.
-bs='\\'
-bs2='\\\\'
-bs4='\\\\\\\\'
-dollar='\$'
-sed_double_backslash="\
-  s/$bs4/&\\
-/g
-  s/^$bs2$dollar/$bs&/
-  s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g
-  s/\n//g"
+# The following options affect the operation of the functions defined
+# below, and should be set appropriately depending on run-time para-
+# meters passed on the command line.
 
-# Standard options:
 opt_dry_run=false
-opt_help=false
 opt_quiet=false
 opt_verbose=false
-opt_warning=:
 
-# func_echo arg...
-# Echo program name prefixed message, along with the current mode
-# name if it has been set yet.
-func_echo ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }$*"
-}
+# Categories 'all' and 'none' are always available.  Append any others
+# you will pass as the first argument to func_warning from your own
+# code.
+warning_categories=
 
-# func_verbose arg...
-# Echo program name prefixed message in verbose mode only.
-func_verbose ()
-{
-    $opt_verbose && func_echo ${1+"$@"}
+# By default, display warnings according to 'opt_warning_types'.  Set
+# 'warning_func'  to ':' to elide all warnings, or func_fatal_error to
+# treat the next displayed warning as a fatal error.
+warning_func=func_warn_and_continue
 
-    # A bug in bash halts the script if the last line of a function
-    # fails when set -e is in force, so we need another command to
-    # work around that:
-    :
-}
+# Set to 'all' to display all warnings, 'none' to suppress all
+# warnings, or a space delimited list of some subset of
+# 'warning_categories' to display only the listed warnings.
+opt_warning_types=all
 
-# func_echo_all arg...
-# Invoke $ECHO with all args, space-separated.
-func_echo_all ()
-{
-    $ECHO "$*"
-}
 
-# func_error arg...
-# Echo program name prefixed message to standard error.
-func_error ()
-{
-    $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2
-}
+## -------------------- ##
+## Resource management. ##
+## -------------------- ##
 
-# func_warning arg...
-# Echo program name prefixed warning message to standard error.
-func_warning ()
-{
-    $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2
+# This section contains definitions for functions that each ensure a
+# particular resource (a file, or a non-empty configuration variable for
+# example) is available, and if appropriate to extract default values
+# from pertinent package files. Call them using their associated
+# 'require_*' variable to ensure that they are executed, at most, once.
+#
+# It's entirely deliberate that calling these functions can set
+# variables that don't obey the namespace limitations obeyed by the rest
+# of this file, in order that that they be as useful as possible to
+# callers.
 
-    # bash bug again:
-    :
-}
 
-# func_fatal_error arg...
-# Echo program name prefixed message to standard error, and exit.
-func_fatal_error ()
+# require_term_colors
+# -------------------
+# Allow display of bold text on terminals that support it.
+require_term_colors=func_require_term_colors
+func_require_term_colors ()
 {
-    func_error ${1+"$@"}
-    exit $EXIT_FAILURE
-}
+    $debug_cmd
+
+    test -t 1 && {
+      # COLORTERM and USE_ANSI_COLORS environment variables take
+      # precedence, because most terminfo databases neglect to describe
+      # whether color sequences are supported.
+      test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"}
+
+      if test 1 = "$USE_ANSI_COLORS"; then
+        # Standard ANSI escape sequences
+        tc_reset=''
+        tc_bold='';   tc_standout=''
+        tc_red='';   tc_green=''
+        tc_blue='';  tc_cyan=''
+      else
+        # Otherwise trust the terminfo database after all.
+        test -n "`tput sgr0 2>/dev/null`" && {
+          tc_reset=`tput sgr0`
+          test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold`
+          tc_standout=$tc_bold
+          test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso`
+          test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1`
+          test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2`
+          test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4`
+          test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5`
+        }
+      fi
+    }
 
-# func_fatal_help arg...
-# Echo program name prefixed message to standard error, followed by
-# a help hint, and exit.
-func_fatal_help ()
-{
-    func_error ${1+"$@"}
-    func_fatal_error "$help"
+    require_term_colors=:
 }
-help="Try \`$progname --help' for more information."  ## default
 
 
-# func_grep expression filename
+## ----------------- ##
+## Function library. ##
+## ----------------- ##
+
+# This section contains a variety of useful functions to call in your
+# scripts. Take note of the portable wrappers for features provided by
+# some modern shells, which will fall back to slower equivalents on
+# less featureful shells.
+
+
+# func_append VAR VALUE
+# ---------------------
+# Append VALUE onto the existing contents of VAR.
+
+  # We should try to minimise forks, especially on Windows where they are
+  # unreasonably slow, so skip the feature probes when bash or zsh are
+  # being used:
+  if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then
+    : ${_G_HAVE_ARITH_OP="yes"}
+    : ${_G_HAVE_XSI_OPS="yes"}
+    # The += operator was introduced in bash 3.1
+    case $BASH_VERSION in
+      [12].* | 3.0 | 3.0*) ;;
+      *)
+        : ${_G_HAVE_PLUSEQ_OP="yes"}
+        ;;
+    esac
+  fi
+
+  # _G_HAVE_PLUSEQ_OP
+  # Can be empty, in which case the shell is probed, "yes" if += is
+  # useable or anything else if it does not work.
+  test -z "$_G_HAVE_PLUSEQ_OP" \
+    && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \
+    && _G_HAVE_PLUSEQ_OP=yes
+
+if test yes = "$_G_HAVE_PLUSEQ_OP"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_append ()
+  {
+    $debug_cmd
+
+    eval "$1+=\$2"
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_append ()
+  {
+    $debug_cmd
+
+    eval "$1=\$$1\$2"
+  }
+fi
+
+
+# func_append_quoted VAR VALUE
+# ----------------------------
+# Quote VALUE and append to the end of shell variable VAR, separated
+# by a space.
+if test yes = "$_G_HAVE_PLUSEQ_OP"; then
+  eval 'func_append_quoted ()
+  {
+    $debug_cmd
+
+    func_quote_for_eval "$2"
+    eval "$1+=\\ \$func_quote_for_eval_result"
+  }'
+else
+  func_append_quoted ()
+  {
+    $debug_cmd
+
+    func_quote_for_eval "$2"
+    eval "$1=\$$1\\ \$func_quote_for_eval_result"
+  }
+fi
+
+
+# func_append_uniq VAR VALUE
+# --------------------------
+# Append unique VALUE onto the existing contents of VAR, assuming
+# entries are delimited by the first character of VALUE.  For example:
+#
+#   func_append_uniq options " --another-option option-argument"
+#
+# will only append to $options if " --another-option option-argument "
+# is not already present somewhere in $options already (note spaces at
+# each end implied by leading space in second argument).
+func_append_uniq ()
+{
+    $debug_cmd
+
+    eval _G_current_value='`$ECHO $'$1'`'
+    _G_delim=`expr "$2" : '\(.\)'`
+
+    case $_G_delim$_G_current_value$_G_delim in
+      *"$2$_G_delim"*) ;;
+      *) func_append "$@" ;;
+    esac
+}
+
+
+# func_arith TERM...
+# ------------------
+# Set func_arith_result to the result of evaluating TERMs.
+  test -z "$_G_HAVE_ARITH_OP" \
+    && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \
+    && _G_HAVE_ARITH_OP=yes
+
+if test yes = "$_G_HAVE_ARITH_OP"; then
+  eval 'func_arith ()
+  {
+    $debug_cmd
+
+    func_arith_result=$(( $* ))
+  }'
+else
+  func_arith ()
+  {
+    $debug_cmd
+
+    func_arith_result=`expr "$@"`
+  }
+fi
+
+
+# func_basename FILE
+# ------------------
+# Set func_basename_result to FILE with everything up to and including
+# the last / stripped.
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  # If this shell supports suffix pattern removal, then use it to avoid
+  # forking. Hide the definitions single quotes in case the shell chokes
+  # on unsupported syntax...
+  _b='func_basename_result=${1##*/}'
+  _d='case $1 in
+        */*) func_dirname_result=${1%/*}$2 ;;
+        *  ) func_dirname_result=$3        ;;
+      esac'
+
+else
+  # ...otherwise fall back to using sed.
+  _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`'
+  _d='func_dirname_result=`$ECHO "$1"  |$SED "$sed_dirname"`
+      if test "X$func_dirname_result" = "X$1"; then
+        func_dirname_result=$3
+      else
+        func_append func_dirname_result "$2"
+      fi'
+fi
+
+eval 'func_basename ()
+{
+    $debug_cmd
+
+    '"$_b"'
+}'
+
+
+# func_dirname FILE APPEND NONDIR_REPLACEMENT
+# -------------------------------------------
+# Compute the dirname of FILE.  If nonempty, add APPEND to the result,
+# otherwise set result to NONDIR_REPLACEMENT.
+eval 'func_dirname ()
+{
+    $debug_cmd
+
+    '"$_d"'
+}'
+
+
+# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT
+# --------------------------------------------------------
+# Perform func_basename and func_dirname in a single function
+# call:
+#   dirname:  Compute the dirname of FILE.  If nonempty,
+#             add APPEND to the result, otherwise set result
+#             to NONDIR_REPLACEMENT.
+#             value returned in "$func_dirname_result"
+#   basename: Compute filename of FILE.
+#             value retuned in "$func_basename_result"
+# For efficiency, we do not delegate to the functions above but instead
+# duplicate the functionality here.
+eval 'func_dirname_and_basename ()
+{
+    $debug_cmd
+
+    '"$_b"'
+    '"$_d"'
+}'
+
+
+# func_echo ARG...
+# ----------------
+# Echo program name prefixed message.
+func_echo ()
+{
+    $debug_cmd
+
+    _G_message=$*
+
+    func_echo_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_IFS
+      $ECHO "$progname: $_G_line"
+    done
+    IFS=$func_echo_IFS
+}
+
+
+# func_echo_all ARG...
+# --------------------
+# Invoke $ECHO with all args, space-separated.
+func_echo_all ()
+{
+    $ECHO "$*"
+}
+
+
+# func_echo_infix_1 INFIX ARG...
+# ------------------------------
+# Echo program name, followed by INFIX on the first line, with any
+# additional lines not showing INFIX.
+func_echo_infix_1 ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    _G_infix=$1; shift
+    _G_indent=$_G_infix
+    _G_prefix="$progname: $_G_infix: "
+    _G_message=$*
+
+    # Strip color escape sequences before counting printable length
+    for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan"
+    do
+      test -n "$_G_tc" && {
+        _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"`
+        _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"`
+      }
+    done
+    _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`"  " ## exclude from sc_prohibit_nested_quotes
+
+    func_echo_infix_1_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_infix_1_IFS
+      $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2
+      _G_prefix=$_G_indent
+    done
+    IFS=$func_echo_infix_1_IFS
+}
+
+
+# func_error ARG...
+# -----------------
+# Echo program name prefixed message to standard error.
+func_error ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    func_echo_infix_1 "  $tc_standout${tc_red}error$tc_reset" "$*" >&2
+}
+
+
+# func_fatal_error ARG...
+# -----------------------
+# Echo program name prefixed message to standard error, and exit.
+func_fatal_error ()
+{
+    $debug_cmd
+
+    func_error "$*"
+    exit $EXIT_FAILURE
+}
+
+
+# func_grep EXPRESSION FILENAME
+# -----------------------------
 # Check whether EXPRESSION matches any line of FILENAME, without output.
 func_grep ()
 {
+    $debug_cmd
+
     $GREP "$1" "$2" >/dev/null 2>&1
 }
 
 
-# func_mkdir_p directory-path
+# func_len STRING
+# ---------------
+# Set func_len_result to the length of STRING. STRING may not
+# start with a hyphen.
+  test -z "$_G_HAVE_XSI_OPS" \
+    && (eval 'x=a/b/c;
+      test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
+    && _G_HAVE_XSI_OPS=yes
+
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_len ()
+  {
+    $debug_cmd
+
+    func_len_result=${#1}
+  }'
+else
+  func_len ()
+  {
+    $debug_cmd
+
+    func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
+  }
+fi
+
+
+# func_mkdir_p DIRECTORY-PATH
+# ---------------------------
 # Make sure the entire path to DIRECTORY-PATH is available.
 func_mkdir_p ()
 {
-    my_directory_path="$1"
-    my_dir_list=
+    $debug_cmd
 
-    if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then
+    _G_directory_path=$1
+    _G_dir_list=
 
-      # Protect directory names starting with `-'
-      case $my_directory_path in
-        -*) my_directory_path="./$my_directory_path" ;;
+    if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then
+
+      # Protect directory names starting with '-'
+      case $_G_directory_path in
+        -*) _G_directory_path=./$_G_directory_path ;;
       esac
 
       # While some portion of DIR does not yet exist...
-      while test ! -d "$my_directory_path"; do
+      while test ! -d "$_G_directory_path"; do
         # ...make a list in topmost first order.  Use a colon delimited
 	# list incase some portion of path contains whitespace.
-        my_dir_list="$my_directory_path:$my_dir_list"
+        _G_dir_list=$_G_directory_path:$_G_dir_list
 
         # If the last portion added has no slash in it, the list is done
-        case $my_directory_path in */*) ;; *) break ;; esac
+        case $_G_directory_path in */*) ;; *) break ;; esac
 
         # ...otherwise throw away the child directory and loop
-        my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"`
+        _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"`
       done
-      my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'`
+      _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'`
 
-      save_mkdir_p_IFS="$IFS"; IFS=':'
-      for my_dir in $my_dir_list; do
-	IFS="$save_mkdir_p_IFS"
-        # mkdir can fail with a `File exist' error if two processes
+      func_mkdir_p_IFS=$IFS; IFS=:
+      for _G_dir in $_G_dir_list; do
+	IFS=$func_mkdir_p_IFS
+        # mkdir can fail with a 'File exist' error if two processes
         # try to create one of the directories concurrently.  Don't
         # stop in that case!
-        $MKDIR "$my_dir" 2>/dev/null || :
+        $MKDIR "$_G_dir" 2>/dev/null || :
       done
-      IFS="$save_mkdir_p_IFS"
+      IFS=$func_mkdir_p_IFS
 
       # Bail out if we (or some other process) failed to create a directory.
-      test -d "$my_directory_path" || \
-        func_fatal_error "Failed to create \`$1'"
+      test -d "$_G_directory_path" || \
+        func_fatal_error "Failed to create '$1'"
     fi
 }
 
 
-# func_mktempdir [string]
+# func_mktempdir [BASENAME]
+# -------------------------
 # Make a temporary directory that won't clash with other running
 # libtool processes, and avoids race conditions if possible.  If
-# given, STRING is the basename for that directory.
+# given, BASENAME is the basename for that directory.
 func_mktempdir ()
 {
-    my_template="${TMPDIR-/tmp}/${1-$progname}"
+    $debug_cmd
+
+    _G_template=${TMPDIR-/tmp}/${1-$progname}
 
-    if test "$opt_dry_run" = ":"; then
+    if test : = "$opt_dry_run"; then
       # Return a directory name, but don't create it in dry-run mode
-      my_tmpdir="${my_template}-$$"
+      _G_tmpdir=$_G_template-$$
     else
 
       # If mktemp works, use that first and foremost
-      my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null`
+      _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null`
 
-      if test ! -d "$my_tmpdir"; then
+      if test ! -d "$_G_tmpdir"; then
         # Failing that, at least try and use $RANDOM to avoid a race
-        my_tmpdir="${my_template}-${RANDOM-0}$$"
+        _G_tmpdir=$_G_template-${RANDOM-0}$$
 
-        save_mktempdir_umask=`umask`
+        func_mktempdir_umask=`umask`
         umask 0077
-        $MKDIR "$my_tmpdir"
-        umask $save_mktempdir_umask
+        $MKDIR "$_G_tmpdir"
+        umask $func_mktempdir_umask
       fi
 
       # If we're not in dry-run mode, bomb out on failure
-      test -d "$my_tmpdir" || \
-        func_fatal_error "cannot create temporary directory \`$my_tmpdir'"
+      test -d "$_G_tmpdir" || \
+        func_fatal_error "cannot create temporary directory '$_G_tmpdir'"
+    fi
+
+    $ECHO "$_G_tmpdir"
+}
+
+
+# func_normal_abspath PATH
+# ------------------------
+# Remove doubled-up and trailing slashes, "." path components,
+# and cancel out any ".." path components in PATH after making
+# it an absolute path.
+func_normal_abspath ()
+{
+    $debug_cmd
+
+    # These SED scripts presuppose an absolute path with a trailing slash.
+    _G_pathcar='s|^/\([^/]*\).*$|\1|'
+    _G_pathcdr='s|^/[^/]*||'
+    _G_removedotparts=':dotsl
+		s|/\./|/|g
+		t dotsl
+		s|/\.$|/|'
+    _G_collapseslashes='s|/\{1,\}|/|g'
+    _G_finalslash='s|/*$|/|'
+
+    # Start from root dir and reassemble the path.
+    func_normal_abspath_result=
+    func_normal_abspath_tpath=$1
+    func_normal_abspath_altnamespace=
+    case $func_normal_abspath_tpath in
+      "")
+        # Empty path, that just means $cwd.
+        func_stripname '' '/' "`pwd`"
+        func_normal_abspath_result=$func_stripname_result
+        return
+        ;;
+      # The next three entries are used to spot a run of precisely
+      # two leading slashes without using negated character classes;
+      # we take advantage of case's first-match behaviour.
+      ///*)
+        # Unusual form of absolute path, do nothing.
+        ;;
+      //*)
+        # Not necessarily an ordinary path; POSIX reserves leading '//'
+        # and for example Cygwin uses it to access remote file shares
+        # over CIFS/SMB, so we conserve a leading double slash if found.
+        func_normal_abspath_altnamespace=/
+        ;;
+      /*)
+        # Absolute path, do nothing.
+        ;;
+      *)
+        # Relative path, prepend $cwd.
+        func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
+        ;;
+    esac
+
+    # Cancel out all the simple stuff to save iterations.  We also want
+    # the path to end with a slash for ease of parsing, so make sure
+    # there is one (and only one) here.
+    func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"`
+    while :; do
+      # Processed it all yet?
+      if test / = "$func_normal_abspath_tpath"; then
+        # If we ascended to the root using ".." the result may be empty now.
+        if test -z "$func_normal_abspath_result"; then
+          func_normal_abspath_result=/
+        fi
+        break
+      fi
+      func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_pathcar"`
+      func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
+          -e "$_G_pathcdr"`
+      # Figure out what to do with it
+      case $func_normal_abspath_tcomponent in
+        "")
+          # Trailing empty path component, ignore it.
+          ;;
+        ..)
+          # Parent dir; strip last assembled component from result.
+          func_dirname "$func_normal_abspath_result"
+          func_normal_abspath_result=$func_dirname_result
+          ;;
+        *)
+          # Actual path component, append it.
+          func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent"
+          ;;
+      esac
+    done
+    # Restore leading double-slash if one was found on entry.
+    func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
+}
+
+
+# func_notquiet ARG...
+# --------------------
+# Echo program name prefixed message only when not in quiet mode.
+func_notquiet ()
+{
+    $debug_cmd
+
+    $opt_quiet || func_echo ${1+"$@"}
+
+    # A bug in bash halts the script if the last line of a function
+    # fails when set -e is in force, so we need another command to
+    # work around that:
+    :
+}
+
+
+# func_relative_path SRCDIR DSTDIR
+# --------------------------------
+# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR.
+func_relative_path ()
+{
+    $debug_cmd
+
+    func_relative_path_result=
+    func_normal_abspath "$1"
+    func_relative_path_tlibdir=$func_normal_abspath_result
+    func_normal_abspath "$2"
+    func_relative_path_tbindir=$func_normal_abspath_result
+
+    # Ascend the tree starting from libdir
+    while :; do
+      # check if we have found a prefix of bindir
+      case $func_relative_path_tbindir in
+        $func_relative_path_tlibdir)
+          # found an exact match
+          func_relative_path_tcancelled=
+          break
+          ;;
+        $func_relative_path_tlibdir*)
+          # found a matching prefix
+          func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
+          func_relative_path_tcancelled=$func_stripname_result
+          if test -z "$func_relative_path_result"; then
+            func_relative_path_result=.
+          fi
+          break
+          ;;
+        *)
+          func_dirname $func_relative_path_tlibdir
+          func_relative_path_tlibdir=$func_dirname_result
+          if test -z "$func_relative_path_tlibdir"; then
+            # Have to descend all the way to the root!
+            func_relative_path_result=../$func_relative_path_result
+            func_relative_path_tcancelled=$func_relative_path_tbindir
+            break
+          fi
+          func_relative_path_result=../$func_relative_path_result
+          ;;
+      esac
+    done
+
+    # Now calculate path; take care to avoid doubling-up slashes.
+    func_stripname '' '/' "$func_relative_path_result"
+    func_relative_path_result=$func_stripname_result
+    func_stripname '/' '/' "$func_relative_path_tcancelled"
+    if test -n "$func_stripname_result"; then
+      func_append func_relative_path_result "/$func_stripname_result"
+    fi
+
+    # Normalisation. If bindir is libdir, return '.' else relative path.
+    if test -n "$func_relative_path_result"; then
+      func_stripname './' '' "$func_relative_path_result"
+      func_relative_path_result=$func_stripname_result
     fi
 
-    $ECHO "$my_tmpdir"
+    test -n "$func_relative_path_result" || func_relative_path_result=.
+
+    :
+}
+
+
+# func_quote_for_eval ARG...
+# --------------------------
+# Aesthetically quote ARGs to be evaled later.
+# This function returns two values:
+#   i) func_quote_for_eval_result
+#      double-quoted, suitable for a subsequent eval
+#  ii) func_quote_for_eval_unquoted_result
+#      has all characters that are still active within double
+#      quotes backslashified.
+func_quote_for_eval ()
+{
+    $debug_cmd
+
+    func_quote_for_eval_unquoted_result=
+    func_quote_for_eval_result=
+    while test 0 -lt $#; do
+      case $1 in
+        *[\\\`\"\$]*)
+	  _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
+        *)
+          _G_unquoted_arg=$1 ;;
+      esac
+      if test -n "$func_quote_for_eval_unquoted_result"; then
+	func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
+      else
+        func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg"
+      fi
+
+      case $_G_unquoted_arg in
+        # Double-quote args containing shell metacharacters to delay
+        # word splitting, command substitution and variable expansion
+        # for a subsequent eval.
+        # Many Bourne shells cannot handle close brackets correctly
+        # in scan sets, so we specify it separately.
+        *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
+          _G_quoted_arg=\"$_G_unquoted_arg\"
+          ;;
+        *)
+          _G_quoted_arg=$_G_unquoted_arg
+	  ;;
+      esac
+
+      if test -n "$func_quote_for_eval_result"; then
+	func_append func_quote_for_eval_result " $_G_quoted_arg"
+      else
+        func_append func_quote_for_eval_result "$_G_quoted_arg"
+      fi
+      shift
+    done
+}
+
+
+# func_quote_for_expand ARG
+# -------------------------
+# Aesthetically quote ARG to be evaled later; same as above,
+# but do not quote variable references.
+func_quote_for_expand ()
+{
+    $debug_cmd
+
+    case $1 in
+      *[\\\`\"]*)
+	_G_arg=`$ECHO "$1" | $SED \
+	    -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;;
+      *)
+        _G_arg=$1 ;;
+    esac
+
+    case $_G_arg in
+      # Double-quote args containing shell metacharacters to delay
+      # word splitting and command substitution for a subsequent eval.
+      # Many Bourne shells cannot handle close brackets correctly
+      # in scan sets, so we specify it separately.
+      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
+        _G_arg=\"$_G_arg\"
+        ;;
+    esac
+
+    func_quote_for_expand_result=$_G_arg
+}
+
+
+# func_stripname PREFIX SUFFIX NAME
+# ---------------------------------
+# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result.
+# PREFIX and SUFFIX must not contain globbing or regex special
+# characters, hashes, percent signs, but SUFFIX may contain a leading
+# dot (in which case that matches only a dot).
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_stripname ()
+  {
+    $debug_cmd
+
+    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
+    # positional parameters, so assign one to ordinary variable first.
+    func_stripname_result=$3
+    func_stripname_result=${func_stripname_result#"$1"}
+    func_stripname_result=${func_stripname_result%"$2"}
+  }'
+else
+  func_stripname ()
+  {
+    $debug_cmd
+
+    case $2 in
+      .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;;
+      *)  func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;;
+    esac
+  }
+fi
+
+
+# func_show_eval CMD [FAIL_EXP]
+# -----------------------------
+# Unless opt_quiet is true, then output CMD.  Then, if opt_dryrun is
+# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.
+func_show_eval ()
+{
+    $debug_cmd
+
+    _G_cmd=$1
+    _G_fail_exp=${2-':'}
+
+    func_quote_for_expand "$_G_cmd"
+    eval "func_notquiet $func_quote_for_expand_result"
+
+    $opt_dry_run || {
+      eval "$_G_cmd"
+      _G_status=$?
+      if test 0 -ne "$_G_status"; then
+	eval "(exit $_G_status); $_G_fail_exp"
+      fi
+    }
+}
+
+
+# func_show_eval_locale CMD [FAIL_EXP]
+# ------------------------------------
+# Unless opt_quiet is true, then output CMD.  Then, if opt_dryrun is
+# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
+# is given, then evaluate it.  Use the saved locale for evaluation.
+func_show_eval_locale ()
+{
+    $debug_cmd
+
+    _G_cmd=$1
+    _G_fail_exp=${2-':'}
+
+    $opt_quiet || {
+      func_quote_for_expand "$_G_cmd"
+      eval "func_echo $func_quote_for_expand_result"
+    }
+
+    $opt_dry_run || {
+      eval "$_G_user_locale
+	    $_G_cmd"
+      _G_status=$?
+      eval "$_G_safe_locale"
+      if test 0 -ne "$_G_status"; then
+	eval "(exit $_G_status); $_G_fail_exp"
+      fi
+    }
+}
+
+
+# func_tr_sh
+# ----------
+# Turn $1 into a string suitable for a shell variable name.
+# Result is stored in $func_tr_sh_result.  All characters
+# not in the set a-zA-Z0-9_ are replaced with '_'. Further,
+# if $1 begins with a digit, a '_' is prepended as well.
+func_tr_sh ()
+{
+    $debug_cmd
+
+    case $1 in
+    [0-9]* | *[!a-zA-Z0-9_]*)
+      func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'`
+      ;;
+    * )
+      func_tr_sh_result=$1
+      ;;
+    esac
+}
+
+
+# func_verbose ARG...
+# -------------------
+# Echo program name prefixed message in verbose mode only.
+func_verbose ()
+{
+    $debug_cmd
+
+    $opt_verbose && func_echo "$*"
+
+    :
+}
+
+
+# func_warn_and_continue ARG...
+# -----------------------------
+# Echo program name prefixed warning message to standard error.
+func_warn_and_continue ()
+{
+    $debug_cmd
+
+    $require_term_colors
+
+    func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2
+}
+
+
+# func_warning CATEGORY ARG...
+# ----------------------------
+# Echo program name prefixed warning message to standard error. Warning
+# messages can be filtered according to CATEGORY, where this function
+# elides messages where CATEGORY is not listed in the global variable
+# 'opt_warning_types'.
+func_warning ()
+{
+    $debug_cmd
+
+    # CATEGORY must be in the warning_categories list!
+    case " $warning_categories " in
+      *" $1 "*) ;;
+      *) func_internal_error "invalid warning category '$1'" ;;
+    esac
+
+    _G_category=$1
+    shift
+
+    case " $opt_warning_types " in
+      *" $_G_category "*) $warning_func ${1+"$@"} ;;
+    esac
+}
+
+
+# func_sort_ver VER1 VER2
+# -----------------------
+# 'sort -V' is not generally available.
+# Note this deviates from the version comparison in automake
+# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
+# but this should suffice as we won't be specifying old
+# version formats or redundant trailing .0 in bootstrap.conf.
+# If we did want full compatibility then we should probably
+# use m4_version_compare from autoconf.
+func_sort_ver ()
+{
+    $debug_cmd
+
+    printf '%s\n%s\n' "$1" "$2" \
+      | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n
+}
+
+# func_lt_ver PREV CURR
+# ---------------------
+# Return true if PREV and CURR are in the correct order according to
+# func_sort_ver, otherwise false.  Use it like this:
+#
+#  func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..."
+func_lt_ver ()
+{
+    $debug_cmd
+
+    test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q`
+}
+
+
+# Local variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
+# time-stamp-time-zone: "UTC"
+# End:
+#! /bin/sh
+
+# Set a version string for this script.
+scriptversion=2014-01-07.03; # UTC
+
+# A portable, pluggable option parser for Bourne shell.
+# Written by Gary V. Vaughan, 2010
+
+# Copyright (C) 2010-2015 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Please report bugs or propose patches to gary at gnu.org.
+
+
+## ------ ##
+## Usage. ##
+## ------ ##
+
+# This file is a library for parsing options in your shell scripts along
+# with assorted other useful supporting features that you can make use
+# of too.
+#
+# For the simplest scripts you might need only:
+#
+#   #!/bin/sh
+#   . relative/path/to/funclib.sh
+#   . relative/path/to/options-parser
+#   scriptversion=1.0
+#   func_options ${1+"$@"}
+#   eval set dummy "$func_options_result"; shift
+#   ...rest of your script...
+#
+# In order for the '--version' option to work, you will need to have a
+# suitably formatted comment like the one at the top of this file
+# starting with '# Written by ' and ending with '# warranty; '.
+#
+# For '-h' and '--help' to work, you will also need a one line
+# description of your script's purpose in a comment directly above the
+# '# Written by ' line, like the one at the top of this file.
+#
+# The default options also support '--debug', which will turn on shell
+# execution tracing (see the comment above debug_cmd below for another
+# use), and '--verbose' and the func_verbose function to allow your script
+# to display verbose messages only when your user has specified
+# '--verbose'.
+#
+# After sourcing this file, you can plug processing for additional
+# options by amending the variables from the 'Configuration' section
+# below, and following the instructions in the 'Option parsing'
+# section further down.
+
+## -------------- ##
+## Configuration. ##
+## -------------- ##
+
+# You should override these variables in your script after sourcing this
+# file so that they reflect the customisations you have added to the
+# option parser.
+
+# The usage line for option parsing errors and the start of '-h' and
+# '--help' output messages. You can embed shell variables for delayed
+# expansion at the time the message is displayed, but you will need to
+# quote other shell meta-characters carefully to prevent them being
+# expanded when the contents are evaled.
+usage='$progpath [OPTION]...'
+
+# Short help message in response to '-h' and '--help'.  Add to this or
+# override it after sourcing this library to reflect the full set of
+# options your script accepts.
+usage_message="\
+       --debug        enable verbose shell tracing
+   -W, --warnings=CATEGORY
+                      report the warnings falling in CATEGORY [all]
+   -v, --verbose      verbosely report processing
+       --version      print version information and exit
+   -h, --help         print short or long help message and exit
+"
+
+# Additional text appended to 'usage_message' in response to '--help'.
+long_help_message="
+Warning categories include:
+       'all'          show all warnings
+       'none'         turn off all the warnings
+       'error'        warnings are treated as fatal errors"
+
+# Help message printed before fatal option parsing errors.
+fatal_help="Try '\$progname --help' for more information."
+
+
+
+## ------------------------- ##
+## Hook function management. ##
+## ------------------------- ##
+
+# This section contains functions for adding, removing, and running hooks
+# to the main code.  A hook is just a named list of of function, that can
+# be run in order later on.
+
+# func_hookable FUNC_NAME
+# -----------------------
+# Declare that FUNC_NAME will run hooks added with
+# 'func_add_hook FUNC_NAME ...'.
+func_hookable ()
+{
+    $debug_cmd
+
+    func_append hookable_fns " $1"
+}
+
+
+# func_add_hook FUNC_NAME HOOK_FUNC
+# ---------------------------------
+# Request that FUNC_NAME call HOOK_FUNC before it returns.  FUNC_NAME must
+# first have been declared "hookable" by a call to 'func_hookable'.
+func_add_hook ()
+{
+    $debug_cmd
+
+    case " $hookable_fns " in
+      *" $1 "*) ;;
+      *) func_fatal_error "'$1' does not accept hook functions." ;;
+    esac
+
+    eval func_append ${1}_hooks '" $2"'
+}
+
+
+# func_remove_hook FUNC_NAME HOOK_FUNC
+# ------------------------------------
+# Remove HOOK_FUNC from the list of functions called by FUNC_NAME.
+func_remove_hook ()
+{
+    $debug_cmd
+
+    eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`'
+}
+
+
+# func_run_hooks FUNC_NAME [ARG]...
+# ---------------------------------
+# Run all hook functions registered to FUNC_NAME.
+# It is assumed that the list of hook functions contains nothing more
+# than a whitespace-delimited list of legal shell function names, and
+# no effort is wasted trying to catch shell meta-characters or preserve
+# whitespace.
+func_run_hooks ()
+{
+    $debug_cmd
+
+    case " $hookable_fns " in
+      *" $1 "*) ;;
+      *) func_fatal_error "'$1' does not support hook funcions.n" ;;
+    esac
+
+    eval _G_hook_fns=\$$1_hooks; shift
+
+    for _G_hook in $_G_hook_fns; do
+      eval $_G_hook '"$@"'
+
+      # store returned options list back into positional
+      # parameters for next 'cmd' execution.
+      eval _G_hook_result=\$${_G_hook}_result
+      eval set dummy "$_G_hook_result"; shift
+    done
+
+    func_quote_for_eval ${1+"$@"}
+    func_run_hooks_result=$func_quote_for_eval_result
+}
+
+
+
+## --------------- ##
+## Option parsing. ##
+## --------------- ##
+
+# In order to add your own option parsing hooks, you must accept the
+# full positional parameter list in your hook function, remove any
+# options that you action, and then pass back the remaining unprocessed
+# options in '<hooked_function_name>_result', escaped suitably for
+# 'eval'.  Like this:
+#
+#    my_options_prep ()
+#    {
+#        $debug_cmd
+#
+#        # Extend the existing usage message.
+#        usage_message=$usage_message'
+#      -s, --silent       don'\''t print informational messages
+#    '
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_options_prep_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_options_prep my_options_prep
+#
+#
+#    my_silent_option ()
+#    {
+#        $debug_cmd
+#
+#        # Note that for efficiency, we parse as many options as we can
+#        # recognise in a loop before passing the remainder back to the
+#        # caller on the first unrecognised argument we encounter.
+#        while test $# -gt 0; do
+#          opt=$1; shift
+#          case $opt in
+#            --silent|-s) opt_silent=: ;;
+#            # Separate non-argument short options:
+#            -s*)         func_split_short_opt "$_G_opt"
+#                         set dummy "$func_split_short_opt_name" \
+#                             "-$func_split_short_opt_arg" ${1+"$@"}
+#                         shift
+#                         ;;
+#            *)            set dummy "$_G_opt" "$*"; shift; break ;;
+#          esac
+#        done
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_silent_option_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_parse_options my_silent_option
+#
+#
+#    my_option_validation ()
+#    {
+#        $debug_cmd
+#
+#        $opt_silent && $opt_verbose && func_fatal_help "\
+#    '--silent' and '--verbose' options are mutually exclusive."
+#
+#        func_quote_for_eval ${1+"$@"}
+#        my_option_validation_result=$func_quote_for_eval_result
+#    }
+#    func_add_hook func_validate_options my_option_validation
+#
+# You'll alse need to manually amend $usage_message to reflect the extra
+# options you parse.  It's preferable to append if you can, so that
+# multiple option parsing hooks can be added safely.
+
+
+# func_options [ARG]...
+# ---------------------
+# All the functions called inside func_options are hookable. See the
+# individual implementations for details.
+func_hookable func_options
+func_options ()
+{
+    $debug_cmd
+
+    func_options_prep ${1+"$@"}
+    eval func_parse_options \
+        ${func_options_prep_result+"$func_options_prep_result"}
+    eval func_validate_options \
+        ${func_parse_options_result+"$func_parse_options_result"}
+
+    eval func_run_hooks func_options \
+        ${func_validate_options_result+"$func_validate_options_result"}
+
+    # save modified positional parameters for caller
+    func_options_result=$func_run_hooks_result
 }
 
 
-# func_quote_for_eval arg
-# Aesthetically quote ARG to be evaled later.
-# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT
-# is double-quoted, suitable for a subsequent eval, whereas
-# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters
-# which are still active within double quotes backslashified.
-func_quote_for_eval ()
+# func_options_prep [ARG]...
+# --------------------------
+# All initialisations required before starting the option parse loop.
+# Note that when calling hook functions, we pass through the list of
+# positional parameters.  If a hook function modifies that list, and
+# needs to propogate that back to rest of this script, then the complete
+# modified list must be put in 'func_run_hooks_result' before
+# returning.
+func_hookable func_options_prep
+func_options_prep ()
 {
-    case $1 in
-      *[\\\`\"\$]*)
-	func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;;
-      *)
-        func_quote_for_eval_unquoted_result="$1" ;;
-    esac
+    $debug_cmd
 
-    case $func_quote_for_eval_unquoted_result in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting, command substitution and and variable
-      # expansion for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
-        func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\""
-        ;;
-      *)
-        func_quote_for_eval_result="$func_quote_for_eval_unquoted_result"
-    esac
+    # Option defaults:
+    opt_verbose=false
+    opt_warning_types=
+
+    func_run_hooks func_options_prep ${1+"$@"}
+
+    # save modified positional parameters for caller
+    func_options_prep_result=$func_run_hooks_result
 }
 
 
-# func_quote_for_expand arg
-# Aesthetically quote ARG to be evaled later; same as above,
-# but do not quote variable references.
-func_quote_for_expand ()
+# func_parse_options [ARG]...
+# ---------------------------
+# The main option parsing loop.
+func_hookable func_parse_options
+func_parse_options ()
 {
-    case $1 in
-      *[\\\`\"]*)
-	my_arg=`$ECHO "$1" | $SED \
-	    -e "$double_quote_subst" -e "$sed_double_backslash"` ;;
-      *)
-        my_arg="$1" ;;
-    esac
+    $debug_cmd
 
-    case $my_arg in
-      # Double-quote args containing shell metacharacters to delay
-      # word splitting and command substitution for a subsequent eval.
-      # Many Bourne shells cannot handle close brackets correctly
-      # in scan sets, so we specify it separately.
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*|"")
-        my_arg="\"$my_arg\""
-        ;;
-    esac
+    func_parse_options_result=
 
-    func_quote_for_expand_result="$my_arg"
-}
+    # this just eases exit handling
+    while test $# -gt 0; do
+      # Defer to hook functions for initial option parsing, so they
+      # get priority in the event of reusing an option name.
+      func_run_hooks func_parse_options ${1+"$@"}
 
+      # Adjust func_parse_options positional parameters to match
+      eval set dummy "$func_run_hooks_result"; shift
 
-# func_show_eval cmd [fail_exp]
-# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
-# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it.
-func_show_eval ()
-{
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
+      # Break out of the loop if we already parsed every option.
+      test $# -gt 0 || break
 
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
+      _G_opt=$1
+      shift
+      case $_G_opt in
+        --debug|-x)   debug_cmd='set -x'
+                      func_echo "enabling shell trace mode"
+                      $debug_cmd
+                      ;;
+
+        --no-warnings|--no-warning|--no-warn)
+                      set dummy --warnings none ${1+"$@"}
+                      shift
+		      ;;
 
-    if ${opt_dry_run-false}; then :; else
-      eval "$my_cmd"
-      my_status=$?
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
+        --warnings|--warning|-W)
+                      test $# = 0 && func_missing_arg $_G_opt && break
+                      case " $warning_categories $1" in
+                        *" $1 "*)
+                          # trailing space prevents matching last $1 above
+                          func_append_uniq opt_warning_types " $1"
+                          ;;
+                        *all)
+                          opt_warning_types=$warning_categories
+                          ;;
+                        *none)
+                          opt_warning_types=none
+                          warning_func=:
+                          ;;
+                        *error)
+                          opt_warning_types=$warning_categories
+                          warning_func=func_fatal_error
+                          ;;
+                        *)
+                          func_fatal_error \
+                             "unsupported warning category: '$1'"
+                          ;;
+                      esac
+                      shift
+                      ;;
+
+        --verbose|-v) opt_verbose=: ;;
+        --version)    func_version ;;
+        -\?|-h)       func_usage ;;
+        --help)       func_help ;;
+
+	# Separate optargs to long options (plugins may need this):
+	--*=*)        func_split_equals "$_G_opt"
+	              set dummy "$func_split_equals_lhs" \
+                          "$func_split_equals_rhs" ${1+"$@"}
+                      shift
+                      ;;
+
+       # Separate optargs to short options:
+        -W*)
+                      func_split_short_opt "$_G_opt"
+                      set dummy "$func_split_short_opt_name" \
+                          "$func_split_short_opt_arg" ${1+"$@"}
+                      shift
+                      ;;
+
+        # Separate non-argument short options:
+        -\?*|-h*|-v*|-x*)
+                      func_split_short_opt "$_G_opt"
+                      set dummy "$func_split_short_opt_name" \
+                          "-$func_split_short_opt_arg" ${1+"$@"}
+                      shift
+                      ;;
+
+        --)           break ;;
+        -*)           func_fatal_help "unrecognised option: '$_G_opt'" ;;
+        *)            set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
+      esac
+    done
+
+    # save modified positional parameters for caller
+    func_quote_for_eval ${1+"$@"}
+    func_parse_options_result=$func_quote_for_eval_result
 }
 
 
-# func_show_eval_locale cmd [fail_exp]
-# Unless opt_silent is true, then output CMD.  Then, if opt_dryrun is
-# not true, evaluate CMD.  If the evaluation of CMD fails, and FAIL_EXP
-# is given, then evaluate it.  Use the saved locale for evaluation.
-func_show_eval_locale ()
+# func_validate_options [ARG]...
+# ------------------------------
+# Perform any sanity checks on option settings and/or unconsumed
+# arguments.
+func_hookable func_validate_options
+func_validate_options ()
 {
-    my_cmd="$1"
-    my_fail_exp="${2-:}"
+    $debug_cmd
 
-    ${opt_silent-false} || {
-      func_quote_for_expand "$my_cmd"
-      eval "func_echo $func_quote_for_expand_result"
-    }
+    # Display all warnings if -W was not given.
+    test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
 
-    if ${opt_dry_run-false}; then :; else
-      eval "$lt_user_locale
-	    $my_cmd"
-      my_status=$?
-      eval "$lt_safe_locale"
-      if test "$my_status" -eq 0; then :; else
-	eval "(exit $my_status); $my_fail_exp"
-      fi
-    fi
-}
+    func_run_hooks func_validate_options ${1+"$@"}
 
-# func_tr_sh
-# Turn $1 into a string suitable for a shell variable name.
-# Result is stored in $func_tr_sh_result.  All characters
-# not in the set a-zA-Z0-9_ are replaced with '_'. Further,
-# if $1 begins with a digit, a '_' is prepended as well.
-func_tr_sh ()
-{
-  case $1 in
-  [0-9]* | *[!a-zA-Z0-9_]*)
-    func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'`
-    ;;
-  * )
-    func_tr_sh_result=$1
-    ;;
-  esac
+    # Bail if the options were screwed!
+    $exit_cmd $EXIT_FAILURE
+
+    # save modified positional parameters for caller
+    func_validate_options_result=$func_run_hooks_result
 }
 
 
-# func_version
-# Echo version message to standard output and exit.
-func_version ()
-{
-    $opt_debug
 
-    $SED -n '/(C)/!b go
-	:more
-	/\./!{
-	  N
-	  s/\n# / /
-	  b more
-	}
-	:go
-	/^# '$PROGRAM' (GNU /,/# warranty; / {
-        s/^# //
-	s/^# *$//
-        s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/
-        p
-     }' < "$progpath"
-     exit $?
-}
+## ----------------- ##
+## Helper functions. ##
+## ----------------- ##
 
-# func_usage
-# Echo short help message to standard output and exit.
-func_usage ()
+# This section contains the helper functions used by the rest of the
+# hookable option parser framework in ascii-betical order.
+
+
+# func_fatal_help ARG...
+# ----------------------
+# Echo program name prefixed message to standard error, followed by
+# a help hint, and exit.
+func_fatal_help ()
 {
-    $opt_debug
+    $debug_cmd
 
-    $SED -n '/^# Usage:/,/^#  *.*--help/ {
-        s/^# //
-	s/^# *$//
-	s/\$progname/'$progname'/
-	p
-    }' < "$progpath"
-    echo
-    $ECHO "run \`$progname --help | more' for full usage"
-    exit $?
+    eval \$ECHO \""Usage: $usage"\"
+    eval \$ECHO \""$fatal_help"\"
+    func_error ${1+"$@"}
+    exit $EXIT_FAILURE
 }
 
-# func_help [NOEXIT]
-# Echo long help message to standard output and exit,
-# unless 'noexit' is passed as argument.
+
+# func_help
+# ---------
+# Echo long help message to standard output and exit.
 func_help ()
 {
-    $opt_debug
-
-    $SED -n '/^# Usage:/,/# Report bugs to/ {
-	:print
-        s/^# //
-	s/^# *$//
-	s*\$progname*'$progname'*
-	s*\$host*'"$host"'*
-	s*\$SHELL*'"$SHELL"'*
-	s*\$LTCC*'"$LTCC"'*
-	s*\$LTCFLAGS*'"$LTCFLAGS"'*
-	s*\$LD*'"$LD"'*
-	s/\$with_gnu_ld/'"$with_gnu_ld"'/
-	s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/
-	s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/
-	p
-	d
-     }
-     /^# .* home page:/b print
-     /^# General help using/b print
-     ' < "$progpath"
-    ret=$?
-    if test -z "$1"; then
-      exit $ret
-    fi
+    $debug_cmd
+
+    func_usage_message
+    $ECHO "$long_help_message"
+    exit 0
 }
 
-# func_missing_arg argname
+
+# func_missing_arg ARGNAME
+# ------------------------
 # Echo program name prefixed message to standard error and set global
 # exit_cmd.
 func_missing_arg ()
 {
-    $opt_debug
+    $debug_cmd
 
-    func_error "missing argument for $1."
+    func_error "Missing argument for '$1'."
     exit_cmd=exit
 }
 
 
-# func_split_short_opt shortopt
+# func_split_equals STRING
+# ------------------------
+# Set func_split_equals_lhs and func_split_equals_rhs shell variables after
+# splitting STRING at the '=' sign.
+test -z "$_G_HAVE_XSI_OPS" \
+    && (eval 'x=a/b/c;
+      test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
+    && _G_HAVE_XSI_OPS=yes
+
+if test yes = "$_G_HAVE_XSI_OPS"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_split_equals ()
+  {
+      $debug_cmd
+
+      func_split_equals_lhs=${1%%=*}
+      func_split_equals_rhs=${1#*=}
+      test "x$func_split_equals_lhs" = "x$1" \
+        && func_split_equals_rhs=
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_split_equals ()
+  {
+      $debug_cmd
+
+      func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'`
+      func_split_equals_rhs=
+      test "x$func_split_equals_lhs" = "x$1" \
+        || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'`
+  }
+fi #func_split_equals
+
+
+# func_split_short_opt SHORTOPT
+# -----------------------------
 # Set func_split_short_opt_name and func_split_short_opt_arg shell
 # variables after splitting SHORTOPT after the 2nd character.
-func_split_short_opt ()
+if test yes = "$_G_HAVE_XSI_OPS"
+then
+  # This is an XSI compatible shell, allowing a faster implementation...
+  eval 'func_split_short_opt ()
+  {
+      $debug_cmd
+
+      func_split_short_opt_arg=${1#??}
+      func_split_short_opt_name=${1%"$func_split_short_opt_arg"}
+  }'
+else
+  # ...otherwise fall back to using expr, which is often a shell builtin.
+  func_split_short_opt ()
+  {
+      $debug_cmd
+
+      func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'`
+      func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'`
+  }
+fi #func_split_short_opt
+
+
+# func_usage
+# ----------
+# Echo short help message to standard output and exit.
+func_usage ()
 {
-    my_sed_short_opt='1s/^\(..\).*$/\1/;q'
-    my_sed_short_rest='1s/^..\(.*\)$/\1/;q'
+    $debug_cmd
 
-    func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"`
-    func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"`
-} # func_split_short_opt may be replaced by extended shell implementation
+    func_usage_message
+    $ECHO "Run '$progname --help |${PAGER-more}' for full usage"
+    exit 0
+}
 
 
-# func_split_long_opt longopt
-# Set func_split_long_opt_name and func_split_long_opt_arg shell
-# variables after splitting LONGOPT at the `=' sign.
-func_split_long_opt ()
+# func_usage_message
+# ------------------
+# Echo short help message to standard output.
+func_usage_message ()
 {
-    my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q'
-    my_sed_long_arg='1s/^--[^=]*=//'
+    $debug_cmd
 
-    func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"`
-    func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"`
-} # func_split_long_opt may be replaced by extended shell implementation
+    eval \$ECHO \""Usage: $usage"\"
+    echo
+    $SED -n 's|^# ||
+        /^Written by/{
+          x;p;x
+        }
+	h
+	/^Written by/q' < "$progpath"
+    echo
+    eval \$ECHO \""$usage_message"\"
+}
 
-exit_cmd=:
 
+# func_version
+# ------------
+# Echo version message to standard output and exit.
+func_version ()
+{
+    $debug_cmd
 
+    printf '%s\n' "$progname $scriptversion"
+    $SED -n '
+        /(C)/!b go
+        :more
+        /\./!{
+          N
+          s|\n# | |
+          b more
+        }
+        :go
+        /^# Written by /,/# warranty; / {
+          s|^# ||
+          s|^# *$||
+          s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
+          p
+        }
+        /^# Written by / {
+          s|^# ||
+          p
+        }
+        /^warranty; /q' < "$progpath"
 
+    exit $?
+}
 
 
-magic="%%%MAGIC variable%%%"
-magic_exe="%%%MAGIC EXE variable%%%"
+# Local variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'before-save-hook 'time-stamp)
+# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
+# time-stamp-time-zone: "UTC"
+# End:
 
-# Global variables.
-nonopt=
-preserve_args=
-lo2o="s/\\.lo\$/.${objext}/"
-o2lo="s/\\.${objext}\$/.lo/"
-extracted_archives=
-extracted_serial=0
+# Set a version string.
+scriptversion='(GNU libtool) 2.4.6'
 
-# If this variable is set in any of the actions, the command in it
-# will be execed at the end.  This prevents here-documents from being
-# left over by shells.
-exec_cmd=
 
-# func_append var value
-# Append VALUE to the end of shell variable VAR.
-func_append ()
+# func_echo ARG...
+# ----------------
+# Libtool also displays the current mode in messages, so override
+# funclib.sh func_echo with this custom definition.
+func_echo ()
 {
-    eval "${1}=\$${1}\${2}"
-} # func_append may be replaced by extended shell implementation
+    $debug_cmd
 
-# func_append_quoted var value
-# Quote VALUE and append to the end of shell variable VAR, separated
-# by a space.
-func_append_quoted ()
-{
-    func_quote_for_eval "${2}"
-    eval "${1}=\$${1}\\ \$func_quote_for_eval_result"
-} # func_append_quoted may be replaced by extended shell implementation
+    _G_message=$*
 
+    func_echo_IFS=$IFS
+    IFS=$nl
+    for _G_line in $_G_message; do
+      IFS=$func_echo_IFS
+      $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line"
+    done
+    IFS=$func_echo_IFS
+}
 
-# func_arith arithmetic-term...
-func_arith ()
+
+# func_warning ARG...
+# -------------------
+# Libtool warnings are not categorized, so override funclib.sh
+# func_warning with this simpler definition.
+func_warning ()
 {
-    func_arith_result=`expr "${@}"`
-} # func_arith may be replaced by extended shell implementation
+    $debug_cmd
 
+    $warning_func ${1+"$@"}
+}
 
-# func_len string
-# STRING may not start with a hyphen.
-func_len ()
-{
-    func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len`
-} # func_len may be replaced by extended shell implementation
 
+## ---------------- ##
+## Options parsing. ##
+## ---------------- ##
+
+# Hook in the functions to make sure our own options are parsed during
+# the option parsing loop.
+
+usage='$progpath [OPTION]... [MODE-ARG]...'
+
+# Short help message in response to '-h'.
+usage_message="Options:
+       --config             show all configuration variables
+       --debug              enable verbose shell tracing
+   -n, --dry-run            display commands without modifying any files
+       --features           display basic configuration information and exit
+       --mode=MODE          use operation mode MODE
+       --no-warnings        equivalent to '-Wnone'
+       --preserve-dup-deps  don't remove duplicate dependency libraries
+       --quiet, --silent    don't print informational messages
+       --tag=TAG            use configuration variables from tag TAG
+   -v, --verbose            print more informational messages than default
+       --version            print version information
+   -W, --warnings=CATEGORY  report the warnings falling in CATEGORY [all]
+   -h, --help, --help-all   print short, long, or detailed help message
+"
 
-# func_lo2o object
-func_lo2o ()
+# Additional text appended to 'usage_message' in response to '--help'.
+func_help ()
 {
-    func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"`
-} # func_lo2o may be replaced by extended shell implementation
+    $debug_cmd
+
+    func_usage_message
+    $ECHO "$long_help_message
+
+MODE must be one of the following:
+
+       clean           remove files from the build directory
+       compile         compile a source file into a libtool object
+       execute         automatically set library path, then run a program
+       finish          complete the installation of libtool libraries
+       install         install libraries or executables
+       link            create a library or an executable
+       uninstall       remove libraries from an installed directory
+
+MODE-ARGS vary depending on the MODE.  When passed as first option,
+'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that.
+Try '$progname --help --mode=MODE' for a more detailed description of MODE.
+
+When reporting a bug, please describe a test case to reproduce it and
+include the following information:
+
+       host-triplet:   $host
+       shell:          $SHELL
+       compiler:       $LTCC
+       compiler flags: $LTCFLAGS
+       linker:         $LD (gnu? $with_gnu_ld)
+       version:        $progname (GNU libtool) 2.4.6
+       automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
+       autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
+
+Report bugs to <bug-libtool at gnu.org>.
+GNU libtool home page: <http://www.gnu.org/s/libtool/>.
+General help using GNU software: <http://www.gnu.org/gethelp/>."
+    exit 0
+}
 
 
-# func_xform libobj-or-source
-func_xform ()
-{
-    func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'`
-} # func_xform may be replaced by extended shell implementation
+# func_lo2o OBJECT-NAME
+# ---------------------
+# Transform OBJECT-NAME from a '.lo' suffix to the platform specific
+# object suffix.
+
+lo2o=s/\\.lo\$/.$objext/
+o2lo=s/\\.$objext\$/.lo/
+
+if test yes = "$_G_HAVE_XSI_OPS"; then
+  eval 'func_lo2o ()
+  {
+    case $1 in
+      *.lo) func_lo2o_result=${1%.lo}.$objext ;;
+      *   ) func_lo2o_result=$1               ;;
+    esac
+  }'
+
+  # func_xform LIBOBJ-OR-SOURCE
+  # ---------------------------
+  # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise)
+  # suffix to a '.lo' libtool-object suffix.
+  eval 'func_xform ()
+  {
+    func_xform_result=${1%.*}.lo
+  }'
+else
+  # ...otherwise fall back to using sed.
+  func_lo2o ()
+  {
+    func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"`
+  }
+
+  func_xform ()
+  {
+    func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'`
+  }
+fi
 
 
-# func_fatal_configuration arg...
+# func_fatal_configuration ARG...
+# -------------------------------
 # Echo program name prefixed message to standard error, followed by
 # a configuration failure hint, and exit.
 func_fatal_configuration ()
 {
-    func_error ${1+"$@"}
-    func_error "See the $PACKAGE documentation for more information."
-    func_fatal_error "Fatal configuration error."
+    func__fatal_error ${1+"$@"} \
+      "See the $PACKAGE documentation for more information." \
+      "Fatal configuration error."
 }
 
 
 # func_config
+# -----------
 # Display the configuration for all the tags in this script.
 func_config ()
 {
@@ -915,17 +2149,19 @@ func_config ()
     exit $?
 }
 
+
 # func_features
+# -------------
 # Display the features supported by this script.
 func_features ()
 {
     echo "host: $host"
-    if test "$build_libtool_libs" = yes; then
+    if test yes = "$build_libtool_libs"; then
       echo "enable shared libraries"
     else
       echo "disable shared libraries"
     fi
-    if test "$build_old_libs" = yes; then
+    if test yes = "$build_old_libs"; then
       echo "enable static libraries"
     else
       echo "disable static libraries"
@@ -934,314 +2170,350 @@ func_features ()
     exit $?
 }
 
-# func_enable_tag tagname
+
+# func_enable_tag TAGNAME
+# -----------------------
 # Verify that TAGNAME is valid, and either flag an error and exit, or
 # enable the TAGNAME tag.  We also add TAGNAME to the global $taglist
 # variable here.
 func_enable_tag ()
 {
-  # Global variable:
-  tagname="$1"
+    # Global variable:
+    tagname=$1
 
-  re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
-  re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
-  sed_extractcf="/$re_begincf/,/$re_endcf/p"
+    re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
+    re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
+    sed_extractcf=/$re_begincf/,/$re_endcf/p
 
-  # Validate tagname.
-  case $tagname in
-    *[!-_A-Za-z0-9,/]*)
-      func_fatal_error "invalid tag name: $tagname"
-      ;;
-  esac
+    # Validate tagname.
+    case $tagname in
+      *[!-_A-Za-z0-9,/]*)
+        func_fatal_error "invalid tag name: $tagname"
+        ;;
+    esac
 
-  # Don't test for the "default" C tag, as we know it's
-  # there but not specially marked.
-  case $tagname in
-    CC) ;;
+    # Don't test for the "default" C tag, as we know it's
+    # there but not specially marked.
+    case $tagname in
+        CC) ;;
     *)
-      if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
-	taglist="$taglist $tagname"
-
-	# Evaluate the configuration.  Be careful to quote the path
-	# and the sed script, to avoid splitting on whitespace, but
-	# also don't use non-portable quotes within backquotes within
-	# quotes we have to do it in 2 steps:
-	extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
-	eval "$extractedcf"
-      else
-	func_error "ignoring unknown tag $tagname"
-      fi
-      ;;
-  esac
+        if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
+	  taglist="$taglist $tagname"
+
+	  # Evaluate the configuration.  Be careful to quote the path
+	  # and the sed script, to avoid splitting on whitespace, but
+	  # also don't use non-portable quotes within backquotes within
+	  # quotes we have to do it in 2 steps:
+	  extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
+	  eval "$extractedcf"
+        else
+	  func_error "ignoring unknown tag $tagname"
+        fi
+        ;;
+    esac
 }
 
+
 # func_check_version_match
+# ------------------------
 # Ensure that we are using m4 macros, and libtool script from the same
 # release of libtool.
 func_check_version_match ()
 {
-  if test "$package_revision" != "$macro_revision"; then
-    if test "$VERSION" != "$macro_version"; then
-      if test -z "$macro_version"; then
-        cat >&2 <<_LT_EOF
+    if test "$package_revision" != "$macro_revision"; then
+      if test "$VERSION" != "$macro_version"; then
+        if test -z "$macro_version"; then
+          cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
 $progname: definition of this LT_INIT comes from an older release.
 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
 $progname: and run autoconf again.
 _LT_EOF
-      else
-        cat >&2 <<_LT_EOF
+        else
+          cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, but the
 $progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
 $progname: and run autoconf again.
 _LT_EOF
-      fi
-    else
-      cat >&2 <<_LT_EOF
+        fi
+      else
+        cat >&2 <<_LT_EOF
 $progname: Version mismatch error.  This is $PACKAGE $VERSION, revision $package_revision,
 $progname: but the definition of this LT_INIT comes from revision $macro_revision.
 $progname: You should recreate aclocal.m4 with macros from revision $package_revision
 $progname: of $PACKAGE $VERSION and run autoconf again.
 _LT_EOF
-    fi
+      fi
 
-    exit $EXIT_MISMATCH
-  fi
+      exit $EXIT_MISMATCH
+    fi
 }
 
 
-# Shorthand for --mode=foo, only valid as the first argument
-case $1 in
-clean|clea|cle|cl)
-  shift; set dummy --mode clean ${1+"$@"}; shift
-  ;;
-compile|compil|compi|comp|com|co|c)
-  shift; set dummy --mode compile ${1+"$@"}; shift
-  ;;
-execute|execut|execu|exec|exe|ex|e)
-  shift; set dummy --mode execute ${1+"$@"}; shift
-  ;;
-finish|finis|fini|fin|fi|f)
-  shift; set dummy --mode finish ${1+"$@"}; shift
-  ;;
-install|instal|insta|inst|ins|in|i)
-  shift; set dummy --mode install ${1+"$@"}; shift
-  ;;
-link|lin|li|l)
-  shift; set dummy --mode link ${1+"$@"}; shift
-  ;;
-uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
-  shift; set dummy --mode uninstall ${1+"$@"}; shift
-  ;;
-esac
+# libtool_options_prep [ARG]...
+# -----------------------------
+# Preparation for options parsed by libtool.
+libtool_options_prep ()
+{
+    $debug_mode
 
+    # Option defaults:
+    opt_config=false
+    opt_dlopen=
+    opt_dry_run=false
+    opt_help=false
+    opt_mode=
+    opt_preserve_dup_deps=false
+    opt_quiet=false
 
+    nonopt=
+    preserve_args=
 
-# Option defaults:
-opt_debug=:
-opt_dry_run=false
-opt_config=false
-opt_preserve_dup_deps=false
-opt_features=false
-opt_finish=false
-opt_help=false
-opt_help_all=false
-opt_silent=:
-opt_warning=:
-opt_verbose=:
-opt_silent=false
-opt_verbose=false
+    # Shorthand for --mode=foo, only valid as the first argument
+    case $1 in
+    clean|clea|cle|cl)
+      shift; set dummy --mode clean ${1+"$@"}; shift
+      ;;
+    compile|compil|compi|comp|com|co|c)
+      shift; set dummy --mode compile ${1+"$@"}; shift
+      ;;
+    execute|execut|execu|exec|exe|ex|e)
+      shift; set dummy --mode execute ${1+"$@"}; shift
+      ;;
+    finish|finis|fini|fin|fi|f)
+      shift; set dummy --mode finish ${1+"$@"}; shift
+      ;;
+    install|instal|insta|inst|ins|in|i)
+      shift; set dummy --mode install ${1+"$@"}; shift
+      ;;
+    link|lin|li|l)
+      shift; set dummy --mode link ${1+"$@"}; shift
+      ;;
+    uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
+      shift; set dummy --mode uninstall ${1+"$@"}; shift
+      ;;
+    esac
+
+    # Pass back the list of options.
+    func_quote_for_eval ${1+"$@"}
+    libtool_options_prep_result=$func_quote_for_eval_result
+}
+func_add_hook func_options_prep libtool_options_prep
 
 
-# Parse options once, thoroughly.  This comes as soon as possible in the
-# script to make things like `--version' happen as quickly as we can.
+# libtool_parse_options [ARG]...
+# ---------------------------------
+# Provide handling for libtool specific options.
+libtool_parse_options ()
 {
-  # this just eases exit handling
-  while test $# -gt 0; do
-    opt="$1"
-    shift
-    case $opt in
-      --debug|-x)	opt_debug='set -x'
-			func_echo "enabling shell trace mode"
-			$opt_debug
-			;;
-      --dry-run|--dryrun|-n)
-			opt_dry_run=:
-			;;
-      --config)
-			opt_config=:
-func_config
-			;;
-      --dlopen|-dlopen)
-			optarg="$1"
-			opt_dlopen="${opt_dlopen+$opt_dlopen
-}$optarg"
-			shift
-			;;
-      --preserve-dup-deps)
-			opt_preserve_dup_deps=:
-			;;
-      --features)
-			opt_features=:
-func_features
-			;;
-      --finish)
-			opt_finish=:
-set dummy --mode finish ${1+"$@"}; shift
-			;;
-      --help)
-			opt_help=:
-			;;
-      --help-all)
-			opt_help_all=:
-opt_help=': help-all'
-			;;
-      --mode)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_mode="$optarg"
-case $optarg in
-  # Valid mode arguments:
-  clean|compile|execute|finish|install|link|relink|uninstall) ;;
-
-  # Catch anything else as an error
-  *) func_error "invalid argument for $opt"
-     exit_cmd=exit
-     break
-     ;;
-esac
-			shift
-			;;
-      --no-silent|--no-quiet)
-			opt_silent=false
-func_append preserve_args " $opt"
-			;;
-      --no-warning|--no-warn)
-			opt_warning=false
-func_append preserve_args " $opt"
-			;;
-      --no-verbose)
-			opt_verbose=false
-func_append preserve_args " $opt"
-			;;
-      --silent|--quiet)
-			opt_silent=:
-func_append preserve_args " $opt"
-        opt_verbose=false
-			;;
-      --verbose|-v)
-			opt_verbose=:
-func_append preserve_args " $opt"
-opt_silent=false
-			;;
-      --tag)
-			test $# = 0 && func_missing_arg $opt && break
-			optarg="$1"
-			opt_tag="$optarg"
-func_append preserve_args " $opt $optarg"
-func_enable_tag "$optarg"
-			shift
-			;;
-
-      -\?|-h)		func_usage				;;
-      --help)		func_help				;;
-      --version)	func_version				;;
-
-      # Separate optargs to long options:
-      --*=*)
-			func_split_long_opt "$opt"
-			set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      # Separate non-argument short options:
-      -\?*|-h*|-n*|-v*)
-			func_split_short_opt "$opt"
-			set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"}
-			shift
-			;;
-
-      --)		break					;;
-      -*)		func_fatal_help "unrecognized option \`$opt'" ;;
-      *)		set dummy "$opt" ${1+"$@"};	shift; break  ;;
-    esac
-  done
+    $debug_cmd
 
-  # Validate options:
+    # Perform our own loop to consume as many options as possible in
+    # each iteration.
+    while test $# -gt 0; do
+      _G_opt=$1
+      shift
+      case $_G_opt in
+        --dry-run|--dryrun|-n)
+                        opt_dry_run=:
+                        ;;
+
+        --config)       func_config ;;
+
+        --dlopen|-dlopen)
+                        opt_dlopen="${opt_dlopen+$opt_dlopen
+}$1"
+                        shift
+                        ;;
+
+        --preserve-dup-deps)
+                        opt_preserve_dup_deps=: ;;
+
+        --features)     func_features ;;
+
+        --finish)       set dummy --mode finish ${1+"$@"}; shift ;;
+
+        --help)         opt_help=: ;;
+
+        --help-all)     opt_help=': help-all' ;;
+
+        --mode)         test $# = 0 && func_missing_arg $_G_opt && break
+                        opt_mode=$1
+                        case $1 in
+                          # Valid mode arguments:
+                          clean|compile|execute|finish|install|link|relink|uninstall) ;;
+
+                          # Catch anything else as an error
+                          *) func_error "invalid argument for $_G_opt"
+                             exit_cmd=exit
+                             break
+                             ;;
+                        esac
+                        shift
+                        ;;
+
+        --no-silent|--no-quiet)
+                        opt_quiet=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --no-warnings|--no-warning|--no-warn)
+                        opt_warning=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --no-verbose)
+                        opt_verbose=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --silent|--quiet)
+                        opt_quiet=:
+                        opt_verbose=false
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+        --tag)          test $# = 0 && func_missing_arg $_G_opt && break
+                        opt_tag=$1
+                        func_append preserve_args " $_G_opt $1"
+                        func_enable_tag "$1"
+                        shift
+                        ;;
+
+        --verbose|-v)   opt_quiet=false
+                        opt_verbose=:
+                        func_append preserve_args " $_G_opt"
+                        ;;
+
+	# An option not handled by this hook function:
+        *)		set dummy "$_G_opt" ${1+"$@"};	shift; break  ;;
+      esac
+    done
 
-  # save first non-option argument
-  if test "$#" -gt 0; then
-    nonopt="$opt"
-    shift
-  fi
 
-  # preserve --debug
-  test "$opt_debug" = : || func_append preserve_args " --debug"
+    # save modified positional parameters for caller
+    func_quote_for_eval ${1+"$@"}
+    libtool_parse_options_result=$func_quote_for_eval_result
+}
+func_add_hook func_parse_options libtool_parse_options
 
-  case $host in
-    *cygwin* | *mingw* | *pw32* | *cegcc*)
-      # don't eliminate duplications in $postdeps and $predeps
-      opt_duplicate_compiler_generated_deps=:
-      ;;
-    *)
-      opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
-      ;;
-  esac
 
-  $opt_help || {
-    # Sanity checks first:
-    func_check_version_match
 
-    if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
-      func_fatal_configuration "not configured to build any kind of library"
+# libtool_validate_options [ARG]...
+# ---------------------------------
+# Perform any sanity checks on option settings and/or unconsumed
+# arguments.
+libtool_validate_options ()
+{
+    # save first non-option argument
+    if test 0 -lt $#; then
+      nonopt=$1
+      shift
     fi
 
-    # Darwin sucks
-    eval std_shrext=\"$shrext_cmds\"
+    # preserve --debug
+    test : = "$debug_cmd" || func_append preserve_args " --debug"
 
-    # Only execute mode is allowed to have -dlopen flags.
-    if test -n "$opt_dlopen" && test "$opt_mode" != execute; then
-      func_error "unrecognized option \`-dlopen'"
-      $ECHO "$help" 1>&2
-      exit $EXIT_FAILURE
-    fi
+    case $host in
+      # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
+      # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
+      *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
+        # don't eliminate duplications in $postdeps and $predeps
+        opt_duplicate_compiler_generated_deps=:
+        ;;
+      *)
+        opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
+        ;;
+    esac
 
-    # Change the help message to a mode-specific one.
-    generic_help="$help"
-    help="Try \`$progname --help --mode=$opt_mode' for more information."
-  }
+    $opt_help || {
+      # Sanity checks first:
+      func_check_version_match
+
+      test yes != "$build_libtool_libs" \
+        && test yes != "$build_old_libs" \
+        && func_fatal_configuration "not configured to build any kind of library"
+
+      # Darwin sucks
+      eval std_shrext=\"$shrext_cmds\"
+
+      # Only execute mode is allowed to have -dlopen flags.
+      if test -n "$opt_dlopen" && test execute != "$opt_mode"; then
+        func_error "unrecognized option '-dlopen'"
+        $ECHO "$help" 1>&2
+        exit $EXIT_FAILURE
+      fi
 
+      # Change the help message to a mode-specific one.
+      generic_help=$help
+      help="Try '$progname --help --mode=$opt_mode' for more information."
+    }
 
-  # Bail if the options were screwed
-  $exit_cmd $EXIT_FAILURE
+    # Pass back the unparsed argument list
+    func_quote_for_eval ${1+"$@"}
+    libtool_validate_options_result=$func_quote_for_eval_result
 }
+func_add_hook func_validate_options libtool_validate_options
 
 
+# Process options as early as possible so that --help and --version
+# can return quickly.
+func_options ${1+"$@"}
+eval set dummy "$func_options_result"; shift
+
 
 
 ## ----------- ##
 ##    Main.    ##
 ## ----------- ##
 
+magic='%%%MAGIC variable%%%'
+magic_exe='%%%MAGIC EXE variable%%%'
+
+# Global variables.
+extracted_archives=
+extracted_serial=0
+
+# If this variable is set in any of the actions, the command in it
+# will be execed at the end.  This prevents here-documents from being
+# left over by shells.
+exec_cmd=
+
+
+# A function that is used when there is no print builtin or printf.
+func_fallback_echo ()
+{
+  eval 'cat <<_LTECHO_EOF
+$1
+_LTECHO_EOF'
+}
+
+# func_generated_by_libtool
+# True iff stdin has been generated by Libtool. This function is only
+# a basic sanity check; it will hardly flush out determined imposters.
+func_generated_by_libtool_p ()
+{
+  $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+}
+
 # func_lalib_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
+# True iff FILE is a libtool '.la' library or '.lo' object file.
 # This function is only a basic sanity check; it will hardly flush out
 # determined imposters.
 func_lalib_p ()
 {
     test -f "$1" &&
-      $SED -e 4q "$1" 2>/dev/null \
-        | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
+      $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p
 }
 
 # func_lalib_unsafe_p file
-# True iff FILE is a libtool `.la' library or `.lo' object file.
+# True iff FILE is a libtool '.la' library or '.lo' object file.
 # This function implements the same check as func_lalib_p without
 # resorting to external programs.  To this end, it redirects stdin and
 # closes it afterwards, without saving the original file descriptor.
 # As a safety measure, use it only where a negative result would be
-# fatal anyway.  Works if `file' does not exist.
+# fatal anyway.  Works if 'file' does not exist.
 func_lalib_unsafe_p ()
 {
     lalib_p=no
@@ -1249,13 +2521,13 @@ func_lalib_unsafe_p ()
 	for lalib_p_l in 1 2 3 4
 	do
 	    read lalib_p_line
-	    case "$lalib_p_line" in
+	    case $lalib_p_line in
 		\#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
 	    esac
 	done
 	exec 0<&5 5<&-
     fi
-    test "$lalib_p" = yes
+    test yes = "$lalib_p"
 }
 
 # func_ltwrapper_script_p file
@@ -1264,7 +2536,8 @@ func_lalib_unsafe_p ()
 # determined imposters.
 func_ltwrapper_script_p ()
 {
-    func_lalib_p "$1"
+    test -f "$1" &&
+      $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p
 }
 
 # func_ltwrapper_executable_p file
@@ -1289,7 +2562,7 @@ func_ltwrapper_scriptname ()
 {
     func_dirname_and_basename "$1" "" "."
     func_stripname '' '.exe' "$func_basename_result"
-    func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper"
+    func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper
 }
 
 # func_ltwrapper_p file
@@ -1308,11 +2581,13 @@ func_ltwrapper_p ()
 # FAIL_CMD may read-access the current command in variable CMD!
 func_execute_cmds ()
 {
-    $opt_debug
+    $debug_cmd
+
     save_ifs=$IFS; IFS='~'
     for cmd in $1; do
-      IFS=$save_ifs
+      IFS=$sp$nl
       eval cmd=\"$cmd\"
+      IFS=$save_ifs
       func_show_eval "$cmd" "${2-:}"
     done
     IFS=$save_ifs
@@ -1324,10 +2599,11 @@ func_execute_cmds ()
 # Note that it is not necessary on cygwin/mingw to append a dot to
 # FILE even if both FILE and FILE.exe exist: automatic-append-.exe
 # behavior happens only for exec(3), not for open(2)!  Also, sourcing
-# `FILE.' does not work on cygwin managed mounts.
+# 'FILE.' does not work on cygwin managed mounts.
 func_source ()
 {
-    $opt_debug
+    $debug_cmd
+
     case $1 in
     */* | *\\*)	. "$1" ;;
     *)		. "./$1" ;;
@@ -1354,10 +2630,10 @@ func_resolve_sysroot ()
 # store the result into func_replace_sysroot_result.
 func_replace_sysroot ()
 {
-  case "$lt_sysroot:$1" in
+  case $lt_sysroot:$1 in
   ?*:"$lt_sysroot"*)
     func_stripname "$lt_sysroot" '' "$1"
-    func_replace_sysroot_result="=$func_stripname_result"
+    func_replace_sysroot_result='='$func_stripname_result
     ;;
   *)
     # Including no sysroot.
@@ -1374,7 +2650,8 @@ func_replace_sysroot ()
 # arg is usually of the form 'gcc ...'
 func_infer_tag ()
 {
-    $opt_debug
+    $debug_cmd
+
     if test -n "$available_tags" && test -z "$tagname"; then
       CC_quoted=
       for arg in $CC; do
@@ -1393,7 +2670,7 @@ func_infer_tag ()
 	for z in $available_tags; do
 	  if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
 	    # Evaluate the configuration.
-	    eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
+	    eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
 	    CC_quoted=
 	    for arg in $CC; do
 	      # Double-quote args containing other shell metacharacters.
@@ -1418,7 +2695,7 @@ func_infer_tag ()
 	# line option must be used.
 	if test -z "$tagname"; then
 	  func_echo "unable to infer tagged configuration"
-	  func_fatal_error "specify a tag with \`--tag'"
+	  func_fatal_error "specify a tag with '--tag'"
 #	else
 #	  func_verbose "using $tagname tagged configuration"
 	fi
@@ -1434,15 +2711,15 @@ func_infer_tag ()
 # but don't create it if we're doing a dry run.
 func_write_libtool_object ()
 {
-    write_libobj=${1}
-    if test "$build_libtool_libs" = yes; then
-      write_lobj=\'${2}\'
+    write_libobj=$1
+    if test yes = "$build_libtool_libs"; then
+      write_lobj=\'$2\'
     else
       write_lobj=none
     fi
 
-    if test "$build_old_libs" = yes; then
-      write_oldobj=\'${3}\'
+    if test yes = "$build_old_libs"; then
+      write_oldobj=\'$3\'
     else
       write_oldobj=none
     fi
@@ -1450,7 +2727,7 @@ func_write_libtool_object ()
     $opt_dry_run || {
       cat >${write_libobj}T <<EOF
 # $write_libobj - a libtool object file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # Please DO NOT delete this file!
 # It is necessary for linking the library.
@@ -1462,7 +2739,7 @@ pic_object=$write_lobj
 non_pic_object=$write_oldobj
 
 EOF
-      $MV "${write_libobj}T" "${write_libobj}"
+      $MV "${write_libobj}T" "$write_libobj"
     }
 }
 
@@ -1482,8 +2759,9 @@ EOF
 # be empty on error (or when ARG is empty)
 func_convert_core_file_wine_to_w32 ()
 {
-  $opt_debug
-  func_convert_core_file_wine_to_w32_result="$1"
+  $debug_cmd
+
+  func_convert_core_file_wine_to_w32_result=$1
   if test -n "$1"; then
     # Unfortunately, winepath does not exit with a non-zero error code, so we
     # are forced to check the contents of stdout. On the other hand, if the
@@ -1491,9 +2769,9 @@ func_convert_core_file_wine_to_w32 ()
     # *an error message* to stdout. So we must check for both error code of
     # zero AND non-empty stdout, which explains the odd construction:
     func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
-    if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then
+    if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then
       func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
-        $SED -e "$lt_sed_naive_backslashify"`
+        $SED -e "$sed_naive_backslashify"`
     else
       func_convert_core_file_wine_to_w32_result=
     fi
@@ -1514,18 +2792,19 @@ func_convert_core_file_wine_to_w32 ()
 # are convertible, then the result may be empty.
 func_convert_core_path_wine_to_w32 ()
 {
-  $opt_debug
+  $debug_cmd
+
   # unfortunately, winepath doesn't convert paths, only file names
-  func_convert_core_path_wine_to_w32_result=""
+  func_convert_core_path_wine_to_w32_result=
   if test -n "$1"; then
     oldIFS=$IFS
     IFS=:
     for func_convert_core_path_wine_to_w32_f in $1; do
       IFS=$oldIFS
       func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
-      if test -n "$func_convert_core_file_wine_to_w32_result" ; then
+      if test -n "$func_convert_core_file_wine_to_w32_result"; then
         if test -z "$func_convert_core_path_wine_to_w32_result"; then
-          func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result"
+          func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result
         else
           func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
         fi
@@ -1554,7 +2833,8 @@ func_convert_core_path_wine_to_w32 ()
 # environment variable; do not put it in $PATH.
 func_cygpath ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
     func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
     if test "$?" -ne 0; then
@@ -1563,7 +2843,7 @@ func_cygpath ()
     fi
   else
     func_cygpath_result=
-    func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'"
+    func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'"
   fi
 }
 #end: func_cygpath
@@ -1574,10 +2854,11 @@ func_cygpath ()
 # result in func_convert_core_msys_to_w32_result.
 func_convert_core_msys_to_w32 ()
 {
-  $opt_debug
+  $debug_cmd
+
   # awkward: cmd appends spaces to result
   func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
-    $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"`
+    $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"`
 }
 #end: func_convert_core_msys_to_w32
 
@@ -1588,13 +2869,14 @@ func_convert_core_msys_to_w32 ()
 # func_to_host_file_result to ARG1).
 func_convert_file_check ()
 {
-  $opt_debug
-  if test -z "$2" && test -n "$1" ; then
+  $debug_cmd
+
+  if test -z "$2" && test -n "$1"; then
     func_error "Could not determine host file name corresponding to"
-    func_error "  \`$1'"
+    func_error "  '$1'"
     func_error "Continuing, but uninstalled executables may not work."
     # Fallback:
-    func_to_host_file_result="$1"
+    func_to_host_file_result=$1
   fi
 }
 # end func_convert_file_check
@@ -1606,10 +2888,11 @@ func_convert_file_check ()
 # func_to_host_file_result to a simplistic fallback value (see below).
 func_convert_path_check ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -z "$4" && test -n "$3"; then
     func_error "Could not determine the host path corresponding to"
-    func_error "  \`$3'"
+    func_error "  '$3'"
     func_error "Continuing, but uninstalled executables may not work."
     # Fallback.  This is a deliberately simplistic "conversion" and
     # should not be "improved".  See libtool.info.
@@ -1618,7 +2901,7 @@ func_convert_path_check ()
       func_to_host_path_result=`echo "$3" |
         $SED -e "$lt_replace_pathsep_chars"`
     else
-      func_to_host_path_result="$3"
+      func_to_host_path_result=$3
     fi
   fi
 }
@@ -1630,9 +2913,10 @@ func_convert_path_check ()
 # and appending REPL if ORIG matches BACKPAT.
 func_convert_path_front_back_pathsep ()
 {
-  $opt_debug
+  $debug_cmd
+
   case $4 in
-  $1 ) func_to_host_path_result="$3$func_to_host_path_result"
+  $1 ) func_to_host_path_result=$3$func_to_host_path_result
     ;;
   esac
   case $4 in
@@ -1646,7 +2930,7 @@ func_convert_path_front_back_pathsep ()
 ##################################################
 # $build to $host FILE NAME CONVERSION FUNCTIONS #
 ##################################################
-# invoked via `$to_host_file_cmd ARG'
+# invoked via '$to_host_file_cmd ARG'
 #
 # In each case, ARG is the path to be converted from $build to $host format.
 # Result will be available in $func_to_host_file_result.
@@ -1657,7 +2941,8 @@ func_convert_path_front_back_pathsep ()
 # in func_to_host_file_result.
 func_to_host_file ()
 {
-  $opt_debug
+  $debug_cmd
+
   $to_host_file_cmd "$1"
 }
 # end func_to_host_file
@@ -1669,7 +2954,8 @@ func_to_host_file ()
 # in (the comma separated) LAZY, no conversion takes place.
 func_to_tool_file ()
 {
-  $opt_debug
+  $debug_cmd
+
   case ,$2, in
     *,"$to_tool_file_cmd",*)
       func_to_tool_file_result=$1
@@ -1687,7 +2973,7 @@ func_to_tool_file ()
 # Copy ARG to func_to_host_file_result.
 func_convert_file_noop ()
 {
-  func_to_host_file_result="$1"
+  func_to_host_file_result=$1
 }
 # end func_convert_file_noop
 
@@ -1698,11 +2984,12 @@ func_convert_file_noop ()
 # func_to_host_file_result.
 func_convert_file_msys_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_msys_to_w32 "$1"
-    func_to_host_file_result="$func_convert_core_msys_to_w32_result"
+    func_to_host_file_result=$func_convert_core_msys_to_w32_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1714,8 +3001,9 @@ func_convert_file_msys_to_w32 ()
 # func_to_host_file_result.
 func_convert_file_cygwin_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
     # LT_CYGPATH in this case.
@@ -1731,11 +3019,12 @@ func_convert_file_cygwin_to_w32 ()
 # and a working winepath. Returns result in func_to_host_file_result.
 func_convert_file_nix_to_w32 ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_file_wine_to_w32 "$1"
-    func_to_host_file_result="$func_convert_core_file_wine_to_w32_result"
+    func_to_host_file_result=$func_convert_core_file_wine_to_w32_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1747,12 +3036,13 @@ func_convert_file_nix_to_w32 ()
 # Returns result in func_to_host_file_result.
 func_convert_file_msys_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     func_convert_core_msys_to_w32 "$1"
     func_cygpath -u "$func_convert_core_msys_to_w32_result"
-    func_to_host_file_result="$func_cygpath_result"
+    func_to_host_file_result=$func_cygpath_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1765,13 +3055,14 @@ func_convert_file_msys_to_cygwin ()
 # in func_to_host_file_result.
 func_convert_file_nix_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_file_result="$1"
+  $debug_cmd
+
+  func_to_host_file_result=$1
   if test -n "$1"; then
     # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
     func_convert_core_file_wine_to_w32 "$1"
     func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
-    func_to_host_file_result="$func_cygpath_result"
+    func_to_host_file_result=$func_cygpath_result
   fi
   func_convert_file_check "$1" "$func_to_host_file_result"
 }
@@ -1781,7 +3072,7 @@ func_convert_file_nix_to_cygwin ()
 #############################################
 # $build to $host PATH CONVERSION FUNCTIONS #
 #############################################
-# invoked via `$to_host_path_cmd ARG'
+# invoked via '$to_host_path_cmd ARG'
 #
 # In each case, ARG is the path to be converted from $build to $host format.
 # The result will be available in $func_to_host_path_result.
@@ -1805,10 +3096,11 @@ func_convert_file_nix_to_cygwin ()
 to_host_path_cmd=
 func_init_to_host_path_cmd ()
 {
-  $opt_debug
+  $debug_cmd
+
   if test -z "$to_host_path_cmd"; then
     func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
-    to_host_path_cmd="func_convert_path_${func_stripname_result}"
+    to_host_path_cmd=func_convert_path_$func_stripname_result
   fi
 }
 
@@ -1818,7 +3110,8 @@ func_init_to_host_path_cmd ()
 # in func_to_host_path_result.
 func_to_host_path ()
 {
-  $opt_debug
+  $debug_cmd
+
   func_init_to_host_path_cmd
   $to_host_path_cmd "$1"
 }
@@ -1829,7 +3122,7 @@ func_to_host_path ()
 # Copy ARG to func_to_host_path_result.
 func_convert_path_noop ()
 {
-  func_to_host_path_result="$1"
+  func_to_host_path_result=$1
 }
 # end func_convert_path_noop
 
@@ -1840,8 +3133,9 @@ func_convert_path_noop ()
 # func_to_host_path_result.
 func_convert_path_msys_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # Remove leading and trailing path separator characters from ARG.  MSYS
     # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
@@ -1849,7 +3143,7 @@ func_convert_path_msys_to_w32 ()
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
-    func_to_host_path_result="$func_convert_core_msys_to_w32_result"
+    func_to_host_path_result=$func_convert_core_msys_to_w32_result
     func_convert_path_check : ";" \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
@@ -1863,8 +3157,9 @@ func_convert_path_msys_to_w32 ()
 # func_to_host_file_result.
 func_convert_path_cygwin_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
@@ -1883,14 +3178,15 @@ func_convert_path_cygwin_to_w32 ()
 # a working winepath.  Returns result in func_to_host_file_result.
 func_convert_path_nix_to_w32 ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
-    func_to_host_path_result="$func_convert_core_path_wine_to_w32_result"
+    func_to_host_path_result=$func_convert_core_path_wine_to_w32_result
     func_convert_path_check : ";" \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
@@ -1904,15 +3200,16 @@ func_convert_path_nix_to_w32 ()
 # Returns result in func_to_host_file_result.
 func_convert_path_msys_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # See func_convert_path_msys_to_w32:
     func_stripname : : "$1"
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
     func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
-    func_to_host_path_result="$func_cygpath_result"
+    func_to_host_path_result=$func_cygpath_result
     func_convert_path_check : : \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" : "$1"
@@ -1927,8 +3224,9 @@ func_convert_path_msys_to_cygwin ()
 # func_to_host_file_result.
 func_convert_path_nix_to_cygwin ()
 {
-  $opt_debug
-  func_to_host_path_result="$1"
+  $debug_cmd
+
+  func_to_host_path_result=$1
   if test -n "$1"; then
     # Remove leading and trailing path separator characters from
     # ARG. msys behavior is inconsistent here, cygpath turns them
@@ -1937,7 +3235,7 @@ func_convert_path_nix_to_cygwin ()
     func_to_host_path_tmp1=$func_stripname_result
     func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
     func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
-    func_to_host_path_result="$func_cygpath_result"
+    func_to_host_path_result=$func_cygpath_result
     func_convert_path_check : : \
       "$func_to_host_path_tmp1" "$func_to_host_path_result"
     func_convert_path_front_back_pathsep ":*" "*:" : "$1"
@@ -1946,13 +3244,31 @@ func_convert_path_nix_to_cygwin ()
 # end func_convert_path_nix_to_cygwin
 
 
+# func_dll_def_p FILE
+# True iff FILE is a Windows DLL '.def' file.
+# Keep in sync with _LT_DLL_DEF_P in libtool.m4
+func_dll_def_p ()
+{
+  $debug_cmd
+
+  func_dll_def_p_tmp=`$SED -n \
+    -e 's/^[	 ]*//' \
+    -e '/^\(;.*\)*$/d' \
+    -e 's/^\(EXPORTS\|LIBRARY\)\([	 ].*\)*$/DEF/p' \
+    -e q \
+    "$1"`
+  test DEF = "$func_dll_def_p_tmp"
+}
+
+
 # func_mode_compile arg...
 func_mode_compile ()
 {
-    $opt_debug
+    $debug_cmd
+
     # Get the compilation command and the source file.
     base_compile=
-    srcfile="$nonopt"  #  always keep a non-empty value in "srcfile"
+    srcfile=$nonopt  #  always keep a non-empty value in "srcfile"
     suppress_opt=yes
     suppress_output=
     arg_mode=normal
@@ -1965,12 +3281,12 @@ func_mode_compile ()
       case $arg_mode in
       arg  )
 	# do not "continue".  Instead, add this to base_compile
-	lastarg="$arg"
+	lastarg=$arg
 	arg_mode=normal
 	;;
 
       target )
-	libobj="$arg"
+	libobj=$arg
 	arg_mode=normal
 	continue
 	;;
@@ -1980,7 +3296,7 @@ func_mode_compile ()
 	case $arg in
 	-o)
 	  test -n "$libobj" && \
-	    func_fatal_error "you cannot specify \`-o' more than once"
+	    func_fatal_error "you cannot specify '-o' more than once"
 	  arg_mode=target
 	  continue
 	  ;;
@@ -2009,12 +3325,12 @@ func_mode_compile ()
 	  func_stripname '-Wc,' '' "$arg"
 	  args=$func_stripname_result
 	  lastarg=
-	  save_ifs="$IFS"; IFS=','
+	  save_ifs=$IFS; IFS=,
 	  for arg in $args; do
-	    IFS="$save_ifs"
+	    IFS=$save_ifs
 	    func_append_quoted lastarg "$arg"
 	  done
-	  IFS="$save_ifs"
+	  IFS=$save_ifs
 	  func_stripname ' ' '' "$lastarg"
 	  lastarg=$func_stripname_result
 
@@ -2027,8 +3343,8 @@ func_mode_compile ()
 	  # Accept the current argument as the source file.
 	  # The previous "srcfile" becomes the current argument.
 	  #
-	  lastarg="$srcfile"
-	  srcfile="$arg"
+	  lastarg=$srcfile
+	  srcfile=$arg
 	  ;;
 	esac  #  case $arg
 	;;
@@ -2043,13 +3359,13 @@ func_mode_compile ()
       func_fatal_error "you must specify an argument for -Xcompile"
       ;;
     target)
-      func_fatal_error "you must specify a target with \`-o'"
+      func_fatal_error "you must specify a target with '-o'"
       ;;
     *)
       # Get the name of the library object.
       test -z "$libobj" && {
 	func_basename "$srcfile"
-	libobj="$func_basename_result"
+	libobj=$func_basename_result
       }
       ;;
     esac
@@ -2069,7 +3385,7 @@ func_mode_compile ()
     case $libobj in
     *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
     *)
-      func_fatal_error "cannot determine name of library object from \`$libobj'"
+      func_fatal_error "cannot determine name of library object from '$libobj'"
       ;;
     esac
 
@@ -2078,8 +3394,8 @@ func_mode_compile ()
     for arg in $later; do
       case $arg in
       -shared)
-	test "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not build a shared library"
+	test yes = "$build_libtool_libs" \
+	  || func_fatal_configuration "cannot build a shared library"
 	build_old_libs=no
 	continue
 	;;
@@ -2105,17 +3421,17 @@ func_mode_compile ()
     func_quote_for_eval "$libobj"
     test "X$libobj" != "X$func_quote_for_eval_result" \
       && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"'	 &()|`$[]' \
-      && func_warning "libobj name \`$libobj' may not contain shell special characters."
+      && func_warning "libobj name '$libobj' may not contain shell special characters."
     func_dirname_and_basename "$obj" "/" ""
-    objname="$func_basename_result"
-    xdir="$func_dirname_result"
-    lobj=${xdir}$objdir/$objname
+    objname=$func_basename_result
+    xdir=$func_dirname_result
+    lobj=$xdir$objdir/$objname
 
     test -z "$base_compile" && \
       func_fatal_help "you must specify a compilation command"
 
     # Delete any leftover library objects.
-    if test "$build_old_libs" = yes; then
+    if test yes = "$build_old_libs"; then
       removelist="$obj $lobj $libobj ${libobj}T"
     else
       removelist="$lobj $libobj ${libobj}T"
@@ -2127,16 +3443,16 @@ func_mode_compile ()
       pic_mode=default
       ;;
     esac
-    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+    if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then
       # non-PIC code in shared libraries is not supported
       pic_mode=default
     fi
 
     # Calculate the filename of the output object if compiler does
     # not support -o with -c
-    if test "$compiler_c_o" = no; then
-      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext}
-      lockfile="$output_obj.lock"
+    if test no = "$compiler_c_o"; then
+      output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext
+      lockfile=$output_obj.lock
     else
       output_obj=
       need_locks=no
@@ -2145,12 +3461,12 @@ func_mode_compile ()
 
     # Lock this critical section if it is needed
     # We use this script file to make the link, it avoids creating a new file
-    if test "$need_locks" = yes; then
+    if test yes = "$need_locks"; then
       until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
 	func_echo "Waiting for $lockfile to be removed"
 	sleep 2
       done
-    elif test "$need_locks" = warn; then
+    elif test warn = "$need_locks"; then
       if test -f "$lockfile"; then
 	$ECHO "\
 *** ERROR, $lockfile exists and contains:
@@ -2158,7 +3474,7 @@ func_mode_compile ()
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2180,11 +3496,11 @@ compiler."
     qsrcfile=$func_quote_for_eval_result
 
     # Only build a PIC object if we are building libtool libraries.
-    if test "$build_libtool_libs" = yes; then
+    if test yes = "$build_libtool_libs"; then
       # Without this assignment, base_compile gets emptied.
       fbsd_hideous_sh_bug=$base_compile
 
-      if test "$pic_mode" != no; then
+      if test no != "$pic_mode"; then
 	command="$base_compile $qsrcfile $pic_flag"
       else
 	# Don't build PIC code
@@ -2201,7 +3517,7 @@ compiler."
       func_show_eval_locale "$command"	\
           'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
 
-      if test "$need_locks" = warn &&
+      if test warn = "$need_locks" &&
 	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
 	$ECHO "\
 *** ERROR, $lockfile contains:
@@ -2212,7 +3528,7 @@ $srcfile
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2228,20 +3544,20 @@ compiler."
       fi
 
       # Allow error messages only from the first compilation.
-      if test "$suppress_opt" = yes; then
+      if test yes = "$suppress_opt"; then
 	suppress_output=' >/dev/null 2>&1'
       fi
     fi
 
     # Only build a position-dependent object if we build old libraries.
-    if test "$build_old_libs" = yes; then
-      if test "$pic_mode" != yes; then
+    if test yes = "$build_old_libs"; then
+      if test yes != "$pic_mode"; then
 	# Don't build PIC code
 	command="$base_compile $qsrcfile$pie_flag"
       else
 	command="$base_compile $qsrcfile $pic_flag"
       fi
-      if test "$compiler_c_o" = yes; then
+      if test yes = "$compiler_c_o"; then
 	func_append command " -o $obj"
       fi
 
@@ -2250,7 +3566,7 @@ compiler."
       func_show_eval_locale "$command" \
         '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
 
-      if test "$need_locks" = warn &&
+      if test warn = "$need_locks" &&
 	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
 	$ECHO "\
 *** ERROR, $lockfile contains:
@@ -2261,7 +3577,7 @@ $srcfile
 
 This indicates that another process is trying to use the same
 temporary object file, and libtool could not work around it because
-your compiler does not support \`-c' and \`-o' together.  If you
+your compiler does not support '-c' and '-o' together.  If you
 repeat this compilation, it may succeed, by chance, but you had better
 avoid parallel builds (make -j) in this platform, or get a better
 compiler."
@@ -2281,7 +3597,7 @@ compiler."
       func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
 
       # Unlock the critical section if it was locked
-      if test "$need_locks" != no; then
+      if test no != "$need_locks"; then
 	removelist=$lockfile
         $RM "$lockfile"
       fi
@@ -2291,7 +3607,7 @@ compiler."
 }
 
 $opt_help || {
-  test "$opt_mode" = compile && func_mode_compile ${1+"$@"}
+  test compile = "$opt_mode" && func_mode_compile ${1+"$@"}
 }
 
 func_mode_help ()
@@ -2311,7 +3627,7 @@ func_mode_help ()
 Remove files from the build directory.
 
 RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
+(typically '/bin/rm').  RM-OPTIONS are options (such as '-f') to be passed
 to RM.
 
 If FILE is a libtool library, object or program, all the files associated
@@ -2330,16 +3646,16 @@ This mode accepts the following additional options:
   -no-suppress      do not suppress compiler output for multiple passes
   -prefer-pic       try to build PIC objects only
   -prefer-non-pic   try to build non-PIC objects only
-  -shared           do not build a \`.o' file suitable for static linking
-  -static           only build a \`.o' file suitable for static linking
+  -shared           do not build a '.o' file suitable for static linking
+  -static           only build a '.o' file suitable for static linking
   -Wc,FLAG          pass FLAG directly to the compiler
 
-COMPILE-COMMAND is a command to be used in creating a \`standard' object file
+COMPILE-COMMAND is a command to be used in creating a 'standard' object file
 from the given SOURCEFILE.
 
 The output file name is determined by removing the directory component from
-SOURCEFILE, then substituting the C source code suffix \`.c' with the
-library object suffix, \`.lo'."
+SOURCEFILE, then substituting the C source code suffix '.c' with the
+library object suffix, '.lo'."
         ;;
 
       execute)
@@ -2352,7 +3668,7 @@ This mode accepts the following additional options:
 
   -dlopen FILE      add the directory containing FILE to the library path
 
-This mode sets the library path environment variable according to \`-dlopen'
+This mode sets the library path environment variable according to '-dlopen'
 flags.
 
 If any of the ARGS are libtool executable wrappers, then they are translated
@@ -2371,7 +3687,7 @@ Complete the installation of libtool libraries.
 Each LIBDIR is a directory that contains libtool libraries.
 
 The commands that this mode executes may require superuser privileges.  Use
-the \`--dry-run' option if you just want to see what would be executed."
+the '--dry-run' option if you just want to see what would be executed."
         ;;
 
       install)
@@ -2381,7 +3697,7 @@ the \`--dry-run' option if you just want to see what would be executed."
 Install executables or libraries.
 
 INSTALL-COMMAND is the installation command.  The first component should be
-either the \`install' or \`cp' program.
+either the 'install' or 'cp' program.
 
 The following components of INSTALL-COMMAND are treated specially:
 
@@ -2407,7 +3723,7 @@ The following components of LINK-COMMAND are treated specially:
   -avoid-version    do not add a version suffix if possible
   -bindir BINDIR    specify path to binaries directory (for systems where
                     libraries must be found in the PATH setting at runtime)
-  -dlopen FILE      \`-dlpreopen' FILE if it cannot be dlopened at runtime
+  -dlopen FILE      '-dlpreopen' FILE if it cannot be dlopened at runtime
   -dlpreopen FILE   link in FILE and add its symbols to lt_preloaded_symbols
   -export-dynamic   allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
   -export-symbols SYMFILE
@@ -2421,7 +3737,8 @@ The following components of LINK-COMMAND are treated specially:
   -no-install       link a not-installable executable
   -no-undefined     declare that a library does not refer to external symbols
   -o OUTPUT-FILE    create OUTPUT-FILE from the specified objects
-  -objectlist FILE  Use a list of object files found in FILE to specify objects
+  -objectlist FILE  use a list of object files found in FILE to specify objects
+  -os2dllname NAME  force a short DLL name on OS/2 (no effect on other OSes)
   -precious-files-regex REGEX
                     don't remove output files matching REGEX
   -release RELEASE  specify package release information
@@ -2441,20 +3758,20 @@ The following components of LINK-COMMAND are treated specially:
   -Xlinker FLAG     pass linker-specific FLAG directly to the linker
   -XCClinker FLAG   pass link-specific FLAG to the compiler driver (CC)
 
-All other options (arguments beginning with \`-') are ignored.
+All other options (arguments beginning with '-') are ignored.
 
-Every other argument is treated as a filename.  Files ending in \`.la' are
+Every other argument is treated as a filename.  Files ending in '.la' are
 treated as uninstalled libtool libraries, other files are standard or library
 object files.
 
-If the OUTPUT-FILE ends in \`.la', then a libtool library is created,
-only library objects (\`.lo' files) may be specified, and \`-rpath' is
+If the OUTPUT-FILE ends in '.la', then a libtool library is created,
+only library objects ('.lo' files) may be specified, and '-rpath' is
 required, except when creating a convenience library.
 
-If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created
-using \`ar' and \`ranlib', or on Windows using \`lib'.
+If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created
+using 'ar' and 'ranlib', or on Windows using 'lib'.
 
-If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file
+If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file
 is created, otherwise an executable program is created."
         ;;
 
@@ -2465,7 +3782,7 @@ is created, otherwise an executable program is created."
 Remove libraries from an installation directory.
 
 RM is the name of the program to use to delete files associated with each FILE
-(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
+(typically '/bin/rm').  RM-OPTIONS are options (such as '-f') to be passed
 to RM.
 
 If FILE is a libtool library, all the files associated with it are deleted.
@@ -2473,17 +3790,17 @@ Otherwise, only FILE itself is deleted using RM."
         ;;
 
       *)
-        func_fatal_help "invalid operation mode \`$opt_mode'"
+        func_fatal_help "invalid operation mode '$opt_mode'"
         ;;
     esac
 
     echo
-    $ECHO "Try \`$progname --help' for more information about other modes."
+    $ECHO "Try '$progname --help' for more information about other modes."
 }
 
 # Now that we've collected a possible --mode arg, show help if necessary
 if $opt_help; then
-  if test "$opt_help" = :; then
+  if test : = "$opt_help"; then
     func_mode_help
   else
     {
@@ -2491,7 +3808,7 @@ if $opt_help; then
       for opt_mode in compile link execute install finish uninstall clean; do
 	func_mode_help
       done
-    } | sed -n '1p; 2,$s/^Usage:/  or: /p'
+    } | $SED -n '1p; 2,$s/^Usage:/  or: /p'
     {
       func_help noexit
       for opt_mode in compile link execute install finish uninstall clean; do
@@ -2499,7 +3816,7 @@ if $opt_help; then
 	func_mode_help
       done
     } |
-    sed '1d
+    $SED '1d
       /^When reporting/,/^Report/{
 	H
 	d
@@ -2516,16 +3833,17 @@ fi
 # func_mode_execute arg...
 func_mode_execute ()
 {
-    $opt_debug
+    $debug_cmd
+
     # The first argument is the command name.
-    cmd="$nonopt"
+    cmd=$nonopt
     test -z "$cmd" && \
       func_fatal_help "you must specify a COMMAND"
 
     # Handle -dlopen flags immediately.
     for file in $opt_dlopen; do
       test -f "$file" \
-	|| func_fatal_help "\`$file' is not a file"
+	|| func_fatal_help "'$file' is not a file"
 
       dir=
       case $file in
@@ -2535,7 +3853,7 @@ func_mode_execute ()
 
 	# Check to see that this really is a libtool archive.
 	func_lalib_unsafe_p "$file" \
-	  || func_fatal_help "\`$lib' is not a valid libtool archive"
+	  || func_fatal_help "'$lib' is not a valid libtool archive"
 
 	# Read the libtool library.
 	dlname=
@@ -2546,18 +3864,18 @@ func_mode_execute ()
 	if test -z "$dlname"; then
 	  # Warn if it was a shared library.
 	  test -n "$library_names" && \
-	    func_warning "\`$file' was not linked with \`-export-dynamic'"
+	    func_warning "'$file' was not linked with '-export-dynamic'"
 	  continue
 	fi
 
 	func_dirname "$file" "" "."
-	dir="$func_dirname_result"
+	dir=$func_dirname_result
 
 	if test -f "$dir/$objdir/$dlname"; then
 	  func_append dir "/$objdir"
 	else
 	  if test ! -f "$dir/$dlname"; then
-	    func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"
+	    func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'"
 	  fi
 	fi
 	;;
@@ -2565,18 +3883,18 @@ func_mode_execute ()
       *.lo)
 	# Just add the directory containing the .lo file.
 	func_dirname "$file" "" "."
-	dir="$func_dirname_result"
+	dir=$func_dirname_result
 	;;
 
       *)
-	func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"
+	func_warning "'-dlopen' is ignored for non-libtool libraries and objects"
 	continue
 	;;
       esac
 
       # Get the absolute pathname.
       absdir=`cd "$dir" && pwd`
-      test -n "$absdir" && dir="$absdir"
+      test -n "$absdir" && dir=$absdir
 
       # Now add the directory to shlibpath_var.
       if eval "test -z \"\$$shlibpath_var\""; then
@@ -2588,7 +3906,7 @@ func_mode_execute ()
 
     # This variable tells wrapper scripts just to set shlibpath_var
     # rather than running their programs.
-    libtool_execute_magic="$magic"
+    libtool_execute_magic=$magic
 
     # Check if any of the arguments is a wrapper script.
     args=
@@ -2601,12 +3919,12 @@ func_mode_execute ()
 	if func_ltwrapper_script_p "$file"; then
 	  func_source "$file"
 	  # Transform arg to wrapped name.
-	  file="$progdir/$program"
+	  file=$progdir/$program
 	elif func_ltwrapper_executable_p "$file"; then
 	  func_ltwrapper_scriptname "$file"
 	  func_source "$func_ltwrapper_scriptname_result"
 	  # Transform arg to wrapped name.
-	  file="$progdir/$program"
+	  file=$progdir/$program
 	fi
 	;;
       esac
@@ -2614,7 +3932,15 @@ func_mode_execute ()
       func_append_quoted args "$file"
     done
 
-    if test "X$opt_dry_run" = Xfalse; then
+    if $opt_dry_run; then
+      # Display what would be done.
+      if test -n "$shlibpath_var"; then
+	eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
+	echo "export $shlibpath_var"
+      fi
+      $ECHO "$cmd$args"
+      exit $EXIT_SUCCESS
+    else
       if test -n "$shlibpath_var"; then
 	# Export the shlibpath_var.
 	eval "export $shlibpath_var"
@@ -2631,25 +3957,18 @@ func_mode_execute ()
       done
 
       # Now prepare to actually exec the command.
-      exec_cmd="\$cmd$args"
-    else
-      # Display what would be done.
-      if test -n "$shlibpath_var"; then
-	eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
-	echo "export $shlibpath_var"
-      fi
-      $ECHO "$cmd$args"
-      exit $EXIT_SUCCESS
+      exec_cmd=\$cmd$args
     fi
 }
 
-test "$opt_mode" = execute && func_mode_execute ${1+"$@"}
+test execute = "$opt_mode" && func_mode_execute ${1+"$@"}
 
 
 # func_mode_finish arg...
 func_mode_finish ()
 {
-    $opt_debug
+    $debug_cmd
+
     libs=
     libdirs=
     admincmds=
@@ -2663,11 +3982,11 @@ func_mode_finish ()
 	if func_lalib_unsafe_p "$opt"; then
 	  func_append libs " $opt"
 	else
-	  func_warning "\`$opt' is not a valid libtool archive"
+	  func_warning "'$opt' is not a valid libtool archive"
 	fi
 
       else
-	func_fatal_error "invalid argument \`$opt'"
+	func_fatal_error "invalid argument '$opt'"
       fi
     done
 
@@ -2682,12 +4001,12 @@ func_mode_finish ()
       # Remove sysroot references
       if $opt_dry_run; then
         for lib in $libs; do
-          echo "removing references to $lt_sysroot and \`=' prefixes from $lib"
+          echo "removing references to $lt_sysroot and '=' prefixes from $lib"
         done
       else
         tmpdir=`func_mktempdir`
         for lib in $libs; do
-	  sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
+	  $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
 	    > $tmpdir/tmp-la
 	  mv -f $tmpdir/tmp-la $lib
 	done
@@ -2712,7 +4031,7 @@ func_mode_finish ()
     fi
 
     # Exit here if they wanted silent mode.
-    $opt_silent && exit $EXIT_SUCCESS
+    $opt_quiet && exit $EXIT_SUCCESS
 
     if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
       echo "----------------------------------------------------------------------"
@@ -2723,27 +4042,27 @@ func_mode_finish ()
       echo
       echo "If you ever happen to want to link against installed libraries"
       echo "in a given directory, LIBDIR, you must either use libtool, and"
-      echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
+      echo "specify the full pathname of the library, or use the '-LLIBDIR'"
       echo "flag during linking and do at least one of the following:"
       if test -n "$shlibpath_var"; then
-	echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
+	echo "   - add LIBDIR to the '$shlibpath_var' environment variable"
 	echo "     during execution"
       fi
       if test -n "$runpath_var"; then
-	echo "   - add LIBDIR to the \`$runpath_var' environment variable"
+	echo "   - add LIBDIR to the '$runpath_var' environment variable"
 	echo "     during linking"
       fi
       if test -n "$hardcode_libdir_flag_spec"; then
 	libdir=LIBDIR
 	eval flag=\"$hardcode_libdir_flag_spec\"
 
-	$ECHO "   - use the \`$flag' linker flag"
+	$ECHO "   - use the '$flag' linker flag"
       fi
       if test -n "$admincmds"; then
 	$ECHO "   - have your system administrator run these commands:$admincmds"
       fi
       if test -f /etc/ld.so.conf; then
-	echo "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"
+	echo "   - have your system administrator add LIBDIR to '/etc/ld.so.conf'"
       fi
       echo
 
@@ -2762,18 +4081,20 @@ func_mode_finish ()
     exit $EXIT_SUCCESS
 }
 
-test "$opt_mode" = finish && func_mode_finish ${1+"$@"}
+test finish = "$opt_mode" && func_mode_finish ${1+"$@"}
 
 
 # func_mode_install arg...
 func_mode_install ()
 {
-    $opt_debug
+    $debug_cmd
+
     # There may be an optional sh(1) argument at the beginning of
     # install_prog (especially on Windows NT).
-    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
+    if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" ||
        # Allow the use of GNU shtool's install command.
-       case $nonopt in *shtool*) :;; *) false;; esac; then
+       case $nonopt in *shtool*) :;; *) false;; esac
+    then
       # Aesthetically quote it.
       func_quote_for_eval "$nonopt"
       install_prog="$func_quote_for_eval_result "
@@ -2800,7 +4121,7 @@ func_mode_install ()
     opts=
     prev=
     install_type=
-    isdir=no
+    isdir=false
     stripme=
     no_mode=:
     for arg
@@ -2813,7 +4134,7 @@ func_mode_install ()
       fi
 
       case $arg in
-      -d) isdir=yes ;;
+      -d) isdir=: ;;
       -f)
 	if $install_cp; then :; else
 	  prev=$arg
@@ -2831,7 +4152,7 @@ func_mode_install ()
       *)
 	# If the previous option needed an argument, then skip it.
 	if test -n "$prev"; then
-	  if test "x$prev" = x-m && test -n "$install_override_mode"; then
+	  if test X-m = "X$prev" && test -n "$install_override_mode"; then
 	    arg2=$install_override_mode
 	    no_mode=false
 	  fi
@@ -2856,7 +4177,7 @@ func_mode_install ()
       func_fatal_help "you must specify an install program"
 
     test -n "$prev" && \
-      func_fatal_help "the \`$prev' option requires an argument"
+      func_fatal_help "the '$prev' option requires an argument"
 
     if test -n "$install_override_mode" && $no_mode; then
       if $install_cp; then :; else
@@ -2878,19 +4199,19 @@ func_mode_install ()
     dest=$func_stripname_result
 
     # Check to see that the destination is a directory.
-    test -d "$dest" && isdir=yes
-    if test "$isdir" = yes; then
-      destdir="$dest"
+    test -d "$dest" && isdir=:
+    if $isdir; then
+      destdir=$dest
       destname=
     else
       func_dirname_and_basename "$dest" "" "."
-      destdir="$func_dirname_result"
-      destname="$func_basename_result"
+      destdir=$func_dirname_result
+      destname=$func_basename_result
 
       # Not a directory, so check to see that there is only one file specified.
       set dummy $files; shift
       test "$#" -gt 1 && \
-	func_fatal_help "\`$dest' is not a directory"
+	func_fatal_help "'$dest' is not a directory"
     fi
     case $destdir in
     [\\/]* | [A-Za-z]:[\\/]*) ;;
@@ -2899,7 +4220,7 @@ func_mode_install ()
 	case $file in
 	*.lo) ;;
 	*)
-	  func_fatal_help "\`$destdir' must be an absolute directory name"
+	  func_fatal_help "'$destdir' must be an absolute directory name"
 	  ;;
 	esac
       done
@@ -2908,7 +4229,7 @@ func_mode_install ()
 
     # This variable tells wrapper scripts just to set variables rather
     # than running their programs.
-    libtool_install_magic="$magic"
+    libtool_install_magic=$magic
 
     staticlibs=
     future_libdirs=
@@ -2928,7 +4249,7 @@ func_mode_install ()
 
 	# Check to see that this really is a libtool archive.
 	func_lalib_unsafe_p "$file" \
-	  || func_fatal_help "\`$file' is not a valid libtool archive"
+	  || func_fatal_help "'$file' is not a valid libtool archive"
 
 	library_names=
 	old_library=
@@ -2950,7 +4271,7 @@ func_mode_install ()
 	fi
 
 	func_dirname "$file" "/" ""
-	dir="$func_dirname_result"
+	dir=$func_dirname_result
 	func_append dir "$objdir"
 
 	if test -n "$relink_command"; then
@@ -2964,7 +4285,7 @@ func_mode_install ()
 	  # are installed into $libdir/../bin (currently, that works fine)
 	  # but it's something to keep an eye on.
 	  test "$inst_prefix_dir" = "$destdir" && \
-	    func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir"
+	    func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir"
 
 	  if test -n "$inst_prefix_dir"; then
 	    # Stick the inst_prefix_dir data into the link command.
@@ -2973,29 +4294,36 @@ func_mode_install ()
 	    relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
 	  fi
 
-	  func_warning "relinking \`$file'"
+	  func_warning "relinking '$file'"
 	  func_show_eval "$relink_command" \
-	    'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"'
+	    'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"'
 	fi
 
 	# See the names of the shared library.
 	set dummy $library_names; shift
 	if test -n "$1"; then
-	  realname="$1"
+	  realname=$1
 	  shift
 
-	  srcname="$realname"
-	  test -n "$relink_command" && srcname="$realname"T
+	  srcname=$realname
+	  test -n "$relink_command" && srcname=${realname}T
 
 	  # Install the shared library and build the symlinks.
 	  func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
 	      'exit $?'
-	  tstripme="$stripme"
+	  tstripme=$stripme
 	  case $host_os in
 	  cygwin* | mingw* | pw32* | cegcc*)
 	    case $realname in
 	    *.dll.a)
-	      tstripme=""
+	      tstripme=
+	      ;;
+	    esac
+	    ;;
+	  os2*)
+	    case $realname in
+	    *_dll.a)
+	      tstripme=
 	      ;;
 	    esac
 	    ;;
@@ -3006,7 +4334,7 @@ func_mode_install ()
 
 	  if test "$#" -gt 0; then
 	    # Delete the old symlinks, and create new ones.
-	    # Try `ln -sf' first, because the `ln' binary might depend on
+	    # Try 'ln -sf' first, because the 'ln' binary might depend on
 	    # the symlink we replace!  Solaris /bin/ln does not understand -f,
 	    # so we also need to try rm && ln -s.
 	    for linkname
@@ -3017,14 +4345,14 @@ func_mode_install ()
 	  fi
 
 	  # Do each command in the postinstall commands.
-	  lib="$destdir/$realname"
+	  lib=$destdir/$realname
 	  func_execute_cmds "$postinstall_cmds" 'exit $?'
 	fi
 
 	# Install the pseudo-library for information purposes.
 	func_basename "$file"
-	name="$func_basename_result"
-	instname="$dir/$name"i
+	name=$func_basename_result
+	instname=$dir/${name}i
 	func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
 
 	# Maybe install the static library, too.
@@ -3036,11 +4364,11 @@ func_mode_install ()
 
 	# Figure out destination file name, if it wasn't already specified.
 	if test -n "$destname"; then
-	  destfile="$destdir/$destname"
+	  destfile=$destdir/$destname
 	else
 	  func_basename "$file"
-	  destfile="$func_basename_result"
-	  destfile="$destdir/$destfile"
+	  destfile=$func_basename_result
+	  destfile=$destdir/$destfile
 	fi
 
 	# Deduce the name of the destination old-style object file.
@@ -3050,11 +4378,11 @@ func_mode_install ()
 	  staticdest=$func_lo2o_result
 	  ;;
 	*.$objext)
-	  staticdest="$destfile"
+	  staticdest=$destfile
 	  destfile=
 	  ;;
 	*)
-	  func_fatal_help "cannot copy a libtool object to \`$destfile'"
+	  func_fatal_help "cannot copy a libtool object to '$destfile'"
 	  ;;
 	esac
 
@@ -3063,7 +4391,7 @@ func_mode_install ()
 	  func_show_eval "$install_prog $file $destfile" 'exit $?'
 
 	# Install the old object if enabled.
-	if test "$build_old_libs" = yes; then
+	if test yes = "$build_old_libs"; then
 	  # Deduce the name of the old-style object file.
 	  func_lo2o "$file"
 	  staticobj=$func_lo2o_result
@@ -3075,23 +4403,23 @@ func_mode_install ()
       *)
 	# Figure out destination file name, if it wasn't already specified.
 	if test -n "$destname"; then
-	  destfile="$destdir/$destname"
+	  destfile=$destdir/$destname
 	else
 	  func_basename "$file"
-	  destfile="$func_basename_result"
-	  destfile="$destdir/$destfile"
+	  destfile=$func_basename_result
+	  destfile=$destdir/$destfile
 	fi
 
 	# If the file is missing, and there is a .exe on the end, strip it
 	# because it is most likely a libtool script we actually want to
 	# install
-	stripped_ext=""
+	stripped_ext=
 	case $file in
 	  *.exe)
 	    if test ! -f "$file"; then
 	      func_stripname '' '.exe' "$file"
 	      file=$func_stripname_result
-	      stripped_ext=".exe"
+	      stripped_ext=.exe
 	    fi
 	    ;;
 	esac
@@ -3119,19 +4447,19 @@ func_mode_install ()
 
 	  # Check the variables that should have been set.
 	  test -z "$generated_by_libtool_version" && \
-	    func_fatal_error "invalid libtool wrapper script \`$wrapper'"
+	    func_fatal_error "invalid libtool wrapper script '$wrapper'"
 
-	  finalize=yes
+	  finalize=:
 	  for lib in $notinst_deplibs; do
 	    # Check to see that each library is installed.
 	    libdir=
 	    if test -f "$lib"; then
 	      func_source "$lib"
 	    fi
-	    libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test
+	    libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'`
 	    if test -n "$libdir" && test ! -f "$libfile"; then
-	      func_warning "\`$lib' has not been installed in \`$libdir'"
-	      finalize=no
+	      func_warning "'$lib' has not been installed in '$libdir'"
+	      finalize=false
 	    fi
 	  done
 
@@ -3139,29 +4467,29 @@ func_mode_install ()
 	  func_source "$wrapper"
 
 	  outputname=
-	  if test "$fast_install" = no && test -n "$relink_command"; then
+	  if test no = "$fast_install" && test -n "$relink_command"; then
 	    $opt_dry_run || {
-	      if test "$finalize" = yes; then
+	      if $finalize; then
 	        tmpdir=`func_mktempdir`
 		func_basename "$file$stripped_ext"
-		file="$func_basename_result"
-	        outputname="$tmpdir/$file"
+		file=$func_basename_result
+	        outputname=$tmpdir/$file
 	        # Replace the output file specification.
 	        relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
 
-	        $opt_silent || {
+	        $opt_quiet || {
 	          func_quote_for_expand "$relink_command"
 		  eval "func_echo $func_quote_for_expand_result"
 	        }
 	        if eval "$relink_command"; then :
 	          else
-		  func_error "error: relink \`$file' with the above command before installing it"
+		  func_error "error: relink '$file' with the above command before installing it"
 		  $opt_dry_run || ${RM}r "$tmpdir"
 		  continue
 	        fi
-	        file="$outputname"
+	        file=$outputname
 	      else
-	        func_warning "cannot relink \`$file'"
+	        func_warning "cannot relink '$file'"
 	      fi
 	    }
 	  else
@@ -3198,10 +4526,10 @@ func_mode_install ()
 
     for file in $staticlibs; do
       func_basename "$file"
-      name="$func_basename_result"
+      name=$func_basename_result
 
       # Set up the ranlib parameters.
-      oldlib="$destdir/$name"
+      oldlib=$destdir/$name
       func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
       tool_oldlib=$func_to_tool_file_result
 
@@ -3216,18 +4544,18 @@ func_mode_install ()
     done
 
     test -n "$future_libdirs" && \
-      func_warning "remember to run \`$progname --finish$future_libdirs'"
+      func_warning "remember to run '$progname --finish$future_libdirs'"
 
     if test -n "$current_libdirs"; then
       # Maybe just do a dry run.
       $opt_dry_run && current_libdirs=" -n$current_libdirs"
-      exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs'
+      exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs'
     else
       exit $EXIT_SUCCESS
     fi
 }
 
-test "$opt_mode" = install && func_mode_install ${1+"$@"}
+test install = "$opt_mode" && func_mode_install ${1+"$@"}
 
 
 # func_generate_dlsyms outputname originator pic_p
@@ -3235,16 +4563,17 @@ test "$opt_mode" = install && func_mode_install ${1+"$@"}
 # a dlpreopen symbol table.
 func_generate_dlsyms ()
 {
-    $opt_debug
-    my_outputname="$1"
-    my_originator="$2"
-    my_pic_p="${3-no}"
-    my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'`
+    $debug_cmd
+
+    my_outputname=$1
+    my_originator=$2
+    my_pic_p=${3-false}
+    my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'`
     my_dlsyms=
 
-    if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
+    if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
       if test -n "$NM" && test -n "$global_symbol_pipe"; then
-	my_dlsyms="${my_outputname}S.c"
+	my_dlsyms=${my_outputname}S.c
       else
 	func_error "not configured to extract global symbols from dlpreopened files"
       fi
@@ -3255,7 +4584,7 @@ func_generate_dlsyms ()
       "") ;;
       *.c)
 	# Discover the nlist of each of the dlfiles.
-	nlist="$output_objdir/${my_outputname}.nm"
+	nlist=$output_objdir/$my_outputname.nm
 
 	func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
 
@@ -3263,34 +4592,36 @@ func_generate_dlsyms ()
 	func_verbose "creating $output_objdir/$my_dlsyms"
 
 	$opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
-/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */
-/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */
+/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */
+/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */
 
 #ifdef __cplusplus
 extern \"C\" {
 #endif
 
-#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
+#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
 #pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
 #endif
 
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT_DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT_DLSYM_CONST
 #else
 # define LT_DLSYM_CONST const
 #endif
 
+#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
+
 /* External symbol declarations for the compiler. */\
 "
 
-	if test "$dlself" = yes; then
-	  func_verbose "generating symbol list for \`$output'"
+	if test yes = "$dlself"; then
+	  func_verbose "generating symbol list for '$output'"
 
 	  $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
 
@@ -3298,7 +4629,7 @@ extern \"C\" {
 	  progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
 	  for progfile in $progfiles; do
 	    func_to_tool_file "$progfile" func_convert_file_msys_to_w32
-	    func_verbose "extracting global C symbols from \`$func_to_tool_file_result'"
+	    func_verbose "extracting global C symbols from '$func_to_tool_file_result'"
 	    $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
 	  done
 
@@ -3318,10 +4649,10 @@ extern \"C\" {
 
 	  # Prepare the list of exported symbols
 	  if test -z "$export_symbols"; then
-	    export_symbols="$output_objdir/$outputname.exp"
+	    export_symbols=$output_objdir/$outputname.exp
 	    $opt_dry_run || {
 	      $RM $export_symbols
-	      eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
+	      eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
 	      case $host in
 	      *cygwin* | *mingw* | *cegcc* )
                 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
@@ -3331,7 +4662,7 @@ extern \"C\" {
 	    }
 	  else
 	    $opt_dry_run || {
-	      eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
+	      eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
 	      eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
 	      eval '$MV "$nlist"T "$nlist"'
 	      case $host in
@@ -3345,22 +4676,22 @@ extern \"C\" {
 	fi
 
 	for dlprefile in $dlprefiles; do
-	  func_verbose "extracting global C symbols from \`$dlprefile'"
+	  func_verbose "extracting global C symbols from '$dlprefile'"
 	  func_basename "$dlprefile"
-	  name="$func_basename_result"
+	  name=$func_basename_result
           case $host in
 	    *cygwin* | *mingw* | *cegcc* )
 	      # if an import library, we need to obtain dlname
 	      if func_win32_import_lib_p "$dlprefile"; then
 	        func_tr_sh "$dlprefile"
 	        eval "curr_lafile=\$libfile_$func_tr_sh_result"
-	        dlprefile_dlbasename=""
+	        dlprefile_dlbasename=
 	        if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
 	          # Use subshell, to avoid clobbering current variable values
 	          dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
-	          if test -n "$dlprefile_dlname" ; then
+	          if test -n "$dlprefile_dlname"; then
 	            func_basename "$dlprefile_dlname"
-	            dlprefile_dlbasename="$func_basename_result"
+	            dlprefile_dlbasename=$func_basename_result
 	          else
 	            # no lafile. user explicitly requested -dlpreopen <import library>.
 	            $sharedlib_from_linklib_cmd "$dlprefile"
@@ -3368,7 +4699,7 @@ extern \"C\" {
 	          fi
 	        fi
 	        $opt_dry_run || {
-	          if test -n "$dlprefile_dlbasename" ; then
+	          if test -n "$dlprefile_dlbasename"; then
 	            eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
 	          else
 	            func_warning "Could not compute DLL name from $name"
@@ -3424,6 +4755,11 @@ extern \"C\" {
 	    echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
 	  fi
 
+	  func_show_eval '$RM "${nlist}I"'
+	  if test -n "$global_symbol_to_import"; then
+	    eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I'
+	  fi
+
 	  echo >> "$output_objdir/$my_dlsyms" "\
 
 /* The mapping between symbol names and symbols.  */
@@ -3432,11 +4768,30 @@ typedef struct {
   void *address;
 } lt_dlsymlist;
 extern LT_DLSYM_CONST lt_dlsymlist
-lt_${my_prefix}_LTX_preloaded_symbols[];
+lt_${my_prefix}_LTX_preloaded_symbols[];\
+"
+
+	  if test -s "$nlist"I; then
+	    echo >> "$output_objdir/$my_dlsyms" "\
+static void lt_syminit(void)
+{
+  LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols;
+  for (; symbol->name; ++symbol)
+    {"
+	    $SED 's/.*/      if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms"
+	    echo >> "$output_objdir/$my_dlsyms" "\
+    }
+}"
+	  fi
+	  echo >> "$output_objdir/$my_dlsyms" "\
 LT_DLSYM_CONST lt_dlsymlist
 lt_${my_prefix}_LTX_preloaded_symbols[] =
-{\
-  { \"$my_originator\", (void *) 0 },"
+{ {\"$my_originator\", (void *) 0},"
+
+	  if test -s "$nlist"I; then
+	    echo >> "$output_objdir/$my_dlsyms" "\
+  {\"@INIT@\", (void *) &lt_syminit},"
+	  fi
 
 	  case $need_lib_prefix in
 	  no)
@@ -3478,9 +4833,7 @@ static const void *lt_preloaded_setup() {
 	  *-*-hpux*)
 	    pic_flag_for_symtable=" $pic_flag"  ;;
 	  *)
-	    if test "X$my_pic_p" != Xno; then
-	      pic_flag_for_symtable=" $pic_flag"
-	    fi
+	    $my_pic_p && pic_flag_for_symtable=" $pic_flag"
 	    ;;
 	  esac
 	  ;;
@@ -3497,10 +4850,10 @@ static const void *lt_preloaded_setup() {
 	func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
 
 	# Clean up the generated files.
-	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"'
+	func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"'
 
 	# Transform the symbol file into the correct name.
-	symfileobj="$output_objdir/${my_outputname}S.$objext"
+	symfileobj=$output_objdir/${my_outputname}S.$objext
 	case $host in
 	*cygwin* | *mingw* | *cegcc* )
 	  if test -f "$output_objdir/$my_outputname.def"; then
@@ -3518,7 +4871,7 @@ static const void *lt_preloaded_setup() {
 	esac
 	;;
       *)
-	func_fatal_error "unknown suffix for \`$my_dlsyms'"
+	func_fatal_error "unknown suffix for '$my_dlsyms'"
 	;;
       esac
     else
@@ -3532,6 +4885,32 @@ static const void *lt_preloaded_setup() {
     fi
 }
 
+# func_cygming_gnu_implib_p ARG
+# This predicate returns with zero status (TRUE) if
+# ARG is a GNU/binutils-style import library. Returns
+# with nonzero status (FALSE) otherwise.
+func_cygming_gnu_implib_p ()
+{
+  $debug_cmd
+
+  func_to_tool_file "$1" func_convert_file_msys_to_w32
+  func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
+  test -n "$func_cygming_gnu_implib_tmp"
+}
+
+# func_cygming_ms_implib_p ARG
+# This predicate returns with zero status (TRUE) if
+# ARG is an MS-style import library. Returns
+# with nonzero status (FALSE) otherwise.
+func_cygming_ms_implib_p ()
+{
+  $debug_cmd
+
+  func_to_tool_file "$1" func_convert_file_msys_to_w32
+  func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
+  test -n "$func_cygming_ms_implib_tmp"
+}
+
 # func_win32_libid arg
 # return the library type of file 'arg'
 #
@@ -3541,8 +4920,9 @@ static const void *lt_preloaded_setup() {
 # Despite the name, also deal with 64 bit binaries.
 func_win32_libid ()
 {
-  $opt_debug
-  win32_libid_type="unknown"
+  $debug_cmd
+
+  win32_libid_type=unknown
   win32_fileres=`file -L $1 2>/dev/null`
   case $win32_fileres in
   *ar\ archive\ import\ library*) # definitely import
@@ -3552,16 +4932,29 @@ func_win32_libid ()
     # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
        $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
-      func_to_tool_file "$1" func_convert_file_msys_to_w32
-      win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
-	$SED -n -e '
+      case $nm_interface in
+      "MS dumpbin")
+	if func_cygming_ms_implib_p "$1" ||
+	   func_cygming_gnu_implib_p "$1"
+	then
+	  win32_nmres=import
+	else
+	  win32_nmres=
+	fi
+	;;
+      *)
+	func_to_tool_file "$1" func_convert_file_msys_to_w32
+	win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
+	  $SED -n -e '
 	    1,100{
 		/ I /{
-		    s,.*,import,
+		    s|.*|import|
 		    p
 		    q
 		}
 	    }'`
+	;;
+      esac
       case $win32_nmres in
       import*)  win32_libid_type="x86 archive import";;
       *)        win32_libid_type="x86 archive static";;
@@ -3593,7 +4986,8 @@ func_win32_libid ()
 #    $sharedlib_from_linklib_result
 func_cygming_dll_for_implib ()
 {
-  $opt_debug
+  $debug_cmd
+
   sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
 }
 
@@ -3610,7 +5004,8 @@ func_cygming_dll_for_implib ()
 # specified import library.
 func_cygming_dll_for_implib_fallback_core ()
 {
-  $opt_debug
+  $debug_cmd
+
   match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
   $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
     $SED '/^Contents of section '"$match_literal"':/{
@@ -3646,8 +5041,8 @@ func_cygming_dll_for_implib_fallback_core ()
       /./p' |
     # we now have a list, one entry per line, of the stringified
     # contents of the appropriate section of all members of the
-    # archive which possess that section. Heuristic: eliminate
-    # all those which have a first or second character that is
+    # archive that possess that section. Heuristic: eliminate
+    # all those that have a first or second character that is
     # a '.' (that is, objdump's representation of an unprintable
     # character.) This should work for all archives with less than
     # 0x302f exports -- but will fail for DLLs whose name actually
@@ -3658,30 +5053,6 @@ func_cygming_dll_for_implib_fallback_core ()
     $SED -e '/^\./d;/^.\./d;q'
 }
 
-# func_cygming_gnu_implib_p ARG
-# This predicate returns with zero status (TRUE) if
-# ARG is a GNU/binutils-style import library. Returns
-# with nonzero status (FALSE) otherwise.
-func_cygming_gnu_implib_p ()
-{
-  $opt_debug
-  func_to_tool_file "$1" func_convert_file_msys_to_w32
-  func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
-  test -n "$func_cygming_gnu_implib_tmp"
-}
-
-# func_cygming_ms_implib_p ARG
-# This predicate returns with zero status (TRUE) if
-# ARG is an MS-style import library. Returns
-# with nonzero status (FALSE) otherwise.
-func_cygming_ms_implib_p ()
-{
-  $opt_debug
-  func_to_tool_file "$1" func_convert_file_msys_to_w32
-  func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
-  test -n "$func_cygming_ms_implib_tmp"
-}
-
 # func_cygming_dll_for_implib_fallback ARG
 # Platform-specific function to extract the
 # name of the DLL associated with the specified
@@ -3695,16 +5066,17 @@ func_cygming_ms_implib_p ()
 #    $sharedlib_from_linklib_result
 func_cygming_dll_for_implib_fallback ()
 {
-  $opt_debug
-  if func_cygming_gnu_implib_p "$1" ; then
+  $debug_cmd
+
+  if func_cygming_gnu_implib_p "$1"; then
     # binutils import library
     sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
-  elif func_cygming_ms_implib_p "$1" ; then
+  elif func_cygming_ms_implib_p "$1"; then
     # ms-generated import library
     sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
   else
     # unknown
-    sharedlib_from_linklib_result=""
+    sharedlib_from_linklib_result=
   fi
 }
 
@@ -3712,10 +5084,11 @@ func_cygming_dll_for_implib_fallback ()
 # func_extract_an_archive dir oldlib
 func_extract_an_archive ()
 {
-    $opt_debug
-    f_ex_an_ar_dir="$1"; shift
-    f_ex_an_ar_oldlib="$1"
-    if test "$lock_old_archive_extraction" = yes; then
+    $debug_cmd
+
+    f_ex_an_ar_dir=$1; shift
+    f_ex_an_ar_oldlib=$1
+    if test yes = "$lock_old_archive_extraction"; then
       lockfile=$f_ex_an_ar_oldlib.lock
       until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
 	func_echo "Waiting for $lockfile to be removed"
@@ -3724,7 +5097,7 @@ func_extract_an_archive ()
     fi
     func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
 		   'stat=$?; rm -f "$lockfile"; exit $stat'
-    if test "$lock_old_archive_extraction" = yes; then
+    if test yes = "$lock_old_archive_extraction"; then
       $opt_dry_run || rm -f "$lockfile"
     fi
     if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
@@ -3738,22 +5111,23 @@ func_extract_an_archive ()
 # func_extract_archives gentop oldlib ...
 func_extract_archives ()
 {
-    $opt_debug
-    my_gentop="$1"; shift
+    $debug_cmd
+
+    my_gentop=$1; shift
     my_oldlibs=${1+"$@"}
-    my_oldobjs=""
-    my_xlib=""
-    my_xabs=""
-    my_xdir=""
+    my_oldobjs=
+    my_xlib=
+    my_xabs=
+    my_xdir=
 
     for my_xlib in $my_oldlibs; do
       # Extract the objects.
       case $my_xlib in
-	[\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;;
+	[\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;;
 	*) my_xabs=`pwd`"/$my_xlib" ;;
       esac
       func_basename "$my_xlib"
-      my_xlib="$func_basename_result"
+      my_xlib=$func_basename_result
       my_xlib_u=$my_xlib
       while :; do
         case " $extracted_archives " in
@@ -3765,7 +5139,7 @@ func_extract_archives ()
 	esac
       done
       extracted_archives="$extracted_archives $my_xlib_u"
-      my_xdir="$my_gentop/$my_xlib_u"
+      my_xdir=$my_gentop/$my_xlib_u
 
       func_mkdir_p "$my_xdir"
 
@@ -3778,22 +5152,23 @@ func_extract_archives ()
 	  cd $my_xdir || exit $?
 	  darwin_archive=$my_xabs
 	  darwin_curdir=`pwd`
-	  darwin_base_archive=`basename "$darwin_archive"`
+	  func_basename "$darwin_archive"
+	  darwin_base_archive=$func_basename_result
 	  darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
 	  if test -n "$darwin_arches"; then
 	    darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
 	    darwin_arch=
 	    func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
-	    for darwin_arch in  $darwin_arches ; do
-	      func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-	      $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}"
-	      cd "unfat-$$/${darwin_base_archive}-${darwin_arch}"
-	      func_extract_an_archive "`pwd`" "${darwin_base_archive}"
+	    for darwin_arch in  $darwin_arches; do
+	      func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch"
+	      $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive"
+	      cd "unfat-$$/$darwin_base_archive-$darwin_arch"
+	      func_extract_an_archive "`pwd`" "$darwin_base_archive"
 	      cd "$darwin_curdir"
-	      $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}"
+	      $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive"
 	    done # $darwin_arches
             ## Okay now we've a bunch of thin objects, gotta fatten them up :)
-	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u`
+	    darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u`
 	    darwin_file=
 	    darwin_files=
 	    for darwin_file in $darwin_filelist; do
@@ -3815,7 +5190,7 @@ func_extract_archives ()
       my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
     done
 
-    func_extract_archives_result="$my_oldobjs"
+    func_extract_archives_result=$my_oldobjs
 }
 
 
@@ -3830,7 +5205,7 @@ func_extract_archives ()
 #
 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
 # variable will take.  If 'yes', then the emitted script
-# will assume that the directory in which it is stored is
+# will assume that the directory where it is stored is
 # the $objdir directory.  This is a cygwin/mingw-specific
 # behavior.
 func_emit_wrapper ()
@@ -3841,7 +5216,7 @@ func_emit_wrapper ()
 #! $SHELL
 
 # $output - temporary wrapper script for $objdir/$outputname
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # The $output program cannot be directly executed until all the libtool
 # libraries that it depends on are installed.
@@ -3898,9 +5273,9 @@ _LTECHO_EOF'
 
 # Very basic option parsing. These options are (a) specific to
 # the libtool wrapper, (b) are identical between the wrapper
-# /script/ and the wrapper /executable/ which is used only on
+# /script/ and the wrapper /executable/ that is used only on
 # windows platforms, and (c) all begin with the string "--lt-"
-# (application programs are unlikely to have options which match
+# (application programs are unlikely to have options that match
 # this pattern).
 #
 # There are only two supported options: --lt-debug and
@@ -3933,7 +5308,7 @@ func_parse_lt_options ()
 
   # Print the debug banner immediately:
   if test -n \"\$lt_option_debug\"; then
-    echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2
+    echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2
   fi
 }
 
@@ -3944,7 +5319,7 @@ func_lt_dump_args ()
   lt_dump_args_N=1;
   for lt_arg
   do
-    \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\"
+    \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\"
     lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
   done
 }
@@ -3958,7 +5333,7 @@ func_exec_program_core ()
   *-*-mingw | *-*-os2* | *-cegcc*)
     $ECHO "\
       if test -n \"\$lt_option_debug\"; then
-        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2
+        \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2
         func_lt_dump_args \${1+\"\$@\"} 1>&2
       fi
       exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
@@ -3968,7 +5343,7 @@ func_exec_program_core ()
   *)
     $ECHO "\
       if test -n \"\$lt_option_debug\"; then
-        \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2
+        \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2
         func_lt_dump_args \${1+\"\$@\"} 1>&2
       fi
       exec \"\$progdir/\$program\" \${1+\"\$@\"}
@@ -4043,13 +5418,13 @@ func_exec_program ()
   test -n \"\$absdir\" && thisdir=\"\$absdir\"
 "
 
-	if test "$fast_install" = yes; then
+	if test yes = "$fast_install"; then
 	  $ECHO "\
   program=lt-'$outputname'$exeext
   progdir=\"\$thisdir/$objdir\"
 
   if test ! -f \"\$progdir/\$program\" ||
-     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
+     { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\
        test \"X\$file\" != \"X\$progdir/\$program\"; }; then
 
     file=\"\$\$-\$program\"
@@ -4066,7 +5441,7 @@ func_exec_program ()
     if test -n \"\$relink_command\"; then
       if relink_command_output=\`eval \$relink_command 2>&1\`; then :
       else
-	$ECHO \"\$relink_command_output\" >&2
+	\$ECHO \"\$relink_command_output\" >&2
 	$RM \"\$progdir/\$file\"
 	exit 1
       fi
@@ -4101,7 +5476,7 @@ func_exec_program ()
 	fi
 
 	# Export our shlibpath_var if we have one.
-	if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+	if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
 	  $ECHO "\
     # Add our own library path to $shlibpath_var
     $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
@@ -4121,7 +5496,7 @@ func_exec_program ()
     fi
   else
     # The program doesn't exist.
-    \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2
+    \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2
     \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
     \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
     exit 1
@@ -4140,7 +5515,7 @@ func_emit_cwrapperexe_src ()
 	cat <<EOF
 
 /* $cwrappersource - temporary wrapper executable for $objdir/$outputname
-   Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+   Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 
    The $output program cannot be directly executed until all the libtool
    libraries that it depends on are installed.
@@ -4175,47 +5550,45 @@ EOF
 #include <fcntl.h>
 #include <sys/stat.h>
 
+#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
+
 /* declarations of non-ANSI functions */
-#if defined(__MINGW32__)
+#if defined __MINGW32__
 # ifdef __STRICT_ANSI__
 int _putenv (const char *);
 # endif
-#elif defined(__CYGWIN__)
+#elif defined __CYGWIN__
 # ifdef __STRICT_ANSI__
 char *realpath (const char *, char *);
 int putenv (char *);
 int setenv (const char *, const char *, int);
 # endif
-/* #elif defined (other platforms) ... */
+/* #elif defined other_platform || defined ... */
 #endif
 
 /* portability defines, excluding path handling macros */
-#if defined(_MSC_VER)
+#if defined _MSC_VER
 # define setmode _setmode
 # define stat    _stat
 # define chmod   _chmod
 # define getcwd  _getcwd
 # define putenv  _putenv
 # define S_IXUSR _S_IEXEC
-# ifndef _INTPTR_T_DEFINED
-#  define _INTPTR_T_DEFINED
-#  define intptr_t int
-# endif
-#elif defined(__MINGW32__)
+#elif defined __MINGW32__
 # define setmode _setmode
 # define stat    _stat
 # define chmod   _chmod
 # define getcwd  _getcwd
 # define putenv  _putenv
-#elif defined(__CYGWIN__)
+#elif defined __CYGWIN__
 # define HAVE_SETENV
 # define FOPEN_WB "wb"
-/* #elif defined (other platforms) ... */
+/* #elif defined other platforms ... */
 #endif
 
-#if defined(PATH_MAX)
+#if defined PATH_MAX
 # define LT_PATHMAX PATH_MAX
-#elif defined(MAXPATHLEN)
+#elif defined MAXPATHLEN
 # define LT_PATHMAX MAXPATHLEN
 #else
 # define LT_PATHMAX 1024
@@ -4234,8 +5607,8 @@ int setenv (const char *, const char *, int);
 # define PATH_SEPARATOR ':'
 #endif
 
-#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
-  defined (__OS2__)
+#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \
+  defined __OS2__
 # define HAVE_DOS_BASED_FILE_SYSTEM
 # define FOPEN_WB "wb"
 # ifndef DIR_SEPARATOR_2
@@ -4268,10 +5641,10 @@ int setenv (const char *, const char *, int);
 
 #define XMALLOC(type, num)      ((type *) xmalloc ((num) * sizeof(type)))
 #define XFREE(stale) do { \
-  if (stale) { free ((void *) stale); stale = 0; } \
+  if (stale) { free (stale); stale = 0; } \
 } while (0)
 
-#if defined(LT_DEBUGWRAPPER)
+#if defined LT_DEBUGWRAPPER
 static int lt_debug = 1;
 #else
 static int lt_debug = 0;
@@ -4300,11 +5673,16 @@ void lt_dump_script (FILE *f);
 EOF
 
 	    cat <<EOF
-volatile const char * MAGIC_EXE = "$magic_exe";
+#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
+# define externally_visible volatile
+#else
+# define externally_visible __attribute__((externally_visible)) volatile
+#endif
+externally_visible const char * MAGIC_EXE = "$magic_exe";
 const char * LIB_PATH_VARNAME = "$shlibpath_var";
 EOF
 
-	    if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
+	    if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
               func_to_host_path "$temp_rpath"
 	      cat <<EOF
 const char * LIB_PATH_VALUE   = "$func_to_host_path_result";
@@ -4328,7 +5706,7 @@ const char * EXE_PATH_VALUE   = "";
 EOF
 	    fi
 
-	    if test "$fast_install" = yes; then
+	    if test yes = "$fast_install"; then
 	      cat <<EOF
 const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
 EOF
@@ -4357,12 +5735,12 @@ main (int argc, char *argv[])
   char *actual_cwrapper_name;
   char *target_name;
   char *lt_argv_zero;
-  intptr_t rval = 127;
+  int rval = 127;
 
   int i;
 
   program_name = (char *) xstrdup (base_name (argv[0]));
-  newargz = XMALLOC (char *, argc + 1);
+  newargz = XMALLOC (char *, (size_t) argc + 1);
 
   /* very simple arg parsing; don't want to rely on getopt
    * also, copy all non cwrapper options to newargz, except
@@ -4371,10 +5749,10 @@ main (int argc, char *argv[])
   newargc=0;
   for (i = 1; i < argc; i++)
     {
-      if (strcmp (argv[i], dumpscript_opt) == 0)
+      if (STREQ (argv[i], dumpscript_opt))
 	{
 EOF
-	    case "$host" in
+	    case $host in
 	      *mingw* | *cygwin* )
 		# make stdout use "unix" line endings
 		echo "          setmode(1,_O_BINARY);"
@@ -4385,12 +5763,12 @@ EOF
 	  lt_dump_script (stdout);
 	  return 0;
 	}
-      if (strcmp (argv[i], debug_opt) == 0)
+      if (STREQ (argv[i], debug_opt))
 	{
           lt_debug = 1;
           continue;
 	}
-      if (strcmp (argv[i], ltwrapper_option_prefix) == 0)
+      if (STREQ (argv[i], ltwrapper_option_prefix))
         {
           /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
              namespace, but it is not one of the ones we know about and
@@ -4413,7 +5791,7 @@ EOF
 EOF
 	    cat <<EOF
   /* The GNU banner must be the first non-error debug message */
-  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\n");
+  lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE) $VERSION\n");
 EOF
 	    cat <<"EOF"
   lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
@@ -4524,7 +5902,7 @@ EOF
 		cat <<"EOF"
   /* execv doesn't actually work on mingw as expected on unix */
   newargz = prepare_spawn (newargz);
-  rval = _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
+  rval = (int) _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
   if (rval == -1)
     {
       /* failed to start process */
@@ -4569,7 +5947,7 @@ base_name (const char *name)
 {
   const char *base;
 
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
   /* Skip over the disk name in MSDOS pathnames. */
   if (isalpha ((unsigned char) name[0]) && name[1] == ':')
     name += 2;
@@ -4628,7 +6006,7 @@ find_executable (const char *wrapper)
   const char *p_next;
   /* static buffer for getcwd */
   char tmp[LT_PATHMAX + 1];
-  int tmp_len;
+  size_t tmp_len;
   char *concat_name;
 
   lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
@@ -4638,7 +6016,7 @@ find_executable (const char *wrapper)
     return NULL;
 
   /* Absolute path? */
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
   if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
     {
       concat_name = xstrdup (wrapper);
@@ -4656,7 +6034,7 @@ find_executable (const char *wrapper)
 	    return concat_name;
 	  XFREE (concat_name);
 	}
-#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
+#if defined HAVE_DOS_BASED_FILE_SYSTEM
     }
 #endif
 
@@ -4679,7 +6057,7 @@ find_executable (const char *wrapper)
 	      for (q = p; *q; q++)
 		if (IS_PATH_SEPARATOR (*q))
 		  break;
-	      p_len = q - p;
+	      p_len = (size_t) (q - p);
 	      p_next = (*q == '\0' ? q : q + 1);
 	      if (p_len == 0)
 		{
@@ -4798,7 +6176,7 @@ strendzap (char *str, const char *pat)
   if (patlen <= len)
     {
       str += len - patlen;
-      if (strcmp (str, pat) == 0)
+      if (STREQ (str, pat))
 	*str = '\0';
     }
   return str;
@@ -4863,7 +6241,7 @@ lt_setenv (const char *name, const char *value)
     char *str = xstrdup (value);
     setenv (name, str, 1);
 #else
-    int len = strlen (name) + 1 + strlen (value) + 1;
+    size_t len = strlen (name) + 1 + strlen (value) + 1;
     char *str = XMALLOC (char, len);
     sprintf (str, "%s=%s", name, value);
     if (putenv (str) != EXIT_SUCCESS)
@@ -4880,8 +6258,8 @@ lt_extend_str (const char *orig_value, const char *add, int to_end)
   char *new_value;
   if (orig_value && *orig_value)
     {
-      int orig_value_len = strlen (orig_value);
-      int add_len = strlen (add);
+      size_t orig_value_len = strlen (orig_value);
+      size_t add_len = strlen (add);
       new_value = XMALLOC (char, add_len + orig_value_len + 1);
       if (to_end)
         {
@@ -4912,10 +6290,10 @@ lt_update_exe_path (const char *name, const char *value)
     {
       char *new_value = lt_extend_str (getenv (name), value, 0);
       /* some systems can't cope with a ':'-terminated path #' */
-      int len = strlen (new_value);
-      while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
+      size_t len = strlen (new_value);
+      while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
         {
-          new_value[len-1] = '\0';
+          new_value[--len] = '\0';
         }
       lt_setenv (name, new_value);
       XFREE (new_value);
@@ -5082,27 +6460,47 @@ EOF
 # True if ARG is an import lib, as indicated by $file_magic_cmd
 func_win32_import_lib_p ()
 {
-    $opt_debug
+    $debug_cmd
+
     case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
     *import*) : ;;
     *) false ;;
     esac
 }
 
+# func_suncc_cstd_abi
+# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!!
+# Several compiler flags select an ABI that is incompatible with the
+# Cstd library. Avoid specifying it if any are in CXXFLAGS.
+func_suncc_cstd_abi ()
+{
+    $debug_cmd
+
+    case " $compile_command " in
+    *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*)
+      suncc_use_cstd_abi=no
+      ;;
+    *)
+      suncc_use_cstd_abi=yes
+      ;;
+    esac
+}
+
 # func_mode_link arg...
 func_mode_link ()
 {
-    $opt_debug
+    $debug_cmd
+
     case $host in
     *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
       # It is impossible to link a dll without this setting, and
       # we shouldn't force the makefile maintainer to figure out
-      # which system we are compiling for in order to pass an extra
+      # what system we are compiling for in order to pass an extra
       # flag for every libtool invocation.
       # allow_undefined=no
 
       # FIXME: Unfortunately, there are problems with the above when trying
-      # to make a dll which has undefined symbols, in which case not
+      # to make a dll that has undefined symbols, in which case not
       # even a static library is built.  For now, we need to specify
       # -no-undefined on the libtool link line when we can be certain
       # that all symbols are satisfied, otherwise we get a static library.
@@ -5146,10 +6544,11 @@ func_mode_link ()
     module=no
     no_install=no
     objs=
+    os2dllname=
     non_pic_objects=
     precious_files_regex=
     prefer_static_libs=no
-    preload=no
+    preload=false
     prev=
     prevarg=
     release=
@@ -5161,7 +6560,7 @@ func_mode_link ()
     vinfo=
     vinfo_number=no
     weak_libs=
-    single_module="${wl}-single_module"
+    single_module=$wl-single_module
     func_infer_tag $base_compile
 
     # We need to know -static, to get the right output filenames.
@@ -5169,15 +6568,15 @@ func_mode_link ()
     do
       case $arg in
       -shared)
-	test "$build_libtool_libs" != yes && \
-	  func_fatal_configuration "can not build a shared library"
+	test yes != "$build_libtool_libs" \
+	  && func_fatal_configuration "cannot build a shared library"
 	build_old_libs=no
 	break
 	;;
       -all-static | -static | -static-libtool-libs)
 	case $arg in
 	-all-static)
-	  if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
+	  if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then
 	    func_warning "complete static linking is impossible in this configuration"
 	  fi
 	  if test -n "$link_static_flag"; then
@@ -5210,7 +6609,7 @@ func_mode_link ()
 
     # Go through the arguments, transforming them on the way.
     while test "$#" -gt 0; do
-      arg="$1"
+      arg=$1
       shift
       func_quote_for_eval "$arg"
       qarg=$func_quote_for_eval_unquoted_result
@@ -5227,21 +6626,21 @@ func_mode_link ()
 
 	case $prev in
 	bindir)
-	  bindir="$arg"
+	  bindir=$arg
 	  prev=
 	  continue
 	  ;;
 	dlfiles|dlprefiles)
-	  if test "$preload" = no; then
+	  $preload || {
 	    # Add the symbol object into the linking commands.
 	    func_append compile_command " @SYMFILE@"
 	    func_append finalize_command " @SYMFILE@"
-	    preload=yes
-	  fi
+	    preload=:
+	  }
 	  case $arg in
 	  *.la | *.lo) ;;  # We handle these cases below.
 	  force)
-	    if test "$dlself" = no; then
+	    if test no = "$dlself"; then
 	      dlself=needless
 	      export_dynamic=yes
 	    fi
@@ -5249,9 +6648,9 @@ func_mode_link ()
 	    continue
 	    ;;
 	  self)
-	    if test "$prev" = dlprefiles; then
+	    if test dlprefiles = "$prev"; then
 	      dlself=yes
-	    elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then
+	    elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then
 	      dlself=yes
 	    else
 	      dlself=needless
@@ -5261,7 +6660,7 @@ func_mode_link ()
 	    continue
 	    ;;
 	  *)
-	    if test "$prev" = dlfiles; then
+	    if test dlfiles = "$prev"; then
 	      func_append dlfiles " $arg"
 	    else
 	      func_append dlprefiles " $arg"
@@ -5272,14 +6671,14 @@ func_mode_link ()
 	  esac
 	  ;;
 	expsyms)
-	  export_symbols="$arg"
+	  export_symbols=$arg
 	  test -f "$arg" \
-	    || func_fatal_error "symbol file \`$arg' does not exist"
+	    || func_fatal_error "symbol file '$arg' does not exist"
 	  prev=
 	  continue
 	  ;;
 	expsyms_regex)
-	  export_symbols_regex="$arg"
+	  export_symbols_regex=$arg
 	  prev=
 	  continue
 	  ;;
@@ -5297,7 +6696,13 @@ func_mode_link ()
 	  continue
 	  ;;
 	inst_prefix)
-	  inst_prefix_dir="$arg"
+	  inst_prefix_dir=$arg
+	  prev=
+	  continue
+	  ;;
+	mllvm)
+	  # Clang does not use LLVM to link, so we can simply discard any
+	  # '-mllvm $arg' options when doing the link step.
 	  prev=
 	  continue
 	  ;;
@@ -5321,21 +6726,21 @@ func_mode_link ()
 
 		if test -z "$pic_object" ||
 		   test -z "$non_pic_object" ||
-		   test "$pic_object" = none &&
-		   test "$non_pic_object" = none; then
-		  func_fatal_error "cannot find name of object for \`$arg'"
+		   test none = "$pic_object" &&
+		   test none = "$non_pic_object"; then
+		  func_fatal_error "cannot find name of object for '$arg'"
 		fi
 
 		# Extract subdirectory from the argument.
 		func_dirname "$arg" "/" ""
-		xdir="$func_dirname_result"
+		xdir=$func_dirname_result
 
-		if test "$pic_object" != none; then
+		if test none != "$pic_object"; then
 		  # Prepend the subdirectory the object is found in.
-		  pic_object="$xdir$pic_object"
+		  pic_object=$xdir$pic_object
 
-		  if test "$prev" = dlfiles; then
-		    if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+		  if test dlfiles = "$prev"; then
+		    if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
 		      func_append dlfiles " $pic_object"
 		      prev=
 		      continue
@@ -5346,7 +6751,7 @@ func_mode_link ()
 		  fi
 
 		  # CHECK ME:  I think I busted this.  -Ossama
-		  if test "$prev" = dlprefiles; then
+		  if test dlprefiles = "$prev"; then
 		    # Preload the old-style object.
 		    func_append dlprefiles " $pic_object"
 		    prev=
@@ -5354,23 +6759,23 @@ func_mode_link ()
 
 		  # A PIC object.
 		  func_append libobjs " $pic_object"
-		  arg="$pic_object"
+		  arg=$pic_object
 		fi
 
 		# Non-PIC object.
-		if test "$non_pic_object" != none; then
+		if test none != "$non_pic_object"; then
 		  # Prepend the subdirectory the object is found in.
-		  non_pic_object="$xdir$non_pic_object"
+		  non_pic_object=$xdir$non_pic_object
 
 		  # A standard non-PIC object
 		  func_append non_pic_objects " $non_pic_object"
-		  if test -z "$pic_object" || test "$pic_object" = none ; then
-		    arg="$non_pic_object"
+		  if test -z "$pic_object" || test none = "$pic_object"; then
+		    arg=$non_pic_object
 		  fi
 		else
 		  # If the PIC object exists, use it instead.
 		  # $xdir was prepended to $pic_object above.
-		  non_pic_object="$pic_object"
+		  non_pic_object=$pic_object
 		  func_append non_pic_objects " $non_pic_object"
 		fi
 	      else
@@ -5378,7 +6783,7 @@ func_mode_link ()
 		if $opt_dry_run; then
 		  # Extract subdirectory from the argument.
 		  func_dirname "$arg" "/" ""
-		  xdir="$func_dirname_result"
+		  xdir=$func_dirname_result
 
 		  func_lo2o "$arg"
 		  pic_object=$xdir$objdir/$func_lo2o_result
@@ -5386,24 +6791,29 @@ func_mode_link ()
 		  func_append libobjs " $pic_object"
 		  func_append non_pic_objects " $non_pic_object"
 	        else
-		  func_fatal_error "\`$arg' is not a valid libtool object"
+		  func_fatal_error "'$arg' is not a valid libtool object"
 		fi
 	      fi
 	    done
 	  else
-	    func_fatal_error "link input file \`$arg' does not exist"
+	    func_fatal_error "link input file '$arg' does not exist"
 	  fi
 	  arg=$save_arg
 	  prev=
 	  continue
 	  ;;
+	os2dllname)
+	  os2dllname=$arg
+	  prev=
+	  continue
+	  ;;
 	precious_regex)
-	  precious_files_regex="$arg"
+	  precious_files_regex=$arg
 	  prev=
 	  continue
 	  ;;
 	release)
-	  release="-$arg"
+	  release=-$arg
 	  prev=
 	  continue
 	  ;;
@@ -5415,7 +6825,7 @@ func_mode_link ()
 	    func_fatal_error "only absolute run-paths are allowed"
 	    ;;
 	  esac
-	  if test "$prev" = rpath; then
+	  if test rpath = "$prev"; then
 	    case "$rpath " in
 	    *" $arg "*) ;;
 	    *) func_append rpath " $arg" ;;
@@ -5430,7 +6840,7 @@ func_mode_link ()
 	  continue
 	  ;;
 	shrext)
-	  shrext_cmds="$arg"
+	  shrext_cmds=$arg
 	  prev=
 	  continue
 	  ;;
@@ -5470,7 +6880,7 @@ func_mode_link ()
 	esac
       fi # test -n "$prev"
 
-      prevarg="$arg"
+      prevarg=$arg
 
       case $arg in
       -all-static)
@@ -5484,7 +6894,7 @@ func_mode_link ()
 
       -allow-undefined)
 	# FIXME: remove this flag sometime in the future.
-	func_fatal_error "\`-allow-undefined' must not be used because it is the default"
+	func_fatal_error "'-allow-undefined' must not be used because it is the default"
 	;;
 
       -avoid-version)
@@ -5516,7 +6926,7 @@ func_mode_link ()
 	if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
 	  func_fatal_error "more than one -exported-symbols argument is not allowed"
 	fi
-	if test "X$arg" = "X-export-symbols"; then
+	if test X-export-symbols = "X$arg"; then
 	  prev=expsyms
 	else
 	  prev=expsyms_regex
@@ -5550,9 +6960,9 @@ func_mode_link ()
 	func_stripname "-L" '' "$arg"
 	if test -z "$func_stripname_result"; then
 	  if test "$#" -gt 0; then
-	    func_fatal_error "require no space between \`-L' and \`$1'"
+	    func_fatal_error "require no space between '-L' and '$1'"
 	  else
-	    func_fatal_error "need path for \`-L' option"
+	    func_fatal_error "need path for '-L' option"
 	  fi
 	fi
 	func_resolve_sysroot "$func_stripname_result"
@@ -5563,8 +6973,8 @@ func_mode_link ()
 	*)
 	  absdir=`cd "$dir" && pwd`
 	  test -z "$absdir" && \
-	    func_fatal_error "cannot determine absolute directory name of \`$dir'"
-	  dir="$absdir"
+	    func_fatal_error "cannot determine absolute directory name of '$dir'"
+	  dir=$absdir
 	  ;;
 	esac
 	case "$deplibs " in
@@ -5599,7 +7009,7 @@ func_mode_link ()
 	;;
 
       -l*)
-	if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
+	if test X-lc = "X$arg" || test X-lm = "X$arg"; then
 	  case $host in
 	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
 	    # These systems don't actually have a C or math library (as such)
@@ -5607,11 +7017,11 @@ func_mode_link ()
 	    ;;
 	  *-*-os2*)
 	    # These systems don't actually have a C library (as such)
-	    test "X$arg" = "X-lc" && continue
+	    test X-lc = "X$arg" && continue
 	    ;;
-	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+	  *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
 	    # Do not include libc due to us having libc/libc_r.
-	    test "X$arg" = "X-lc" && continue
+	    test X-lc = "X$arg" && continue
 	    ;;
 	  *-*-rhapsody* | *-*-darwin1.[012])
 	    # Rhapsody C and math libraries are in the System framework
@@ -5620,16 +7030,16 @@ func_mode_link ()
 	    ;;
 	  *-*-sco3.2v5* | *-*-sco5v6*)
 	    # Causes problems with __ctype
-	    test "X$arg" = "X-lc" && continue
+	    test X-lc = "X$arg" && continue
 	    ;;
 	  *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
 	    # Compiler inserts libc in the correct place for threads to work
-	    test "X$arg" = "X-lc" && continue
+	    test X-lc = "X$arg" && continue
 	    ;;
 	  esac
-	elif test "X$arg" = "X-lc_r"; then
+	elif test X-lc_r = "X$arg"; then
 	 case $host in
-	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
+	 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
 	   # Do not include libc_r directly, use -pthread flag.
 	   continue
 	   ;;
@@ -5639,6 +7049,11 @@ func_mode_link ()
 	continue
 	;;
 
+      -mllvm)
+	prev=mllvm
+	continue
+	;;
+
       -module)
 	module=yes
 	continue
@@ -5668,7 +7083,7 @@ func_mode_link ()
 	;;
 
       -multi_module)
-	single_module="${wl}-multi_module"
+	single_module=$wl-multi_module
 	continue
 	;;
 
@@ -5682,8 +7097,8 @@ func_mode_link ()
 	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
 	  # The PATH hackery in wrapper scripts is required on Windows
 	  # and Darwin in order for the loader to find any dlls it needs.
-	  func_warning "\`-no-install' is ignored for $host"
-	  func_warning "assuming \`-no-fast-install' instead"
+	  func_warning "'-no-install' is ignored for $host"
+	  func_warning "assuming '-no-fast-install' instead"
 	  fast_install=no
 	  ;;
 	*) no_install=yes ;;
@@ -5701,6 +7116,11 @@ func_mode_link ()
 	continue
 	;;
 
+      -os2dllname)
+	prev=os2dllname
+	continue
+	;;
+
       -o) prev=output ;;
 
       -precious-files-regex)
@@ -5788,14 +7208,14 @@ func_mode_link ()
 	func_stripname '-Wc,' '' "$arg"
 	args=$func_stripname_result
 	arg=
-	save_ifs="$IFS"; IFS=','
+	save_ifs=$IFS; IFS=,
 	for flag in $args; do
-	  IFS="$save_ifs"
+	  IFS=$save_ifs
           func_quote_for_eval "$flag"
 	  func_append arg " $func_quote_for_eval_result"
 	  func_append compiler_flags " $func_quote_for_eval_result"
 	done
-	IFS="$save_ifs"
+	IFS=$save_ifs
 	func_stripname ' ' '' "$arg"
 	arg=$func_stripname_result
 	;;
@@ -5804,15 +7224,15 @@ func_mode_link ()
 	func_stripname '-Wl,' '' "$arg"
 	args=$func_stripname_result
 	arg=
-	save_ifs="$IFS"; IFS=','
+	save_ifs=$IFS; IFS=,
 	for flag in $args; do
-	  IFS="$save_ifs"
+	  IFS=$save_ifs
           func_quote_for_eval "$flag"
 	  func_append arg " $wl$func_quote_for_eval_result"
 	  func_append compiler_flags " $wl$func_quote_for_eval_result"
 	  func_append linker_flags " $func_quote_for_eval_result"
 	done
-	IFS="$save_ifs"
+	IFS=$save_ifs
 	func_stripname ' ' '' "$arg"
 	arg=$func_stripname_result
 	;;
@@ -5835,7 +7255,7 @@ func_mode_link ()
       # -msg_* for osf cc
       -msg_*)
 	func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
+	arg=$func_quote_for_eval_result
 	;;
 
       # Flags to be passed through unchanged, with rationale:
@@ -5847,25 +7267,49 @@ func_mode_link ()
       # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
       # -F/path              path to uninstalled frameworks, gcc on darwin
       # -p, -pg, --coverage, -fprofile-*  profiling flags for GCC
+      # -fstack-protector*   stack protector flags for GCC
       # @file                GCC response files
       # -tp=*                Portland pgcc target processor selection
       # --sysroot=*          for sysroot support
-      # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+      # -specs=*             GCC specs files
+      # -stdlib=*            select c++ std lib with clang
+      # -fsanitize=*         Clang/GCC memory and address sanitizer
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-      -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
+      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+      -specs=*|-fsanitize=*)
         func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
+	arg=$func_quote_for_eval_result
         func_append compile_command " $arg"
         func_append finalize_command " $arg"
         func_append compiler_flags " $arg"
         continue
         ;;
 
+      -Z*)
+        if test os2 = "`expr $host : '.*\(os2\)'`"; then
+          # OS/2 uses -Zxxx to specify OS/2-specific options
+	  compiler_flags="$compiler_flags $arg"
+	  func_append compile_command " $arg"
+	  func_append finalize_command " $arg"
+	  case $arg in
+	  -Zlinker | -Zstack)
+	    prev=xcompiler
+	    ;;
+	  esac
+	  continue
+        else
+	  # Otherwise treat like 'Some other compiler flag' below
+	  func_quote_for_eval "$arg"
+	  arg=$func_quote_for_eval_result
+        fi
+	;;
+
       # Some other compiler flag.
       -* | +*)
         func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
+	arg=$func_quote_for_eval_result
 	;;
 
       *.$objext)
@@ -5886,21 +7330,21 @@ func_mode_link ()
 
 	  if test -z "$pic_object" ||
 	     test -z "$non_pic_object" ||
-	     test "$pic_object" = none &&
-	     test "$non_pic_object" = none; then
-	    func_fatal_error "cannot find name of object for \`$arg'"
+	     test none = "$pic_object" &&
+	     test none = "$non_pic_object"; then
+	    func_fatal_error "cannot find name of object for '$arg'"
 	  fi
 
 	  # Extract subdirectory from the argument.
 	  func_dirname "$arg" "/" ""
-	  xdir="$func_dirname_result"
+	  xdir=$func_dirname_result
 
-	  if test "$pic_object" != none; then
+	  test none = "$pic_object" || {
 	    # Prepend the subdirectory the object is found in.
-	    pic_object="$xdir$pic_object"
+	    pic_object=$xdir$pic_object
 
-	    if test "$prev" = dlfiles; then
-	      if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+	    if test dlfiles = "$prev"; then
+	      if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
 		func_append dlfiles " $pic_object"
 		prev=
 		continue
@@ -5911,7 +7355,7 @@ func_mode_link ()
 	    fi
 
 	    # CHECK ME:  I think I busted this.  -Ossama
-	    if test "$prev" = dlprefiles; then
+	    if test dlprefiles = "$prev"; then
 	      # Preload the old-style object.
 	      func_append dlprefiles " $pic_object"
 	      prev=
@@ -5919,23 +7363,23 @@ func_mode_link ()
 
 	    # A PIC object.
 	    func_append libobjs " $pic_object"
-	    arg="$pic_object"
-	  fi
+	    arg=$pic_object
+	  }
 
 	  # Non-PIC object.
-	  if test "$non_pic_object" != none; then
+	  if test none != "$non_pic_object"; then
 	    # Prepend the subdirectory the object is found in.
-	    non_pic_object="$xdir$non_pic_object"
+	    non_pic_object=$xdir$non_pic_object
 
 	    # A standard non-PIC object
 	    func_append non_pic_objects " $non_pic_object"
-	    if test -z "$pic_object" || test "$pic_object" = none ; then
-	      arg="$non_pic_object"
+	    if test -z "$pic_object" || test none = "$pic_object"; then
+	      arg=$non_pic_object
 	    fi
 	  else
 	    # If the PIC object exists, use it instead.
 	    # $xdir was prepended to $pic_object above.
-	    non_pic_object="$pic_object"
+	    non_pic_object=$pic_object
 	    func_append non_pic_objects " $non_pic_object"
 	  fi
 	else
@@ -5943,7 +7387,7 @@ func_mode_link ()
 	  if $opt_dry_run; then
 	    # Extract subdirectory from the argument.
 	    func_dirname "$arg" "/" ""
-	    xdir="$func_dirname_result"
+	    xdir=$func_dirname_result
 
 	    func_lo2o "$arg"
 	    pic_object=$xdir$objdir/$func_lo2o_result
@@ -5951,7 +7395,7 @@ func_mode_link ()
 	    func_append libobjs " $pic_object"
 	    func_append non_pic_objects " $non_pic_object"
 	  else
-	    func_fatal_error "\`$arg' is not a valid libtool object"
+	    func_fatal_error "'$arg' is not a valid libtool object"
 	  fi
 	fi
 	;;
@@ -5967,11 +7411,11 @@ func_mode_link ()
 	# A libtool-controlled library.
 
 	func_resolve_sysroot "$arg"
-	if test "$prev" = dlfiles; then
+	if test dlfiles = "$prev"; then
 	  # This library was specified with -dlopen.
 	  func_append dlfiles " $func_resolve_sysroot_result"
 	  prev=
-	elif test "$prev" = dlprefiles; then
+	elif test dlprefiles = "$prev"; then
 	  # The library was specified with -dlpreopen.
 	  func_append dlprefiles " $func_resolve_sysroot_result"
 	  prev=
@@ -5986,7 +7430,7 @@ func_mode_link ()
 	# Unknown arguments in both finalize_command and compile_command need
 	# to be aesthetically quoted because they are evaled later.
 	func_quote_for_eval "$arg"
-	arg="$func_quote_for_eval_result"
+	arg=$func_quote_for_eval_result
 	;;
       esac # arg
 
@@ -5998,9 +7442,9 @@ func_mode_link ()
     done # argument parsing loop
 
     test -n "$prev" && \
-      func_fatal_help "the \`$prevarg' option requires an argument"
+      func_fatal_help "the '$prevarg' option requires an argument"
 
-    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
+    if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then
       eval arg=\"$export_dynamic_flag_spec\"
       func_append compile_command " $arg"
       func_append finalize_command " $arg"
@@ -6009,20 +7453,23 @@ func_mode_link ()
     oldlibs=
     # calculate the name of the file, without its directory
     func_basename "$output"
-    outputname="$func_basename_result"
-    libobjs_save="$libobjs"
+    outputname=$func_basename_result
+    libobjs_save=$libobjs
 
     if test -n "$shlibpath_var"; then
       # get the directories listed in $shlibpath_var
-      eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\`
+      eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\`
     else
       shlib_search_path=
     fi
     eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
     eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
 
+    # Definition is injected by LT_CONFIG during libtool generation.
+    func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH"
+
     func_dirname "$output" "/" ""
-    output_objdir="$func_dirname_result$objdir"
+    output_objdir=$func_dirname_result$objdir
     func_to_tool_file "$output_objdir/"
     tool_output_objdir=$func_to_tool_file_result
     # Create the object directory.
@@ -6045,7 +7492,7 @@ func_mode_link ()
     # Find all interdependent deplibs by searching for libraries
     # that are linked more than once (e.g. -la -lb -la)
     for deplib in $deplibs; do
-      if $opt_preserve_dup_deps ; then
+      if $opt_preserve_dup_deps; then
 	case "$libs " in
 	*" $deplib "*) func_append specialdeplibs " $deplib" ;;
 	esac
@@ -6053,7 +7500,7 @@ func_mode_link ()
       func_append libs " $deplib"
     done
 
-    if test "$linkmode" = lib; then
+    if test lib = "$linkmode"; then
       libs="$predeps $libs $compiler_lib_search_path $postdeps"
 
       # Compute libraries that are listed more than once in $predeps
@@ -6085,7 +7532,7 @@ func_mode_link ()
 	  case $file in
 	  *.la) ;;
 	  *)
-	    func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file"
+	    func_fatal_help "libraries can '-dlopen' only libtool libraries: $file"
 	    ;;
 	  esac
 	done
@@ -6093,7 +7540,7 @@ func_mode_link ()
     prog)
 	compile_deplibs=
 	finalize_deplibs=
-	alldeplibs=no
+	alldeplibs=false
 	newdlfiles=
 	newdlprefiles=
 	passes="conv scan dlopen dlpreopen link"
@@ -6105,32 +7552,32 @@ func_mode_link ()
     for pass in $passes; do
       # The preopen pass in lib mode reverses $deplibs; put it back here
       # so that -L comes before libs that need it for instance...
-      if test "$linkmode,$pass" = "lib,link"; then
+      if test lib,link = "$linkmode,$pass"; then
 	## FIXME: Find the place where the list is rebuilt in the wrong
 	##        order, and fix it there properly
         tmp_deplibs=
 	for deplib in $deplibs; do
 	  tmp_deplibs="$deplib $tmp_deplibs"
 	done
-	deplibs="$tmp_deplibs"
+	deplibs=$tmp_deplibs
       fi
 
-      if test "$linkmode,$pass" = "lib,link" ||
-	 test "$linkmode,$pass" = "prog,scan"; then
-	libs="$deplibs"
+      if test lib,link = "$linkmode,$pass" ||
+	 test prog,scan = "$linkmode,$pass"; then
+	libs=$deplibs
 	deplibs=
       fi
-      if test "$linkmode" = prog; then
+      if test prog = "$linkmode"; then
 	case $pass in
-	dlopen) libs="$dlfiles" ;;
-	dlpreopen) libs="$dlprefiles" ;;
+	dlopen) libs=$dlfiles ;;
+	dlpreopen) libs=$dlprefiles ;;
 	link)
 	  libs="$deplibs %DEPLIBS%"
 	  test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
 	  ;;
 	esac
       fi
-      if test "$linkmode,$pass" = "lib,dlpreopen"; then
+      if test lib,dlpreopen = "$linkmode,$pass"; then
 	# Collect and forward deplibs of preopened libtool libs
 	for lib in $dlprefiles; do
 	  # Ignore non-libtool-libs
@@ -6151,26 +7598,26 @@ func_mode_link ()
 	    esac
 	  done
 	done
-	libs="$dlprefiles"
+	libs=$dlprefiles
       fi
-      if test "$pass" = dlopen; then
+      if test dlopen = "$pass"; then
 	# Collect dlpreopened libraries
-	save_deplibs="$deplibs"
+	save_deplibs=$deplibs
 	deplibs=
       fi
 
       for deplib in $libs; do
 	lib=
-	found=no
+	found=false
 	case $deplib in
 	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
         |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
-	  if test "$linkmode,$pass" = "prog,link"; then
+	  if test prog,link = "$linkmode,$pass"; then
 	    compile_deplibs="$deplib $compile_deplibs"
 	    finalize_deplibs="$deplib $finalize_deplibs"
 	  else
 	    func_append compiler_flags " $deplib"
-	    if test "$linkmode" = lib ; then
+	    if test lib = "$linkmode"; then
 		case "$new_inherited_linker_flags " in
 		    *" $deplib "*) ;;
 		    * ) func_append new_inherited_linker_flags " $deplib" ;;
@@ -6180,13 +7627,13 @@ func_mode_link ()
 	  continue
 	  ;;
 	-l*)
-	  if test "$linkmode" != lib && test "$linkmode" != prog; then
-	    func_warning "\`-l' is ignored for archives/objects"
+	  if test lib != "$linkmode" && test prog != "$linkmode"; then
+	    func_warning "'-l' is ignored for archives/objects"
 	    continue
 	  fi
 	  func_stripname '-l' '' "$deplib"
 	  name=$func_stripname_result
-	  if test "$linkmode" = lib; then
+	  if test lib = "$linkmode"; then
 	    searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
 	  else
 	    searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
@@ -6194,31 +7641,22 @@ func_mode_link ()
 	  for searchdir in $searchdirs; do
 	    for search_ext in .la $std_shrext .so .a; do
 	      # Search the libtool library
-	      lib="$searchdir/lib${name}${search_ext}"
+	      lib=$searchdir/lib$name$search_ext
 	      if test -f "$lib"; then
-		if test "$search_ext" = ".la"; then
-		  found=yes
+		if test .la = "$search_ext"; then
+		  found=:
 		else
-		  found=no
+		  found=false
 		fi
 		break 2
 	      fi
 	    done
 	  done
-	  if test "$found" != yes; then
-	    # deplib doesn't seem to be a libtool library
-	    if test "$linkmode,$pass" = "prog,link"; then
-	      compile_deplibs="$deplib $compile_deplibs"
-	      finalize_deplibs="$deplib $finalize_deplibs"
-	    else
-	      deplibs="$deplib $deplibs"
-	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
-	    fi
-	    continue
-	  else # deplib is a libtool library
+	  if $found; then
+	    # deplib is a libtool library
 	    # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
 	    # We need to do some special things here, and not later.
-	    if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+	    if test yes = "$allow_libtool_libs_with_static_runtimes"; then
 	      case " $predeps $postdeps " in
 	      *" $deplib "*)
 		if func_lalib_p "$lib"; then
@@ -6226,19 +7664,19 @@ func_mode_link ()
 		  old_library=
 		  func_source "$lib"
 		  for l in $old_library $library_names; do
-		    ll="$l"
+		    ll=$l
 		  done
-		  if test "X$ll" = "X$old_library" ; then # only static version available
-		    found=no
+		  if test "X$ll" = "X$old_library"; then # only static version available
+		    found=false
 		    func_dirname "$lib" "" "."
-		    ladir="$func_dirname_result"
+		    ladir=$func_dirname_result
 		    lib=$ladir/$old_library
-		    if test "$linkmode,$pass" = "prog,link"; then
+		    if test prog,link = "$linkmode,$pass"; then
 		      compile_deplibs="$deplib $compile_deplibs"
 		      finalize_deplibs="$deplib $finalize_deplibs"
 		    else
 		      deplibs="$deplib $deplibs"
-		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+		      test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
 		    fi
 		    continue
 		  fi
@@ -6247,15 +7685,25 @@ func_mode_link ()
 	      *) ;;
 	      esac
 	    fi
+	  else
+	    # deplib doesn't seem to be a libtool library
+	    if test prog,link = "$linkmode,$pass"; then
+	      compile_deplibs="$deplib $compile_deplibs"
+	      finalize_deplibs="$deplib $finalize_deplibs"
+	    else
+	      deplibs="$deplib $deplibs"
+	      test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
+	    fi
+	    continue
 	  fi
 	  ;; # -l
 	*.ltframework)
-	  if test "$linkmode,$pass" = "prog,link"; then
+	  if test prog,link = "$linkmode,$pass"; then
 	    compile_deplibs="$deplib $compile_deplibs"
 	    finalize_deplibs="$deplib $finalize_deplibs"
 	  else
 	    deplibs="$deplib $deplibs"
-	    if test "$linkmode" = lib ; then
+	    if test lib = "$linkmode"; then
 		case "$new_inherited_linker_flags " in
 		    *" $deplib "*) ;;
 		    * ) func_append new_inherited_linker_flags " $deplib" ;;
@@ -6268,18 +7716,18 @@ func_mode_link ()
 	  case $linkmode in
 	  lib)
 	    deplibs="$deplib $deplibs"
-	    test "$pass" = conv && continue
+	    test conv = "$pass" && continue
 	    newdependency_libs="$deplib $newdependency_libs"
 	    func_stripname '-L' '' "$deplib"
 	    func_resolve_sysroot "$func_stripname_result"
 	    func_append newlib_search_path " $func_resolve_sysroot_result"
 	    ;;
 	  prog)
-	    if test "$pass" = conv; then
+	    if test conv = "$pass"; then
 	      deplibs="$deplib $deplibs"
 	      continue
 	    fi
-	    if test "$pass" = scan; then
+	    if test scan = "$pass"; then
 	      deplibs="$deplib $deplibs"
 	    else
 	      compile_deplibs="$deplib $compile_deplibs"
@@ -6290,13 +7738,13 @@ func_mode_link ()
 	    func_append newlib_search_path " $func_resolve_sysroot_result"
 	    ;;
 	  *)
-	    func_warning "\`-L' is ignored for archives/objects"
+	    func_warning "'-L' is ignored for archives/objects"
 	    ;;
 	  esac # linkmode
 	  continue
 	  ;; # -L
 	-R*)
-	  if test "$pass" = link; then
+	  if test link = "$pass"; then
 	    func_stripname '-R' '' "$deplib"
 	    func_resolve_sysroot "$func_stripname_result"
 	    dir=$func_resolve_sysroot_result
@@ -6314,7 +7762,7 @@ func_mode_link ()
 	  lib=$func_resolve_sysroot_result
 	  ;;
 	*.$libext)
-	  if test "$pass" = conv; then
+	  if test conv = "$pass"; then
 	    deplibs="$deplib $deplibs"
 	    continue
 	  fi
@@ -6325,21 +7773,26 @@ func_mode_link ()
 	    case " $dlpreconveniencelibs " in
 	    *" $deplib "*) ;;
 	    *)
-	      valid_a_lib=no
+	      valid_a_lib=false
 	      case $deplibs_check_method in
 		match_pattern*)
 		  set dummy $deplibs_check_method; shift
 		  match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
 		  if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
 		    | $EGREP "$match_pattern_regex" > /dev/null; then
-		    valid_a_lib=yes
+		    valid_a_lib=:
 		  fi
 		;;
 		pass_all)
-		  valid_a_lib=yes
+		  valid_a_lib=:
 		;;
 	      esac
-	      if test "$valid_a_lib" != yes; then
+	      if $valid_a_lib; then
+		echo
+		$ECHO "*** Warning: Linking the shared library $output against the"
+		$ECHO "*** static library $deplib is not portable!"
+		deplibs="$deplib $deplibs"
+	      else
 		echo
 		$ECHO "*** Warning: Trying to link with static lib archive $deplib."
 		echo "*** I have the capability to make that library automatically link in when"
@@ -6347,18 +7800,13 @@ func_mode_link ()
 		echo "*** shared version of the library, which you do not appear to have"
 		echo "*** because the file extensions .$libext of this argument makes me believe"
 		echo "*** that it is just a static archive that I should not use here."
-	      else
-		echo
-		$ECHO "*** Warning: Linking the shared library $output against the"
-		$ECHO "*** static library $deplib is not portable!"
-		deplibs="$deplib $deplibs"
 	      fi
 	      ;;
 	    esac
 	    continue
 	    ;;
 	  prog)
-	    if test "$pass" != link; then
+	    if test link != "$pass"; then
 	      deplibs="$deplib $deplibs"
 	    else
 	      compile_deplibs="$deplib $compile_deplibs"
@@ -6369,10 +7817,10 @@ func_mode_link ()
 	  esac # linkmode
 	  ;; # *.$libext
 	*.lo | *.$objext)
-	  if test "$pass" = conv; then
+	  if test conv = "$pass"; then
 	    deplibs="$deplib $deplibs"
-	  elif test "$linkmode" = prog; then
-	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+	  elif test prog = "$linkmode"; then
+	    if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then
 	      # If there is no dlopen support or we're linking statically,
 	      # we need to preload.
 	      func_append newdlprefiles " $deplib"
@@ -6385,22 +7833,20 @@ func_mode_link ()
 	  continue
 	  ;;
 	%DEPLIBS%)
-	  alldeplibs=yes
+	  alldeplibs=:
 	  continue
 	  ;;
 	esac # case $deplib
 
-	if test "$found" = yes || test -f "$lib"; then :
-	else
-	  func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'"
-	fi
+	$found || test -f "$lib" \
+	  || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'"
 
 	# Check to see that this really is a libtool archive.
 	func_lalib_unsafe_p "$lib" \
-	  || func_fatal_error "\`$lib' is not a valid libtool archive"
+	  || func_fatal_error "'$lib' is not a valid libtool archive"
 
 	func_dirname "$lib" "" "."
-	ladir="$func_dirname_result"
+	ladir=$func_dirname_result
 
 	dlname=
 	dlopen=
@@ -6430,19 +7876,19 @@ func_mode_link ()
 	  done
 	fi
 	dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
-	if test "$linkmode,$pass" = "lib,link" ||
-	   test "$linkmode,$pass" = "prog,scan" ||
-	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then
+	if test lib,link = "$linkmode,$pass" ||
+	   test prog,scan = "$linkmode,$pass" ||
+	   { test prog != "$linkmode" && test lib != "$linkmode"; }; then
 	  test -n "$dlopen" && func_append dlfiles " $dlopen"
 	  test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
 	fi
 
-	if test "$pass" = conv; then
+	if test conv = "$pass"; then
 	  # Only check for convenience libraries
 	  deplibs="$lib $deplibs"
 	  if test -z "$libdir"; then
 	    if test -z "$old_library"; then
-	      func_fatal_error "cannot find name of link library for \`$lib'"
+	      func_fatal_error "cannot find name of link library for '$lib'"
 	    fi
 	    # It is a libtool convenience library, so add in its objects.
 	    func_append convenience " $ladir/$objdir/$old_library"
@@ -6450,15 +7896,15 @@ func_mode_link ()
 	    tmp_libs=
 	    for deplib in $dependency_libs; do
 	      deplibs="$deplib $deplibs"
-	      if $opt_preserve_dup_deps ; then
+	      if $opt_preserve_dup_deps; then
 		case "$tmp_libs " in
 		*" $deplib "*) func_append specialdeplibs " $deplib" ;;
 		esac
 	      fi
 	      func_append tmp_libs " $deplib"
 	    done
-	  elif test "$linkmode" != prog && test "$linkmode" != lib; then
-	    func_fatal_error "\`$lib' is not a convenience library"
+	  elif test prog != "$linkmode" && test lib != "$linkmode"; then
+	    func_fatal_error "'$lib' is not a convenience library"
 	  fi
 	  continue
 	fi # $pass = conv
@@ -6467,26 +7913,26 @@ func_mode_link ()
 	# Get the name of the library we link against.
 	linklib=
 	if test -n "$old_library" &&
-	   { test "$prefer_static_libs" = yes ||
-	     test "$prefer_static_libs,$installed" = "built,no"; }; then
+	   { test yes = "$prefer_static_libs" ||
+	     test built,no = "$prefer_static_libs,$installed"; }; then
 	  linklib=$old_library
 	else
 	  for l in $old_library $library_names; do
-	    linklib="$l"
+	    linklib=$l
 	  done
 	fi
 	if test -z "$linklib"; then
-	  func_fatal_error "cannot find name of link library for \`$lib'"
+	  func_fatal_error "cannot find name of link library for '$lib'"
 	fi
 
 	# This library was specified with -dlopen.
-	if test "$pass" = dlopen; then
-	  if test -z "$libdir"; then
-	    func_fatal_error "cannot -dlopen a convenience library: \`$lib'"
-	  fi
+	if test dlopen = "$pass"; then
+	  test -z "$libdir" \
+	    && func_fatal_error "cannot -dlopen a convenience library: '$lib'"
 	  if test -z "$dlname" ||
-	     test "$dlopen_support" != yes ||
-	     test "$build_libtool_libs" = no; then
+	     test yes != "$dlopen_support" ||
+	     test no = "$build_libtool_libs"
+	  then
 	    # If there is no dlname, no dlopen support or we're linking
 	    # statically, we need to preload.  We also need to preload any
 	    # dependent libraries so libltdl's deplib preloader doesn't
@@ -6500,40 +7946,40 @@ func_mode_link ()
 
 	# We need an absolute path.
 	case $ladir in
-	[\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
+	[\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;;
 	*)
 	  abs_ladir=`cd "$ladir" && pwd`
 	  if test -z "$abs_ladir"; then
-	    func_warning "cannot determine absolute directory name of \`$ladir'"
+	    func_warning "cannot determine absolute directory name of '$ladir'"
 	    func_warning "passing it literally to the linker, although it might fail"
-	    abs_ladir="$ladir"
+	    abs_ladir=$ladir
 	  fi
 	  ;;
 	esac
 	func_basename "$lib"
-	laname="$func_basename_result"
+	laname=$func_basename_result
 
 	# Find the relevant object directory and library name.
-	if test "X$installed" = Xyes; then
+	if test yes = "$installed"; then
 	  if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-	    func_warning "library \`$lib' was moved."
-	    dir="$ladir"
-	    absdir="$abs_ladir"
-	    libdir="$abs_ladir"
+	    func_warning "library '$lib' was moved."
+	    dir=$ladir
+	    absdir=$abs_ladir
+	    libdir=$abs_ladir
 	  else
-	    dir="$lt_sysroot$libdir"
-	    absdir="$lt_sysroot$libdir"
+	    dir=$lt_sysroot$libdir
+	    absdir=$lt_sysroot$libdir
 	  fi
-	  test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+	  test yes = "$hardcode_automatic" && avoidtemprpath=yes
 	else
 	  if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
-	    dir="$ladir"
-	    absdir="$abs_ladir"
+	    dir=$ladir
+	    absdir=$abs_ladir
 	    # Remove this search path later
 	    func_append notinst_path " $abs_ladir"
 	  else
-	    dir="$ladir/$objdir"
-	    absdir="$abs_ladir/$objdir"
+	    dir=$ladir/$objdir
+	    absdir=$abs_ladir/$objdir
 	    # Remove this search path later
 	    func_append notinst_path " $abs_ladir"
 	  fi
@@ -6542,11 +7988,11 @@ func_mode_link ()
 	name=$func_stripname_result
 
 	# This library was specified with -dlpreopen.
-	if test "$pass" = dlpreopen; then
-	  if test -z "$libdir" && test "$linkmode" = prog; then
-	    func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'"
+	if test dlpreopen = "$pass"; then
+	  if test -z "$libdir" && test prog = "$linkmode"; then
+	    func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'"
 	  fi
-	  case "$host" in
+	  case $host in
 	    # special handling for platforms with PE-DLLs.
 	    *cygwin* | *mingw* | *cegcc* )
 	      # Linker will automatically link against shared library if both
@@ -6590,9 +8036,9 @@ func_mode_link ()
 
 	if test -z "$libdir"; then
 	  # Link the convenience library
-	  if test "$linkmode" = lib; then
+	  if test lib = "$linkmode"; then
 	    deplibs="$dir/$old_library $deplibs"
-	  elif test "$linkmode,$pass" = "prog,link"; then
+	  elif test prog,link = "$linkmode,$pass"; then
 	    compile_deplibs="$dir/$old_library $compile_deplibs"
 	    finalize_deplibs="$dir/$old_library $finalize_deplibs"
 	  else
@@ -6602,14 +8048,14 @@ func_mode_link ()
 	fi
 
 
-	if test "$linkmode" = prog && test "$pass" != link; then
+	if test prog = "$linkmode" && test link != "$pass"; then
 	  func_append newlib_search_path " $ladir"
 	  deplibs="$lib $deplibs"
 
-	  linkalldeplibs=no
-	  if test "$link_all_deplibs" != no || test -z "$library_names" ||
-	     test "$build_libtool_libs" = no; then
-	    linkalldeplibs=yes
+	  linkalldeplibs=false
+	  if test no != "$link_all_deplibs" || test -z "$library_names" ||
+	     test no = "$build_libtool_libs"; then
+	    linkalldeplibs=:
 	  fi
 
 	  tmp_libs=
@@ -6621,14 +8067,14 @@ func_mode_link ()
 		 ;;
 	    esac
 	    # Need to link against all dependency_libs?
-	    if test "$linkalldeplibs" = yes; then
+	    if $linkalldeplibs; then
 	      deplibs="$deplib $deplibs"
 	    else
 	      # Need to hardcode shared library paths
 	      # or/and link against static libraries
 	      newdependency_libs="$deplib $newdependency_libs"
 	    fi
-	    if $opt_preserve_dup_deps ; then
+	    if $opt_preserve_dup_deps; then
 	      case "$tmp_libs " in
 	      *" $deplib "*) func_append specialdeplibs " $deplib" ;;
 	      esac
@@ -6638,15 +8084,15 @@ func_mode_link ()
 	  continue
 	fi # $linkmode = prog...
 
-	if test "$linkmode,$pass" = "prog,link"; then
+	if test prog,link = "$linkmode,$pass"; then
 	  if test -n "$library_names" &&
-	     { { test "$prefer_static_libs" = no ||
-	         test "$prefer_static_libs,$installed" = "built,yes"; } ||
+	     { { test no = "$prefer_static_libs" ||
+	         test built,yes = "$prefer_static_libs,$installed"; } ||
 	       test -z "$old_library"; }; then
 	    # We need to hardcode the library path
-	    if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
+	    if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then
 	      # Make sure the rpath contains only unique directories.
-	      case "$temp_rpath:" in
+	      case $temp_rpath: in
 	      *"$absdir:"*) ;;
 	      *) func_append temp_rpath "$absdir:" ;;
 	      esac
@@ -6675,9 +8121,9 @@ func_mode_link ()
 	    esac
 	  fi # $linkmode,$pass = prog,link...
 
-	  if test "$alldeplibs" = yes &&
-	     { test "$deplibs_check_method" = pass_all ||
-	       { test "$build_libtool_libs" = yes &&
+	  if $alldeplibs &&
+	     { test pass_all = "$deplibs_check_method" ||
+	       { test yes = "$build_libtool_libs" &&
 		 test -n "$library_names"; }; }; then
 	    # We only need to search for static libraries
 	    continue
@@ -6686,19 +8132,19 @@ func_mode_link ()
 
 	link_static=no # Whether the deplib will be linked statically
 	use_static_libs=$prefer_static_libs
-	if test "$use_static_libs" = built && test "$installed" = yes; then
+	if test built = "$use_static_libs" && test yes = "$installed"; then
 	  use_static_libs=no
 	fi
 	if test -n "$library_names" &&
-	   { test "$use_static_libs" = no || test -z "$old_library"; }; then
+	   { test no = "$use_static_libs" || test -z "$old_library"; }; then
 	  case $host in
-	  *cygwin* | *mingw* | *cegcc*)
+	  *cygwin* | *mingw* | *cegcc* | *os2*)
 	      # No point in relinking DLLs because paths are not encoded
 	      func_append notinst_deplibs " $lib"
 	      need_relink=no
 	    ;;
 	  *)
-	    if test "$installed" = no; then
+	    if test no = "$installed"; then
 	      func_append notinst_deplibs " $lib"
 	      need_relink=yes
 	    fi
@@ -6708,24 +8154,24 @@ func_mode_link ()
 
 	  # Warn about portability, can't link against -module's on some
 	  # systems (darwin).  Don't bleat about dlopened modules though!
-	  dlopenmodule=""
+	  dlopenmodule=
 	  for dlpremoduletest in $dlprefiles; do
 	    if test "X$dlpremoduletest" = "X$lib"; then
-	      dlopenmodule="$dlpremoduletest"
+	      dlopenmodule=$dlpremoduletest
 	      break
 	    fi
 	  done
-	  if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then
+	  if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then
 	    echo
-	    if test "$linkmode" = prog; then
+	    if test prog = "$linkmode"; then
 	      $ECHO "*** Warning: Linking the executable $output against the loadable module"
 	    else
 	      $ECHO "*** Warning: Linking the shared library $output against the loadable module"
 	    fi
 	    $ECHO "*** $linklib is not portable!"
 	  fi
-	  if test "$linkmode" = lib &&
-	     test "$hardcode_into_libs" = yes; then
+	  if test lib = "$linkmode" &&
+	     test yes = "$hardcode_into_libs"; then
 	    # Hardcode the library path.
 	    # Skip directories that are in the system default run-time
 	    # search path.
@@ -6753,43 +8199,43 @@ func_mode_link ()
 	    # figure out the soname
 	    set dummy $library_names
 	    shift
-	    realname="$1"
+	    realname=$1
 	    shift
 	    libname=`eval "\\$ECHO \"$libname_spec\""`
 	    # use dlname if we got it. it's perfectly good, no?
 	    if test -n "$dlname"; then
-	      soname="$dlname"
+	      soname=$dlname
 	    elif test -n "$soname_spec"; then
 	      # bleh windows
 	      case $host in
-	      *cygwin* | mingw* | *cegcc*)
+	      *cygwin* | mingw* | *cegcc* | *os2*)
 	        func_arith $current - $age
 		major=$func_arith_result
-		versuffix="-$major"
+		versuffix=-$major
 		;;
 	      esac
 	      eval soname=\"$soname_spec\"
 	    else
-	      soname="$realname"
+	      soname=$realname
 	    fi
 
 	    # Make a new name for the extract_expsyms_cmds to use
-	    soroot="$soname"
+	    soroot=$soname
 	    func_basename "$soroot"
-	    soname="$func_basename_result"
+	    soname=$func_basename_result
 	    func_stripname 'lib' '.dll' "$soname"
 	    newlib=libimp-$func_stripname_result.a
 
 	    # If the library has no export list, then create one now
 	    if test -f "$output_objdir/$soname-def"; then :
 	    else
-	      func_verbose "extracting exported symbol list from \`$soname'"
+	      func_verbose "extracting exported symbol list from '$soname'"
 	      func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
 	    fi
 
 	    # Create $newlib
 	    if test -f "$output_objdir/$newlib"; then :; else
-	      func_verbose "generating import library for \`$soname'"
+	      func_verbose "generating import library for '$soname'"
 	      func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
 	    fi
 	    # make sure the library variables are pointing to the new library
@@ -6797,58 +8243,58 @@ func_mode_link ()
 	    linklib=$newlib
 	  fi # test -n "$old_archive_from_expsyms_cmds"
 
-	  if test "$linkmode" = prog || test "$opt_mode" != relink; then
+	  if test prog = "$linkmode" || test relink != "$opt_mode"; then
 	    add_shlibpath=
 	    add_dir=
 	    add=
 	    lib_linked=yes
 	    case $hardcode_action in
 	    immediate | unsupported)
-	      if test "$hardcode_direct" = no; then
-		add="$dir/$linklib"
+	      if test no = "$hardcode_direct"; then
+		add=$dir/$linklib
 		case $host in
-		  *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;;
-		  *-*-sysv4*uw2*) add_dir="-L$dir" ;;
+		  *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;;
+		  *-*-sysv4*uw2*) add_dir=-L$dir ;;
 		  *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
-		    *-*-unixware7*) add_dir="-L$dir" ;;
+		    *-*-unixware7*) add_dir=-L$dir ;;
 		  *-*-darwin* )
-		    # if the lib is a (non-dlopened) module then we can not
+		    # if the lib is a (non-dlopened) module then we cannot
 		    # link against it, someone is ignoring the earlier warnings
 		    if /usr/bin/file -L $add 2> /dev/null |
-			 $GREP ": [^:]* bundle" >/dev/null ; then
+			 $GREP ": [^:]* bundle" >/dev/null; then
 		      if test "X$dlopenmodule" != "X$lib"; then
 			$ECHO "*** Warning: lib $linklib is a module, not a shared library"
-			if test -z "$old_library" ; then
+			if test -z "$old_library"; then
 			  echo
 			  echo "*** And there doesn't seem to be a static archive available"
 			  echo "*** The link will probably fail, sorry"
 			else
-			  add="$dir/$old_library"
+			  add=$dir/$old_library
 			fi
 		      elif test -n "$old_library"; then
-			add="$dir/$old_library"
+			add=$dir/$old_library
 		      fi
 		    fi
 		esac
-	      elif test "$hardcode_minus_L" = no; then
+	      elif test no = "$hardcode_minus_L"; then
 		case $host in
-		*-*-sunos*) add_shlibpath="$dir" ;;
+		*-*-sunos*) add_shlibpath=$dir ;;
 		esac
-		add_dir="-L$dir"
-		add="-l$name"
-	      elif test "$hardcode_shlibpath_var" = no; then
-		add_shlibpath="$dir"
-		add="-l$name"
+		add_dir=-L$dir
+		add=-l$name
+	      elif test no = "$hardcode_shlibpath_var"; then
+		add_shlibpath=$dir
+		add=-l$name
 	      else
 		lib_linked=no
 	      fi
 	      ;;
 	    relink)
-	      if test "$hardcode_direct" = yes &&
-	         test "$hardcode_direct_absolute" = no; then
-		add="$dir/$linklib"
-	      elif test "$hardcode_minus_L" = yes; then
-		add_dir="-L$absdir"
+	      if test yes = "$hardcode_direct" &&
+	         test no = "$hardcode_direct_absolute"; then
+		add=$dir/$linklib
+	      elif test yes = "$hardcode_minus_L"; then
+		add_dir=-L$absdir
 		# Try looking first in the location we're being installed to.
 		if test -n "$inst_prefix_dir"; then
 		  case $libdir in
@@ -6857,10 +8303,10 @@ func_mode_link ()
 		      ;;
 		  esac
 		fi
-		add="-l$name"
-	      elif test "$hardcode_shlibpath_var" = yes; then
-		add_shlibpath="$dir"
-		add="-l$name"
+		add=-l$name
+	      elif test yes = "$hardcode_shlibpath_var"; then
+		add_shlibpath=$dir
+		add=-l$name
 	      else
 		lib_linked=no
 	      fi
@@ -6868,7 +8314,7 @@ func_mode_link ()
 	    *) lib_linked=no ;;
 	    esac
 
-	    if test "$lib_linked" != yes; then
+	    if test yes != "$lib_linked"; then
 	      func_fatal_configuration "unsupported hardcode properties"
 	    fi
 
@@ -6878,15 +8324,15 @@ func_mode_link ()
 	      *) func_append compile_shlibpath "$add_shlibpath:" ;;
 	      esac
 	    fi
-	    if test "$linkmode" = prog; then
+	    if test prog = "$linkmode"; then
 	      test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
 	      test -n "$add" && compile_deplibs="$add $compile_deplibs"
 	    else
 	      test -n "$add_dir" && deplibs="$add_dir $deplibs"
 	      test -n "$add" && deplibs="$add $deplibs"
-	      if test "$hardcode_direct" != yes &&
-		 test "$hardcode_minus_L" != yes &&
-		 test "$hardcode_shlibpath_var" = yes; then
+	      if test yes != "$hardcode_direct" &&
+		 test yes != "$hardcode_minus_L" &&
+		 test yes = "$hardcode_shlibpath_var"; then
 		case :$finalize_shlibpath: in
 		*":$libdir:"*) ;;
 		*) func_append finalize_shlibpath "$libdir:" ;;
@@ -6895,33 +8341,33 @@ func_mode_link ()
 	    fi
 	  fi
 
-	  if test "$linkmode" = prog || test "$opt_mode" = relink; then
+	  if test prog = "$linkmode" || test relink = "$opt_mode"; then
 	    add_shlibpath=
 	    add_dir=
 	    add=
 	    # Finalize command for both is simple: just hardcode it.
-	    if test "$hardcode_direct" = yes &&
-	       test "$hardcode_direct_absolute" = no; then
-	      add="$libdir/$linklib"
-	    elif test "$hardcode_minus_L" = yes; then
-	      add_dir="-L$libdir"
-	      add="-l$name"
-	    elif test "$hardcode_shlibpath_var" = yes; then
+	    if test yes = "$hardcode_direct" &&
+	       test no = "$hardcode_direct_absolute"; then
+	      add=$libdir/$linklib
+	    elif test yes = "$hardcode_minus_L"; then
+	      add_dir=-L$libdir
+	      add=-l$name
+	    elif test yes = "$hardcode_shlibpath_var"; then
 	      case :$finalize_shlibpath: in
 	      *":$libdir:"*) ;;
 	      *) func_append finalize_shlibpath "$libdir:" ;;
 	      esac
-	      add="-l$name"
-	    elif test "$hardcode_automatic" = yes; then
+	      add=-l$name
+	    elif test yes = "$hardcode_automatic"; then
 	      if test -n "$inst_prefix_dir" &&
-		 test -f "$inst_prefix_dir$libdir/$linklib" ; then
-		add="$inst_prefix_dir$libdir/$linklib"
+		 test -f "$inst_prefix_dir$libdir/$linklib"; then
+		add=$inst_prefix_dir$libdir/$linklib
 	      else
-		add="$libdir/$linklib"
+		add=$libdir/$linklib
 	      fi
 	    else
 	      # We cannot seem to hardcode it, guess we'll fake it.
-	      add_dir="-L$libdir"
+	      add_dir=-L$libdir
 	      # Try looking first in the location we're being installed to.
 	      if test -n "$inst_prefix_dir"; then
 		case $libdir in
@@ -6930,10 +8376,10 @@ func_mode_link ()
 		    ;;
 		esac
 	      fi
-	      add="-l$name"
+	      add=-l$name
 	    fi
 
-	    if test "$linkmode" = prog; then
+	    if test prog = "$linkmode"; then
 	      test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
 	      test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
 	    else
@@ -6941,43 +8387,43 @@ func_mode_link ()
 	      test -n "$add" && deplibs="$add $deplibs"
 	    fi
 	  fi
-	elif test "$linkmode" = prog; then
+	elif test prog = "$linkmode"; then
 	  # Here we assume that one of hardcode_direct or hardcode_minus_L
 	  # is not unsupported.  This is valid on all known static and
 	  # shared platforms.
-	  if test "$hardcode_direct" != unsupported; then
-	    test -n "$old_library" && linklib="$old_library"
+	  if test unsupported != "$hardcode_direct"; then
+	    test -n "$old_library" && linklib=$old_library
 	    compile_deplibs="$dir/$linklib $compile_deplibs"
 	    finalize_deplibs="$dir/$linklib $finalize_deplibs"
 	  else
 	    compile_deplibs="-l$name -L$dir $compile_deplibs"
 	    finalize_deplibs="-l$name -L$dir $finalize_deplibs"
 	  fi
-	elif test "$build_libtool_libs" = yes; then
+	elif test yes = "$build_libtool_libs"; then
 	  # Not a shared library
-	  if test "$deplibs_check_method" != pass_all; then
+	  if test pass_all != "$deplibs_check_method"; then
 	    # We're trying link a shared library against a static one
 	    # but the system doesn't support it.
 
 	    # Just print a warning and add the library to dependency_libs so
 	    # that the program can be linked against the static library.
 	    echo
-	    $ECHO "*** Warning: This system can not link to static lib archive $lib."
+	    $ECHO "*** Warning: This system cannot link to static lib archive $lib."
 	    echo "*** I have the capability to make that library automatically link in when"
 	    echo "*** you link to this library.  But I can only do this if you have a"
 	    echo "*** shared version of the library, which you do not appear to have."
-	    if test "$module" = yes; then
+	    if test yes = "$module"; then
 	      echo "*** But as you try to build a module library, libtool will still create "
 	      echo "*** a static module, that should work as long as the dlopening application"
 	      echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
 	      if test -z "$global_symbol_pipe"; then
 		echo
 		echo "*** However, this would only work if libtool was able to extract symbol"
-		echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
+		echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
 		echo "*** not find such a program.  So, this module is probably useless."
-		echo "*** \`nm' from GNU binutils and a full rebuild may help."
+		echo "*** 'nm' from GNU binutils and a full rebuild may help."
 	      fi
-	      if test "$build_old_libs" = no; then
+	      if test no = "$build_old_libs"; then
 		build_libtool_libs=module
 		build_old_libs=yes
 	      else
@@ -6990,11 +8436,11 @@ func_mode_link ()
 	  fi
 	fi # link shared/static library?
 
-	if test "$linkmode" = lib; then
+	if test lib = "$linkmode"; then
 	  if test -n "$dependency_libs" &&
-	     { test "$hardcode_into_libs" != yes ||
-	       test "$build_old_libs" = yes ||
-	       test "$link_static" = yes; }; then
+	     { test yes != "$hardcode_into_libs" ||
+	       test yes = "$build_old_libs" ||
+	       test yes = "$link_static"; }; then
 	    # Extract -R from dependency_libs
 	    temp_deplibs=
 	    for libdir in $dependency_libs; do
@@ -7008,12 +8454,12 @@ func_mode_link ()
 	      *) func_append temp_deplibs " $libdir";;
 	      esac
 	    done
-	    dependency_libs="$temp_deplibs"
+	    dependency_libs=$temp_deplibs
 	  fi
 
 	  func_append newlib_search_path " $absdir"
 	  # Link against this library
-	  test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
+	  test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
 	  # ... and its dependency_libs
 	  tmp_libs=
 	  for deplib in $dependency_libs; do
@@ -7023,7 +8469,7 @@ func_mode_link ()
                    func_resolve_sysroot "$func_stripname_result";;
               *) func_resolve_sysroot "$deplib" ;;
             esac
-	    if $opt_preserve_dup_deps ; then
+	    if $opt_preserve_dup_deps; then
 	      case "$tmp_libs " in
 	      *" $func_resolve_sysroot_result "*)
                 func_append specialdeplibs " $func_resolve_sysroot_result" ;;
@@ -7032,12 +8478,12 @@ func_mode_link ()
 	    func_append tmp_libs " $func_resolve_sysroot_result"
 	  done
 
-	  if test "$link_all_deplibs" != no; then
+	  if test no != "$link_all_deplibs"; then
 	    # Add the search paths of all dependency libraries
 	    for deplib in $dependency_libs; do
 	      path=
 	      case $deplib in
-	      -L*) path="$deplib" ;;
+	      -L*) path=$deplib ;;
 	      *.la)
 	        func_resolve_sysroot "$deplib"
 	        deplib=$func_resolve_sysroot_result
@@ -7045,12 +8491,12 @@ func_mode_link ()
 		dir=$func_dirname_result
 		# We need an absolute path.
 		case $dir in
-		[\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
+		[\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;;
 		*)
 		  absdir=`cd "$dir" && pwd`
 		  if test -z "$absdir"; then
-		    func_warning "cannot determine absolute directory name of \`$dir'"
-		    absdir="$dir"
+		    func_warning "cannot determine absolute directory name of '$dir'"
+		    absdir=$dir
 		  fi
 		  ;;
 		esac
@@ -7058,35 +8504,35 @@ func_mode_link ()
 		case $host in
 		*-*-darwin*)
 		  depdepl=
-		  eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
-		  if test -n "$deplibrary_names" ; then
-		    for tmp in $deplibrary_names ; do
+		  eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
+		  if test -n "$deplibrary_names"; then
+		    for tmp in $deplibrary_names; do
 		      depdepl=$tmp
 		    done
-		    if test -f "$absdir/$objdir/$depdepl" ; then
-		      depdepl="$absdir/$objdir/$depdepl"
-		      darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
+		    if test -f "$absdir/$objdir/$depdepl"; then
+		      depdepl=$absdir/$objdir/$depdepl
+		      darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
                       if test -z "$darwin_install_name"; then
-                          darwin_install_name=`${OTOOL64} -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
+                          darwin_install_name=`$OTOOL64 -L $depdepl  | awk '{if (NR == 2) {print $1;exit}}'`
                       fi
-		      func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
-		      func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}"
+		      func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl"
+		      func_append linker_flags " -dylib_file $darwin_install_name:$depdepl"
 		      path=
 		    fi
 		  fi
 		  ;;
 		*)
-		  path="-L$absdir/$objdir"
+		  path=-L$absdir/$objdir
 		  ;;
 		esac
 		else
-		  eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+		  eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
 		  test -z "$libdir" && \
-		    func_fatal_error "\`$deplib' is not a valid libtool archive"
+		    func_fatal_error "'$deplib' is not a valid libtool archive"
 		  test "$absdir" != "$libdir" && \
-		    func_warning "\`$deplib' seems to be moved"
+		    func_warning "'$deplib' seems to be moved"
 
-		  path="-L$absdir"
+		  path=-L$absdir
 		fi
 		;;
 	      esac
@@ -7098,23 +8544,23 @@ func_mode_link ()
 	  fi # link_all_deplibs != no
 	fi # linkmode = lib
       done # for deplib in $libs
-      if test "$pass" = link; then
-	if test "$linkmode" = "prog"; then
+      if test link = "$pass"; then
+	if test prog = "$linkmode"; then
 	  compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
 	  finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
 	else
 	  compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
 	fi
       fi
-      dependency_libs="$newdependency_libs"
-      if test "$pass" = dlpreopen; then
+      dependency_libs=$newdependency_libs
+      if test dlpreopen = "$pass"; then
 	# Link the dlpreopened libraries before other libraries
 	for deplib in $save_deplibs; do
 	  deplibs="$deplib $deplibs"
 	done
       fi
-      if test "$pass" != dlopen; then
-	if test "$pass" != conv; then
+      if test dlopen != "$pass"; then
+	test conv = "$pass" || {
 	  # Make sure lib_search_path contains only unique directories.
 	  lib_search_path=
 	  for dir in $newlib_search_path; do
@@ -7124,12 +8570,12 @@ func_mode_link ()
 	    esac
 	  done
 	  newlib_search_path=
-	fi
+	}
 
-	if test "$linkmode,$pass" != "prog,link"; then
-	  vars="deplibs"
-	else
+	if test prog,link = "$linkmode,$pass"; then
 	  vars="compile_deplibs finalize_deplibs"
+	else
+	  vars=deplibs
 	fi
 	for var in $vars dependency_libs; do
 	  # Add libraries to $var in reverse order
@@ -7187,62 +8633,93 @@ func_mode_link ()
 	  eval $var=\"$tmp_libs\"
 	done # for var
       fi
+
+      # Add Sun CC postdeps if required:
+      test CXX = "$tagname" && {
+        case $host_os in
+        linux*)
+          case `$CC -V 2>&1 | sed 5q` in
+          *Sun\ C*) # Sun C++ 5.9
+            func_suncc_cstd_abi
+
+            if test no != "$suncc_use_cstd_abi"; then
+              func_append postdeps ' -library=Cstd -library=Crun'
+            fi
+            ;;
+          esac
+          ;;
+
+        solaris*)
+          func_cc_basename "$CC"
+          case $func_cc_basename_result in
+          CC* | sunCC*)
+            func_suncc_cstd_abi
+
+            if test no != "$suncc_use_cstd_abi"; then
+              func_append postdeps ' -library=Cstd -library=Crun'
+            fi
+            ;;
+          esac
+          ;;
+        esac
+      }
+
       # Last step: remove runtime libs from dependency_libs
       # (they stay in deplibs)
       tmp_libs=
-      for i in $dependency_libs ; do
+      for i in $dependency_libs; do
 	case " $predeps $postdeps $compiler_lib_search_path " in
 	*" $i "*)
-	  i=""
+	  i=
 	  ;;
 	esac
-	if test -n "$i" ; then
+	if test -n "$i"; then
 	  func_append tmp_libs " $i"
 	fi
       done
       dependency_libs=$tmp_libs
     done # for pass
-    if test "$linkmode" = prog; then
-      dlfiles="$newdlfiles"
+    if test prog = "$linkmode"; then
+      dlfiles=$newdlfiles
     fi
-    if test "$linkmode" = prog || test "$linkmode" = lib; then
-      dlprefiles="$newdlprefiles"
+    if test prog = "$linkmode" || test lib = "$linkmode"; then
+      dlprefiles=$newdlprefiles
     fi
 
     case $linkmode in
     oldlib)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-	func_warning "\`-dlopen' is ignored for archives"
+      if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
+	func_warning "'-dlopen' is ignored for archives"
       fi
 
       case " $deplibs" in
       *\ -l* | *\ -L*)
-	func_warning "\`-l' and \`-L' are ignored for archives" ;;
+	func_warning "'-l' and '-L' are ignored for archives" ;;
       esac
 
       test -n "$rpath" && \
-	func_warning "\`-rpath' is ignored for archives"
+	func_warning "'-rpath' is ignored for archives"
 
       test -n "$xrpath" && \
-	func_warning "\`-R' is ignored for archives"
+	func_warning "'-R' is ignored for archives"
 
       test -n "$vinfo" && \
-	func_warning "\`-version-info/-version-number' is ignored for archives"
+	func_warning "'-version-info/-version-number' is ignored for archives"
 
       test -n "$release" && \
-	func_warning "\`-release' is ignored for archives"
+	func_warning "'-release' is ignored for archives"
 
       test -n "$export_symbols$export_symbols_regex" && \
-	func_warning "\`-export-symbols' is ignored for archives"
+	func_warning "'-export-symbols' is ignored for archives"
 
       # Now set the variables for building old libraries.
       build_libtool_libs=no
-      oldlibs="$output"
+      oldlibs=$output
       func_append objs "$old_deplibs"
       ;;
 
     lib)
-      # Make sure we only generate libraries of the form `libNAME.la'.
+      # Make sure we only generate libraries of the form 'libNAME.la'.
       case $outputname in
       lib*)
 	func_stripname 'lib' '.la' "$outputname"
@@ -7251,10 +8728,10 @@ func_mode_link ()
 	eval libname=\"$libname_spec\"
 	;;
       *)
-	test "$module" = no && \
-	  func_fatal_help "libtool library \`$output' must begin with \`lib'"
+	test no = "$module" \
+	  && func_fatal_help "libtool library '$output' must begin with 'lib'"
 
-	if test "$need_lib_prefix" != no; then
+	if test no != "$need_lib_prefix"; then
 	  # Add the "lib" prefix for modules if required
 	  func_stripname '' '.la' "$outputname"
 	  name=$func_stripname_result
@@ -7268,8 +8745,8 @@ func_mode_link ()
       esac
 
       if test -n "$objs"; then
-	if test "$deplibs_check_method" != pass_all; then
-	  func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs"
+	if test pass_all != "$deplibs_check_method"; then
+	  func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs"
 	else
 	  echo
 	  $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
@@ -7278,21 +8755,21 @@ func_mode_link ()
 	fi
       fi
 
-      test "$dlself" != no && \
-	func_warning "\`-dlopen self' is ignored for libtool libraries"
+      test no = "$dlself" \
+	|| func_warning "'-dlopen self' is ignored for libtool libraries"
 
       set dummy $rpath
       shift
-      test "$#" -gt 1 && \
-	func_warning "ignoring multiple \`-rpath's for a libtool library"
+      test 1 -lt "$#" \
+	&& func_warning "ignoring multiple '-rpath's for a libtool library"
 
-      install_libdir="$1"
+      install_libdir=$1
 
       oldlibs=
       if test -z "$rpath"; then
-	if test "$build_libtool_libs" = yes; then
+	if test yes = "$build_libtool_libs"; then
 	  # Building a libtool convenience library.
-	  # Some compilers have problems with a `.al' extension so
+	  # Some compilers have problems with a '.al' extension so
 	  # convenience libraries should have the same extension an
 	  # archive normally would.
 	  oldlibs="$output_objdir/$libname.$libext $oldlibs"
@@ -7301,20 +8778,20 @@ func_mode_link ()
 	fi
 
 	test -n "$vinfo" && \
-	  func_warning "\`-version-info/-version-number' is ignored for convenience libraries"
+	  func_warning "'-version-info/-version-number' is ignored for convenience libraries"
 
 	test -n "$release" && \
-	  func_warning "\`-release' is ignored for convenience libraries"
+	  func_warning "'-release' is ignored for convenience libraries"
       else
 
 	# Parse the version information argument.
-	save_ifs="$IFS"; IFS=':'
+	save_ifs=$IFS; IFS=:
 	set dummy $vinfo 0 0 0
 	shift
-	IFS="$save_ifs"
+	IFS=$save_ifs
 
 	test -n "$7" && \
-	  func_fatal_help "too many parameters to \`-version-info'"
+	  func_fatal_help "too many parameters to '-version-info'"
 
 	# convert absolute version numbers to libtool ages
 	# this retains compatibility with .la files and attempts
@@ -7322,45 +8799,45 @@ func_mode_link ()
 
 	case $vinfo_number in
 	yes)
-	  number_major="$1"
-	  number_minor="$2"
-	  number_revision="$3"
+	  number_major=$1
+	  number_minor=$2
+	  number_revision=$3
 	  #
 	  # There are really only two kinds -- those that
 	  # use the current revision as the major version
 	  # and those that subtract age and use age as
 	  # a minor version.  But, then there is irix
-	  # which has an extra 1 added just for fun
+	  # that has an extra 1 added just for fun
 	  #
 	  case $version_type in
 	  # correct linux to gnu/linux during the next big refactor
-	  darwin|linux|osf|windows|none)
+	  darwin|freebsd-elf|linux|osf|windows|none)
 	    func_arith $number_major + $number_minor
 	    current=$func_arith_result
-	    age="$number_minor"
-	    revision="$number_revision"
+	    age=$number_minor
+	    revision=$number_revision
 	    ;;
-	  freebsd-aout|freebsd-elf|qnx|sunos)
-	    current="$number_major"
-	    revision="$number_minor"
-	    age="0"
+	  freebsd-aout|qnx|sunos)
+	    current=$number_major
+	    revision=$number_minor
+	    age=0
 	    ;;
 	  irix|nonstopux)
 	    func_arith $number_major + $number_minor
 	    current=$func_arith_result
-	    age="$number_minor"
-	    revision="$number_minor"
+	    age=$number_minor
+	    revision=$number_minor
 	    lt_irix_increment=no
 	    ;;
 	  *)
-	    func_fatal_configuration "$modename: unknown library version type \`$version_type'"
+	    func_fatal_configuration "$modename: unknown library version type '$version_type'"
 	    ;;
 	  esac
 	  ;;
 	no)
-	  current="$1"
-	  revision="$2"
-	  age="$3"
+	  current=$1
+	  revision=$2
+	  age=$3
 	  ;;
 	esac
 
@@ -7368,30 +8845,30 @@ func_mode_link ()
 	case $current in
 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
 	*)
-	  func_error "CURRENT \`$current' must be a nonnegative integer"
-	  func_fatal_error "\`$vinfo' is not valid version information"
+	  func_error "CURRENT '$current' must be a nonnegative integer"
+	  func_fatal_error "'$vinfo' is not valid version information"
 	  ;;
 	esac
 
 	case $revision in
 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
 	*)
-	  func_error "REVISION \`$revision' must be a nonnegative integer"
-	  func_fatal_error "\`$vinfo' is not valid version information"
+	  func_error "REVISION '$revision' must be a nonnegative integer"
+	  func_fatal_error "'$vinfo' is not valid version information"
 	  ;;
 	esac
 
 	case $age in
 	0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
 	*)
-	  func_error "AGE \`$age' must be a nonnegative integer"
-	  func_fatal_error "\`$vinfo' is not valid version information"
+	  func_error "AGE '$age' must be a nonnegative integer"
+	  func_fatal_error "'$vinfo' is not valid version information"
 	  ;;
 	esac
 
 	if test "$age" -gt "$current"; then
-	  func_error "AGE \`$age' is greater than the current interface number \`$current'"
-	  func_fatal_error "\`$vinfo' is not valid version information"
+	  func_error "AGE '$age' is greater than the current interface number '$current'"
+	  func_fatal_error "'$vinfo' is not valid version information"
 	fi
 
 	# Calculate the version variables.
@@ -7406,26 +8883,36 @@ func_mode_link ()
 	  # verstring for coding it into the library header
 	  func_arith $current - $age
 	  major=.$func_arith_result
-	  versuffix="$major.$age.$revision"
+	  versuffix=$major.$age.$revision
 	  # Darwin ld doesn't like 0 for these options...
 	  func_arith $current + 1
 	  minor_current=$func_arith_result
-	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+	  xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
 	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+          # On Darwin other compilers
+          case $CC in
+              nagfor*)
+                  verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
+                  ;;
+              *)
+                  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+                  ;;
+          esac
 	  ;;
 
 	freebsd-aout)
-	  major=".$current"
-	  versuffix=".$current.$revision";
+	  major=.$current
+	  versuffix=.$current.$revision
 	  ;;
 
 	freebsd-elf)
-	  major=".$current"
-	  versuffix=".$current"
+	  func_arith $current - $age
+	  major=.$func_arith_result
+	  versuffix=$major.$age.$revision
 	  ;;
 
 	irix | nonstopux)
-	  if test "X$lt_irix_increment" = "Xno"; then
+	  if test no = "$lt_irix_increment"; then
 	    func_arith $current - $age
 	  else
 	    func_arith $current - $age + 1
@@ -7436,69 +8923,74 @@ func_mode_link ()
 	    nonstopux) verstring_prefix=nonstopux ;;
 	    *)         verstring_prefix=sgi ;;
 	  esac
-	  verstring="$verstring_prefix$major.$revision"
+	  verstring=$verstring_prefix$major.$revision
 
 	  # Add in all the interfaces that we are compatible with.
 	  loop=$revision
-	  while test "$loop" -ne 0; do
+	  while test 0 -ne "$loop"; do
 	    func_arith $revision - $loop
 	    iface=$func_arith_result
 	    func_arith $loop - 1
 	    loop=$func_arith_result
-	    verstring="$verstring_prefix$major.$iface:$verstring"
+	    verstring=$verstring_prefix$major.$iface:$verstring
 	  done
 
-	  # Before this point, $major must not contain `.'.
+	  # Before this point, $major must not contain '.'.
 	  major=.$major
-	  versuffix="$major.$revision"
+	  versuffix=$major.$revision
 	  ;;
 
 	linux) # correct to gnu/linux during the next big refactor
 	  func_arith $current - $age
 	  major=.$func_arith_result
-	  versuffix="$major.$age.$revision"
+	  versuffix=$major.$age.$revision
 	  ;;
 
 	osf)
 	  func_arith $current - $age
 	  major=.$func_arith_result
-	  versuffix=".$current.$age.$revision"
-	  verstring="$current.$age.$revision"
+	  versuffix=.$current.$age.$revision
+	  verstring=$current.$age.$revision
 
 	  # Add in all the interfaces that we are compatible with.
 	  loop=$age
-	  while test "$loop" -ne 0; do
+	  while test 0 -ne "$loop"; do
 	    func_arith $current - $loop
 	    iface=$func_arith_result
 	    func_arith $loop - 1
 	    loop=$func_arith_result
-	    verstring="$verstring:${iface}.0"
+	    verstring=$verstring:$iface.0
 	  done
 
 	  # Make executables depend on our current version.
-	  func_append verstring ":${current}.0"
+	  func_append verstring ":$current.0"
 	  ;;
 
 	qnx)
-	  major=".$current"
-	  versuffix=".$current"
+	  major=.$current
+	  versuffix=.$current
+	  ;;
+
+	sco)
+	  major=.$current
+	  versuffix=.$current
 	  ;;
 
 	sunos)
-	  major=".$current"
-	  versuffix=".$current.$revision"
+	  major=.$current
+	  versuffix=.$current.$revision
 	  ;;
 
 	windows)
 	  # Use '-' rather than '.', since we only want one
-	  # extension on DOS 8.3 filesystems.
+	  # extension on DOS 8.3 file systems.
 	  func_arith $current - $age
 	  major=$func_arith_result
-	  versuffix="-$major"
+	  versuffix=-$major
 	  ;;
 
 	*)
-	  func_fatal_configuration "unknown library version type \`$version_type'"
+	  func_fatal_configuration "unknown library version type '$version_type'"
 	  ;;
 	esac
 
@@ -7512,42 +9004,45 @@ func_mode_link ()
 	    verstring=
 	    ;;
 	  *)
-	    verstring="0.0"
+	    verstring=0.0
 	    ;;
 	  esac
-	  if test "$need_version" = no; then
+	  if test no = "$need_version"; then
 	    versuffix=
 	  else
-	    versuffix=".0.0"
+	    versuffix=.0.0
 	  fi
 	fi
 
 	# Remove version info from name if versioning should be avoided
-	if test "$avoid_version" = yes && test "$need_version" = no; then
+	if test yes,no = "$avoid_version,$need_version"; then
 	  major=
 	  versuffix=
-	  verstring=""
+	  verstring=
 	fi
 
 	# Check to see if the archive will have undefined symbols.
-	if test "$allow_undefined" = yes; then
-	  if test "$allow_undefined_flag" = unsupported; then
-	    func_warning "undefined symbols not allowed in $host shared libraries"
-	    build_libtool_libs=no
-	    build_old_libs=yes
+	if test yes = "$allow_undefined"; then
+	  if test unsupported = "$allow_undefined_flag"; then
+	    if test yes = "$build_old_libs"; then
+	      func_warning "undefined symbols not allowed in $host shared libraries; building static only"
+	      build_libtool_libs=no
+	    else
+	      func_fatal_error "can't build $host shared library unless -no-undefined is specified"
+	    fi
 	  fi
 	else
 	  # Don't allow undefined symbols.
-	  allow_undefined_flag="$no_undefined_flag"
+	  allow_undefined_flag=$no_undefined_flag
 	fi
 
       fi
 
-      func_generate_dlsyms "$libname" "$libname" "yes"
+      func_generate_dlsyms "$libname" "$libname" :
       func_append libobjs " $symfileobj"
-      test "X$libobjs" = "X " && libobjs=
+      test " " = "$libobjs" && libobjs=
 
-      if test "$opt_mode" != relink; then
+      if test relink != "$opt_mode"; then
 	# Remove our outputs, but don't remove object files since they
 	# may have been created when compiling PIC objects.
 	removelist=
@@ -7556,8 +9051,8 @@ func_mode_link ()
 	  case $p in
 	    *.$objext | *.gcno)
 	       ;;
-	    $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*)
-	       if test "X$precious_files_regex" != "X"; then
+	    $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*)
+	       if test -n "$precious_files_regex"; then
 		 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
 		 then
 		   continue
@@ -7573,11 +9068,11 @@ func_mode_link ()
       fi
 
       # Now set the variables for building old libraries.
-      if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then
+      if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then
 	func_append oldlibs " $output_objdir/$libname.$libext"
 
 	# Transform .lo files to .o files.
-	oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP`
+	oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP`
       fi
 
       # Eliminate all temporary directories.
@@ -7598,13 +9093,13 @@ func_mode_link ()
 	  *) func_append finalize_rpath " $libdir" ;;
 	  esac
 	done
-	if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then
+	if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then
 	  dependency_libs="$temp_xrpath $dependency_libs"
 	fi
       fi
 
       # Make sure dlfiles contains only unique files that won't be dlpreopened
-      old_dlfiles="$dlfiles"
+      old_dlfiles=$dlfiles
       dlfiles=
       for lib in $old_dlfiles; do
 	case " $dlprefiles $dlfiles " in
@@ -7614,7 +9109,7 @@ func_mode_link ()
       done
 
       # Make sure dlprefiles contains only unique files
-      old_dlprefiles="$dlprefiles"
+      old_dlprefiles=$dlprefiles
       dlprefiles=
       for lib in $old_dlprefiles; do
 	case "$dlprefiles " in
@@ -7623,7 +9118,7 @@ func_mode_link ()
 	esac
       done
 
-      if test "$build_libtool_libs" = yes; then
+      if test yes = "$build_libtool_libs"; then
 	if test -n "$rpath"; then
 	  case $host in
 	  *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
@@ -7647,7 +9142,7 @@ func_mode_link ()
 	    ;;
 	  *)
 	    # Add libc to deplibs on all other systems if necessary.
-	    if test "$build_libtool_need_lc" = "yes"; then
+	    if test yes = "$build_libtool_need_lc"; then
 	      func_append deplibs " -lc"
 	    fi
 	    ;;
@@ -7663,9 +9158,9 @@ func_mode_link ()
 	# I'm not sure if I'm treating the release correctly.  I think
 	# release should show up in the -l (ie -lgmp5) so we don't want to
 	# add it in twice.  Is that correct?
-	release=""
-	versuffix=""
-	major=""
+	release=
+	versuffix=
+	major=
 	newdeplibs=
 	droppeddeps=no
 	case $deplibs_check_method in
@@ -7694,20 +9189,20 @@ EOF
 	      -l*)
 		func_stripname -l '' "$i"
 		name=$func_stripname_result
-		if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+		if test yes = "$allow_libtool_libs_with_static_runtimes"; then
 		  case " $predeps $postdeps " in
 		  *" $i "*)
 		    func_append newdeplibs " $i"
-		    i=""
+		    i=
 		    ;;
 		  esac
 		fi
-		if test -n "$i" ; then
+		if test -n "$i"; then
 		  libname=`eval "\\$ECHO \"$libname_spec\""`
 		  deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
 		  set dummy $deplib_matches; shift
 		  deplib_match=$1
-		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
 		    func_append newdeplibs " $i"
 		  else
 		    droppeddeps=yes
@@ -7737,20 +9232,20 @@ EOF
 		$opt_dry_run || $RM conftest
 		if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
 		  ldd_output=`ldd conftest`
-		  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+		  if test yes = "$allow_libtool_libs_with_static_runtimes"; then
 		    case " $predeps $postdeps " in
 		    *" $i "*)
 		      func_append newdeplibs " $i"
-		      i=""
+		      i=
 		      ;;
 		    esac
 		  fi
-		  if test -n "$i" ; then
+		  if test -n "$i"; then
 		    libname=`eval "\\$ECHO \"$libname_spec\""`
 		    deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
 		    set dummy $deplib_matches; shift
 		    deplib_match=$1
-		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then
+		    if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
 		      func_append newdeplibs " $i"
 		    else
 		      droppeddeps=yes
@@ -7787,24 +9282,24 @@ EOF
 	    -l*)
 	      func_stripname -l '' "$a_deplib"
 	      name=$func_stripname_result
-	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+	      if test yes = "$allow_libtool_libs_with_static_runtimes"; then
 		case " $predeps $postdeps " in
 		*" $a_deplib "*)
 		  func_append newdeplibs " $a_deplib"
-		  a_deplib=""
+		  a_deplib=
 		  ;;
 		esac
 	      fi
-	      if test -n "$a_deplib" ; then
+	      if test -n "$a_deplib"; then
 		libname=`eval "\\$ECHO \"$libname_spec\""`
 		if test -n "$file_magic_glob"; then
 		  libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
 		else
 		  libnameglob=$libname
 		fi
-		test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob`
+		test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob`
 		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
-		  if test "$want_nocaseglob" = yes; then
+		  if test yes = "$want_nocaseglob"; then
 		    shopt -s nocaseglob
 		    potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
 		    $nocaseglob
@@ -7822,25 +9317,25 @@ EOF
 		      # We might still enter an endless loop, since a link
 		      # loop can be closed while we follow links,
 		      # but so what?
-		      potlib="$potent_lib"
+		      potlib=$potent_lib
 		      while test -h "$potlib" 2>/dev/null; do
-			potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
+			potliblink=`ls -ld $potlib | $SED 's/.* -> //'`
 			case $potliblink in
-			[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
-			*) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";;
+			[\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;;
+			*) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";;
 			esac
 		      done
 		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
 			 $SED -e 10q |
 			 $EGREP "$file_magic_regex" > /dev/null; then
 			func_append newdeplibs " $a_deplib"
-			a_deplib=""
+			a_deplib=
 			break 2
 		      fi
 		  done
 		done
 	      fi
-	      if test -n "$a_deplib" ; then
+	      if test -n "$a_deplib"; then
 		droppeddeps=yes
 		echo
 		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."
@@ -7848,7 +9343,7 @@ EOF
 		echo "*** you link to this library.  But I can only do this if you have a"
 		echo "*** shared version of the library, which you do not appear to have"
 		echo "*** because I did check the linker path looking for a file starting"
-		if test -z "$potlib" ; then
+		if test -z "$potlib"; then
 		  $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
 		else
 		  $ECHO "*** with $libname and none of the candidates passed a file format test"
@@ -7871,30 +9366,30 @@ EOF
 	    -l*)
 	      func_stripname -l '' "$a_deplib"
 	      name=$func_stripname_result
-	      if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
+	      if test yes = "$allow_libtool_libs_with_static_runtimes"; then
 		case " $predeps $postdeps " in
 		*" $a_deplib "*)
 		  func_append newdeplibs " $a_deplib"
-		  a_deplib=""
+		  a_deplib=
 		  ;;
 		esac
 	      fi
-	      if test -n "$a_deplib" ; then
+	      if test -n "$a_deplib"; then
 		libname=`eval "\\$ECHO \"$libname_spec\""`
 		for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
 		  potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
 		  for potent_lib in $potential_libs; do
-		    potlib="$potent_lib" # see symlink-check above in file_magic test
+		    potlib=$potent_lib # see symlink-check above in file_magic test
 		    if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
 		       $EGREP "$match_pattern_regex" > /dev/null; then
 		      func_append newdeplibs " $a_deplib"
-		      a_deplib=""
+		      a_deplib=
 		      break 2
 		    fi
 		  done
 		done
 	      fi
-	      if test -n "$a_deplib" ; then
+	      if test -n "$a_deplib"; then
 		droppeddeps=yes
 		echo
 		$ECHO "*** Warning: linker path does not have real file for library $a_deplib."
@@ -7902,7 +9397,7 @@ EOF
 		echo "*** you link to this library.  But I can only do this if you have a"
 		echo "*** shared version of the library, which you do not appear to have"
 		echo "*** because I did check the linker path looking for a file starting"
-		if test -z "$potlib" ; then
+		if test -z "$potlib"; then
 		  $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
 		else
 		  $ECHO "*** with $libname and none of the candidates passed a file format test"
@@ -7918,18 +9413,18 @@ EOF
 	  done # Gone through all deplibs.
 	  ;;
 	none | unknown | *)
-	  newdeplibs=""
+	  newdeplibs=
 	  tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
-	  if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then
-	    for i in $predeps $postdeps ; do
+	  if test yes = "$allow_libtool_libs_with_static_runtimes"; then
+	    for i in $predeps $postdeps; do
 	      # can't use Xsed below, because $i might contain '/'
-	      tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"`
+	      tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"`
 	    done
 	  fi
 	  case $tmp_deplibs in
 	  *[!\	\ ]*)
 	    echo
-	    if test "X$deplibs_check_method" = "Xnone"; then
+	    if test none = "$deplibs_check_method"; then
 	      echo "*** Warning: inter-library dependencies are not supported in this platform."
 	    else
 	      echo "*** Warning: inter-library dependencies are not known to be supported."
@@ -7953,8 +9448,8 @@ EOF
 	  ;;
 	esac
 
-	if test "$droppeddeps" = yes; then
-	  if test "$module" = yes; then
+	if test yes = "$droppeddeps"; then
+	  if test yes = "$module"; then
 	    echo
 	    echo "*** Warning: libtool could not satisfy all declared inter-library"
 	    $ECHO "*** dependencies of module $libname.  Therefore, libtool will create"
@@ -7963,12 +9458,12 @@ EOF
 	    if test -z "$global_symbol_pipe"; then
 	      echo
 	      echo "*** However, this would only work if libtool was able to extract symbol"
-	      echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
+	      echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
 	      echo "*** not find such a program.  So, this module is probably useless."
-	      echo "*** \`nm' from GNU binutils and a full rebuild may help."
+	      echo "*** 'nm' from GNU binutils and a full rebuild may help."
 	    fi
-	    if test "$build_old_libs" = no; then
-	      oldlibs="$output_objdir/$libname.$libext"
+	    if test no = "$build_old_libs"; then
+	      oldlibs=$output_objdir/$libname.$libext
 	      build_libtool_libs=module
 	      build_old_libs=yes
 	    else
@@ -7979,14 +9474,14 @@ EOF
 	    echo "*** automatically added whenever a program is linked with this library"
 	    echo "*** or is declared to -dlopen it."
 
-	    if test "$allow_undefined" = no; then
+	    if test no = "$allow_undefined"; then
 	      echo
 	      echo "*** Since this library must not contain undefined symbols,"
 	      echo "*** because either the platform does not support them or"
 	      echo "*** it was explicitly requested with -no-undefined,"
 	      echo "*** libtool will only create a static version of it."
-	      if test "$build_old_libs" = no; then
-		oldlibs="$output_objdir/$libname.$libext"
+	      if test no = "$build_old_libs"; then
+		oldlibs=$output_objdir/$libname.$libext
 		build_libtool_libs=module
 		build_old_libs=yes
 	      else
@@ -8032,7 +9527,7 @@ EOF
 	*) func_append new_libs " $deplib" ;;
 	esac
       done
-      deplibs="$new_libs"
+      deplibs=$new_libs
 
       # All the library-specific variables (install_libdir is set above).
       library_names=
@@ -8040,25 +9535,25 @@ EOF
       dlname=
 
       # Test again, we may have decided not to build it any more
-      if test "$build_libtool_libs" = yes; then
-	# Remove ${wl} instances when linking with ld.
+      if test yes = "$build_libtool_libs"; then
+	# Remove $wl instances when linking with ld.
 	# FIXME: should test the right _cmds variable.
 	case $archive_cmds in
 	  *\$LD\ *) wl= ;;
         esac
-	if test "$hardcode_into_libs" = yes; then
+	if test yes = "$hardcode_into_libs"; then
 	  # Hardcode the library paths
 	  hardcode_libdirs=
 	  dep_rpath=
-	  rpath="$finalize_rpath"
-	  test "$opt_mode" != relink && rpath="$compile_rpath$rpath"
+	  rpath=$finalize_rpath
+	  test relink = "$opt_mode" || rpath=$compile_rpath$rpath
 	  for libdir in $rpath; do
 	    if test -n "$hardcode_libdir_flag_spec"; then
 	      if test -n "$hardcode_libdir_separator"; then
 		func_replace_sysroot "$libdir"
 		libdir=$func_replace_sysroot_result
 		if test -z "$hardcode_libdirs"; then
-		  hardcode_libdirs="$libdir"
+		  hardcode_libdirs=$libdir
 		else
 		  # Just accumulate the unique libdirs.
 		  case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8083,7 +9578,7 @@ EOF
 	  # Substitute the hardcoded libdirs into the rpath.
 	  if test -n "$hardcode_libdir_separator" &&
 	     test -n "$hardcode_libdirs"; then
-	    libdir="$hardcode_libdirs"
+	    libdir=$hardcode_libdirs
 	    eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
 	  fi
 	  if test -n "$runpath_var" && test -n "$perm_rpath"; then
@@ -8097,8 +9592,8 @@ EOF
 	  test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
 	fi
 
-	shlibpath="$finalize_shlibpath"
-	test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
+	shlibpath=$finalize_shlibpath
+	test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath
 	if test -n "$shlibpath"; then
 	  eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
 	fi
@@ -8108,19 +9603,19 @@ EOF
 	eval library_names=\"$library_names_spec\"
 	set dummy $library_names
 	shift
-	realname="$1"
+	realname=$1
 	shift
 
 	if test -n "$soname_spec"; then
 	  eval soname=\"$soname_spec\"
 	else
-	  soname="$realname"
+	  soname=$realname
 	fi
 	if test -z "$dlname"; then
 	  dlname=$soname
 	fi
 
-	lib="$output_objdir/$realname"
+	lib=$output_objdir/$realname
 	linknames=
 	for link
 	do
@@ -8134,7 +9629,7 @@ EOF
 	delfiles=
 	if test -n "$export_symbols" && test -n "$include_expsyms"; then
 	  $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
-	  export_symbols="$output_objdir/$libname.uexp"
+	  export_symbols=$output_objdir/$libname.uexp
 	  func_append delfiles " $export_symbols"
 	fi
 
@@ -8143,31 +9638,31 @@ EOF
 	cygwin* | mingw* | cegcc*)
 	  if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
 	    # exporting using user supplied symfile
-	    if test "x`$SED 1q $export_symbols`" != xEXPORTS; then
+	    func_dll_def_p "$export_symbols" || {
 	      # and it's NOT already a .def file. Must figure out
 	      # which of the given symbols are data symbols and tag
 	      # them as such. So, trigger use of export_symbols_cmds.
 	      # export_symbols gets reassigned inside the "prepare
 	      # the list of exported symbols" if statement, so the
 	      # include_expsyms logic still works.
-	      orig_export_symbols="$export_symbols"
+	      orig_export_symbols=$export_symbols
 	      export_symbols=
 	      always_export_symbols=yes
-	    fi
+	    }
 	  fi
 	  ;;
 	esac
 
 	# Prepare the list of exported symbols
 	if test -z "$export_symbols"; then
-	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then
-	    func_verbose "generating symbol list for \`$libname.la'"
-	    export_symbols="$output_objdir/$libname.exp"
+	  if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then
+	    func_verbose "generating symbol list for '$libname.la'"
+	    export_symbols=$output_objdir/$libname.exp
 	    $opt_dry_run || $RM $export_symbols
 	    cmds=$export_symbols_cmds
-	    save_ifs="$IFS"; IFS='~'
+	    save_ifs=$IFS; IFS='~'
 	    for cmd1 in $cmds; do
-	      IFS="$save_ifs"
+	      IFS=$save_ifs
 	      # Take the normal branch if the nm_file_list_spec branch
 	      # doesn't work or if tool conversion is not needed.
 	      case $nm_file_list_spec~$to_tool_file_cmd in
@@ -8181,7 +9676,7 @@ EOF
 		  try_normal_branch=no
 		  ;;
 	      esac
-	      if test "$try_normal_branch" = yes \
+	      if test yes = "$try_normal_branch" \
 		 && { test "$len" -lt "$max_cmd_len" \
 		      || test "$max_cmd_len" -le -1; }
 	      then
@@ -8192,7 +9687,7 @@ EOF
 		output_la=$func_basename_result
 		save_libobjs=$libobjs
 		save_output=$output
-		output=${output_objdir}/${output_la}.nm
+		output=$output_objdir/$output_la.nm
 		func_to_tool_file "$output"
 		libobjs=$nm_file_list_spec$func_to_tool_file_result
 		func_append delfiles " $output"
@@ -8215,8 +9710,8 @@ EOF
 		break
 	      fi
 	    done
-	    IFS="$save_ifs"
-	    if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then
+	    IFS=$save_ifs
+	    if test -n "$export_symbols_regex" && test : != "$skipped_export"; then
 	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
 	      func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
 	    fi
@@ -8224,16 +9719,16 @@ EOF
 	fi
 
 	if test -n "$export_symbols" && test -n "$include_expsyms"; then
-	  tmp_export_symbols="$export_symbols"
-	  test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+	  tmp_export_symbols=$export_symbols
+	  test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
 	  $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
 	fi
 
-	if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then
+	if test : != "$skipped_export" && test -n "$orig_export_symbols"; then
 	  # The given exports_symbols file has to be filtered, so filter it.
-	  func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+	  func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
 	  # FIXME: $output_objdir/$libname.filter potentially contains lots of
-	  # 's' commands which not all seds can handle. GNU sed should be fine
+	  # 's' commands, which not all seds can handle. GNU sed should be fine
 	  # though. Also, the filter scales superlinearly with the number of
 	  # global variables. join(1) would be nice here, but unfortunately
 	  # isn't a blessed tool.
@@ -8252,11 +9747,11 @@ EOF
 	    ;;
 	  esac
 	done
-	deplibs="$tmp_deplibs"
+	deplibs=$tmp_deplibs
 
 	if test -n "$convenience"; then
 	  if test -n "$whole_archive_flag_spec" &&
-	    test "$compiler_needs_object" = yes &&
+	    test yes = "$compiler_needs_object" &&
 	    test -z "$libobjs"; then
 	    # extract the archives, so we have objects to list.
 	    # TODO: could optimize this to just extract one archive.
@@ -8267,7 +9762,7 @@ EOF
 	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
 	    test "X$libobjs" = "X " && libobjs=
 	  else
-	    gentop="$output_objdir/${outputname}x"
+	    gentop=$output_objdir/${outputname}x
 	    func_append generated " $gentop"
 
 	    func_extract_archives $gentop $convenience
@@ -8276,18 +9771,18 @@ EOF
 	  fi
 	fi
 
-	if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
+	if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then
 	  eval flag=\"$thread_safe_flag_spec\"
 	  func_append linker_flags " $flag"
 	fi
 
 	# Make a backup of the uninstalled library when relinking
-	if test "$opt_mode" = relink; then
+	if test relink = "$opt_mode"; then
 	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
 	fi
 
 	# Do each of the archive commands.
-	if test "$module" = yes && test -n "$module_cmds" ; then
+	if test yes = "$module" && test -n "$module_cmds"; then
 	  if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
 	    eval test_cmds=\"$module_expsym_cmds\"
 	    cmds=$module_expsym_cmds
@@ -8305,7 +9800,7 @@ EOF
 	  fi
 	fi
 
-	if test "X$skipped_export" != "X:" &&
+	if test : != "$skipped_export" &&
 	   func_len " $test_cmds" &&
 	   len=$func_len_result &&
 	   test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
@@ -8338,8 +9833,8 @@ EOF
 	  last_robj=
 	  k=1
 
-	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
-	    output=${output_objdir}/${output_la}.lnkscript
+	  if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
+	    output=$output_objdir/$output_la.lnkscript
 	    func_verbose "creating GNU ld script: $output"
 	    echo 'INPUT (' > $output
 	    for obj in $save_libobjs
@@ -8351,14 +9846,14 @@ EOF
 	    func_append delfiles " $output"
 	    func_to_tool_file "$output"
 	    output=$func_to_tool_file_result
-	  elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
-	    output=${output_objdir}/${output_la}.lnk
+	  elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
+	    output=$output_objdir/$output_la.lnk
 	    func_verbose "creating linker input file list: $output"
 	    : > $output
 	    set x $save_libobjs
 	    shift
 	    firstobj=
-	    if test "$compiler_needs_object" = yes; then
+	    if test yes = "$compiler_needs_object"; then
 	      firstobj="$1 "
 	      shift
 	    fi
@@ -8373,7 +9868,7 @@ EOF
 	  else
 	    if test -n "$save_libobjs"; then
 	      func_verbose "creating reloadable object files..."
-	      output=$output_objdir/$output_la-${k}.$objext
+	      output=$output_objdir/$output_la-$k.$objext
 	      eval test_cmds=\"$reload_cmds\"
 	      func_len " $test_cmds"
 	      len0=$func_len_result
@@ -8385,13 +9880,13 @@ EOF
 		func_len " $obj"
 		func_arith $len + $func_len_result
 		len=$func_arith_result
-		if test "X$objlist" = X ||
+		if test -z "$objlist" ||
 		   test "$len" -lt "$max_cmd_len"; then
 		  func_append objlist " $obj"
 		else
 		  # The command $test_cmds is almost too long, add a
 		  # command to the queue.
-		  if test "$k" -eq 1 ; then
+		  if test 1 -eq "$k"; then
 		    # The first file doesn't have a previous command to add.
 		    reload_objs=$objlist
 		    eval concat_cmds=\"$reload_cmds\"
@@ -8401,10 +9896,10 @@ EOF
 		    reload_objs="$objlist $last_robj"
 		    eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
 		  fi
-		  last_robj=$output_objdir/$output_la-${k}.$objext
+		  last_robj=$output_objdir/$output_la-$k.$objext
 		  func_arith $k + 1
 		  k=$func_arith_result
-		  output=$output_objdir/$output_la-${k}.$objext
+		  output=$output_objdir/$output_la-$k.$objext
 		  objlist=" $obj"
 		  func_len " $last_robj"
 		  func_arith $len0 + $func_len_result
@@ -8416,9 +9911,9 @@ EOF
 	      # files will link in the last one created.
 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
 	      reload_objs="$objlist $last_robj"
-	      eval concat_cmds=\"\${concat_cmds}$reload_cmds\"
+	      eval concat_cmds=\"\$concat_cmds$reload_cmds\"
 	      if test -n "$last_robj"; then
-	        eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\"
+	        eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
 	      fi
 	      func_append delfiles " $output"
 
@@ -8426,9 +9921,9 @@ EOF
 	      output=
 	    fi
 
-	    if ${skipped_export-false}; then
-	      func_verbose "generating symbol list for \`$libname.la'"
-	      export_symbols="$output_objdir/$libname.exp"
+	    ${skipped_export-false} && {
+	      func_verbose "generating symbol list for '$libname.la'"
+	      export_symbols=$output_objdir/$libname.exp
 	      $opt_dry_run || $RM $export_symbols
 	      libobjs=$output
 	      # Append the command to create the export file.
@@ -8437,16 +9932,16 @@ EOF
 	      if test -n "$last_robj"; then
 		eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
 	      fi
-	    fi
+	    }
 
 	    test -n "$save_libobjs" &&
 	      func_verbose "creating a temporary reloadable object file: $output"
 
 	    # Loop through the commands generated above and execute them.
-	    save_ifs="$IFS"; IFS='~'
+	    save_ifs=$IFS; IFS='~'
 	    for cmd in $concat_cmds; do
-	      IFS="$save_ifs"
-	      $opt_silent || {
+	      IFS=$save_ifs
+	      $opt_quiet || {
 		  func_quote_for_expand "$cmd"
 		  eval "func_echo $func_quote_for_expand_result"
 	      }
@@ -8454,7 +9949,7 @@ EOF
 		lt_exit=$?
 
 		# Restore the uninstalled library and exit
-		if test "$opt_mode" = relink; then
+		if test relink = "$opt_mode"; then
 		  ( cd "$output_objdir" && \
 		    $RM "${realname}T" && \
 		    $MV "${realname}U" "$realname" )
@@ -8463,7 +9958,7 @@ EOF
 		exit $lt_exit
 	      }
 	    done
-	    IFS="$save_ifs"
+	    IFS=$save_ifs
 
 	    if test -n "$export_symbols_regex" && ${skipped_export-false}; then
 	      func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
@@ -8471,18 +9966,18 @@ EOF
 	    fi
 	  fi
 
-          if ${skipped_export-false}; then
+          ${skipped_export-false} && {
 	    if test -n "$export_symbols" && test -n "$include_expsyms"; then
-	      tmp_export_symbols="$export_symbols"
-	      test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols"
+	      tmp_export_symbols=$export_symbols
+	      test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
 	      $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
 	    fi
 
 	    if test -n "$orig_export_symbols"; then
 	      # The given exports_symbols file has to be filtered, so filter it.
-	      func_verbose "filter symbol list for \`$libname.la' to tag DATA exports"
+	      func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
 	      # FIXME: $output_objdir/$libname.filter potentially contains lots of
-	      # 's' commands which not all seds can handle. GNU sed should be fine
+	      # 's' commands, which not all seds can handle. GNU sed should be fine
 	      # though. Also, the filter scales superlinearly with the number of
 	      # global variables. join(1) would be nice here, but unfortunately
 	      # isn't a blessed tool.
@@ -8491,7 +9986,7 @@ EOF
 	      export_symbols=$output_objdir/$libname.def
 	      $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
 	    fi
-	  fi
+	  }
 
 	  libobjs=$output
 	  # Restore the value of output.
@@ -8505,7 +10000,7 @@ EOF
 	  # value of $libobjs for piecewise linking.
 
 	  # Do each of the archive commands.
-	  if test "$module" = yes && test -n "$module_cmds" ; then
+	  if test yes = "$module" && test -n "$module_cmds"; then
 	    if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
 	      cmds=$module_expsym_cmds
 	    else
@@ -8527,7 +10022,7 @@ EOF
 
 	# Add any objects from preloaded convenience libraries
 	if test -n "$dlprefiles"; then
-	  gentop="$output_objdir/${outputname}x"
+	  gentop=$output_objdir/${outputname}x
 	  func_append generated " $gentop"
 
 	  func_extract_archives $gentop $dlprefiles
@@ -8535,11 +10030,12 @@ EOF
 	  test "X$libobjs" = "X " && libobjs=
 	fi
 
-	save_ifs="$IFS"; IFS='~'
+	save_ifs=$IFS; IFS='~'
 	for cmd in $cmds; do
-	  IFS="$save_ifs"
+	  IFS=$sp$nl
 	  eval cmd=\"$cmd\"
-	  $opt_silent || {
+	  IFS=$save_ifs
+	  $opt_quiet || {
 	    func_quote_for_expand "$cmd"
 	    eval "func_echo $func_quote_for_expand_result"
 	  }
@@ -8547,7 +10043,7 @@ EOF
 	    lt_exit=$?
 
 	    # Restore the uninstalled library and exit
-	    if test "$opt_mode" = relink; then
+	    if test relink = "$opt_mode"; then
 	      ( cd "$output_objdir" && \
 	        $RM "${realname}T" && \
 		$MV "${realname}U" "$realname" )
@@ -8556,10 +10052,10 @@ EOF
 	    exit $lt_exit
 	  }
 	done
-	IFS="$save_ifs"
+	IFS=$save_ifs
 
 	# Restore the uninstalled library and exit
-	if test "$opt_mode" = relink; then
+	if test relink = "$opt_mode"; then
 	  $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
 
 	  if test -n "$convenience"; then
@@ -8579,39 +10075,39 @@ EOF
 	done
 
 	# If -module or -export-dynamic was specified, set the dlname.
-	if test "$module" = yes || test "$export_dynamic" = yes; then
+	if test yes = "$module" || test yes = "$export_dynamic"; then
 	  # On all known operating systems, these are identical.
-	  dlname="$soname"
+	  dlname=$soname
 	fi
       fi
       ;;
 
     obj)
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-	func_warning "\`-dlopen' is ignored for objects"
+      if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
+	func_warning "'-dlopen' is ignored for objects"
       fi
 
       case " $deplibs" in
       *\ -l* | *\ -L*)
-	func_warning "\`-l' and \`-L' are ignored for objects" ;;
+	func_warning "'-l' and '-L' are ignored for objects" ;;
       esac
 
       test -n "$rpath" && \
-	func_warning "\`-rpath' is ignored for objects"
+	func_warning "'-rpath' is ignored for objects"
 
       test -n "$xrpath" && \
-	func_warning "\`-R' is ignored for objects"
+	func_warning "'-R' is ignored for objects"
 
       test -n "$vinfo" && \
-	func_warning "\`-version-info' is ignored for objects"
+	func_warning "'-version-info' is ignored for objects"
 
       test -n "$release" && \
-	func_warning "\`-release' is ignored for objects"
+	func_warning "'-release' is ignored for objects"
 
       case $output in
       *.lo)
 	test -n "$objs$old_deplibs" && \
-	  func_fatal_error "cannot build library object \`$output' from non-libtool objects"
+	  func_fatal_error "cannot build library object '$output' from non-libtool objects"
 
 	libobj=$output
 	func_lo2o "$libobj"
@@ -8619,7 +10115,7 @@ EOF
 	;;
       *)
 	libobj=
-	obj="$output"
+	obj=$output
 	;;
       esac
 
@@ -8632,17 +10128,19 @@ EOF
       # the extraction.
       reload_conv_objs=
       gentop=
-      # reload_cmds runs $LD directly, so let us get rid of
-      # -Wl from whole_archive_flag_spec and hope we can get by with
-      # turning comma into space..
-      wl=
-
+      # if reload_cmds runs $LD directly, get rid of -Wl from
+      # whole_archive_flag_spec and hope we can get by with turning comma
+      # into space.
+      case $reload_cmds in
+        *\$LD[\ \$]*) wl= ;;
+      esac
       if test -n "$convenience"; then
 	if test -n "$whole_archive_flag_spec"; then
 	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-	  reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
+	  test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
+	  reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags
 	else
-	  gentop="$output_objdir/${obj}x"
+	  gentop=$output_objdir/${obj}x
 	  func_append generated " $gentop"
 
 	  func_extract_archives $gentop $convenience
@@ -8651,12 +10149,12 @@ EOF
       fi
 
       # If we're not building shared, we need to use non_pic_objs
-      test "$build_libtool_libs" != yes && libobjs="$non_pic_objects"
+      test yes = "$build_libtool_libs" || libobjs=$non_pic_objects
 
       # Create the old-style object.
-      reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
+      reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs
 
-      output="$obj"
+      output=$obj
       func_execute_cmds "$reload_cmds" 'exit $?'
 
       # Exit if we aren't doing a library object file.
@@ -8668,7 +10166,7 @@ EOF
 	exit $EXIT_SUCCESS
       fi
 
-      if test "$build_libtool_libs" != yes; then
+      test yes = "$build_libtool_libs" || {
 	if test -n "$gentop"; then
 	  func_show_eval '${RM}r "$gentop"'
 	fi
@@ -8678,12 +10176,12 @@ EOF
 	# $show "echo timestamp > $libobj"
 	# $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
 	exit $EXIT_SUCCESS
-      fi
+      }
 
-      if test -n "$pic_flag" || test "$pic_mode" != default; then
+      if test -n "$pic_flag" || test default != "$pic_mode"; then
 	# Only do commands if we really have different PIC objects.
 	reload_objs="$libobjs $reload_conv_objs"
-	output="$libobj"
+	output=$libobj
 	func_execute_cmds "$reload_cmds" 'exit $?'
       fi
 
@@ -8700,16 +10198,14 @@ EOF
 	          output=$func_stripname_result.exe;;
       esac
       test -n "$vinfo" && \
-	func_warning "\`-version-info' is ignored for programs"
+	func_warning "'-version-info' is ignored for programs"
 
       test -n "$release" && \
-	func_warning "\`-release' is ignored for programs"
+	func_warning "'-release' is ignored for programs"
 
-      test "$preload" = yes \
-        && test "$dlopen_support" = unknown \
-	&& test "$dlopen_self" = unknown \
-	&& test "$dlopen_self_static" = unknown && \
-	  func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support."
+      $preload \
+	&& test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \
+	&& func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support."
 
       case $host in
       *-*-rhapsody* | *-*-darwin1.[012])
@@ -8723,11 +10219,11 @@ EOF
       *-*-darwin*)
 	# Don't allow lazy linking, it breaks C++ global constructors
 	# But is supposedly fixed on 10.4 or later (yay!).
-	if test "$tagname" = CXX ; then
+	if test CXX = "$tagname"; then
 	  case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
 	    10.[0123])
-	      func_append compile_command " ${wl}-bind_at_load"
-	      func_append finalize_command " ${wl}-bind_at_load"
+	      func_append compile_command " $wl-bind_at_load"
+	      func_append finalize_command " $wl-bind_at_load"
 	    ;;
 	  esac
 	fi
@@ -8763,7 +10259,7 @@ EOF
 	*) func_append new_libs " $deplib" ;;
 	esac
       done
-      compile_deplibs="$new_libs"
+      compile_deplibs=$new_libs
 
 
       func_append compile_command " $compile_deplibs"
@@ -8787,7 +10283,7 @@ EOF
 	if test -n "$hardcode_libdir_flag_spec"; then
 	  if test -n "$hardcode_libdir_separator"; then
 	    if test -z "$hardcode_libdirs"; then
-	      hardcode_libdirs="$libdir"
+	      hardcode_libdirs=$libdir
 	    else
 	      # Just accumulate the unique libdirs.
 	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8810,7 +10306,7 @@ EOF
 	fi
 	case $host in
 	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
-	  testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'`
+	  testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'`
 	  case :$dllsearchpath: in
 	  *":$libdir:"*) ;;
 	  ::) dllsearchpath=$libdir;;
@@ -8827,10 +10323,10 @@ EOF
       # Substitute the hardcoded libdirs into the rpath.
       if test -n "$hardcode_libdir_separator" &&
 	 test -n "$hardcode_libdirs"; then
-	libdir="$hardcode_libdirs"
+	libdir=$hardcode_libdirs
 	eval rpath=\" $hardcode_libdir_flag_spec\"
       fi
-      compile_rpath="$rpath"
+      compile_rpath=$rpath
 
       rpath=
       hardcode_libdirs=
@@ -8838,7 +10334,7 @@ EOF
 	if test -n "$hardcode_libdir_flag_spec"; then
 	  if test -n "$hardcode_libdir_separator"; then
 	    if test -z "$hardcode_libdirs"; then
-	      hardcode_libdirs="$libdir"
+	      hardcode_libdirs=$libdir
 	    else
 	      # Just accumulate the unique libdirs.
 	      case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
@@ -8863,45 +10359,43 @@ EOF
       # Substitute the hardcoded libdirs into the rpath.
       if test -n "$hardcode_libdir_separator" &&
 	 test -n "$hardcode_libdirs"; then
-	libdir="$hardcode_libdirs"
+	libdir=$hardcode_libdirs
 	eval rpath=\" $hardcode_libdir_flag_spec\"
       fi
-      finalize_rpath="$rpath"
+      finalize_rpath=$rpath
 
-      if test -n "$libobjs" && test "$build_old_libs" = yes; then
+      if test -n "$libobjs" && test yes = "$build_old_libs"; then
 	# Transform all the library objects into standard objects.
 	compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
 	finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
       fi
 
-      func_generate_dlsyms "$outputname" "@PROGRAM@" "no"
+      func_generate_dlsyms "$outputname" "@PROGRAM@" false
 
       # template prelinking step
       if test -n "$prelink_cmds"; then
 	func_execute_cmds "$prelink_cmds" 'exit $?'
       fi
 
-      wrappers_required=yes
+      wrappers_required=:
       case $host in
       *cegcc* | *mingw32ce*)
         # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
-        wrappers_required=no
+        wrappers_required=false
         ;;
       *cygwin* | *mingw* )
-        if test "$build_libtool_libs" != yes; then
-          wrappers_required=no
-        fi
+        test yes = "$build_libtool_libs" || wrappers_required=false
         ;;
       *)
-        if test "$need_relink" = no || test "$build_libtool_libs" != yes; then
-          wrappers_required=no
+        if test no = "$need_relink" || test yes != "$build_libtool_libs"; then
+          wrappers_required=false
         fi
         ;;
       esac
-      if test "$wrappers_required" = no; then
+      $wrappers_required || {
 	# Replace the output file specification.
 	compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
-	link_command="$compile_command$compile_rpath"
+	link_command=$compile_command$compile_rpath
 
 	# We have no uninstalled library dependencies, so finalize right now.
 	exit_status=0
@@ -8914,12 +10408,12 @@ EOF
 	fi
 
 	# Delete the generated files.
-	if test -f "$output_objdir/${outputname}S.${objext}"; then
-	  func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"'
+	if test -f "$output_objdir/${outputname}S.$objext"; then
+	  func_show_eval '$RM "$output_objdir/${outputname}S.$objext"'
 	fi
 
 	exit $exit_status
-      fi
+      }
 
       if test -n "$compile_shlibpath$finalize_shlibpath"; then
 	compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
@@ -8949,9 +10443,9 @@ EOF
 	fi
       fi
 
-      if test "$no_install" = yes; then
+      if test yes = "$no_install"; then
 	# We don't need to create a wrapper script.
-	link_command="$compile_var$compile_command$compile_rpath"
+	link_command=$compile_var$compile_command$compile_rpath
 	# Replace the output file specification.
 	link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
 	# Delete the old output file.
@@ -8968,27 +10462,28 @@ EOF
 	exit $EXIT_SUCCESS
       fi
 
-      if test "$hardcode_action" = relink; then
-	# Fast installation is not supported
-	link_command="$compile_var$compile_command$compile_rpath"
-	relink_command="$finalize_var$finalize_command$finalize_rpath"
+      case $hardcode_action,$fast_install in
+        relink,*)
+	  # Fast installation is not supported
+	  link_command=$compile_var$compile_command$compile_rpath
+	  relink_command=$finalize_var$finalize_command$finalize_rpath
 
-	func_warning "this platform does not like uninstalled shared libraries"
-	func_warning "\`$output' will be relinked during installation"
-      else
-	if test "$fast_install" != no; then
-	  link_command="$finalize_var$compile_command$finalize_rpath"
-	  if test "$fast_install" = yes; then
-	    relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
-	  else
-	    # fast_install is set to needless
-	    relink_command=
-	  fi
-	else
-	  link_command="$compile_var$compile_command$compile_rpath"
-	  relink_command="$finalize_var$finalize_command$finalize_rpath"
-	fi
-      fi
+	  func_warning "this platform does not like uninstalled shared libraries"
+	  func_warning "'$output' will be relinked during installation"
+	  ;;
+        *,yes)
+	  link_command=$finalize_var$compile_command$finalize_rpath
+	  relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
+          ;;
+	*,no)
+	  link_command=$compile_var$compile_command$compile_rpath
+	  relink_command=$finalize_var$finalize_command$finalize_rpath
+          ;;
+	*,needless)
+	  link_command=$finalize_var$compile_command$finalize_rpath
+	  relink_command=
+          ;;
+      esac
 
       # Replace the output file specification.
       link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
@@ -9045,8 +10540,8 @@ EOF
 	    func_dirname_and_basename "$output" "" "."
 	    output_name=$func_basename_result
 	    output_path=$func_dirname_result
-	    cwrappersource="$output_path/$objdir/lt-$output_name.c"
-	    cwrapper="$output_path/$output_name.exe"
+	    cwrappersource=$output_path/$objdir/lt-$output_name.c
+	    cwrapper=$output_path/$output_name.exe
 	    $RM $cwrappersource $cwrapper
 	    trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
 
@@ -9067,7 +10562,7 @@ EOF
 	    trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
 	    $opt_dry_run || {
 	      # note: this script will not be executed, so do not chmod.
-	      if test "x$build" = "x$host" ; then
+	      if test "x$build" = "x$host"; then
 		$cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
 	      else
 		func_emit_wrapper no > $func_ltwrapper_scriptname_result
@@ -9090,25 +10585,27 @@ EOF
     # See if we need to build an old-fashioned archive.
     for oldlib in $oldlibs; do
 
-      if test "$build_libtool_libs" = convenience; then
-	oldobjs="$libobjs_save $symfileobj"
-	addlibs="$convenience"
-	build_libtool_libs=no
-      else
-	if test "$build_libtool_libs" = module; then
-	  oldobjs="$libobjs_save"
+      case $build_libtool_libs in
+        convenience)
+	  oldobjs="$libobjs_save $symfileobj"
+	  addlibs=$convenience
 	  build_libtool_libs=no
-	else
+	  ;;
+	module)
+	  oldobjs=$libobjs_save
+	  addlibs=$old_convenience
+	  build_libtool_libs=no
+          ;;
+	*)
 	  oldobjs="$old_deplibs $non_pic_objects"
-	  if test "$preload" = yes && test -f "$symfileobj"; then
-	    func_append oldobjs " $symfileobj"
-	  fi
-	fi
-	addlibs="$old_convenience"
-      fi
+	  $preload && test -f "$symfileobj" \
+	    && func_append oldobjs " $symfileobj"
+	  addlibs=$old_convenience
+	  ;;
+      esac
 
       if test -n "$addlibs"; then
-	gentop="$output_objdir/${outputname}x"
+	gentop=$output_objdir/${outputname}x
 	func_append generated " $gentop"
 
 	func_extract_archives $gentop $addlibs
@@ -9116,13 +10613,13 @@ EOF
       fi
 
       # Do each command in the archive commands.
-      if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
+      if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then
 	cmds=$old_archive_from_new_cmds
       else
 
 	# Add any objects from preloaded convenience libraries
 	if test -n "$dlprefiles"; then
-	  gentop="$output_objdir/${outputname}x"
+	  gentop=$output_objdir/${outputname}x
 	  func_append generated " $gentop"
 
 	  func_extract_archives $gentop $dlprefiles
@@ -9143,7 +10640,7 @@ EOF
 	  :
 	else
 	  echo "copying selected object files to avoid basename conflicts..."
-	  gentop="$output_objdir/${outputname}x"
+	  gentop=$output_objdir/${outputname}x
 	  func_append generated " $gentop"
 	  func_mkdir_p "$gentop"
 	  save_oldobjs=$oldobjs
@@ -9152,7 +10649,7 @@ EOF
 	  for obj in $save_oldobjs
 	  do
 	    func_basename "$obj"
-	    objbase="$func_basename_result"
+	    objbase=$func_basename_result
 	    case " $oldobjs " in
 	    " ") oldobjs=$obj ;;
 	    *[\ /]"$objbase "*)
@@ -9221,18 +10718,18 @@ EOF
 	    else
 	      # the above command should be used before it gets too long
 	      oldobjs=$objlist
-	      if test "$obj" = "$last_oldobj" ; then
+	      if test "$obj" = "$last_oldobj"; then
 		RANLIB=$save_RANLIB
 	      fi
 	      test -z "$concat_cmds" || concat_cmds=$concat_cmds~
-	      eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
+	      eval concat_cmds=\"\$concat_cmds$old_archive_cmds\"
 	      objlist=
 	      len=$len0
 	    fi
 	  done
 	  RANLIB=$save_RANLIB
 	  oldobjs=$objlist
-	  if test "X$oldobjs" = "X" ; then
+	  if test -z "$oldobjs"; then
 	    eval cmds=\"\$concat_cmds\"
 	  else
 	    eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
@@ -9249,7 +10746,7 @@ EOF
     case $output in
     *.la)
       old_library=
-      test "$build_old_libs" = yes && old_library="$libname.$libext"
+      test yes = "$build_old_libs" && old_library=$libname.$libext
       func_verbose "creating $output"
 
       # Preserve any variables that may affect compiler behavior
@@ -9264,31 +10761,31 @@ EOF
 	fi
       done
       # Quote the link command for shipping.
-      relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
+      relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
       relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
-      if test "$hardcode_automatic" = yes ; then
+      if test yes = "$hardcode_automatic"; then
 	relink_command=
       fi
 
       # Only create the output if not a dry run.
       $opt_dry_run || {
 	for installed in no yes; do
-	  if test "$installed" = yes; then
+	  if test yes = "$installed"; then
 	    if test -z "$install_libdir"; then
 	      break
 	    fi
-	    output="$output_objdir/$outputname"i
+	    output=$output_objdir/${outputname}i
 	    # Replace all uninstalled libtool libraries with the installed ones
 	    newdependency_libs=
 	    for deplib in $dependency_libs; do
 	      case $deplib in
 	      *.la)
 		func_basename "$deplib"
-		name="$func_basename_result"
+		name=$func_basename_result
 		func_resolve_sysroot "$deplib"
-		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
+		eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
 		test -z "$libdir" && \
-		  func_fatal_error "\`$deplib' is not a valid libtool archive"
+		  func_fatal_error "'$deplib' is not a valid libtool archive"
 		func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name"
 		;;
 	      -L*)
@@ -9304,23 +10801,23 @@ EOF
 	      *) func_append newdependency_libs " $deplib" ;;
 	      esac
 	    done
-	    dependency_libs="$newdependency_libs"
+	    dependency_libs=$newdependency_libs
 	    newdlfiles=
 
 	    for lib in $dlfiles; do
 	      case $lib in
 	      *.la)
 	        func_basename "$lib"
-		name="$func_basename_result"
-		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+		name=$func_basename_result
+		eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
 		test -z "$libdir" && \
-		  func_fatal_error "\`$lib' is not a valid libtool archive"
+		  func_fatal_error "'$lib' is not a valid libtool archive"
 		func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name"
 		;;
 	      *) func_append newdlfiles " $lib" ;;
 	      esac
 	    done
-	    dlfiles="$newdlfiles"
+	    dlfiles=$newdlfiles
 	    newdlprefiles=
 	    for lib in $dlprefiles; do
 	      case $lib in
@@ -9330,34 +10827,34 @@ EOF
 		# didn't already link the preopened objects directly into
 		# the library:
 		func_basename "$lib"
-		name="$func_basename_result"
-		eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+		name=$func_basename_result
+		eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
 		test -z "$libdir" && \
-		  func_fatal_error "\`$lib' is not a valid libtool archive"
+		  func_fatal_error "'$lib' is not a valid libtool archive"
 		func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name"
 		;;
 	      esac
 	    done
-	    dlprefiles="$newdlprefiles"
+	    dlprefiles=$newdlprefiles
 	  else
 	    newdlfiles=
 	    for lib in $dlfiles; do
 	      case $lib in
-		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+		[\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
 		*) abs=`pwd`"/$lib" ;;
 	      esac
 	      func_append newdlfiles " $abs"
 	    done
-	    dlfiles="$newdlfiles"
+	    dlfiles=$newdlfiles
 	    newdlprefiles=
 	    for lib in $dlprefiles; do
 	      case $lib in
-		[\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;;
+		[\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
 		*) abs=`pwd`"/$lib" ;;
 	      esac
 	      func_append newdlprefiles " $abs"
 	    done
-	    dlprefiles="$newdlprefiles"
+	    dlprefiles=$newdlprefiles
 	  fi
 	  $RM $output
 	  # place dlname in correct position for cygwin
@@ -9373,10 +10870,9 @@ EOF
 	  case $host,$output,$installed,$module,$dlname in
 	    *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
 	      # If a -bindir argument was supplied, place the dll there.
-	      if test "x$bindir" != x ;
-	      then
+	      if test -n "$bindir"; then
 		func_relative_path "$install_libdir" "$bindir"
-		tdlname=$func_relative_path_result$dlname
+		tdlname=$func_relative_path_result/$dlname
 	      else
 		# Otherwise fall back on heuristic.
 		tdlname=../bin/$dlname
@@ -9385,7 +10881,7 @@ EOF
 	  esac
 	  $ECHO > $output "\
 # $outputname - a libtool library file
-# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION
+# Generated by $PROGRAM (GNU $PACKAGE) $VERSION
 #
 # Please DO NOT delete this file!
 # It is necessary for linking the library.
@@ -9399,7 +10895,7 @@ library_names='$library_names'
 # The name of the static archive.
 old_library='$old_library'
 
-# Linker flags that can not go in dependency_libs.
+# Linker flags that cannot go in dependency_libs.
 inherited_linker_flags='$new_inherited_linker_flags'
 
 # Libraries that this one depends upon.
@@ -9425,7 +10921,7 @@ dlpreopen='$dlprefiles'
 
 # Directory that this library needs to be installed in:
 libdir='$install_libdir'"
-	  if test "$installed" = no && test "$need_relink" = yes; then
+	  if test no,yes = "$installed,$need_relink"; then
 	    $ECHO >> $output "\
 relink_command=\"$relink_command\""
 	  fi
@@ -9440,27 +10936,29 @@ relink_command=\"$relink_command\""
     exit $EXIT_SUCCESS
 }
 
-{ test "$opt_mode" = link || test "$opt_mode" = relink; } &&
-    func_mode_link ${1+"$@"}
+if test link = "$opt_mode" || test relink = "$opt_mode"; then
+  func_mode_link ${1+"$@"}
+fi
 
 
 # func_mode_uninstall arg...
 func_mode_uninstall ()
 {
-    $opt_debug
-    RM="$nonopt"
+    $debug_cmd
+
+    RM=$nonopt
     files=
-    rmforce=
+    rmforce=false
     exit_status=0
 
     # This variable tells wrapper scripts just to set variables rather
     # than running their programs.
-    libtool_install_magic="$magic"
+    libtool_install_magic=$magic
 
     for arg
     do
       case $arg in
-      -f) func_append RM " $arg"; rmforce=yes ;;
+      -f) func_append RM " $arg"; rmforce=: ;;
       -*) func_append RM " $arg" ;;
       *) func_append files " $arg" ;;
       esac
@@ -9473,18 +10971,18 @@ func_mode_uninstall ()
 
     for file in $files; do
       func_dirname "$file" "" "."
-      dir="$func_dirname_result"
-      if test "X$dir" = X.; then
-	odir="$objdir"
+      dir=$func_dirname_result
+      if test . = "$dir"; then
+	odir=$objdir
       else
-	odir="$dir/$objdir"
+	odir=$dir/$objdir
       fi
       func_basename "$file"
-      name="$func_basename_result"
-      test "$opt_mode" = uninstall && odir="$dir"
+      name=$func_basename_result
+      test uninstall = "$opt_mode" && odir=$dir
 
       # Remember odir for removal later, being careful to avoid duplicates
-      if test "$opt_mode" = clean; then
+      if test clean = "$opt_mode"; then
 	case " $rmdirs " in
 	  *" $odir "*) ;;
 	  *) func_append rmdirs " $odir" ;;
@@ -9499,11 +10997,11 @@ func_mode_uninstall ()
       elif test -d "$file"; then
 	exit_status=1
 	continue
-      elif test "$rmforce" = yes; then
+      elif $rmforce; then
 	continue
       fi
 
-      rmfiles="$file"
+      rmfiles=$file
 
       case $name in
       *.la)
@@ -9517,7 +11015,7 @@ func_mode_uninstall ()
 	  done
 	  test -n "$old_library" && func_append rmfiles " $odir/$old_library"
 
-	  case "$opt_mode" in
+	  case $opt_mode in
 	  clean)
 	    case " $library_names " in
 	    *" $dlname "*) ;;
@@ -9528,12 +11026,12 @@ func_mode_uninstall ()
 	  uninstall)
 	    if test -n "$library_names"; then
 	      # Do each command in the postuninstall commands.
-	      func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+	      func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1'
 	    fi
 
 	    if test -n "$old_library"; then
 	      # Do each command in the old_postuninstall commands.
-	      func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1'
+	      func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1'
 	    fi
 	    # FIXME: should reinstall the best remaining shared library.
 	    ;;
@@ -9549,21 +11047,19 @@ func_mode_uninstall ()
 	  func_source $dir/$name
 
 	  # Add PIC object to the list of files to remove.
-	  if test -n "$pic_object" &&
-	     test "$pic_object" != none; then
+	  if test -n "$pic_object" && test none != "$pic_object"; then
 	    func_append rmfiles " $dir/$pic_object"
 	  fi
 
 	  # Add non-PIC object to the list of files to remove.
-	  if test -n "$non_pic_object" &&
-	     test "$non_pic_object" != none; then
+	  if test -n "$non_pic_object" && test none != "$non_pic_object"; then
 	    func_append rmfiles " $dir/$non_pic_object"
 	  fi
 	fi
 	;;
 
       *)
-	if test "$opt_mode" = clean ; then
+	if test clean = "$opt_mode"; then
 	  noexename=$name
 	  case $file in
 	  *.exe)
@@ -9590,12 +11086,12 @@ func_mode_uninstall ()
 
 	    # note $name still contains .exe if it was in $file originally
 	    # as does the version of $file that was added into $rmfiles
-	    func_append rmfiles " $odir/$name $odir/${name}S.${objext}"
-	    if test "$fast_install" = yes && test -n "$relink_command"; then
+	    func_append rmfiles " $odir/$name $odir/${name}S.$objext"
+	    if test yes = "$fast_install" && test -n "$relink_command"; then
 	      func_append rmfiles " $odir/lt-$name"
 	    fi
-	    if test "X$noexename" != "X$name" ; then
-	      func_append rmfiles " $odir/lt-${noexename}.c"
+	    if test "X$noexename" != "X$name"; then
+	      func_append rmfiles " $odir/lt-$noexename.c"
 	    fi
 	  fi
 	fi
@@ -9604,7 +11100,7 @@ func_mode_uninstall ()
       func_show_eval "$RM $rmfiles" 'exit_status=1'
     done
 
-    # Try to remove the ${objdir}s in the directories where we deleted files
+    # Try to remove the $objdir's in the directories where we deleted files
     for dir in $rmdirs; do
       if test -d "$dir"; then
 	func_show_eval "rmdir $dir >/dev/null 2>&1"
@@ -9614,16 +11110,17 @@ func_mode_uninstall ()
     exit $exit_status
 }
 
-{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } &&
-    func_mode_uninstall ${1+"$@"}
+if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then
+  func_mode_uninstall ${1+"$@"}
+fi
 
 test -z "$opt_mode" && {
-  help="$generic_help"
+  help=$generic_help
   func_fatal_help "you must specify a MODE"
 }
 
 test -z "$exec_cmd" && \
-  func_fatal_help "invalid operation mode \`$opt_mode'"
+  func_fatal_help "invalid operation mode '$opt_mode'"
 
 if test -n "$exec_cmd"; then
   eval exec "$exec_cmd"
@@ -9634,7 +11131,7 @@ exit $exit_status
 
 
 # The TAGs below are defined such that we never get into a situation
-# in which we disable both kinds of libraries.  Given conflicting
+# where we disable both kinds of libraries.  Given conflicting
 # choices, we go for a static library, that is the most portable,
 # since we can't tell whether shared libraries were disabled because
 # the user asked for that or because the platform doesn't support
@@ -9657,5 +11154,3 @@ build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
 # mode:shell-script
 # sh-indentation:2
 # End:
-# vi:sw=2
-
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index d7c043f..10ab284 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -1,8 +1,6 @@
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 #
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
+#   Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
 #   Written by Gordon Matzigkeit, 1996
 #
 # This file is free software; the Free Software Foundation gives
@@ -10,36 +8,30 @@
 # modifications, as long as this notice is preserved.
 
 m4_define([_LT_COPYING], [dnl
-#   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
-#                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-#                 Foundation, Inc.
-#   Written by Gordon Matzigkeit, 1996
-#
-#   This file is part of GNU Libtool.
-#
-# GNU Libtool is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This is free software; see the source for copying conditions.  There is NO
+# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+# GNU Libtool is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of of the License, or
+# (at your option) any later version.
 #
-# As a special exception to the GNU General Public License,
-# if you distribute this file as part of a program or library that
-# is built using GNU Libtool, you may include this file under the
-# same distribution terms that you use for the rest of that program.
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program or library that is built
+# using GNU Libtool, you may include this file under the  same
+# distribution terms that you use for the rest of that program.
 #
-# GNU Libtool is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# GNU Libtool is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with GNU Libtool; see the file COPYING.  If not, a copy
-# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
-# obtained by writing to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 ])
 
-# serial 57 LT_INIT
+# serial 58 LT_INIT
 
 
 # LT_PREREQ(VERSION)
@@ -67,7 +59,7 @@ esac
 # LT_INIT([OPTIONS])
 # ------------------
 AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
+[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
 AC_BEFORE([$0], [LT_LANG])dnl
 AC_BEFORE([$0], [LT_OUTPUT])dnl
@@ -91,7 +83,7 @@ dnl Parse OPTIONS
 _LT_SET_OPTIONS([$0], [$1])
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ltmain"
+LIBTOOL_DEPS=$ltmain
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
@@ -111,26 +103,43 @@ dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
 
 
+# _LT_PREPARE_CC_BASENAME
+# -----------------------
+m4_defun([_LT_PREPARE_CC_BASENAME], [
+# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+func_cc_basename ()
+{
+    for cc_temp in @S|@*""; do
+      case $cc_temp in
+        compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
+        distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
+        \-*) ;;
+        *) break;;
+      esac
+    done
+    func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+}
+])# _LT_PREPARE_CC_BASENAME
+
+
 # _LT_CC_BASENAME(CC)
 # -------------------
-# Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
+# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
+# but that macro is also expanded into generated libtool script, which
+# arranges for $SED and $ECHO to be set by different means.
 m4_defun([_LT_CC_BASENAME],
-[for cc_temp in $1""; do
-  case $cc_temp in
-    compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
-    distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
-    \-*) ;;
-    *) break;;
-  esac
-done
-cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
+[m4_require([_LT_PREPARE_CC_BASENAME])dnl
+AC_REQUIRE([_LT_DECL_SED])dnl
+AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
+func_cc_basename $1
+cc_basename=$func_cc_basename_result
 ])
 
 
 # _LT_FILEUTILS_DEFAULTS
 # ----------------------
 # It is okay to use these file commands and assume they have been set
-# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
+# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
 m4_defun([_LT_FILEUTILS_DEFAULTS],
 [: ${CP="cp -f"}
 : ${MV="mv -f"}
@@ -177,15 +186,16 @@ m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
 m4_require([_LT_WITH_SYSROOT])dnl
+m4_require([_LT_CMD_TRUNCATE])dnl
 
 _LT_CONFIG_LIBTOOL_INIT([
-# See if we are running on zsh, and set the options which allow our
+# See if we are running on zsh, and set the options that allow our
 # commands through without removal of \ escapes INIT.
-if test -n "\${ZSH_VERSION+set}" ; then
+if test -n "\${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 ])
-if test -n "${ZSH_VERSION+set}" ; then
+if test -n "${ZSH_VERSION+set}"; then
    setopt NO_GLOB_SUBST
 fi
 
@@ -198,7 +208,7 @@ aix3*)
   # AIX sometimes has problems with the GCC collect2 program.  For some
   # reason, if we set the COLLECT_NAMES environment variable, the problems
   # vanish in a puff of smoke.
-  if test "X${COLLECT_NAMES+set}" != Xset; then
+  if test set != "${COLLECT_NAMES+set}"; then
     COLLECT_NAMES=
     export COLLECT_NAMES
   fi
@@ -209,14 +219,14 @@ esac
 ofile=libtool
 can_build_shared=yes
 
-# All known linkers require a `.a' archive for static linking (except MSVC,
+# All known linkers require a '.a' archive for static linking (except MSVC,
 # which needs '.lib').
 libext=a
 
-with_gnu_ld="$lt_cv_prog_gnu_ld"
+with_gnu_ld=$lt_cv_prog_gnu_ld
 
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
+old_CC=$CC
+old_CFLAGS=$CFLAGS
 
 # Set sane defaults for various variables
 test -z "$CC" && CC=cc
@@ -269,14 +279,14 @@ no_glob_subst='s/\*/\\\*/g'
 
 # _LT_PROG_LTMAIN
 # ---------------
-# Note that this code is called both from `configure', and `config.status'
+# Note that this code is called both from 'configure', and 'config.status'
 # now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
-# `config.status' has no value for ac_aux_dir unless we are using Automake,
+# 'config.status' has no value for ac_aux_dir unless we are using Automake,
 # so we pass a copy along to make sure it has a sensible value anyway.
 m4_defun([_LT_PROG_LTMAIN],
 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
-ltmain="$ac_aux_dir/ltmain.sh"
+ltmain=$ac_aux_dir/ltmain.sh
 ])# _LT_PROG_LTMAIN
 
 
@@ -286,7 +296,7 @@ ltmain="$ac_aux_dir/ltmain.sh"
 
 # So that we can recreate a full libtool script including additional
 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
-# in macros and then make a single call at the end using the `libtool'
+# in macros and then make a single call at the end using the 'libtool'
 # label.
 
 
@@ -421,8 +431,8 @@ m4_define([_lt_decl_all_varnames],
 
 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
 # ------------------------------------
-# Quote a variable value, and forward it to `config.status' so that its
-# declaration there will have the same value as in `configure'.  VARNAME
+# Quote a variable value, and forward it to 'config.status' so that its
+# declaration there will have the same value as in 'configure'.  VARNAME
 # must have a single quote delimited value for this to work.
 m4_define([_LT_CONFIG_STATUS_DECLARE],
 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
@@ -446,7 +456,7 @@ m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
 # Output comment and list of tags supported by the script
 m4_defun([_LT_LIBTOOL_TAGS],
 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
-available_tags="_LT_TAGS"dnl
+available_tags='_LT_TAGS'dnl
 ])
 
 
@@ -474,7 +484,7 @@ m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
 # _LT_LIBTOOL_CONFIG_VARS
 # -----------------------
 # Produce commented declarations of non-tagged libtool config variables
-# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
+# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
 # script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
 # section) are produced by _LT_LIBTOOL_TAG_VARS.
 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
@@ -500,8 +510,8 @@ m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
 # Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
 # variables for single and double quote escaping we saved from calls
 # to _LT_DECL, we can put quote escaped variables declarations
-# into `config.status', and then the shell code to quote escape them in
-# for loops in `config.status'.  Finally, any additional code accumulated
+# into 'config.status', and then the shell code to quote escape them in
+# for loops in 'config.status'.  Finally, any additional code accumulated
 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
 m4_defun([_LT_CONFIG_COMMANDS],
 [AC_PROVIDE_IFELSE([LT_OUTPUT],
@@ -547,7 +557,7 @@ for var in lt_decl_all_varnames([[ \
 ]], lt_decl_quote_varnames); do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -560,7 +570,7 @@ for var in lt_decl_all_varnames([[ \
 ]], lt_decl_dquote_varnames); do
     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
     *[[\\\\\\\`\\"\\\$]]*)
-      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
       ;;
     *)
       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
@@ -576,7 +586,7 @@ _LT_OUTPUT_LIBTOOL_INIT
 # Generate a child script FILE with all initialization necessary to
 # reuse the environment learned by the parent script, and make the
 # file executable.  If COMMENT is supplied, it is inserted after the
-# `#!' sequence but before initialization text begins.  After this
+# '#!' sequence but before initialization text begins.  After this
 # macro, additional text can be appended to FILE to form the body of
 # the child script.  The macro ends with non-zero status if the
 # file could not be fully written (such as if the disk is full).
@@ -598,7 +608,7 @@ AS_SHELL_SANITIZE
 _AS_PREPARE
 exec AS_MESSAGE_FD>&1
 _ASEOF
-test $lt_write_fail = 0 && chmod +x $1[]dnl
+test 0 = "$lt_write_fail" && chmod +x $1[]dnl
 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
 
 # LT_OUTPUT
@@ -621,7 +631,7 @@ exec AS_MESSAGE_LOG_FD>>config.log
 } >&AS_MESSAGE_LOG_FD
 
 lt_cl_help="\
-\`$as_me' creates a local libtool stub from the current configuration,
+'$as_me' creates a local libtool stub from the current configuration,
 for use in further configure time tests before the real libtool is
 generated.
 
@@ -643,7 +653,7 @@ Copyright (C) 2011 Free Software Foundation, Inc.
 This config.lt script is free software; the Free Software Foundation
 gives unlimited permision to copy, distribute and modify it."
 
-while test $[#] != 0
+while test 0 != $[#]
 do
   case $[1] in
     --version | --v* | -V )
@@ -656,10 +666,10 @@ do
       lt_cl_silent=: ;;
 
     -*) AC_MSG_ERROR([unrecognized option: $[1]
-Try \`$[0] --help' for more information.]) ;;
+Try '$[0] --help' for more information.]) ;;
 
     *) AC_MSG_ERROR([unrecognized argument: $[1]
-Try \`$[0] --help' for more information.]) ;;
+Try '$[0] --help' for more information.]) ;;
   esac
   shift
 done
@@ -685,7 +695,7 @@ chmod +x "$CONFIG_LT"
 # open by configure.  Here we exec the FD to /dev/null, effectively closing
 # config.log, so it can be properly (re)opened and appended to by config.lt.
 lt_cl_success=:
-test "$silent" = yes &&
+test yes = "$silent" &&
   lt_config_lt_args="$lt_config_lt_args --quiet"
 exec AS_MESSAGE_LOG_FD>/dev/null
 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
@@ -705,27 +715,31 @@ m4_defun([_LT_CONFIG],
 _LT_CONFIG_SAVE_COMMANDS([
   m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
   m4_if(_LT_TAG, [C], [
-    # See if we are running on zsh, and set the options which allow our
+    # See if we are running on zsh, and set the options that allow our
     # commands through without removal of \ escapes.
-    if test -n "${ZSH_VERSION+set}" ; then
+    if test -n "${ZSH_VERSION+set}"; then
       setopt NO_GLOB_SUBST
     fi
 
-    cfgfile="${ofile}T"
+    cfgfile=${ofile}T
     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
     $RM "$cfgfile"
 
     cat <<_LT_EOF >> "$cfgfile"
 #! $SHELL
-
-# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
+# Generated automatically by $as_me ($PACKAGE) $VERSION
 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
-#
+
+# Provide generalized library-building support services.
+# Written by Gordon Matzigkeit, 1996
+
 _LT_COPYING
 _LT_LIBTOOL_TAGS
 
+# Configured defaults for sys_lib_dlsearch_path munging.
+: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
+
 # ### BEGIN LIBTOOL CONFIG
 _LT_LIBTOOL_CONFIG_VARS
 _LT_LIBTOOL_TAG_VARS
@@ -733,13 +747,24 @@ _LT_LIBTOOL_TAG_VARS
 
 _LT_EOF
 
+    cat <<'_LT_EOF' >> "$cfgfile"
+
+# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_PREPARE_MUNGE_PATH_LIST
+_LT_PREPARE_CC_BASENAME
+
+# ### END FUNCTIONS SHARED WITH CONFIGURE
+
+_LT_EOF
+
   case $host_os in
   aix3*)
     cat <<\_LT_EOF >> "$cfgfile"
 # AIX sometimes has problems with the GCC collect2 program.  For some
 # reason, if we set the COLLECT_NAMES environment variable, the problems
 # vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
+if test set != "${COLLECT_NAMES+set}"; then
   COLLECT_NAMES=
   export COLLECT_NAMES
 fi
@@ -756,8 +781,6 @@ _LT_EOF
   sed '$q' "$ltmain" >> "$cfgfile" \
      || (rm -f "$cfgfile"; exit 1)
 
-  _LT_PROG_REPLACE_SHELLFNS
-
    mv -f "$cfgfile" "$ofile" ||
     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
   chmod +x "$ofile"
@@ -775,7 +798,6 @@ _LT_EOF
 [m4_if([$1], [], [
     PACKAGE='$PACKAGE'
     VERSION='$VERSION'
-    TIMESTAMP='$TIMESTAMP'
     RM='$RM'
     ofile='$ofile'], [])
 ])dnl /_LT_CONFIG_SAVE_COMMANDS
@@ -974,7 +996,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
 
     AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
       [lt_cv_apple_cc_single_mod=no
-      if test -z "${LT_MULTI_MODULE}"; then
+      if test -z "$LT_MULTI_MODULE"; then
 	# By default we will add the -single_module flag. You can override
 	# by either setting the environment variable LT_MULTI_MODULE
 	# non-empty at configure time, or by adding -multi_module to the
@@ -992,7 +1014,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
 	  cat conftest.err >&AS_MESSAGE_LOG_FD
 	# Otherwise, if the output was created with a 0 exit code from
 	# the compiler, it worked.
-	elif test -f libconftest.dylib && test $_lt_result -eq 0; then
+	elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
 	  lt_cv_apple_cc_single_mod=yes
 	else
 	  cat conftest.err >&AS_MESSAGE_LOG_FD
@@ -1010,7 +1032,7 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
       AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
 	[lt_cv_ld_exported_symbols_list=yes],
 	[lt_cv_ld_exported_symbols_list=no])
-	LDFLAGS="$save_LDFLAGS"
+	LDFLAGS=$save_LDFLAGS
     ])
 
     AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
@@ -1032,7 +1054,7 @@ _LT_EOF
       _lt_result=$?
       if test -s conftest.err && $GREP force_load conftest.err; then
 	cat conftest.err >&AS_MESSAGE_LOG_FD
-      elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
+      elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
 	lt_cv_ld_force_load=yes
       else
 	cat conftest.err >&AS_MESSAGE_LOG_FD
@@ -1042,32 +1064,32 @@ _LT_EOF
     ])
     case $host_os in
     rhapsody* | darwin1.[[012]])
-      _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
     darwin1.*)
-      _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+      _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
     darwin*) # darwin 5.x on
       # if running on 10.5 or later, the deployment target defaults
       # to the OS version, if on x86, and 10.4, the deployment
       # target defaults to 10.4. Don't you love it?
       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
 	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-	10.[[012]]*)
-	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+	10.[[012]][[,.]]*)
+	  _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
 	10.*)
-	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+	  _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
       esac
     ;;
   esac
-    if test "$lt_cv_apple_cc_single_mod" = "yes"; then
+    if test yes = "$lt_cv_apple_cc_single_mod"; then
       _lt_dar_single_mod='$single_module'
     fi
-    if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
-      _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
+    if test yes = "$lt_cv_ld_exported_symbols_list"; then
+      _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
     else
-      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
+      _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
     fi
-    if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
+    if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
       _lt_dsymutil='~$DSYMUTIL $lib || :'
     else
       _lt_dsymutil=
@@ -1087,29 +1109,29 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
   _LT_TAGVAR(hardcode_direct, $1)=no
   _LT_TAGVAR(hardcode_automatic, $1)=yes
   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
-  if test "$lt_cv_ld_force_load" = "yes"; then
-    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
+  if test yes = "$lt_cv_ld_force_load"; then
+    _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
     m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
                   [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
   else
     _LT_TAGVAR(whole_archive_flag_spec, $1)=''
   fi
   _LT_TAGVAR(link_all_deplibs, $1)=yes
-  _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
+  _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
   case $cc_basename in
-     ifort*) _lt_dar_can_shared=yes ;;
+     ifort*|nagfor*) _lt_dar_can_shared=yes ;;
      *) _lt_dar_can_shared=$GCC ;;
   esac
-  if test "$_lt_dar_can_shared" = "yes"; then
+  if test yes = "$_lt_dar_can_shared"; then
     output_verbose_link_cmd=func_echo_all
-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
+    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
+    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
+    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
+    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
     m4_if([$1], [CXX],
-[   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
+[   if test yes != "$lt_cv_apple_cc_single_mod"; then
+      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
+      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
     fi
 ],[])
   else
@@ -1129,7 +1151,7 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
 # Allow to override them for all tags through lt_cv_aix_libpath.
 m4_defun([_LT_SYS_MODULE_PATH_AIX],
 [m4_require([_LT_DECL_SED])dnl
-if test "${lt_cv_aix_libpath+set}" = set; then
+if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
   AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
@@ -1147,7 +1169,7 @@ else
     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi],[])
   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
-    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
+    _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
   fi
   ])
   aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
@@ -1167,8 +1189,8 @@ m4_define([_LT_SHELL_INIT],
 # -----------------------
 # Find how we can fake an echo command that does not interpret backslash.
 # In particular, with Autoconf 2.60 or later we add some code to the start
-# of the generated configure script which will find a shell with a builtin
-# printf (which we can use as an echo command).
+# of the generated configure script that will find a shell with a builtin
+# printf (that we can use as an echo command).
 m4_defun([_LT_PROG_ECHO_BACKSLASH],
 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
@@ -1196,10 +1218,10 @@ fi
 # Invoke $ECHO with all args, space-separated.
 func_echo_all ()
 {
-    $ECHO "$*" 
+    $ECHO "$*"
 }
 
-case "$ECHO" in
+case $ECHO in
   printf*) AC_MSG_RESULT([printf]) ;;
   print*) AC_MSG_RESULT([print -r]) ;;
   *) AC_MSG_RESULT([cat]) ;;
@@ -1225,16 +1247,17 @@ _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
 AC_DEFUN([_LT_WITH_SYSROOT],
 [AC_MSG_CHECKING([for sysroot])
 AC_ARG_WITH([sysroot],
-[  --with-sysroot[=DIR] Search for dependent libraries within DIR
-                        (or the compiler's sysroot if not specified).],
+[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
+  [Search for dependent libraries within DIR (or the compiler's sysroot
+   if not specified).])],
 [], [with_sysroot=no])
 
 dnl lt_sysroot will always be passed unquoted.  We quote it here
 dnl in case the user passed a directory name.
 lt_sysroot=
-case ${with_sysroot} in #(
+case $with_sysroot in #(
  yes)
-   if test "$GCC" = yes; then
+   if test yes = "$GCC"; then
      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
    fi
    ;; #(
@@ -1244,14 +1267,14 @@ case ${with_sysroot} in #(
  no|'')
    ;; #(
  *)
-   AC_MSG_RESULT([${with_sysroot}])
+   AC_MSG_RESULT([$with_sysroot])
    AC_MSG_ERROR([The sysroot must be an absolute path.])
    ;;
 esac
 
  AC_MSG_RESULT([${lt_sysroot:-no}])
 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
-[dependent libraries, and in which our libraries should be installed.])])
+[dependent libraries, and where our libraries should be installed.])])
 
 # _LT_ENABLE_LOCK
 # ---------------
@@ -1259,31 +1282,33 @@ m4_defun([_LT_ENABLE_LOCK],
 [AC_ARG_ENABLE([libtool-lock],
   [AS_HELP_STRING([--disable-libtool-lock],
     [avoid locking (might break parallel builds)])])
-test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+test no = "$enable_libtool_lock" || enable_libtool_lock=yes
 
 # Some flags need to be propagated to the compiler or linker for good
 # libtool support.
 case $host in
 ia64-*-hpux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set mode
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
-	HPUX_IA64_MODE="32"
+	HPUX_IA64_MODE=32
 	;;
       *ELF-64*)
-	HPUX_IA64_MODE="64"
+	HPUX_IA64_MODE=64
 	;;
     esac
   fi
   rm -rf conftest*
   ;;
 *-*-irix6*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    if test "$lt_cv_prog_gnu_ld" = yes; then
+    if test yes = "$lt_cv_prog_gnu_ld"; then
       case `/usr/bin/file conftest.$ac_objext` in
 	*32-bit*)
 	  LD="${LD-ld} -melf32bsmip"
@@ -1312,9 +1337,46 @@ ia64-*-hpux*)
   rm -rf conftest*
   ;;
 
+mips64*-*linux*)
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
+  echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
+  if AC_TRY_EVAL(ac_compile); then
+    emul=elf
+    case `/usr/bin/file conftest.$ac_objext` in
+      *32-bit*)
+	emul="${emul}32"
+	;;
+      *64-bit*)
+	emul="${emul}64"
+	;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *MSB*)
+	emul="${emul}btsmip"
+	;;
+      *LSB*)
+	emul="${emul}ltsmip"
+	;;
+    esac
+    case `/usr/bin/file conftest.$ac_objext` in
+      *N32*)
+	emul="${emul}n32"
+	;;
+    esac
+    LD="${LD-ld} -m $emul"
+  fi
+  rm -rf conftest*
+  ;;
+
 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.  Note that the listed cases only cover the
+  # situations where additional linker options are needed (such as when
+  # doing 32-bit compilation for a host where ld defaults to 64-bit, or
+  # vice versa); the common cases where no linker options are needed do
+  # not appear in the list.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.o` in
@@ -1333,10 +1395,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 		;;
 	    esac
 	    ;;
-	  powerpc64le-*)
+	  powerpc64le-*linux*)
 	    LD="${LD-ld} -m elf32lppclinux"
 	    ;;
-	  powerpc64-*)
+	  powerpc64-*linux*)
 	    LD="${LD-ld} -m elf32ppclinux"
 	    ;;
 	  s390x-*linux*)
@@ -1355,10 +1417,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 	  x86_64-*linux*)
 	    LD="${LD-ld} -m elf_x86_64"
 	    ;;
-	  powerpcle-*)
+	  powerpcle-*linux*)
 	    LD="${LD-ld} -m elf64lppc"
 	    ;;
-	  powerpc-*)
+	  powerpc-*linux*)
 	    LD="${LD-ld} -m elf64ppc"
 	    ;;
 	  s390*-*linux*|s390*-*tpf*)
@@ -1376,19 +1438,20 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
 
 *-*-sco3.2v5*)
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
+  SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
     [AC_LANG_PUSH(C)
      AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
      AC_LANG_POP])
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+  if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
+    CFLAGS=$SAVE_CFLAGS
   fi
   ;;
 *-*solaris*)
-  # Find out which ABI we are using.
+  # Find out what ABI is being produced by ac_compile, and set linker
+  # options accordingly.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.o` in
@@ -1396,7 +1459,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
       case $lt_cv_prog_gnu_ld in
       yes*)
         case $host in
-        i?86-*-solaris*)
+        i?86-*-solaris*|x86_64-*-solaris*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
         sparc*-*-solaris*)
@@ -1405,7 +1468,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
         esac
         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
-          LD="${LD-ld}_sol2"
+          LD=${LD-ld}_sol2
         fi
         ;;
       *)
@@ -1421,7 +1484,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
   ;;
 esac
 
-need_locks="$enable_libtool_lock"
+need_locks=$enable_libtool_lock
 ])# _LT_ENABLE_LOCK
 
 
@@ -1440,11 +1503,11 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
      [echo conftest.$ac_objext > conftest.lst
       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
       AC_TRY_EVAL([lt_ar_try])
-      if test "$ac_status" -eq 0; then
+      if test 0 -eq "$ac_status"; then
 	# Ensure the archiver fails upon bogus file names.
 	rm -f conftest.$ac_objext libconftest.a
 	AC_TRY_EVAL([lt_ar_try])
-	if test "$ac_status" -ne 0; then
+	if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
         fi
       fi
@@ -1452,7 +1515,7 @@ AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
      ])
   ])
 
-if test "x$lt_cv_ar_at_file" = xno; then
+if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
 else
   archiver_list_spec=$lt_cv_ar_at_file
@@ -1483,7 +1546,7 @@ old_postuninstall_cmds=
 
 if test -n "$RANLIB"; then
   case $host_os in
-  openbsd*)
+  bitrig* | openbsd*)
     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
     ;;
   *)
@@ -1519,7 +1582,7 @@ AC_CACHE_CHECK([$1], [$2],
   [$2=no
    m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
-   lt_compiler_flag="$3"
+   lt_compiler_flag="$3"  ## exclude from sc_useless_quotes_in_assignment
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
    # Note that $ac_compile itself does not contain backslashes and begins
@@ -1546,7 +1609,7 @@ AC_CACHE_CHECK([$1], [$2],
    $RM conftest*
 ])
 
-if test x"[$]$2" = xyes; then
+if test yes = "[$]$2"; then
     m4_if([$5], , :, [$5])
 else
     m4_if([$6], , :, [$6])
@@ -1568,7 +1631,7 @@ AC_DEFUN([_LT_LINKER_OPTION],
 m4_require([_LT_DECL_SED])dnl
 AC_CACHE_CHECK([$1], [$2],
   [$2=no
-   save_LDFLAGS="$LDFLAGS"
+   save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $3"
    echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
@@ -1587,10 +1650,10 @@ AC_CACHE_CHECK([$1], [$2],
      fi
    fi
    $RM -r conftest*
-   LDFLAGS="$save_LDFLAGS"
+   LDFLAGS=$save_LDFLAGS
 ])
 
-if test x"[$]$2" = xyes; then
+if test yes = "[$]$2"; then
     m4_if([$4], , :, [$4])
 else
     m4_if([$5], , :, [$5])
@@ -1611,7 +1674,7 @@ AC_DEFUN([LT_CMD_MAX_LEN],
 AC_MSG_CHECKING([the maximum length of command line arguments])
 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
   i=0
-  teststring="ABCD"
+  teststring=ABCD
 
   case $build_os in
   msdosdjgpp*)
@@ -1651,7 +1714,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
     lt_cv_sys_max_cmd_len=8192;
     ;;
 
-  netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
+  bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
     # This has been around since 386BSD, at least.  Likely further.
     if test -x /sbin/sysctl; then
       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
@@ -1702,22 +1765,22 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
   *)
     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
     if test -n "$lt_cv_sys_max_cmd_len" && \
-	test undefined != "$lt_cv_sys_max_cmd_len"; then
+       test undefined != "$lt_cv_sys_max_cmd_len"; then
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
     else
       # Make teststring a little bigger before we do anything with it.
       # a 1K string should be a reasonable start.
-      for i in 1 2 3 4 5 6 7 8 ; do
+      for i in 1 2 3 4 5 6 7 8; do
         teststring=$teststring$teststring
       done
       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
       # If test is not a shell built-in, we'll probably end up computing a
       # maximum length that is only half of the actual maximum length, but
       # we can't tell.
-      while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
+      while { test X`env echo "$teststring$teststring" 2>/dev/null` \
 	         = "X$teststring$teststring"; } >/dev/null 2>&1 &&
-	      test $i != 17 # 1/2 MB should be enough
+	      test 17 != "$i" # 1/2 MB should be enough
       do
         i=`expr $i + 1`
         teststring=$teststring$teststring
@@ -1733,7 +1796,7 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
     ;;
   esac
 ])
-if test -n $lt_cv_sys_max_cmd_len ; then
+if test -n "$lt_cv_sys_max_cmd_len"; then
   AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
 else
   AC_MSG_RESULT(none)
@@ -1761,7 +1824,7 @@ m4_defun([_LT_HEADER_DLFCN],
 # ----------------------------------------------------------------
 m4_defun([_LT_TRY_DLOPEN_SELF],
 [m4_require([_LT_HEADER_DLFCN])dnl
-if test "$cross_compiling" = yes; then :
+if test yes = "$cross_compiling"; then :
   [$4]
 else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
@@ -1808,9 +1871,9 @@ else
 #  endif
 #endif
 
-/* When -fvisbility=hidden is used, assume the code has been annotated
+/* When -fvisibility=hidden is used, assume the code has been annotated
    correspondingly for the symbols needed.  */
-#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
+#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
 int fnord () __attribute__((visibility("default")));
 #endif
 
@@ -1836,7 +1899,7 @@ int main ()
   return status;
 }]
 _LT_EOF
-  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+  if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
     lt_status=$?
     case x$lt_status in
@@ -1857,7 +1920,7 @@ rm -fr conftest*
 # ------------------
 AC_DEFUN([LT_SYS_DLOPEN_SELF],
 [m4_require([_LT_HEADER_DLFCN])dnl
-if test "x$enable_dlopen" != xyes; then
+if test yes != "$enable_dlopen"; then
   enable_dlopen=unknown
   enable_dlopen_self=unknown
   enable_dlopen_self_static=unknown
@@ -1867,44 +1930,52 @@ else
 
   case $host_os in
   beos*)
-    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen=load_add_on
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ;;
 
   mingw* | pw32* | cegcc*)
-    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen=LoadLibrary
     lt_cv_dlopen_libs=
     ;;
 
   cygwin*)
-    lt_cv_dlopen="dlopen"
+    lt_cv_dlopen=dlopen
     lt_cv_dlopen_libs=
     ;;
 
   darwin*)
-  # if libdl is installed we need to link against it
+    # if libdl is installed we need to link against it
     AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
-    lt_cv_dlopen="dyld"
+		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
+    lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
     lt_cv_dlopen_self=yes
     ])
     ;;
 
+  tpf*)
+    # Don't try to run any link tests for TPF.  We know it's impossible
+    # because TPF is a cross-compiler, and we know how we open DSOs.
+    lt_cv_dlopen=dlopen
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=no
+    ;;
+
   *)
     AC_CHECK_FUNC([shl_load],
-	  [lt_cv_dlopen="shl_load"],
+	  [lt_cv_dlopen=shl_load],
       [AC_CHECK_LIB([dld], [shl_load],
-	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
+	    [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
 	[AC_CHECK_FUNC([dlopen],
-	      [lt_cv_dlopen="dlopen"],
+	      [lt_cv_dlopen=dlopen],
 	  [AC_CHECK_LIB([dl], [dlopen],
-		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+		[lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
 	    [AC_CHECK_LIB([svld], [dlopen],
-		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+		  [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
 	      [AC_CHECK_LIB([dld], [dld_link],
-		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
+		    [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
 	      ])
 	    ])
 	  ])
@@ -1913,21 +1984,21 @@ else
     ;;
   esac
 
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  else
+  if test no = "$lt_cv_dlopen"; then
     enable_dlopen=no
+  else
+    enable_dlopen=yes
   fi
 
   case $lt_cv_dlopen in
   dlopen)
-    save_CPPFLAGS="$CPPFLAGS"
-    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+    save_CPPFLAGS=$CPPFLAGS
+    test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
 
-    save_LDFLAGS="$LDFLAGS"
+    save_LDFLAGS=$LDFLAGS
     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
 
-    save_LIBS="$LIBS"
+    save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
     AC_CACHE_CHECK([whether a program can dlopen itself],
@@ -1937,7 +2008,7 @@ else
 	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
     ])
 
-    if test "x$lt_cv_dlopen_self" = xyes; then
+    if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
 	  lt_cv_dlopen_self_static, [dnl
@@ -1947,9 +2018,9 @@ else
       ])
     fi
 
-    CPPFLAGS="$save_CPPFLAGS"
-    LDFLAGS="$save_LDFLAGS"
-    LIBS="$save_LIBS"
+    CPPFLAGS=$save_CPPFLAGS
+    LDFLAGS=$save_LDFLAGS
+    LIBS=$save_LIBS
     ;;
   esac
 
@@ -2041,8 +2112,8 @@ m4_defun([_LT_COMPILER_FILE_LOCKS],
 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 _LT_COMPILER_C_O([$1])
 
-hard_links="nottested"
-if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
+hard_links=nottested
+if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
   AC_MSG_CHECKING([if we can lock with hard links])
   hard_links=yes
@@ -2052,8 +2123,8 @@ if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" !=
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   AC_MSG_RESULT([$hard_links])
-  if test "$hard_links" = no; then
-    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
+  if test no = "$hard_links"; then
+    AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
     need_locks=warn
   fi
 else
@@ -2080,8 +2151,8 @@ objdir=$lt_cv_objdir
 _LT_DECL([], [objdir], [0],
          [The name of the directory that contains temporary libtool files])dnl
 m4_pattern_allow([LT_OBJDIR])dnl
-AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
-  [Define to the sub-directory in which libtool stores uninstalled libraries.])
+AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
+  [Define to the sub-directory where libtool stores uninstalled libraries.])
 ])# _LT_CHECK_OBJDIR
 
 
@@ -2093,15 +2164,15 @@ m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
 _LT_TAGVAR(hardcode_action, $1)=
 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
    test -n "$_LT_TAGVAR(runpath_var, $1)" ||
-   test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
+   test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
 
   # We can hardcode non-existent directories.
-  if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
+  if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
      # If the only mechanism to avoid hardcoding is shlibpath_var, we
      # have to relink, otherwise we might link with an installed library
      # when we should be linking with a yet-to-be-installed one
-     ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
-     test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
+     ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
+     test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
     # Linking always hardcodes the temporary library directory.
     _LT_TAGVAR(hardcode_action, $1)=relink
   else
@@ -2115,12 +2186,12 @@ else
 fi
 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
 
-if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
-   test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
+if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
+   test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
   # Fast installation is not supported
   enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
+elif test yes = "$shlibpath_overrides_runpath" ||
+     test no = "$enable_shared"; then
   # Fast installation is not necessary
   enable_fast_install=needless
 fi
@@ -2144,7 +2215,7 @@ else
 # FIXME - insert some real tests, host_os isn't really good enough
   case $host_os in
   darwin*)
-    if test -n "$STRIP" ; then
+    if test -n "$STRIP"; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
       AC_MSG_RESULT([yes])
@@ -2162,6 +2233,47 @@ _LT_DECL([], [striplib], [1])
 ])# _LT_CMD_STRIPLIB
 
 
+# _LT_PREPARE_MUNGE_PATH_LIST
+# ---------------------------
+# Make sure func_munge_path_list() is defined correctly.
+m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
+[[# func_munge_path_list VARIABLE PATH
+# -----------------------------------
+# VARIABLE is name of variable containing _space_ separated list of
+# directories to be munged by the contents of PATH, which is string
+# having a format:
+# "DIR[:DIR]:"
+#       string "DIR[ DIR]" will be prepended to VARIABLE
+# ":DIR[:DIR]"
+#       string "DIR[ DIR]" will be appended to VARIABLE
+# "DIRP[:DIRP]::[DIRA:]DIRA"
+#       string "DIRP[ DIRP]" will be prepended to VARIABLE and string
+#       "DIRA[ DIRA]" will be appended to VARIABLE
+# "DIR[:DIR]"
+#       VARIABLE will be replaced by "DIR[ DIR]"
+func_munge_path_list ()
+{
+    case x at S|@2 in
+    x)
+        ;;
+    *:)
+        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
+        ;;
+    x:*)
+        eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
+        ;;
+    *::*)
+        eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
+        eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
+        ;;
+    *)
+        eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
+        ;;
+    esac
+}
+]])# _LT_PREPARE_PATH_LIST
+
+
 # _LT_SYS_DYNAMIC_LINKER([TAG])
 # -----------------------------
 # PORTME Fill in your ld.so characteristics
@@ -2172,17 +2284,18 @@ m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_DECL_OBJDUMP])dnl
 m4_require([_LT_DECL_SED])dnl
 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
+m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
 AC_MSG_CHECKING([dynamic linker characteristics])
 m4_if([$1],
 	[], [
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $host_os in
-    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
-    *) lt_awk_arg="/^libraries:/" ;;
+    darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
+    *) lt_awk_arg='/^libraries:/' ;;
   esac
   case $host_os in
-    mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
-    *) lt_sed_strip_eq="s,=/,/,g" ;;
+    mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
+    *) lt_sed_strip_eq='s|=/|/|g' ;;
   esac
   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
   case $lt_search_path_spec in
@@ -2198,28 +2311,35 @@ if test "$GCC" = yes; then
     ;;
   esac
   # Ok, now we have the path, separated by spaces, we can step through it
-  # and add multilib dir if necessary.
+  # and add multilib dir if necessary...
   lt_tmp_lt_search_path_spec=
-  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  # ...but if some path component already ends with the multilib dir we assume
+  # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
+  case "$lt_multi_os_dir; $lt_search_path_spec " in
+  "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
+    lt_multi_os_dir=
+    ;;
+  esac
   for lt_sys_path in $lt_search_path_spec; do
-    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
-      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
-    else
+    if test -d "$lt_sys_path$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
+    elif test -n "$lt_multi_os_dir"; then
       test -d "$lt_sys_path" && \
 	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
     fi
   done
   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
-BEGIN {RS=" "; FS="/|\n";} {
-  lt_foo="";
-  lt_count=0;
+BEGIN {RS = " "; FS = "/|\n";} {
+  lt_foo = "";
+  lt_count = 0;
   for (lt_i = NF; lt_i > 0; lt_i--) {
     if ($lt_i != "" && $lt_i != ".") {
       if ($lt_i == "..") {
         lt_count++;
       } else {
         if (lt_count == 0) {
-          lt_foo="/" $lt_i lt_foo;
+          lt_foo = "/" $lt_i lt_foo;
         } else {
           lt_count--;
         }
@@ -2233,7 +2353,7 @@ BEGIN {RS=" "; FS="/|\n";} {
   # for these hosts.
   case $host_os in
     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
-      $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
+      $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
   esac
   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
 else
@@ -2242,7 +2362,7 @@ fi])
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
-shrext_cmds=".so"
+shrext_cmds=.so
 postinstall_cmds=
 postuninstall_cmds=
 finish_cmds=
@@ -2259,14 +2379,17 @@ hardcode_into_libs=no
 # flags to be left without arguments
 need_version=unknown
 
+AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
+[User-defined run-time library search path.])
+
 case $host_os in
 aix3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
   shlibpath_var=LIBPATH
 
   # AIX 3 has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}${shared_ext}$major'
+  soname_spec='$libname$release$shared_ext$major'
   ;;
 
 aix[[4-9]]*)
@@ -2274,41 +2397,91 @@ aix[[4-9]]*)
   need_lib_prefix=no
   need_version=no
   hardcode_into_libs=yes
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     # AIX 5 supports IA64
-    library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
     shlibpath_var=LD_LIBRARY_PATH
   else
     # With GCC up to 2.95.x, collect2 would create an import file
     # for dependence libraries.  The import file would start with
-    # the line `#! .'.  This would cause the generated library to
-    # depend on `.', always an invalid library.  This was fixed in
+    # the line '#! .'.  This would cause the generated library to
+    # depend on '.', always an invalid library.  This was fixed in
     # development snapshots of GCC prior to 3.0.
     case $host_os in
       aix4 | aix4.[[01]] | aix4.[[01]].*)
       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
 	   echo ' yes '
-	   echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
+	   echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
 	:
       else
 	can_build_shared=no
       fi
       ;;
     esac
-    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
+    # Using Import Files as archive members, it is possible to support
+    # filename-based versioning of shared library archives on AIX. While
+    # this would work for both with and without runtime linking, it will
+    # prevent static linking of such archives. So we do filename-based
+    # shared library versioning with .so extension only, which is used
+    # when both runtime linking and shared linking is enabled.
+    # Unfortunately, runtime linking may impact performance, so we do
+    # not want this to be the default eventually. Also, we use the
+    # versioned .so libs for executables only if there is the -brtl
+    # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
+    # To allow for filename-based versioning support, we need to create
+    # libNAME.so.V as an archive file, containing:
+    # *) an Import File, referring to the versioned filename of the
+    #    archive as well as the shared archive member, telling the
+    #    bitwidth (32 or 64) of that shared object, and providing the
+    #    list of exported symbols of that shared object, eventually
+    #    decorated with the 'weak' keyword
+    # *) the shared object with the F_LOADONLY flag set, to really avoid
+    #    it being seen by the linker.
+    # At run time we better use the real file rather than another symlink,
+    # but for link time we create the symlink libNAME.so -> libNAME.so.V
+
+    case $with_aix_soname,$aix_use_runtimelinking in
+    # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
     # soname into executable. Probably we can add versioning support to
     # collect2, so additional links can be useful in future.
-    if test "$aix_use_runtimelinking" = yes; then
+    aix,yes) # traditional libtool
+      dynamic_linker='AIX unversionable lib.so'
       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
       # instead of lib<name>.a to let people know that these are not
       # typical AIX shared libraries.
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    else
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      ;;
+    aix,no) # traditional AIX only
+      dynamic_linker='AIX lib.a[(]lib.so.V[)]'
       # We preserve .a as extension for shared libraries through AIX4.2
       # and later when we are not doing run time linking.
-      library_names_spec='${libname}${release}.a $libname.a'
-      soname_spec='${libname}${release}${shared_ext}$major'
-    fi
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      ;;
+    svr4,*) # full svr4 only
+      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,yes) # both, prefer svr4
+      dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
+      library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
+      # unpreferred sharedlib libNAME.a needs extra handling
+      postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
+      postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
+      # We do not specify a path in Import Files, so LIBPATH fires.
+      shlibpath_overrides_runpath=yes
+      ;;
+    *,no) # both, prefer aix
+      dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
+      library_names_spec='$libname$release.a $libname.a'
+      soname_spec='$libname$release$shared_ext$major'
+      # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
+      postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
+      postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
+      ;;
+    esac
     shlibpath_var=LIBPATH
   fi
   ;;
@@ -2318,18 +2491,18 @@ amigaos*)
   powerpc)
     # Since July 2007 AmigaOS4 officially supports .so libraries.
     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
     ;;
   m68k)
     library_names_spec='$libname.ixlibrary $libname.a'
     # Create ${libname}_ixlibrary.a entries in /sys/libs.
-    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
+    finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
     ;;
   esac
   ;;
 
 beos*)
-  library_names_spec='${libname}${shared_ext}'
+  library_names_spec='$libname$shared_ext'
   dynamic_linker="$host_os ld.so"
   shlibpath_var=LIBRARY_PATH
   ;;
@@ -2337,8 +2510,8 @@ beos*)
 bsdi[[45]]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
@@ -2350,7 +2523,7 @@ bsdi[[45]]*)
 
 cygwin* | mingw* | pw32* | cegcc*)
   version_type=windows
-  shrext_cmds=".dll"
+  shrext_cmds=.dll
   need_version=no
   need_lib_prefix=no
 
@@ -2359,8 +2532,8 @@ cygwin* | mingw* | pw32* | cegcc*)
     # gcc
     library_names_spec='$libname.dll.a'
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname~
@@ -2376,17 +2549,17 @@ cygwin* | mingw* | pw32* | cegcc*)
     case $host_os in
     cygwin*)
       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
-      soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
 m4_if([$1], [],[
       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
       ;;
     mingw* | cegcc*)
       # MinGW DLLs use traditional 'lib' prefix
-      soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
       ;;
     pw32*)
       # pw32 DLLs use 'pw' prefix rather than 'lib'
-      library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
+      library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
       ;;
     esac
     dynamic_linker='Win32 ld.exe'
@@ -2395,8 +2568,8 @@ m4_if([$1], [],[
   *,cl*)
     # Native MSVC
     libname_spec='$name'
-    soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
-    library_names_spec='${libname}.dll.lib'
+    soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
+    library_names_spec='$libname.dll.lib'
 
     case $build_os in
     mingw*)
@@ -2423,7 +2596,7 @@ m4_if([$1], [],[
       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
       ;;
     *)
-      sys_lib_search_path_spec="$LIB"
+      sys_lib_search_path_spec=$LIB
       if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
         # It is most probably a Windows format PATH.
         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
@@ -2436,8 +2609,8 @@ m4_if([$1], [],[
     esac
 
     # DLL is installed to $(libdir)/../bin by postinstall_cmds
-    postinstall_cmds='base_file=`basename \${file}`~
-      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
+    postinstall_cmds='base_file=`basename \$file`~
+      dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
       dldir=$destdir/`dirname \$dlpath`~
       test -d \$dldir || mkdir -p \$dldir~
       $install_prog $dir/$dlname \$dldir/$dlname'
@@ -2450,7 +2623,7 @@ m4_if([$1], [],[
 
   *)
     # Assume MSVC wrapper
-    library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
+    library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
     dynamic_linker='Win32 ld.exe'
     ;;
   esac
@@ -2463,8 +2636,8 @@ darwin* | rhapsody*)
   version_type=darwin
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
-  soname_spec='${libname}${release}${major}$shared_ext'
+  library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$major$shared_ext'
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
@@ -2477,8 +2650,8 @@ dgux*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -2496,12 +2669,13 @@ freebsd* | dragonfly*)
   version_type=freebsd-$objformat
   case $version_type in
     freebsd-elf*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+      soname_spec='$libname$release$shared_ext$major'
       need_version=no
       need_lib_prefix=no
       ;;
     freebsd-*)
-      library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
+      library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
       need_version=yes
       ;;
   esac
@@ -2531,10 +2705,10 @@ haiku*)
   need_lib_prefix=no
   need_version=no
   dynamic_linker="$host_os runtime_loader"
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
+  shlibpath_overrides_runpath=no
   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
   hardcode_into_libs=yes
   ;;
@@ -2552,14 +2726,15 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.so"
     shlibpath_var=LD_LIBRARY_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
-    if test "X$HPUX_IA64_MODE" = X32; then
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
+    if test 32 = "$HPUX_IA64_MODE"; then
       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux32
     else
       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
+      sys_lib_dlsearch_path_spec=/usr/lib/hpux64
     fi
-    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
   hppa*64*)
     shrext_cmds='.sl'
@@ -2567,8 +2742,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
     ;;
@@ -2577,8 +2752,8 @@ hpux9* | hpux10* | hpux11*)
     dynamic_linker="$host_os dld.sl"
     shlibpath_var=SHLIB_PATH
     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     ;;
   esac
   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
@@ -2591,8 +2766,8 @@ interix[[3-9]]*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -2603,7 +2778,7 @@ irix5* | irix6* | nonstopux*)
   case $host_os in
     nonstopux*) version_type=nonstopux ;;
     *)
-	if test "$lt_cv_prog_gnu_ld" = yes; then
+	if test yes = "$lt_cv_prog_gnu_ld"; then
 		version_type=linux # correct to gnu/linux during the next big refactor
 	else
 		version_type=irix
@@ -2611,8 +2786,8 @@ irix5* | irix6* | nonstopux*)
   esac
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
   case $host_os in
   irix5* | nonstopux*)
     libsuff= shlibsuff=
@@ -2631,8 +2806,8 @@ irix5* | irix6* | nonstopux*)
   esac
   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
   shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
+  sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
   hardcode_into_libs=yes
   ;;
 
@@ -2641,13 +2816,33 @@ linux*oldld* | linux*aout* | linux*coff*)
   dynamic_linker=no
   ;;
 
+linux*android*)
+  version_type=none # Android doesn't support versioned libraries.
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='$libname$release$shared_ext'
+  soname_spec='$libname$release$shared_ext'
+  finish_cmds=
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  dynamic_linker='Android linker'
+  # Don't embed -rpath directories since the linker doesn't support them.
+  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+  ;;
+
 # This must be glibc/ELF.
 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
@@ -2672,7 +2867,12 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # Append ld.so.conf contents to the search path
+  # Ideally, we could use ldconfig to report *all* directores which are
+  # searched for libraries, however this is still not possible.  Aside from not
+  # being certain /sbin/ldconfig is available, command
+  # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
+  # even though it is searched at run-time.  Try to do the best guess by
+  # appending ld.so.conf contents (and includes) to the search path.
   if test -f /etc/ld.so.conf; then
     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[	 ]*hwcap[	 ]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
     sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
@@ -2704,12 +2904,12 @@ netbsd*)
   need_lib_prefix=no
   need_version=no
   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
     dynamic_linker='NetBSD (a.out) ld.so'
   else
-    library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-    soname_spec='${libname}${release}${shared_ext}$major'
+    library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+    soname_spec='$libname$release$shared_ext$major'
     dynamic_linker='NetBSD ld.elf_so'
   fi
   shlibpath_var=LD_LIBRARY_PATH
@@ -2719,7 +2919,7 @@ netbsd*)
 
 newsos6)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   ;;
@@ -2728,58 +2928,68 @@ newsos6)
   version_type=qnx
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
   dynamic_linker='ldqnx.so'
   ;;
 
-openbsd*)
+openbsd* | bitrig*)
   version_type=sunos
-  sys_lib_dlsearch_path_spec="/usr/lib"
+  sys_lib_dlsearch_path_spec=/usr/lib
   need_lib_prefix=no
-  # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
-  case $host_os in
-    openbsd3.3 | openbsd3.3.*)	need_version=yes ;;
-    *)				need_version=no  ;;
-  esac
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-    case $host_os in
-      openbsd2.[[89]] | openbsd2.[[89]].*)
-	shlibpath_overrides_runpath=no
-	;;
-      *)
-	shlibpath_overrides_runpath=yes
-	;;
-      esac
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
+    need_version=no
   else
-    shlibpath_overrides_runpath=yes
+    need_version=yes
   fi
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
   ;;
 
 os2*)
   libname_spec='$name'
-  shrext_cmds=".dll"
+  version_type=windows
+  shrext_cmds=.dll
+  need_version=no
   need_lib_prefix=no
-  library_names_spec='$libname${shared_ext} $libname.a'
+  # OS/2 can only load a DLL with a base name of 8 characters or less.
+  soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
+    v=$($ECHO $release$versuffix | tr -d .-);
+    n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
+    $ECHO $n$v`$shared_ext'
+  library_names_spec='${libname}_dll.$libext'
   dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
+  shlibpath_var=BEGINLIBPATH
+  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
+  postinstall_cmds='base_file=`basename \$file`~
+    dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
+    dldir=$destdir/`dirname \$dlpath`~
+    test -d \$dldir || mkdir -p \$dldir~
+    $install_prog $dir/$dlname \$dldir/$dlname~
+    chmod a+x \$dldir/$dlname~
+    if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
+      eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
+    fi'
+  postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
+    dlpath=$dir/\$dldll~
+    $RM \$dlpath'
   ;;
 
 osf3* | osf4* | osf5*)
   version_type=osf
   need_lib_prefix=no
   need_version=no
-  soname_spec='${libname}${release}${shared_ext}$major'
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  soname_spec='$libname$release$shared_ext$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
   ;;
 
 rdos*)
@@ -2790,8 +3000,8 @@ solaris*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
@@ -2801,11 +3011,11 @@ solaris*)
 
 sunos4*)
   version_type=sunos
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     need_lib_prefix=no
   fi
   need_version=yes
@@ -2813,8 +3023,8 @@ sunos4*)
 
 sysv4 | sysv4.3*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   case $host_vendor in
     sni)
@@ -2835,24 +3045,24 @@ sysv4 | sysv4.3*)
   ;;
 
 sysv4*MP*)
-  if test -d /usr/nec ;then
+  if test -d /usr/nec; then
     version_type=linux # correct to gnu/linux during the next big refactor
-    library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
-    soname_spec='$libname${shared_ext}.$major'
+    library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
+    soname_spec='$libname$shared_ext.$major'
     shlibpath_var=LD_LIBRARY_PATH
   fi
   ;;
 
 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-  version_type=freebsd-elf
+  version_type=sco
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=yes
   hardcode_into_libs=yes
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
   else
     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
@@ -2870,7 +3080,7 @@ tpf*)
   version_type=linux # correct to gnu/linux during the next big refactor
   need_lib_prefix=no
   need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
@@ -2878,8 +3088,8 @@ tpf*)
 
 uts4*)
   version_type=linux # correct to gnu/linux during the next big refactor
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
+  library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
+  soname_spec='$libname$release$shared_ext$major'
   shlibpath_var=LD_LIBRARY_PATH
   ;;
 
@@ -2888,20 +3098,30 @@ uts4*)
   ;;
 esac
 AC_MSG_RESULT([$dynamic_linker])
-test "$dynamic_linker" = no && can_build_shared=no
+test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
 fi
 
-if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
-  sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
+if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
+  sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
 fi
-if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
-  sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
+
+if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
+  sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
 fi
 
+# remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
+configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
+
+# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
+func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
+
+# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
+configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
+
 _LT_DECL([], [variables_saved_for_relink], [1],
     [Variables whose values should be saved in libtool wrapper scripts and
     restored at link time])
@@ -2934,39 +3154,41 @@ _LT_DECL([], [hardcode_into_libs], [0],
     [Whether we should hardcode library paths into libraries])
 _LT_DECL([], [sys_lib_search_path_spec], [2],
     [Compile-time system search path for libraries])
-_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
-    [Run-time system search path for libraries])
+_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
+    [Detected run-time system search path for libraries])
+_LT_DECL([], [configure_time_lt_sys_library_path], [2],
+    [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
 ])# _LT_SYS_DYNAMIC_LINKER
 
 
 # _LT_PATH_TOOL_PREFIX(TOOL)
 # --------------------------
-# find a file program which can recognize shared library
+# find a file program that can recognize shared library
 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
 [m4_require([_LT_DECL_EGREP])dnl
 AC_MSG_CHECKING([for $1])
 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
 [case $MAGIC_CMD in
 [[\\/*] |  ?:[\\/]*])
-  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
   ;;
 *)
-  lt_save_MAGIC_CMD="$MAGIC_CMD"
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_MAGIC_CMD=$MAGIC_CMD
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
 dnl $ac_dummy forces splitting on constant user-supplied paths.
 dnl POSIX.2 word splitting is done only on the output of word expansions,
 dnl not every word.  This closes a longstanding sh security hole.
   ac_dummy="m4_if([$2], , $PATH, [$2])"
   for ac_dir in $ac_dummy; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$1; then
-      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+    if test -f "$ac_dir/$1"; then
+      lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
       if test -n "$file_magic_test_file"; then
 	case $deplibs_check_method in
 	"file_magic "*)
 	  file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
-	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+	  MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
 	    $EGREP "$file_magic_regex" > /dev/null; then
 	    :
@@ -2989,11 +3211,11 @@ _LT_EOF
       break
     fi
   done
-  IFS="$lt_save_ifs"
-  MAGIC_CMD="$lt_save_MAGIC_CMD"
+  IFS=$lt_save_ifs
+  MAGIC_CMD=$lt_save_MAGIC_CMD
   ;;
 esac])
-MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
   AC_MSG_RESULT($MAGIC_CMD)
 else
@@ -3011,7 +3233,7 @@ dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
 
 # _LT_PATH_MAGIC
 # --------------
-# find a file program which can recognize a shared library
+# find a file program that can recognize a shared library
 m4_defun([_LT_PATH_MAGIC],
 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
 if test -z "$lt_cv_path_MAGIC_CMD"; then
@@ -3038,16 +3260,16 @@ m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
 AC_ARG_WITH([gnu-ld],
     [AS_HELP_STRING([--with-gnu-ld],
 	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
-    [test "$withval" = no || with_gnu_ld=yes],
+    [test no = "$withval" || with_gnu_ld=yes],
     [with_gnu_ld=no])dnl
 
 ac_prog=ld
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
   AC_MSG_CHECKING([for ld used by $CC])
   case $host in
   *-*-mingw*)
-    # gcc leaves a trailing carriage return which upsets mingw
+    # gcc leaves a trailing carriage return, which upsets mingw
     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
   *)
     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
@@ -3061,7 +3283,7 @@ if test "$GCC" = yes; then
       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
 	ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
       done
-      test -z "$LD" && LD="$ac_prog"
+      test -z "$LD" && LD=$ac_prog
       ;;
   "")
     # If it fails, then pretend we aren't using GCC.
@@ -3072,37 +3294,37 @@ if test "$GCC" = yes; then
     with_gnu_ld=unknown
     ;;
   esac
-elif test "$with_gnu_ld" = yes; then
+elif test yes = "$with_gnu_ld"; then
   AC_MSG_CHECKING([for GNU ld])
 else
   AC_MSG_CHECKING([for non-GNU ld])
 fi
 AC_CACHE_VAL(lt_cv_path_LD,
 [if test -z "$LD"; then
-  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      lt_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD=$ac_dir/$ac_prog
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some variants of GNU ld only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
       *GNU* | *'with BFD'*)
-	test "$with_gnu_ld" != no && break
+	test no != "$with_gnu_ld" && break
 	;;
       *)
-	test "$with_gnu_ld" != yes && break
+	test yes != "$with_gnu_ld" && break
 	;;
       esac
     fi
   done
-  IFS="$lt_save_ifs"
+  IFS=$lt_save_ifs
 else
-  lt_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD=$LD # Let the user override the test with a path.
 fi])
-LD="$lt_cv_path_LD"
+LD=$lt_cv_path_LD
 if test -n "$LD"; then
   AC_MSG_RESULT($LD)
 else
@@ -3156,13 +3378,13 @@ esac
 reload_cmds='$LD$reload_flag -o $output$reload_objs'
 case $host_os in
   cygwin* | mingw* | pw32* | cegcc*)
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       reload_cmds=false
     fi
     ;;
   darwin*)
-    if test "$GCC" = yes; then
-      reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
+    if test yes = "$GCC"; then
+      reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
     else
       reload_cmds='$LD$reload_flag -o $output$reload_objs'
     fi
@@ -3173,6 +3395,43 @@ _LT_TAGDECL([], [reload_cmds], [2])dnl
 ])# _LT_CMD_RELOAD
 
 
+# _LT_PATH_DD
+# -----------
+# find a working dd
+m4_defun([_LT_PATH_DD],
+[AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+: ${lt_DD:=$DD}
+AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
+[if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
+fi])
+rm -f conftest.i conftest2.i conftest.out])
+])# _LT_PATH_DD
+
+
+# _LT_CMD_TRUNCATE
+# ----------------
+# find command to truncate a binary pipe
+m4_defun([_LT_CMD_TRUNCATE],
+[m4_require([_LT_PATH_DD])
+AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
+[printf 0123456789abcdef0123456789abcdef >conftest.i
+cat conftest.i conftest.i >conftest2.i
+lt_cv_truncate_bin=
+if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
+  cmp -s conftest.i conftest.out \
+  && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
+fi
+rm -f conftest.i conftest2.i conftest.out
+test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
+_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
+  [Command to truncate a binary pipe])
+])# _LT_CMD_TRUNCATE
+
+
 # _LT_CHECK_MAGIC_METHOD
 # ----------------------
 # how to check for library dependencies
@@ -3188,13 +3447,13 @@ lt_cv_deplibs_check_method='unknown'
 # Need to set the preceding variable on all platforms that support
 # interlibrary dependencies.
 # 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
+# 'unknown' -- same as none, but documents that we really don't know.
 # 'pass_all' -- all dependencies passed with no checks.
 # 'test_compile' -- check by making test program.
 # 'file_magic [[regex]]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given extended regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
+# that responds to the $file_magic_cmd with a given extended regex.
+# If you have 'file' or equivalent on your system and you're not sure
+# whether 'pass_all' will *always* work, you probably want this one.
 
 case $host_os in
 aix[[4-9]]*)
@@ -3221,8 +3480,7 @@ mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
   # func_win32_libid shell function, so use a weaker test based on 'objdump',
   # unless we find 'file', for example because we are cross-compiling.
-  # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
-  if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
+  if ( file / ) >/dev/null 2>&1; then
     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
     lt_cv_file_magic_cmd='func_win32_libid'
   else
@@ -3318,8 +3576,8 @@ newos6*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-openbsd*)
-  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+openbsd* | bitrig*)
+  if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
   else
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
@@ -3372,6 +3630,9 @@ sysv4 | sysv4.3*)
 tpf*)
   lt_cv_deplibs_check_method=pass_all
   ;;
+os2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 esac
 ])
 
@@ -3412,33 +3673,38 @@ AC_DEFUN([LT_PATH_NM],
 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
 [if test -n "$NM"; then
   # Let the user override the test.
-  lt_cv_path_NM="$NM"
+  lt_cv_path_NM=$NM
 else
-  lt_nm_to_check="${ac_tool_prefix}nm"
+  lt_nm_to_check=${ac_tool_prefix}nm
   if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
     lt_nm_to_check="$lt_nm_to_check nm"
   fi
   for lt_tmp_nm in $lt_nm_to_check; do
-    lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+    lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
     for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       test -z "$ac_dir" && ac_dir=.
-      tmp_nm="$ac_dir/$lt_tmp_nm"
-      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
+      tmp_nm=$ac_dir/$lt_tmp_nm
+      if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
 	# Check to see if the nm accepts a BSD-compat flag.
-	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
+	# Adding the 'sed 1q' prevents false positives on HP-UX, which says:
 	#   nm: unknown option "B" ignored
 	# Tru64's nm complains that /dev/null is an invalid object file
-	case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
-	*/dev/null* | *'Invalid file or object type'*)
+	# MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
+	case $build_os in
+	mingw*) lt_bad_file=conftest.nm/nofile ;;
+	*) lt_bad_file=/dev/null ;;
+	esac
+	case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
+	*$lt_bad_file* | *'Invalid file or object type'*)
 	  lt_cv_path_NM="$tmp_nm -B"
-	  break
+	  break 2
 	  ;;
 	*)
 	  case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
 	  */dev/null*)
 	    lt_cv_path_NM="$tmp_nm -p"
-	    break
+	    break 2
 	    ;;
 	  *)
 	    lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
@@ -3449,21 +3715,21 @@ else
 	esac
       fi
     done
-    IFS="$lt_save_ifs"
+    IFS=$lt_save_ifs
   done
   : ${lt_cv_path_NM=no}
 fi])
-if test "$lt_cv_path_NM" != "no"; then
-  NM="$lt_cv_path_NM"
+if test no != "$lt_cv_path_NM"; then
+  NM=$lt_cv_path_NM
 else
   # Didn't find any BSD compatible name lister, look for dumpbin.
   if test -n "$DUMPBIN"; then :
     # Let the user override the test.
   else
     AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
-    case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
+    case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
     *COFF*)
-      DUMPBIN="$DUMPBIN -symbols"
+      DUMPBIN="$DUMPBIN -symbols -headers"
       ;;
     *)
       DUMPBIN=:
@@ -3471,8 +3737,8 @@ else
     esac
   fi
   AC_SUBST([DUMPBIN])
-  if test "$DUMPBIN" != ":"; then
-    NM="$DUMPBIN"
+  if test : != "$DUMPBIN"; then
+    NM=$DUMPBIN
   fi
 fi
 test -z "$NM" && NM=nm
@@ -3518,8 +3784,8 @@ lt_cv_sharedlib_from_linklib_cmd,
 
 case $host_os in
 cygwin* | mingw* | pw32* | cegcc*)
-  # two different shell functions defined in ltmain.sh
-  # decide which to use based on capabilities of $DLLTOOL
+  # two different shell functions defined in ltmain.sh;
+  # decide which one to use based on capabilities of $DLLTOOL
   case `$DLLTOOL --help 2>&1` in
   *--identify-strict*)
     lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
@@ -3531,7 +3797,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   ;;
 *)
   # fallback: assume linklib IS sharedlib
-  lt_cv_sharedlib_from_linklib_cmd="$ECHO"
+  lt_cv_sharedlib_from_linklib_cmd=$ECHO
   ;;
 esac
 ])
@@ -3558,13 +3824,28 @@ AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool
     lt_cv_path_mainfest_tool=yes
   fi
   rm -f conftest*])
-if test "x$lt_cv_path_mainfest_tool" != xyes; then
+if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
 ])# _LT_PATH_MANIFEST_TOOL
 
 
+# _LT_DLL_DEF_P([FILE])
+# ---------------------
+# True iff FILE is a Windows DLL '.def' file.
+# Keep in sync with func_dll_def_p in the libtool script
+AC_DEFUN([_LT_DLL_DEF_P],
+[dnl
+  test DEF = "`$SED -n dnl
+    -e '\''s/^[[	 ]]*//'\'' dnl Strip leading whitespace
+    -e '\''/^\(;.*\)*$/d'\'' dnl      Delete empty lines and comments
+    -e '\''s/^\(EXPORTS\|LIBRARY\)\([[	 ]].*\)*$/DEF/p'\'' dnl
+    -e q dnl                          Only consider the first "real" line
+    $1`" dnl
+])# _LT_DLL_DEF_P
+
+
 # LT_LIB_M
 # --------
 # check for math library
@@ -3576,11 +3857,11 @@ case $host in
   # These system don't have libm, or don't need it
   ;;
 *-ncr-sysv4.3*)
-  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
+  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
   AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
   ;;
 *)
-  AC_CHECK_LIB(m, cos, LIBM="-lm")
+  AC_CHECK_LIB(m, cos, LIBM=-lm)
   ;;
 esac
 AC_SUBST([LIBM])
@@ -3599,7 +3880,7 @@ m4_defun([_LT_COMPILER_NO_RTTI],
 
 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
 
-if test "$GCC" = yes; then
+if test yes = "$GCC"; then
   case $cc_basename in
   nvcc*)
     _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
@@ -3651,7 +3932,7 @@ cygwin* | mingw* | pw32* | cegcc*)
   symcode='[[ABCDGISTW]]'
   ;;
 hpux*)
-  if test "$host_cpu" = ia64; then
+  if test ia64 = "$host_cpu"; then
     symcode='[[ABCDEGRST]]'
   fi
   ;;
@@ -3684,14 +3965,44 @@ case `$NM -V 2>&1` in
   symcode='[[ABCDGIRSTW]]' ;;
 esac
 
+if test "$lt_cv_nm_interface" = "MS dumpbin"; then
+  # Gets list of data symbols to import.
+  lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
+  # Adjust the below global symbol transforms to fixup imported variables.
+  lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
+  lt_c_name_hook=" -e 's/^I .* \(.*\)$/  {\"\1\", (void *) 0},/p'"
+  lt_c_name_lib_hook="\
+  -e 's/^I .* \(lib.*\)$/  {\"\1\", (void *) 0},/p'\
+  -e 's/^I .* \(.*\)$/  {\"lib\1\", (void *) 0},/p'"
+else
+  # Disable hooks by default.
+  lt_cv_sys_global_symbol_to_import=
+  lt_cdecl_hook=
+  lt_c_name_hook=
+  lt_c_name_lib_hook=
+fi
+
 # Transform an extracted symbol line into a proper C declaration.
 # Some systems (esp. on ia64) link data and code symbols differently,
 # so use this general approach.
-lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+lt_cv_sys_global_symbol_to_cdecl="sed -n"\
+$lt_cdecl_hook\
+" -e 's/^T .* \(.*\)$/extern int \1();/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
 
 # Transform an extracted symbol line into symbol name and symbol address
-lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p'"
-lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/  {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/  {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"lib\2\", (void *) \&\2},/p'"
+lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
+$lt_c_name_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/p'"
+
+# Transform an extracted symbol line into symbol name with lib prefix and
+# symbol address.
+lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
+$lt_c_name_lib_hook\
+" -e 's/^: \(.*\) .*$/  {\"\1\", (void *) 0},/p'"\
+" -e 's/^$symcode$symcode* .* \(lib.*\)$/  {\"\1\", (void *) \&\1},/p'"\
+" -e 's/^$symcode$symcode* .* \(.*\)$/  {\"lib\1\", (void *) \&\1},/p'"
 
 # Handle CRLF in mingw tool chain
 opt_cr=
@@ -3709,21 +4020,24 @@ for ac_symprfx in "" "_"; do
 
   # Write the raw and C identifiers.
   if test "$lt_cv_nm_interface" = "MS dumpbin"; then
-    # Fake it for dumpbin and say T for any non-static function
-    # and D for any global variable.
+    # Fake it for dumpbin and say T for any non-static function,
+    # D for any global variable and I for any imported variable.
     # Also find C++ and __fastcall symbols from MSVC++,
     # which start with @ or ?.
     lt_cv_sys_global_symbol_pipe="$AWK ['"\
 "     {last_section=section; section=\$ 3};"\
 "     /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
 "     /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
+"     /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
+"     /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
+"     /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
 "     \$ 0!~/External *\|/{next};"\
 "     / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
 "     {if(hide[section]) next};"\
-"     {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
-"     {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
-"     s[1]~/^[@?]/{print s[1], s[1]; next};"\
-"     s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
+"     {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
+"     {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
+"     s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
+"     s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
 "     ' prfx=^$ac_symprfx]"
   else
     lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[	 ]]\($symcode$symcode*\)[[	 ]][[	 ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
@@ -3763,11 +4077,11 @@ _LT_EOF
 	if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
 	  cat <<_LT_EOF > conftest.$ac_ext
 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests.  */
-#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
-/* DATA imports from DLLs on WIN32 con't be const, because runtime
+#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
+/* DATA imports from DLLs on WIN32 can't be const, because runtime
    relocations are performed -- see ld's documentation on pseudo-relocs.  */
 # define LT@&t at _DLSYM_CONST
-#elif defined(__osf__)
+#elif defined __osf__
 /* This system does not cope well with relocations in const data.  */
 # define LT@&t at _DLSYM_CONST
 #else
@@ -3793,7 +4107,7 @@ lt__PROGRAM__LTX_preloaded_symbols[[]] =
 {
   { "@PROGRAM@", (void *) 0 },
 _LT_EOF
-	  $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
+	  $SED "s/^$symcode$symcode* .* \(.*\)$/  {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
 	  cat <<\_LT_EOF >> conftest.$ac_ext
   {0, (void *) 0}
 };
@@ -3813,9 +4127,9 @@ _LT_EOF
 	  mv conftest.$ac_objext conftstm.$ac_objext
 	  lt_globsym_save_LIBS=$LIBS
 	  lt_globsym_save_CFLAGS=$CFLAGS
-	  LIBS="conftstm.$ac_objext"
+	  LIBS=conftstm.$ac_objext
 	  CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
-	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
+	  if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
 	    pipe_works=yes
 	  fi
 	  LIBS=$lt_globsym_save_LIBS
@@ -3836,7 +4150,7 @@ _LT_EOF
   rm -rf conftest* conftst*
 
   # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
+  if test yes = "$pipe_works"; then
     break
   else
     lt_cv_sys_global_symbol_pipe=
@@ -3863,12 +4177,16 @@ _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
     [Take the output of nm and produce a listing of raw symbols and C names])
 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
     [Transform the output of nm in a proper C declaration])
+_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
+    [Transform the output of nm into a list of symbols to manually relocate])
 _LT_DECL([global_symbol_to_c_name_address],
     [lt_cv_sys_global_symbol_to_c_name_address], [1],
     [Transform the output of nm in a C name address pair])
 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
     [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
     [Transform the output of nm in a C name address pair when lib prefix is needed])
+_LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
+    [The name lister interface])
 _LT_DECL([], [nm_file_list_spec], [1],
     [Specify filename containing input files for $NM])
 ]) # _LT_CMD_GLOBAL_SYMBOLS
@@ -3884,17 +4202,18 @@ _LT_TAGVAR(lt_prog_compiler_static, $1)=
 
 m4_if([$1], [CXX], [
   # C++ specific cases for pic, static, wl, etc.
-  if test "$GXX" = yes; then
+  if test yes = "$GXX"; then
     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
 
     case $host_os in
     aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# AIX 5 now supports IA64 processor
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
       ;;
 
     amigaos*)
@@ -3905,8 +4224,8 @@ m4_if([$1], [CXX], [
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -3922,6 +4241,11 @@ m4_if([$1], [CXX], [
       # (--disable-auto-import) libraries
       m4_if([$1], [GCJ], [],
 	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+	;;
+      esac
       ;;
     darwin* | rhapsody*)
       # PIC is the default on this platform
@@ -3971,7 +4295,7 @@ m4_if([$1], [CXX], [
     case $host_os in
       aix[[4-9]]*)
 	# All AIX code is PIC.
-	if test "$host_cpu" = ia64; then
+	if test ia64 = "$host_cpu"; then
 	  # AIX 5 now supports IA64 processor
 	  _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
 	else
@@ -4012,14 +4336,14 @@ m4_if([$1], [CXX], [
 	case $cc_basename in
 	  CC*)
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
-	    if test "$host_cpu" != ia64; then
+	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
+	    if test ia64 != "$host_cpu"; then
 	      _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
 	    fi
 	    ;;
 	  aCC*)
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-	    _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+	    _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
 	    case $host_cpu in
 	    hppa*64*|ia64*)
 	      # +Z the default
@@ -4056,7 +4380,7 @@ m4_if([$1], [CXX], [
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
 	    ;;
 	  ecpc* )
-	    # old Intel C++ for x86_64 which still supported -KPIC.
+	    # old Intel C++ for x86_64, which still supported -KPIC.
 	    _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	    _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	    _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
@@ -4201,17 +4525,18 @@ m4_if([$1], [CXX], [
   fi
 ],
 [
-  if test "$GCC" = yes; then
+  if test yes = "$GCC"; then
     _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
     _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
 
     case $host_os in
       aix*)
       # All AIX code is PIC.
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# AIX 5 now supports IA64 processor
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
       ;;
 
     amigaos*)
@@ -4222,8 +4547,8 @@ m4_if([$1], [CXX], [
         ;;
       m68k)
             # FIXME: we need at least 68020 code to build shared libraries, but
-            # adding the `-m68020' flag to GCC prevents building anything better,
-            # like `-m68040'.
+            # adding the '-m68020' flag to GCC prevents building anything better,
+            # like '-m68040'.
             _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
         ;;
       esac
@@ -4240,6 +4565,11 @@ m4_if([$1], [CXX], [
       # (--disable-auto-import) libraries
       m4_if([$1], [GCJ], [],
 	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+	;;
+      esac
       ;;
 
     darwin* | rhapsody*)
@@ -4310,7 +4640,7 @@ m4_if([$1], [CXX], [
     case $host_os in
     aix*)
       _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# AIX 5 now supports IA64 processor
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       else
@@ -4318,11 +4648,30 @@ m4_if([$1], [CXX], [
       fi
       ;;
 
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
+      case $cc_basename in
+      nagfor*)
+        # NAG Fortran compiler
+        _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
+        _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
+        _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+        ;;
+      esac
+      ;;
+
     mingw* | cygwin* | pw32* | os2* | cegcc*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       m4_if([$1], [GCJ], [],
 	[_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
+      case $host_os in
+      os2*)
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
+	;;
+      esac
       ;;
 
     hpux9* | hpux10* | hpux11*)
@@ -4338,7 +4687,7 @@ m4_if([$1], [CXX], [
 	;;
       esac
       # Is there a better lt_prog_compiler_static that works with the bundled CC?
-      _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
+      _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
       ;;
 
     irix5* | irix6* | nonstopux*)
@@ -4349,7 +4698,7 @@ m4_if([$1], [CXX], [
 
     linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
       case $cc_basename in
-      # old Intel for x86_64 which still supported -KPIC.
+      # old Intel for x86_64, which still supported -KPIC.
       ecc*)
 	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
@@ -4374,6 +4723,12 @@ m4_if([$1], [CXX], [
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
 	;;
+      tcc*)
+	# Fabrice Bellard et al's Tiny C Compiler
+	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+	;;
       pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
         # Portland Group compilers (*not* the Pentium gcc compiler,
 	# which looks to be a dead project)
@@ -4471,7 +4826,7 @@ m4_if([$1], [CXX], [
       ;;
 
     sysv4*MP*)
-      if test -d /usr/nec ;then
+      if test -d /usr/nec; then
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       fi
@@ -4500,7 +4855,7 @@ m4_if([$1], [CXX], [
   fi
 ])
 case $host_os in
-  # For platforms which do not support PIC, -DPIC is meaningless:
+  # For platforms that do not support PIC, -DPIC is meaningless:
   *djgpp*)
     _LT_TAGVAR(lt_prog_compiler_pic, $1)=
     ;;
@@ -4566,17 +4921,21 @@ m4_if([$1], [CXX], [
   case $host_os in
   aix[[4-9]]*)
     # If we're using GNU nm, then we don't want the "-C" option.
-    # -C means demangle to AIX nm, but means don't demangle with GNU nm
-    # Also, AIX nm treats weak defined symbols like other global defined
-    # symbols, whereas GNU nm marks them as "W".
+    # -C means demangle to GNU nm, but means don't demangle to AIX nm.
+    # Without the "-l" option, or with the "-B" option, AIX nm treats
+    # weak defined symbols like other global defined symbols, whereas
+    # GNU nm marks them as "W".
+    # While the 'weak' keyword is ignored in the Export File, we need
+    # it in the Import File for the 'aix-soname' feature, so we have
+    # to replace the "-B" option with "-P" for AIX nm.
     if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
     else
-      _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+      _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
     fi
     ;;
   pw32*)
-    _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
+    _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
     ;;
   cygwin* | mingw* | cegcc*)
     case $cc_basename in
@@ -4625,9 +4984,9 @@ m4_if([$1], [CXX], [
   # included in the symbol list
   _LT_TAGVAR(include_expsyms, $1)=
   # exclude_expsyms can be an extended regexp of symbols to exclude
-  # it will be wrapped by ` (' and `)$', so one must not match beginning or
-  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-  # as well as any symbol that contains `d'.
+  # it will be wrapped by ' (' and ')$', so one must not match beginning or
+  # end of line.  Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
+  # as well as any symbol that contains 'd'.
   _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
   # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
   # platforms (ab)use it in PIC code, but their linkers get confused if
@@ -4643,7 +5002,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     # FIXME: the MSVC++ port hasn't been tested in a loooong time
     # When not using gcc, we currently assume that we are using
     # Microsoft Visual C++.
-    if test "$GCC" != yes; then
+    if test yes != "$GCC"; then
       with_gnu_ld=no
     fi
     ;;
@@ -4651,7 +5010,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     # we just hope/assume this is gcc and not c89 (= MSVC++)
     with_gnu_ld=yes
     ;;
-  openbsd*)
+  openbsd* | bitrig*)
     with_gnu_ld=no
     ;;
   linux* | k*bsd*-gnu | gnu*)
@@ -4664,7 +5023,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
   # On some targets, GNU ld is compatible enough with the native linker
   # that we're better off using the native interface for both.
   lt_use_gnu_ld_interface=no
-  if test "$with_gnu_ld" = yes; then
+  if test yes = "$with_gnu_ld"; then
     case $host_os in
       aix*)
 	# The AIX port of GNU ld has always aspired to compatibility
@@ -4686,24 +5045,24 @@ dnl Note also adjust exclude_expsyms for C++ above.
     esac
   fi
 
-  if test "$lt_use_gnu_ld_interface" = yes; then
+  if test yes = "$lt_use_gnu_ld_interface"; then
     # If archive_cmds runs LD, not CC, wlarc should be empty
-    wlarc='${wl}'
+    wlarc='$wl'
 
     # Set some defaults for GNU ld with shared library support. These
     # are reset later if shared libraries are not supported. Putting them
     # here allows them to be overridden if necessary.
     runpath_var=LD_RUN_PATH
-    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
     # ancient GNU ld didn't support --whole-archive et. al.
     if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
-      _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
     else
       _LT_TAGVAR(whole_archive_flag_spec, $1)=
     fi
     supports_anon_versioning=no
-    case `$LD -v 2>&1` in
+    case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
       *GNU\ gold*) supports_anon_versioning=yes ;;
       *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
       *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
@@ -4716,7 +5075,7 @@ dnl Note also adjust exclude_expsyms for C++ above.
     case $host_os in
     aix[[3-9]]*)
       # On AIX/PPC, the GNU linker is very broken
-      if test "$host_cpu" != ia64; then
+      if test ia64 != "$host_cpu"; then
 	_LT_TAGVAR(ld_shlibs, $1)=no
 	cat <<_LT_EOF 1>&2
 
@@ -4735,7 +5094,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             _LT_TAGVAR(archive_expsym_cmds, $1)=''
         ;;
       m68k)
@@ -4751,7 +5110,7 @@ _LT_EOF
 	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
 	# Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
 	# support --undefined.  This deserves some investigation.  FIXME
-	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       else
 	_LT_TAGVAR(ld_shlibs, $1)=no
       fi
@@ -4761,7 +5120,7 @@ _LT_EOF
       # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
       # as there is no search path for DLLs.
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
       _LT_TAGVAR(always_export_symbols, $1)=no
       _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
@@ -4769,61 +5128,89 @@ _LT_EOF
       _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
 
       if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	# If the export-symbols file already is a .def file (1st line
-	# is EXPORTS), use it as is; otherwise, prepend...
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	  cp $export_symbols $output_objdir/$soname.def;
-	else
-	  echo EXPORTS > $output_objdir/$soname.def;
-	  cat $export_symbols >> $output_objdir/$soname.def;
-	fi~
-	$CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+	# If the export-symbols file already is a .def file, use it as
+	# is; otherwise, prepend EXPORTS...
+	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+          cp $export_symbols $output_objdir/$soname.def;
+        else
+          echo EXPORTS > $output_objdir/$soname.def;
+          cat $export_symbols >> $output_objdir/$soname.def;
+        fi~
+        $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
       else
 	_LT_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
 
     haiku*)
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
+    os2*)
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+      _LT_TAGVAR(hardcode_minus_L, $1)=yes
+      _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+      shrext_cmds=.dll
+      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	prefix_cmds="$SED"~
+	if test EXPORTS = "`$SED 1q $export_symbols`"; then
+	  prefix_cmds="$prefix_cmds -e 1d";
+	fi~
+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+      ;;
+
     interix[[3-9]]*)
       _LT_TAGVAR(hardcode_direct, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
       # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
       # Instead, shared libraries are loaded at an image base (0x10000000 by
       # default) and relocated if they conflict, which is a slow very memory
       # consuming and fragmenting process.  To avoid this, we pick a random,
       # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
       # time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
     gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
       tmp_diet=no
-      if test "$host_os" = linux-dietlibc; then
+      if test linux-dietlibc = "$host_os"; then
 	case $cc_basename in
 	  diet\ *) tmp_diet=yes;;	# linux-dietlibc with static linking (!diet-dyn)
 	esac
       fi
       if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
-	 && test "$tmp_diet" = no
+	 && test no = "$tmp_diet"
       then
 	tmp_addflag=' $pic_flag'
 	tmp_sharedflag='-shared'
 	case $cc_basename,$host_cpu in
         pgcc*)				# Portland Group C compiler
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  tmp_addflag=' $pic_flag'
 	  ;;
 	pgf77* | pgf90* | pgf95* | pgfortran*)
 					# Portland Group f77 and f90 compilers
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  tmp_addflag=' $pic_flag -Mnomain' ;;
 	ecc*,ia64* | icc*,ia64*)	# Intel C compiler on ia64
 	  tmp_addflag=' -i_dynamic' ;;
@@ -4834,42 +5221,47 @@ _LT_EOF
 	lf95*)				# Lahey Fortran 8.1
 	  _LT_TAGVAR(whole_archive_flag_spec, $1)=
 	  tmp_sharedflag='--shared' ;;
+        nagfor*)                        # NAGFOR 5.3
+          tmp_sharedflag='-Wl,-shared' ;;
 	xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
 	  tmp_sharedflag='-qmkshrobj'
 	  tmp_addflag= ;;
 	nvcc*)	# Cuda Compiler Driver 2.2
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  _LT_TAGVAR(compiler_needs_object, $1)=yes
 	  ;;
 	esac
 	case `$CC -V 2>&1 | sed 5q` in
 	*Sun\ C*)			# Sun C 5.9
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	  _LT_TAGVAR(compiler_needs_object, $1)=yes
 	  tmp_sharedflag='-G' ;;
 	*Sun\ F*)			# Sun Fortran 8.3
 	  tmp_sharedflag='-G' ;;
 	esac
-	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 
-        if test "x$supports_anon_versioning" = xyes; then
+        if test yes = "$supports_anon_versioning"; then
           _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	    cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	    echo "local: *; };" >> $output_objdir/$libname.ver~
-	    $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+            cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+            echo "local: *; };" >> $output_objdir/$libname.ver~
+            $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
         fi
 
 	case $cc_basename in
+	tcc*)
+	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
+	  ;;
 	xlf* | bgf* | bgxlf* | mpixlf*)
 	  # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
 	  _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
 	  _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
-	  if test "x$supports_anon_versioning" = xyes; then
+	  if test yes = "$supports_anon_versioning"; then
 	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-	      cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-	      echo "local: *; };" >> $output_objdir/$libname.ver~
-	      $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
+              cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+              echo "local: *; };" >> $output_objdir/$libname.ver~
+              $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
 	  fi
 	  ;;
 	esac
@@ -4883,8 +5275,8 @@ _LT_EOF
 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
       else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       fi
       ;;
 
@@ -4902,8 +5294,8 @@ _LT_EOF
 
 _LT_EOF
       elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
 	_LT_TAGVAR(ld_shlibs, $1)=no
       fi
@@ -4915,7 +5307,7 @@ _LT_EOF
 	_LT_TAGVAR(ld_shlibs, $1)=no
 	cat <<_LT_EOF 1>&2
 
-*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
+*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
 *** reliably create shared libraries on SCO systems.  Therefore, libtool
 *** is disabling shared libraries support.  We urge you to upgrade GNU
 *** binutils to release 2.16.91.0.3 or newer.  Another option is to modify
@@ -4930,9 +5322,9 @@ _LT_EOF
 	  # DT_RUNPATH tag from executables and libraries.  But doing so
 	  # requires that you compile everything twice, which is a pain.
 	  if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 	  else
 	    _LT_TAGVAR(ld_shlibs, $1)=no
 	  fi
@@ -4949,15 +5341,15 @@ _LT_EOF
 
     *)
       if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
       else
 	_LT_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
     esac
 
-    if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
+    if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
       runpath_var=
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
       _LT_TAGVAR(export_dynamic_flag_spec, $1)=
@@ -4973,7 +5365,7 @@ _LT_EOF
       # Note: this linker hardcodes the directories in LIBPATH if there
       # are no directories specified by -L.
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
+      if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
 	# Neither direct hardcoding nor static linking is supported with a
 	# broken collect2.
 	_LT_TAGVAR(hardcode_direct, $1)=unsupported
@@ -4981,34 +5373,57 @@ _LT_EOF
       ;;
 
     aix[[4-9]]*)
-      if test "$host_cpu" = ia64; then
+      if test ia64 = "$host_cpu"; then
 	# On IA64, the linker does run time linking by default, so we don't
 	# have to do anything special.
 	aix_use_runtimelinking=no
 	exp_sym_flag='-Bexport'
-	no_entry_flag=""
+	no_entry_flag=
       else
 	# If we're using GNU nm, then we don't want the "-C" option.
-	# -C means demangle to AIX nm, but means don't demangle with GNU nm
-	# Also, AIX nm treats weak defined symbols like other global
-	# defined symbols, whereas GNU nm marks them as "W".
+	# -C means demangle to GNU nm, but means don't demangle to AIX nm.
+	# Without the "-l" option, or with the "-B" option, AIX nm treats
+	# weak defined symbols like other global defined symbols, whereas
+	# GNU nm marks them as "W".
+	# While the 'weak' keyword is ignored in the Export File, we need
+	# it in the Import File for the 'aix-soname' feature, so we have
+	# to replace the "-B" option with "-P" for AIX nm.
 	if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
 	else
-	  _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
+	  _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
 	fi
 	aix_use_runtimelinking=no
 
 	# Test if we are trying to use run time linking or normal
 	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
-	# need to do runtime linking.
+	# have runtime linking enabled, and use it for executables.
+	# For shared libraries, we enable/disable runtime linking
+	# depending on the kind of the shared library created -
+	# when "with_aix_soname,aix_use_runtimelinking" is:
+	# "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+	# "aix,yes"  lib.so          shared, rtl:yes, for executables
+	#            lib.a           static archive
+	# "both,no"  lib.so.V(shr.o) shared, rtl:yes
+	#            lib.a(lib.so.V) shared, rtl:no,  for executables
+	# "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+	#            lib.a(lib.so.V) shared, rtl:no
+	# "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+	#            lib.a           static archive
 	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	  for ld_flag in $LDFLAGS; do
-	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+	  if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
 	    aix_use_runtimelinking=yes
 	    break
 	  fi
 	  done
+	  if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+	    # With aix-soname=svr4, we create the lib.so.V shared archives only,
+	    # so we don't have lib.a shared libs to link our executables.
+	    # We have to force runtime linking in this case.
+	    aix_use_runtimelinking=yes
+	    LDFLAGS="$LDFLAGS -Wl,-brtl"
+	  fi
 	  ;;
 	esac
 
@@ -5027,13 +5442,21 @@ _LT_EOF
       _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+      _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+      case $with_aix_soname,$aix_use_runtimelinking in
+      aix,*) ;; # traditional, no import file
+      svr4,* | *,yes) # use import file
+	# The Import File defines what to hardcode.
+	_LT_TAGVAR(hardcode_direct, $1)=no
+	_LT_TAGVAR(hardcode_direct_absolute, $1)=no
+	;;
+      esac
 
-      if test "$GCC" = yes; then
+      if test yes = "$GCC"; then
 	case $host_os in aix4.[[012]]|aix4.[[012]].*)
 	# We only want to do this on AIX 4.2 and lower, the check
 	# below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
+	  collect2name=`$CC -print-prog-name=collect2`
 	  if test -f "$collect2name" &&
 	   strings "$collect2name" | $GREP resolve_lib_name >/dev/null
 	  then
@@ -5052,62 +5475,80 @@ _LT_EOF
 	  ;;
 	esac
 	shared_flag='-shared'
-	if test "$aix_use_runtimelinking" = yes; then
-	  shared_flag="$shared_flag "'${wl}-G'
+	if test yes = "$aix_use_runtimelinking"; then
+	  shared_flag="$shared_flag "'$wl-G'
 	fi
-	_LT_TAGVAR(link_all_deplibs, $1)=no
+	# Need to ensure runtime linking is disabled for the traditional
+	# shared library, or the linker may eventually find shared libraries
+	# /with/ Import File - we do not want to mix them.
+	shared_flag_aix='-shared'
+	shared_flag_svr4='-shared $wl-G'
       else
 	# not using gcc
-	if test "$host_cpu" = ia64; then
+	if test ia64 = "$host_cpu"; then
 	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
 	# chokes on -Wl,-G. The following line is correct:
 	  shared_flag='-G'
 	else
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag='${wl}-G'
+	  if test yes = "$aix_use_runtimelinking"; then
+	    shared_flag='$wl-G'
 	  else
-	    shared_flag='${wl}-bM:SRE'
+	    shared_flag='$wl-bM:SRE'
 	  fi
+	  shared_flag_aix='$wl-bM:SRE'
+	  shared_flag_svr4='$wl-G'
 	fi
       fi
 
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
       # It seems that -bexpall does not export symbols beginning with
       # underscore (_), so it is better to generate a list of symbols to export.
       _LT_TAGVAR(always_export_symbols, $1)=yes
-      if test "$aix_use_runtimelinking" = yes; then
+      if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
 	# Warning - without using the other runtime loading flags (-brtl),
 	# -berok will link without error, but may produce a broken library.
 	_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
         # Determine the default libpath from the value encoded in an
         # empty executable.
         _LT_SYS_MODULE_PATH_AIX([$1])
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
+        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
       else
-	if test "$host_cpu" = ia64; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+	if test ia64 = "$host_cpu"; then
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
 	  _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
 	else
 	 # Determine the default libpath from the value encoded in an
 	 # empty executable.
 	 _LT_SYS_MODULE_PATH_AIX([$1])
-	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+	 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
 	  # Warning - without using the other run time loading flags,
 	  # -berok will link without error, but may produce a broken library.
-	  _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	  _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	  if test "$with_gnu_ld" = yes; then
+	  _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+	  _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+	  if test yes = "$with_gnu_ld"; then
 	    # We only use this code for GNU lds that support --whole-archive.
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
 	  else
 	    # Exported symbols can be pulled into shared objects from archives
 	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
 	  fi
 	  _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	  # This is similar to how AIX traditionally builds its shared libraries.
-	  _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+	  # -brtl affects multiple linker settings, -berok does not and is overridden later
+	  compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+	  if test svr4 != "$with_aix_soname"; then
+	    # This is similar to how AIX traditionally builds its shared libraries.
+	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+	  fi
+	  if test aix != "$with_aix_soname"; then
+	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 3 [...]
+	  else
+	    # used by -dlpreopen to get the symbols
+	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+	  fi
+	  _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
 	fi
       fi
       ;;
@@ -5116,7 +5557,7 @@ _LT_EOF
       case $host_cpu in
       powerpc)
             # see comment about AmigaOS4 .so support
-            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
             _LT_TAGVAR(archive_expsym_cmds, $1)=''
         ;;
       m68k)
@@ -5146,16 +5587,17 @@ _LT_EOF
 	# Tell ltmain to make .lib files, not .a files.
 	libext=lib
 	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
+	shrext_cmds=.dll
 	# FIXME: Setting linknames here is a bad hack.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	_LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	    sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	  else
-	    sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	  fi~
-	  $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	  linknames='
+	_LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+	_LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+            cp "$export_symbols" "$output_objdir/$soname.def";
+            echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+          else
+            $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+          fi~
+          $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+          linknames='
 	# The linker will not automatically build a static lib if we build a DLL.
 	# _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
 	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
@@ -5164,18 +5606,18 @@ _LT_EOF
 	# Don't use ranlib
 	_LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
 	_LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	  lt_tool_outputfile="@TOOL_OUTPUT@"~
-	  case $lt_outputfile in
-	    *.exe|*.EXE) ;;
-	    *)
-	      lt_outputfile="$lt_outputfile.exe"
-	      lt_tool_outputfile="$lt_tool_outputfile.exe"
-	      ;;
-	  esac~
-	  if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	    $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	    $RM "$lt_outputfile.manifest";
-	  fi'
+          lt_tool_outputfile="@TOOL_OUTPUT@"~
+          case $lt_outputfile in
+            *.exe|*.EXE) ;;
+            *)
+              lt_outputfile=$lt_outputfile.exe
+              lt_tool_outputfile=$lt_tool_outputfile.exe
+              ;;
+          esac~
+          if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+            $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+            $RM "$lt_outputfile.manifest";
+          fi'
 	;;
       *)
 	# Assume MSVC wrapper
@@ -5184,7 +5626,7 @@ _LT_EOF
 	# Tell ltmain to make .lib files, not .a files.
 	libext=lib
 	# Tell ltmain to make .dll files, not .so files.
-	shrext_cmds=".dll"
+	shrext_cmds=.dll
 	# FIXME: Setting linknames here is a bad hack.
 	_LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
 	# The linker will automatically build a .lib file if we build a DLL.
@@ -5234,33 +5676,33 @@ _LT_EOF
       ;;
 
     hpux9*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       else
-	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
       fi
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(hardcode_direct, $1)=yes
 
       # hardcode_minus_L: Not really in the search PATH,
       # but as the default location of the library.
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
       ;;
 
     hpux10*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes,no = "$GCC,$with_gnu_ld"; then
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
       else
 	_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
       fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
 	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
 	_LT_TAGVAR(hardcode_direct, $1)=yes
 	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
 	# hardcode_minus_L: Not really in the search PATH,
 	# but as the default location of the library.
 	_LT_TAGVAR(hardcode_minus_L, $1)=yes
@@ -5268,25 +5710,25 @@ _LT_EOF
       ;;
 
     hpux11*)
-      if test "$GCC" = yes && test "$with_gnu_ld" = no; then
+      if test yes,no = "$GCC,$with_gnu_ld"; then
 	case $host_cpu in
 	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	esac
       else
 	case $host_cpu in
 	hppa*64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	ia64*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
 	m4_if($1, [], [
@@ -5294,14 +5736,14 @@ _LT_EOF
 	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
 	  _LT_LINKER_OPTION([if $CC understands -b],
 	    _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
-	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
+	    [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
 	    [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
-	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
+	  [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
 	  ;;
 	esac
       fi
-      if test "$with_gnu_ld" = no; then
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+      if test no = "$with_gnu_ld"; then
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
 	_LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
 	case $host_cpu in
@@ -5312,7 +5754,7 @@ _LT_EOF
 	*)
 	  _LT_TAGVAR(hardcode_direct, $1)=yes
 	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
 
 	  # hardcode_minus_L: Not really in the search PATH,
 	  # but as the default location of the library.
@@ -5323,16 +5765,16 @@ _LT_EOF
       ;;
 
     irix5* | irix6* | nonstopux*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
 	# Try to use the -exported_symbol ld option, if it does not
 	# work, assume that -exports_file does not work either and
 	# implicitly export all symbols.
 	# This should be the same for all languages, so no per-tag cache variable.
 	AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
 	  [lt_cv_irix_exported_symbol],
-	  [save_LDFLAGS="$LDFLAGS"
-	   LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
+	  [save_LDFLAGS=$LDFLAGS
+	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
 	   AC_LINK_IFELSE(
 	     [AC_LANG_SOURCE(
 	        [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
@@ -5345,21 +5787,32 @@ _LT_EOF
       end]])])],
 	      [lt_cv_irix_exported_symbol=yes],
 	      [lt_cv_irix_exported_symbol=no])
-           LDFLAGS="$save_LDFLAGS"])
-	if test "$lt_cv_irix_exported_symbol" = yes; then
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
+           LDFLAGS=$save_LDFLAGS])
+	if test yes = "$lt_cv_irix_exported_symbol"; then
+          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
 	fi
+	_LT_TAGVAR(link_all_deplibs, $1)=no
       else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
       fi
       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(inherit_rpath, $1)=yes
       _LT_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
+    linux*)
+      case $cc_basename in
+      tcc*)
+	# Fabrice Bellard et al's Tiny C Compiler
+	_LT_TAGVAR(ld_shlibs, $1)=yes
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	;;
+      esac
+      ;;
+
     netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
 	_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
@@ -5374,7 +5827,7 @@ _LT_EOF
     newsos6)
       _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
       _LT_TAGVAR(hardcode_direct, $1)=yes
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       ;;
@@ -5382,27 +5835,19 @@ _LT_EOF
     *nto* | *qnx*)
       ;;
 
-    openbsd*)
+    openbsd* | bitrig*)
       if test -f /usr/libexec/ld.so; then
 	_LT_TAGVAR(hardcode_direct, $1)=yes
 	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
 	_LT_TAGVAR(hardcode_direct_absolute, $1)=yes
-	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
 	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
 	else
-	  case $host_os in
-	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-	     _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	     ;;
-	   *)
-	     _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	     _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	     ;;
-	  esac
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
 	fi
       else
 	_LT_TAGVAR(ld_shlibs, $1)=no
@@ -5413,33 +5858,53 @@ _LT_EOF
       _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
       _LT_TAGVAR(hardcode_minus_L, $1)=yes
       _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
-      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
-      _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+      shrext_cmds=.dll
+      _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	$ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	$ECHO EXPORTS >> $output_objdir/$libname.def~
+	prefix_cmds="$SED"~
+	if test EXPORTS = "`$SED 1q $export_symbols`"; then
+	  prefix_cmds="$prefix_cmds -e 1d";
+	fi~
+	prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+	cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+	$CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	emximp -o $lib $output_objdir/$libname.def'
+      _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+      _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
       ;;
 
     osf3*)
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
       else
 	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
       fi
       _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=:
       ;;
 
     osf4* | osf5*)	# as osf3* with the addition of -msym flag
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
       else
 	_LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
 	_LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
-	$CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
+          $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
 
 	# Both c and cxx compiler support -rpath directly
 	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -5450,24 +5915,24 @@ _LT_EOF
 
     solaris*)
       _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
-      if test "$GCC" = yes; then
-	wlarc='${wl}'
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	wlarc='$wl'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
 	_LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+          $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
       else
 	case `$CC -V 2>&1` in
 	*"Compilers 5.0"*)
 	  wlarc=''
-	  _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
 	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
+            $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
 	  ;;
 	*)
-	  wlarc='${wl}'
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
+	  wlarc='$wl'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
 	  _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	  $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
+            $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
 	  ;;
 	esac
       fi
@@ -5477,11 +5942,11 @@ _LT_EOF
       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
       *)
 	# The compiler driver will combine and reorder linker options,
-	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but understands '-z linker_flag'.  GCC discards it without '$wl',
 	# but is careful enough not to reorder.
 	# Supported since Solaris 2.6 (maybe 2.5.1?)
-	if test "$GCC" = yes; then
-	  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	if test yes = "$GCC"; then
+	  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
 	else
 	  _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
 	fi
@@ -5491,10 +5956,10 @@ _LT_EOF
       ;;
 
     sunos4*)
-      if test "x$host_vendor" = xsequent; then
+      if test sequent = "$host_vendor"; then
 	# Use $CC to link under sequent, because it throws in some extra .o
 	# files that make .init and .fini sections work.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
       else
 	_LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
       fi
@@ -5543,43 +6008,43 @@ _LT_EOF
       ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
     sysv5* | sco3.2v5* | sco5v6*)
-      # Note: We can NOT use -z defs as we might desire, because we do not
+      # Note: We CANNOT use -z defs as we might desire, because we do not
       # link with -lc, and that would cause any symbols used from libc to
       # always be unresolved, which means just about no library would
       # ever link correctly.  If we're not using GNU ld we use -z text
       # though, which does catch some bad symbols but isn't as heavy-handed
       # as -z defs.
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-      _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+      _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
       _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
       _LT_TAGVAR(link_all_deplibs, $1)=yes
-      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
       runpath_var='LD_RUN_PATH'
 
-      if test "$GCC" = yes; then
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+      if test yes = "$GCC"; then
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       else
-	_LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
       fi
       ;;
 
@@ -5594,17 +6059,17 @@ _LT_EOF
       ;;
     esac
 
-    if test x$host_vendor = xsni; then
+    if test sni = "$host_vendor"; then
       case $host in
       sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
+	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
 	;;
       esac
     fi
   fi
 ])
 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
 
 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
 
@@ -5621,7 +6086,7 @@ x|xyes)
   # Assume -lc should be added
   _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
 
-  if test "$enable_shared" = yes && test "$GCC" = yes; then
+  if test yes,yes = "$GCC,$enable_shared"; then
     case $_LT_TAGVAR(archive_cmds, $1) in
     *'~'*)
       # FIXME: we may have to deal with multi-command sequences.
@@ -5701,12 +6166,12 @@ _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
     [Whether we need a single "-rpath" flag with a separated argument])
 _LT_TAGDECL([], [hardcode_direct], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
     DIR into the resulting binary])
 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
-    [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
+    [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
     DIR into the resulting binary and the resulting library dependency is
-    "absolute", i.e impossible to change by setting ${shlibpath_var} if the
+    "absolute", i.e impossible to change by setting $shlibpath_var if the
     library is relocated])
 _LT_TAGDECL([], [hardcode_minus_L], [0],
     [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
@@ -5747,10 +6212,10 @@ dnl    [Compiler flag to generate thread safe objects])
 # ------------------------
 # Ensure that the configuration variables for a C compiler are suitably
 # defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
+# the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_C_CONFIG],
 [m4_require([_LT_DECL_EGREP])dnl
-lt_save_CC="$CC"
+lt_save_CC=$CC
 AC_LANG_PUSH(C)
 
 # Source file extension for C test sources.
@@ -5790,18 +6255,18 @@ if test -n "$compiler"; then
   LT_SYS_DLOPEN_SELF
   _LT_CMD_STRIPLIB
 
-  # Report which library types will actually be built
+  # Report what library types will actually be built
   AC_MSG_CHECKING([if libtool supports shared libraries])
   AC_MSG_RESULT([$can_build_shared])
 
   AC_MSG_CHECKING([whether to build shared libraries])
-  test "$can_build_shared" = "no" && enable_shared=no
+  test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
   # are all built from PIC.
   case $host_os in
   aix3*)
-    test "$enable_shared" = yes && enable_static=no
+    test yes = "$enable_shared" && enable_static=no
     if test -n "$RANLIB"; then
       archive_cmds="$archive_cmds~\$RANLIB \$lib"
       postinstall_cmds='$RANLIB $lib'
@@ -5809,8 +6274,12 @@ if test -n "$compiler"; then
     ;;
 
   aix[[4-9]]*)
-    if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-      test "$enable_shared" = yes && enable_static=no
+    if test ia64 != "$host_cpu"; then
+      case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+      yes,aix,yes) ;;			# shared object as lib.so file only
+      yes,svr4,*) ;;			# shared object as lib.so archive member only
+      yes,*) enable_static=no ;;	# shared object in lib.a archive as well
+      esac
     fi
     ;;
   esac
@@ -5818,13 +6287,13 @@ if test -n "$compiler"; then
 
   AC_MSG_CHECKING([whether to build static libraries])
   # Make sure either enable_shared or enable_static is yes.
-  test "$enable_shared" = yes || enable_static=yes
+  test yes = "$enable_shared" || enable_static=yes
   AC_MSG_RESULT([$enable_static])
 
   _LT_CONFIG($1)
 fi
 AC_LANG_POP
-CC="$lt_save_CC"
+CC=$lt_save_CC
 ])# _LT_LANG_C_CONFIG
 
 
@@ -5832,14 +6301,14 @@ CC="$lt_save_CC"
 # --------------------------
 # Ensure that the configuration variables for a C++ compiler are suitably
 # defined.  These variables are subsequently used by _LT_CONFIG to write
-# the compiler configuration to `libtool'.
+# the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_CXX_CONFIG],
 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
 m4_require([_LT_DECL_EGREP])dnl
 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
-if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
-    ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
-    (test "X$CXX" != "Xg++"))) ; then
+if test -n "$CXX" && ( test no != "$CXX" &&
+    ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
+    (test g++ != "$CXX"))); then
   AC_PROG_CXXCPP
 else
   _lt_caught_CXX_error=yes
@@ -5881,7 +6350,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the CXX compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_caught_CXX_error" != yes; then
+if test yes != "$_lt_caught_CXX_error"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="int some_variable = 0;"
 
@@ -5923,35 +6392,35 @@ if test "$_lt_caught_CXX_error" != yes; then
   if test -n "$compiler"; then
     # We don't want -fno-exception when compiling C++ code, so set the
     # no_builtin_flag separately
-    if test "$GXX" = yes; then
+    if test yes = "$GXX"; then
       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
     else
       _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
     fi
 
-    if test "$GXX" = yes; then
+    if test yes = "$GXX"; then
       # Set up default GNU C++ configuration
 
       LT_PATH_LD
 
       # Check if GNU C++ uses GNU ld as the underlying linker, since the
       # archiving commands below assume that GNU ld is being used.
-      if test "$with_gnu_ld" = yes; then
-        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+      if test yes = "$with_gnu_ld"; then
+        _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+        _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
 
         # If archive_cmds runs LD, not CC, wlarc should be empty
         # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
         #     investigate it a little bit more. (MM)
-        wlarc='${wl}'
+        wlarc='$wl'
 
         # ancient GNU ld didn't support --whole-archive et. al.
         if eval "`$CC -print-prog-name=ld` --help 2>&1" |
 	  $GREP 'no-whole-archive' > /dev/null; then
-          _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+          _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
         else
           _LT_TAGVAR(whole_archive_flag_spec, $1)=
         fi
@@ -5987,18 +6456,30 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(ld_shlibs, $1)=no
         ;;
       aix[[4-9]]*)
-        if test "$host_cpu" = ia64; then
+        if test ia64 = "$host_cpu"; then
           # On IA64, the linker does run time linking by default, so we don't
           # have to do anything special.
           aix_use_runtimelinking=no
           exp_sym_flag='-Bexport'
-          no_entry_flag=""
+          no_entry_flag=
         else
           aix_use_runtimelinking=no
 
           # Test if we are trying to use run time linking or normal
           # AIX style linking. If -brtl is somewhere in LDFLAGS, we
-          # need to do runtime linking.
+          # have runtime linking enabled, and use it for executables.
+          # For shared libraries, we enable/disable runtime linking
+          # depending on the kind of the shared library created -
+          # when "with_aix_soname,aix_use_runtimelinking" is:
+          # "aix,no"   lib.a(lib.so.V) shared, rtl:no,  for executables
+          # "aix,yes"  lib.so          shared, rtl:yes, for executables
+          #            lib.a           static archive
+          # "both,no"  lib.so.V(shr.o) shared, rtl:yes
+          #            lib.a(lib.so.V) shared, rtl:no,  for executables
+          # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
+          #            lib.a(lib.so.V) shared, rtl:no
+          # "svr4,*"   lib.so.V(shr.o) shared, rtl:yes, for executables
+          #            lib.a           static archive
           case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
 	    for ld_flag in $LDFLAGS; do
 	      case $ld_flag in
@@ -6008,6 +6489,13 @@ if test "$_lt_caught_CXX_error" != yes; then
 	        ;;
 	      esac
 	    done
+	    if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
+	      # With aix-soname=svr4, we create the lib.so.V shared archives only,
+	      # so we don't have lib.a shared libs to link our executables.
+	      # We have to force runtime linking in this case.
+	      aix_use_runtimelinking=yes
+	      LDFLAGS="$LDFLAGS -Wl,-brtl"
+	    fi
 	    ;;
           esac
 
@@ -6026,13 +6514,21 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
         _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
         _LT_TAGVAR(link_all_deplibs, $1)=yes
-        _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
+        _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
+        case $with_aix_soname,$aix_use_runtimelinking in
+        aix,*) ;;	# no import file
+        svr4,* | *,yes) # use import file
+          # The Import File defines what to hardcode.
+          _LT_TAGVAR(hardcode_direct, $1)=no
+          _LT_TAGVAR(hardcode_direct_absolute, $1)=no
+          ;;
+        esac
 
-        if test "$GXX" = yes; then
+        if test yes = "$GXX"; then
           case $host_os in aix4.[[012]]|aix4.[[012]].*)
           # We only want to do this on AIX 4.2 and lower, the check
           # below for broken collect2 doesn't work under 4.3+
-	  collect2name=`${CC} -print-prog-name=collect2`
+	  collect2name=`$CC -print-prog-name=collect2`
 	  if test -f "$collect2name" &&
 	     strings "$collect2name" | $GREP resolve_lib_name >/dev/null
 	  then
@@ -6050,64 +6546,84 @@ if test "$_lt_caught_CXX_error" != yes; then
 	  fi
           esac
           shared_flag='-shared'
-	  if test "$aix_use_runtimelinking" = yes; then
-	    shared_flag="$shared_flag "'${wl}-G'
+	  if test yes = "$aix_use_runtimelinking"; then
+	    shared_flag=$shared_flag' $wl-G'
 	  fi
+	  # Need to ensure runtime linking is disabled for the traditional
+	  # shared library, or the linker may eventually find shared libraries
+	  # /with/ Import File - we do not want to mix them.
+	  shared_flag_aix='-shared'
+	  shared_flag_svr4='-shared $wl-G'
         else
           # not using gcc
-          if test "$host_cpu" = ia64; then
+          if test ia64 = "$host_cpu"; then
 	  # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
 	  # chokes on -Wl,-G. The following line is correct:
 	  shared_flag='-G'
           else
-	    if test "$aix_use_runtimelinking" = yes; then
-	      shared_flag='${wl}-G'
+	    if test yes = "$aix_use_runtimelinking"; then
+	      shared_flag='$wl-G'
 	    else
-	      shared_flag='${wl}-bM:SRE'
+	      shared_flag='$wl-bM:SRE'
 	    fi
+	    shared_flag_aix='$wl-bM:SRE'
+	    shared_flag_svr4='$wl-G'
           fi
         fi
 
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
         # It seems that -bexpall does not export symbols beginning with
         # underscore (_), so it is better to generate a list of symbols to
 	# export.
         _LT_TAGVAR(always_export_symbols, $1)=yes
-        if test "$aix_use_runtimelinking" = yes; then
+	if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
           # Warning - without using the other runtime loading flags (-brtl),
           # -berok will link without error, but may produce a broken library.
-          _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
+          # The "-G" linker flag allows undefined symbols.
+          _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
           # Determine the default libpath from the value encoded in an empty
           # executable.
           _LT_SYS_MODULE_PATH_AIX([$1])
-          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+          _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
 
-          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+          _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
         else
-          if test "$host_cpu" = ia64; then
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
+          if test ia64 = "$host_cpu"; then
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
 	    _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
+	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
           else
 	    # Determine the default libpath from the value encoded in an
 	    # empty executable.
 	    _LT_SYS_MODULE_PATH_AIX([$1])
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
 	    # Warning - without using the other run time loading flags,
 	    # -berok will link without error, but may produce a broken library.
-	    _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
-	    _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
-	    if test "$with_gnu_ld" = yes; then
+	    _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
+	    _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
+	    if test yes = "$with_gnu_ld"; then
 	      # We only use this code for GNU lds that support --whole-archive.
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
 	    else
 	      # Exported symbols can be pulled into shared objects from archives
 	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
 	    fi
 	    _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
-	    # This is similar to how AIX traditionally builds its shared
-	    # libraries.
-	    _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
+	    # -brtl affects multiple linker settings, -berok does not and is overridden later
+	    compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
+	    if test svr4 != "$with_aix_soname"; then
+	      # This is similar to how AIX traditionally builds its shared
+	      # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
+	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
+	    fi
+	    if test aix != "$with_aix_soname"; then
+	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# [...]
+	    else
+	      # used by -dlpreopen to get the symbols
+	      _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV  $output_objdir/$realname.d/$soname $output_objdir'
+	    fi
+	    _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
           fi
         fi
         ;;
@@ -6117,7 +6633,7 @@ if test "$_lt_caught_CXX_error" != yes; then
 	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
 	  # Joseph Beckenbach <jrb3 at best.com> says some releases of gcc
 	  # support --undefined.  This deserves some investigation.  FIXME
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
 	else
 	  _LT_TAGVAR(ld_shlibs, $1)=no
 	fi
@@ -6145,57 +6661,58 @@ if test "$_lt_caught_CXX_error" != yes; then
 	  # Tell ltmain to make .lib files, not .a files.
 	  libext=lib
 	  # Tell ltmain to make .dll files, not .so files.
-	  shrext_cmds=".dll"
+	  shrext_cmds=.dll
 	  # FIXME: Setting linknames here is a bad hack.
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
-	    else
-	      $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
-	    fi~
-	    $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
-	    linknames='
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+              cp "$export_symbols" "$output_objdir/$soname.def";
+              echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
+            else
+              $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
+            fi~
+            $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
+            linknames='
 	  # The linker will not automatically build a static lib if we build a DLL.
 	  # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
 	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
 	  # Don't use ranlib
 	  _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
 	  _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
-	    lt_tool_outputfile="@TOOL_OUTPUT@"~
-	    case $lt_outputfile in
-	      *.exe|*.EXE) ;;
-	      *)
-		lt_outputfile="$lt_outputfile.exe"
-		lt_tool_outputfile="$lt_tool_outputfile.exe"
-		;;
-	    esac~
-	    func_to_tool_file "$lt_outputfile"~
-	    if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
-	      $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
-	      $RM "$lt_outputfile.manifest";
-	    fi'
+            lt_tool_outputfile="@TOOL_OUTPUT@"~
+            case $lt_outputfile in
+              *.exe|*.EXE) ;;
+              *)
+                lt_outputfile=$lt_outputfile.exe
+                lt_tool_outputfile=$lt_tool_outputfile.exe
+                ;;
+            esac~
+            func_to_tool_file "$lt_outputfile"~
+            if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
+              $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
+              $RM "$lt_outputfile.manifest";
+            fi'
 	  ;;
 	*)
 	  # g++
 	  # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
 	  # as there is no search path for DLLs.
 	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
-	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
+	  _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
 	  _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
 	  _LT_TAGVAR(always_export_symbols, $1)=no
 	  _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
 
 	  if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
-	    # If the export-symbols file already is a .def file (1st line
-	    # is EXPORTS), use it as is; otherwise, prepend...
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
-	      cp $export_symbols $output_objdir/$soname.def;
-	    else
-	      echo EXPORTS > $output_objdir/$soname.def;
-	      cat $export_symbols >> $output_objdir/$soname.def;
-	    fi~
-	    $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
+	    # If the export-symbols file already is a .def file, use it as
+	    # is; otherwise, prepend EXPORTS...
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
+              cp $export_symbols $output_objdir/$soname.def;
+            else
+              echo EXPORTS > $output_objdir/$soname.def;
+              cat $export_symbols >> $output_objdir/$soname.def;
+            fi~
+            $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
 	  else
 	    _LT_TAGVAR(ld_shlibs, $1)=no
 	  fi
@@ -6206,6 +6723,34 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_DARWIN_LINKER_FEATURES($1)
 	;;
 
+      os2*)
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
+	_LT_TAGVAR(hardcode_minus_L, $1)=yes
+	_LT_TAGVAR(allow_undefined_flag, $1)=unsupported
+	shrext_cmds=.dll
+	_LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	  $ECHO EXPORTS >> $output_objdir/$libname.def~
+	  emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
+	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	  emximp -o $lib $output_objdir/$libname.def'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
+	  $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
+	  $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
+	  $ECHO EXPORTS >> $output_objdir/$libname.def~
+	  prefix_cmds="$SED"~
+	  if test EXPORTS = "`$SED 1q $export_symbols`"; then
+	    prefix_cmds="$prefix_cmds -e 1d";
+	  fi~
+	  prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
+	  cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
+	  $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
+	  emximp -o $lib $output_objdir/$libname.def'
+	_LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
+	_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
+	;;
+
       dgux*)
         case $cc_basename in
           ec++*)
@@ -6241,14 +6786,14 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
       haiku*)
-        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
         _LT_TAGVAR(link_all_deplibs, $1)=yes
         ;;
 
       hpux9*)
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
-        _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+        _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
         _LT_TAGVAR(hardcode_direct, $1)=yes
         _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
 				             # but as the default
@@ -6260,7 +6805,7 @@ if test "$_lt_caught_CXX_error" != yes; then
             _LT_TAGVAR(ld_shlibs, $1)=no
             ;;
           aCC*)
-            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+            _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
             # Commands to make compiler produce verbose output that lists
             # what "hidden" libraries, object files and flags are used when
             # linking a shared library.
@@ -6269,11 +6814,11 @@ if test "$_lt_caught_CXX_error" != yes; then
             # explicitly linking system object files so we need to strip them
             # from the output so that they don't get included in the library
             # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
             ;;
           *)
-            if test "$GXX" = yes; then
-              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+            if test yes = "$GXX"; then
+              _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
             else
               # FIXME: insert proper C++ library support
               _LT_TAGVAR(ld_shlibs, $1)=no
@@ -6283,15 +6828,15 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
       hpux10*|hpux11*)
-        if test $with_gnu_ld = no; then
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
+        if test no = "$with_gnu_ld"; then
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
 	  _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
           case $host_cpu in
             hppa*64*|ia64*)
               ;;
             *)
-	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	      _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
               ;;
           esac
         fi
@@ -6317,13 +6862,13 @@ if test "$_lt_caught_CXX_error" != yes; then
           aCC*)
 	    case $host_cpu in
 	      hppa*64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	        ;;
 	      ia64*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	        ;;
 	      *)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	        ;;
 	    esac
 	    # Commands to make compiler produce verbose output that lists
@@ -6334,20 +6879,20 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 	    ;;
           *)
-	    if test "$GXX" = yes; then
-	      if test $with_gnu_ld = no; then
+	    if test yes = "$GXX"; then
+	      if test no = "$with_gnu_ld"; then
 	        case $host_cpu in
 	          hppa*64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	            ;;
 	          ia64*)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	            ;;
 	          *)
-	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	            _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	            ;;
 	        esac
 	      fi
@@ -6362,22 +6907,22 @@ if test "$_lt_caught_CXX_error" != yes; then
       interix[[3-9]]*)
 	_LT_TAGVAR(hardcode_direct, $1)=no
 	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
 	# Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
 	# Instead, shared libraries are loaded at an image base (0x10000000 by
 	# default) and relocated if they conflict, which is a slow very memory
 	# consuming and fragmenting process.  To avoid this, we pick a random,
 	# 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
 	# time.  Moving up from 0x10000000 also allows more sbrk(2) space.
-	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
-	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+	_LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
+	_LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
 	;;
       irix5* | irix6*)
         case $cc_basename in
           CC*)
 	    # SGI C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
 
 	    # Archives containing C++ object files must be created using
 	    # "CC -ar", where "CC" is the IRIX C++ compiler.  This is
@@ -6386,17 +6931,17 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
 	    ;;
           *)
-	    if test "$GXX" = yes; then
-	      if test "$with_gnu_ld" = no; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+	    if test yes = "$GXX"; then
+	      if test no = "$with_gnu_ld"; then
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
 	      else
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
 	      fi
 	    fi
 	    _LT_TAGVAR(link_all_deplibs, $1)=yes
 	    ;;
         esac
-        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
         _LT_TAGVAR(hardcode_libdir_separator, $1)=:
         _LT_TAGVAR(inherit_rpath, $1)=yes
         ;;
@@ -6409,8 +6954,8 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # KCC will only create a shared library if the output file
 	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
 	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
+	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
 	    # Commands to make compiler produce verbose output that lists
 	    # what "hidden" libraries, object files and flags are used when
 	    # linking a shared library.
@@ -6419,10 +6964,10 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+	    output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
 
 	    # Archives containing C++ object files must be created using
 	    # "CC -Bstatic", where "CC" is the KAI C++ compiler.
@@ -6436,59 +6981,59 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # earlier do not add the objects themselves.
 	    case `$CC -V 2>&1` in
 	      *"Version 7."*)
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 		;;
 	      *)  # Version 8.0 or newer
 	        tmp_idyn=
 	        case $host_cpu in
 		  ia64*) tmp_idyn=' -i_dynamic';;
 		esac
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+		_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 		;;
 	    esac
 	    _LT_TAGVAR(archive_cmds_need_lc, $1)=no
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
 	    ;;
           pgCC* | pgcpp*)
             # Portland Group C++ compiler
 	    case `$CC -V` in
 	    *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
 	      _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
-		compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
+               rm -rf $tpldir~
+               $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
+               compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
 	      _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
-		$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
-		$RANLIB $oldlib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
+                $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
+                $RANLIB $oldlib'
 	      _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
 	      _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
-		rm -rf $tpldir~
-		$CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
-		$CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+                rm -rf $tpldir~
+                $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
+                $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 	      ;;
 	    *) # Version 6 and above use weak symbols
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
+	      _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
 	      ;;
 	    esac
 
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+	    _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
             ;;
 	  cxx*)
 	    # Compaq C++
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname  -o $lib $wl-retain-symbols-file $wl$export_symbols'
 
 	    runpath_var=LD_RUN_PATH
 	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -6502,18 +7047,18 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
+	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
 	    ;;
 	  xl* | mpixl* | bgxl*)
 	    # IBM XL 8.0 on PPC, with GNU ld
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
-	    if test "x$supports_anon_versioning" = xyes; then
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
+	    if test yes = "$supports_anon_versioning"; then
 	      _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
-		cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
-		echo "local: *; };" >> $output_objdir/$libname.ver~
-		$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+                cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+                echo "local: *; };" >> $output_objdir/$libname.ver~
+                $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
 	    fi
 	    ;;
 	  *)
@@ -6521,10 +7066,10 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    *Sun\ C*)
 	      # Sun C++ 5.9
 	      _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	      _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
-	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+	      _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	      _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
 	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	      _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
+	      _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
 	      _LT_TAGVAR(compiler_needs_object, $1)=yes
 
 	      # Not sure whether something based on
@@ -6582,22 +7127,17 @@ if test "$_lt_caught_CXX_error" != yes; then
         _LT_TAGVAR(ld_shlibs, $1)=yes
 	;;
 
-      openbsd2*)
-        # C++ shared libraries are fairly broken
-	_LT_TAGVAR(ld_shlibs, $1)=no
-	;;
-
-      openbsd*)
+      openbsd* | bitrig*)
 	if test -f /usr/libexec/ld.so; then
 	  _LT_TAGVAR(hardcode_direct, $1)=yes
 	  _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
 	  _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
 	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-	    _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+	  _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
+	  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
+	    _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
+	    _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
 	  fi
 	  output_verbose_link_cmd=func_echo_all
 	else
@@ -6613,9 +7153,9 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # KCC will only create a shared library if the output file
 	    # ends with ".so" (or ".sl" for HP-UX), so rename the library
 	    # to its proper name (with version) after linking.
-	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
+	    _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
 
-	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
 	    _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
 	    # Archives containing C++ object files must be created using
@@ -6633,17 +7173,17 @@ if test "$_lt_caught_CXX_error" != yes; then
           cxx*)
 	    case $host in
 	      osf3*)
-	        _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
-	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+	        _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
+	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
 		;;
 	      *)
 	        _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
 	        _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
-	          echo "-hidden">> $lib.exp~
-	          $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
-	          $RM $lib.exp'
+                  echo "-hidden">> $lib.exp~
+                  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp  `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
+                  $RM $lib.exp'
 	        _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
 		;;
 	    esac
@@ -6658,21 +7198,21 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+	    output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 	    ;;
 	  *)
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
+	    if test yes,no = "$GXX,$with_gnu_ld"; then
+	      _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
 	      case $host in
 	        osf3*)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
 		  ;;
 	        *)
-	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+	          _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
 		  ;;
 	      esac
 
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
+	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
 	      _LT_TAGVAR(hardcode_libdir_separator, $1)=:
 
 	      # Commands to make compiler produce verbose output that lists
@@ -6718,9 +7258,9 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    # Sun C++ 4.2, 5.x and Centerline C++
             _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
 	    _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
 	    _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-	      $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+              $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
 	    _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
 	    _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -6728,7 +7268,7 @@ if test "$_lt_caught_CXX_error" != yes; then
 	      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
 	      *)
 		# The compiler driver will combine and reorder linker options,
-		# but understands `-z linker_flag'.
+		# but understands '-z linker_flag'.
 	        # Supported since Solaris 2.6 (maybe 2.5.1?)
 		_LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
 	        ;;
@@ -6745,30 +7285,30 @@ if test "$_lt_caught_CXX_error" != yes; then
 	    ;;
           gcx*)
 	    # Green Hills C++ Compiler
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
 
 	    # The C++ compiler must be used to create the archive.
 	    _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
 	    ;;
           *)
 	    # GNU C++ compiler with Solaris linker
-	    if test "$GXX" = yes && test "$with_gnu_ld" = no; then
-	      _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
+	    if test yes,no = "$GXX,$with_gnu_ld"; then
+	      _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
 	      if $CC --version | $GREP -v '^2\.7' > /dev/null; then
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
 	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                  $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
 	        # linking a shared library.
 	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
 	      else
-	        # g++ 2.7 appears to require `-G' NOT `-shared' on this
+	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
 	        # platform.
-	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
+	        _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
 	        _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
-		  $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
+                  $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
 
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
@@ -6776,11 +7316,11 @@ if test "$_lt_caught_CXX_error" != yes; then
 	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
 	      fi
 
-	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
 	      case $host_os in
 		solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
 		*)
-		  _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+		  _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
 		  ;;
 	      esac
 	    fi
@@ -6789,52 +7329,52 @@ if test "$_lt_caught_CXX_error" != yes; then
         ;;
 
     sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
-      _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
+      _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
       _LT_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
       runpath_var='LD_RUN_PATH'
 
       case $cc_basename in
         CC*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
 	*)
-	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
 	  ;;
       esac
       ;;
 
       sysv5* | sco3.2v5* | sco5v6*)
-	# Note: We can NOT use -z defs as we might desire, because we do not
+	# Note: We CANNOT use -z defs as we might desire, because we do not
 	# link with -lc, and that would cause any symbols used from libc to
 	# always be unresolved, which means just about no library would
 	# ever link correctly.  If we're not using GNU ld we use -z text
 	# though, which does catch some bad symbols but isn't as heavy-handed
 	# as -z defs.
-	_LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
-	_LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
+	_LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
+	_LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
 	_LT_TAGVAR(archive_cmds_need_lc, $1)=no
 	_LT_TAGVAR(hardcode_shlibpath_var, $1)=no
-	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
+	_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
 	_LT_TAGVAR(hardcode_libdir_separator, $1)=':'
 	_LT_TAGVAR(link_all_deplibs, $1)=yes
-	_LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
+	_LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
 	runpath_var='LD_RUN_PATH'
 
 	case $cc_basename in
           CC*)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
 	    _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
-	      '"$_LT_TAGVAR(old_archive_cmds, $1)"
+              '"$_LT_TAGVAR(old_archive_cmds, $1)"
 	    _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
-	      '"$_LT_TAGVAR(reload_cmds, $1)"
+              '"$_LT_TAGVAR(reload_cmds, $1)"
 	    ;;
 	  *)
-	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
-	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	    _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
+	    _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
 	    ;;
 	esac
       ;;
@@ -6865,10 +7405,10 @@ if test "$_lt_caught_CXX_error" != yes; then
     esac
 
     AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
-    test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
+    test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
 
-    _LT_TAGVAR(GCC, $1)="$GXX"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$GXX
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -6895,7 +7435,7 @@ if test "$_lt_caught_CXX_error" != yes; then
   lt_cv_path_LD=$lt_save_path_LD
   lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
   lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
-fi # test "$_lt_caught_CXX_error" != yes
+fi # test yes != "$_lt_caught_CXX_error"
 
 AC_LANG_POP
 ])# _LT_LANG_CXX_CONFIG
@@ -6917,13 +7457,14 @@ AC_REQUIRE([_LT_DECL_SED])
 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
 func_stripname_cnf ()
 {
-  case ${2} in
-  .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
-  *)  func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
+  case @S|@2 in
+  .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
+  *)  func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
   esac
 } # func_stripname_cnf
 ])# _LT_FUNC_STRIPNAME_CNF
 
+
 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
 # ---------------------------------
 # Figure out "hidden" library dependencies from verbose
@@ -7007,13 +7548,13 @@ if AC_TRY_EVAL(ac_compile); then
   pre_test_object_deps_done=no
 
   for p in `eval "$output_verbose_link_cmd"`; do
-    case ${prev}${p} in
+    case $prev$p in
 
     -L* | -R* | -l*)
        # Some compilers place space between "-{L,R}" and the path.
        # Remove the space.
-       if test $p = "-L" ||
-          test $p = "-R"; then
+       if test x-L = "$p" ||
+          test x-R = "$p"; then
 	 prev=$p
 	 continue
        fi
@@ -7029,16 +7570,16 @@ if AC_TRY_EVAL(ac_compile); then
        case $p in
        =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
        esac
-       if test "$pre_test_object_deps_done" = no; then
-	 case ${prev} in
+       if test no = "$pre_test_object_deps_done"; then
+	 case $prev in
 	 -L | -R)
 	   # Internal compiler library paths should come after those
 	   # provided the user.  The postdeps already come after the
 	   # user supplied libs so there is no need to process them.
 	   if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
+	     _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
 	   else
-	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
+	     _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
 	   fi
 	   ;;
 	 # The "-l" case would never come before the object being
@@ -7046,9 +7587,9 @@ if AC_TRY_EVAL(ac_compile); then
 	 esac
        else
 	 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
-	   _LT_TAGVAR(postdeps, $1)="${prev}${p}"
+	   _LT_TAGVAR(postdeps, $1)=$prev$p
 	 else
-	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
+	   _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
 	 fi
        fi
        prev=
@@ -7063,15 +7604,15 @@ if AC_TRY_EVAL(ac_compile); then
 	 continue
        fi
 
-       if test "$pre_test_object_deps_done" = no; then
+       if test no = "$pre_test_object_deps_done"; then
 	 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
-	   _LT_TAGVAR(predep_objects, $1)="$p"
+	   _LT_TAGVAR(predep_objects, $1)=$p
 	 else
 	   _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
 	 fi
        else
 	 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
-	   _LT_TAGVAR(postdep_objects, $1)="$p"
+	   _LT_TAGVAR(postdep_objects, $1)=$p
 	 else
 	   _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
 	 fi
@@ -7102,51 +7643,6 @@ interix[[3-9]]*)
   _LT_TAGVAR(postdep_objects,$1)=
   _LT_TAGVAR(postdeps,$1)=
   ;;
-
-linux*)
-  case `$CC -V 2>&1 | sed 5q` in
-  *Sun\ C*)
-    # Sun C++ 5.9
-
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
-
-solaris*)
-  case $cc_basename in
-  CC* | sunCC*)
-    # The more standards-conforming stlport4 library is
-    # incompatible with the Cstd library. Avoid specifying
-    # it if it's in CXXFLAGS. Ignore libCrun as
-    # -library=stlport4 depends on it.
-    case " $CXX $CXXFLAGS " in
-    *" -library=stlport4 "*)
-      solaris_use_stlport4=yes
-      ;;
-    esac
-
-    # Adding this requires a known-good setup of shared libraries for
-    # Sun compiler versions before 5.6, else PIC objects from an old
-    # archive will be linked into the output, leading to subtle bugs.
-    if test "$solaris_use_stlport4" != yes; then
-      _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
-    fi
-    ;;
-  esac
-  ;;
 esac
 ])
 
@@ -7155,7 +7651,7 @@ case " $_LT_TAGVAR(postdeps, $1) " in
 esac
  _LT_TAGVAR(compiler_lib_search_dirs, $1)=
 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
- _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
+ _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
 fi
 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
     [The directories searched by this compiler when creating a shared library])
@@ -7175,10 +7671,10 @@ _LT_TAGDECL([], [compiler_lib_search_path], [1],
 # --------------------------
 # Ensure that the configuration variables for a Fortran 77 compiler are
 # suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_F77_CONFIG],
 [AC_LANG_PUSH(Fortran 77)
-if test -z "$F77" || test "X$F77" = "Xno"; then
+if test -z "$F77" || test no = "$F77"; then
   _lt_disable_F77=yes
 fi
 
@@ -7215,7 +7711,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the F77 compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_F77" != yes; then
+if test yes != "$_lt_disable_F77"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="\
       subroutine t
@@ -7237,7 +7733,7 @@ if test "$_lt_disable_F77" != yes; then
   _LT_LINKER_BOILERPLATE
 
   # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
+  lt_save_CC=$CC
   lt_save_GCC=$GCC
   lt_save_CFLAGS=$CFLAGS
   CC=${F77-"f77"}
@@ -7251,21 +7747,25 @@ if test "$_lt_disable_F77" != yes; then
     AC_MSG_RESULT([$can_build_shared])
 
     AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
+    test no = "$can_build_shared" && enable_shared=no
 
     # On AIX, shared libraries and static libraries use the same namespace, and
     # are all built from PIC.
     case $host_os in
       aix3*)
-        test "$enable_shared" = yes && enable_static=no
+        test yes = "$enable_shared" && enable_static=no
         if test -n "$RANLIB"; then
           archive_cmds="$archive_cmds~\$RANLIB \$lib"
           postinstall_cmds='$RANLIB $lib'
         fi
         ;;
       aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
+	if test ia64 != "$host_cpu"; then
+	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+	  yes,aix,yes) ;;		# shared object as lib.so file only
+	  yes,svr4,*) ;;		# shared object as lib.so archive member only
+	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
+	  esac
 	fi
         ;;
     esac
@@ -7273,11 +7773,11 @@ if test "$_lt_disable_F77" != yes; then
 
     AC_MSG_CHECKING([whether to build static libraries])
     # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
+    test yes = "$enable_shared" || enable_static=yes
     AC_MSG_RESULT([$enable_static])
 
-    _LT_TAGVAR(GCC, $1)="$G77"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$G77
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -7294,9 +7794,9 @@ if test "$_lt_disable_F77" != yes; then
   fi # test -n "$compiler"
 
   GCC=$lt_save_GCC
-  CC="$lt_save_CC"
-  CFLAGS="$lt_save_CFLAGS"
-fi # test "$_lt_disable_F77" != yes
+  CC=$lt_save_CC
+  CFLAGS=$lt_save_CFLAGS
+fi # test yes != "$_lt_disable_F77"
 
 AC_LANG_POP
 ])# _LT_LANG_F77_CONFIG
@@ -7306,11 +7806,11 @@ AC_LANG_POP
 # -------------------------
 # Ensure that the configuration variables for a Fortran compiler are
 # suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_FC_CONFIG],
 [AC_LANG_PUSH(Fortran)
 
-if test -z "$FC" || test "X$FC" = "Xno"; then
+if test -z "$FC" || test no = "$FC"; then
   _lt_disable_FC=yes
 fi
 
@@ -7347,7 +7847,7 @@ _LT_TAGVAR(objext, $1)=$objext
 # the FC compiler isn't working.  Some variables (like enable_shared)
 # are currently assumed to apply to all compilers on this platform,
 # and will be corrupted by setting them based on a non-working compiler.
-if test "$_lt_disable_FC" != yes; then
+if test yes != "$_lt_disable_FC"; then
   # Code to be used in simple compile tests
   lt_simple_compile_test_code="\
       subroutine t
@@ -7369,7 +7869,7 @@ if test "$_lt_disable_FC" != yes; then
   _LT_LINKER_BOILERPLATE
 
   # Allow CC to be a program name with arguments.
-  lt_save_CC="$CC"
+  lt_save_CC=$CC
   lt_save_GCC=$GCC
   lt_save_CFLAGS=$CFLAGS
   CC=${FC-"f95"}
@@ -7385,21 +7885,25 @@ if test "$_lt_disable_FC" != yes; then
     AC_MSG_RESULT([$can_build_shared])
 
     AC_MSG_CHECKING([whether to build shared libraries])
-    test "$can_build_shared" = "no" && enable_shared=no
+    test no = "$can_build_shared" && enable_shared=no
 
     # On AIX, shared libraries and static libraries use the same namespace, and
     # are all built from PIC.
     case $host_os in
       aix3*)
-        test "$enable_shared" = yes && enable_static=no
+        test yes = "$enable_shared" && enable_static=no
         if test -n "$RANLIB"; then
           archive_cmds="$archive_cmds~\$RANLIB \$lib"
           postinstall_cmds='$RANLIB $lib'
         fi
         ;;
       aix[[4-9]]*)
-	if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
-	  test "$enable_shared" = yes && enable_static=no
+	if test ia64 != "$host_cpu"; then
+	  case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
+	  yes,aix,yes) ;;		# shared object as lib.so file only
+	  yes,svr4,*) ;;		# shared object as lib.so archive member only
+	  yes,*) enable_static=no ;;	# shared object in lib.a archive as well
+	  esac
 	fi
         ;;
     esac
@@ -7407,11 +7911,11 @@ if test "$_lt_disable_FC" != yes; then
 
     AC_MSG_CHECKING([whether to build static libraries])
     # Make sure either enable_shared or enable_static is yes.
-    test "$enable_shared" = yes || enable_static=yes
+    test yes = "$enable_shared" || enable_static=yes
     AC_MSG_RESULT([$enable_static])
 
-    _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
-    _LT_TAGVAR(LD, $1)="$LD"
+    _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
+    _LT_TAGVAR(LD, $1)=$LD
 
     ## CAVEAT EMPTOR:
     ## There is no encapsulation within the following macros, do not change
@@ -7431,7 +7935,7 @@ if test "$_lt_disable_FC" != yes; then
   GCC=$lt_save_GCC
   CC=$lt_save_CC
   CFLAGS=$lt_save_CFLAGS
-fi # test "$_lt_disable_FC" != yes
+fi # test yes != "$_lt_disable_FC"
 
 AC_LANG_POP
 ])# _LT_LANG_FC_CONFIG
@@ -7441,7 +7945,7 @@ AC_LANG_POP
 # --------------------------
 # Ensure that the configuration variables for the GNU Java Compiler compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_GCJ_CONFIG],
 [AC_REQUIRE([LT_PROG_GCJ])dnl
 AC_LANG_SAVE
@@ -7475,7 +7979,7 @@ CC=${GCJ-"gcj"}
 CFLAGS=$GCJFLAGS
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
+_LT_TAGVAR(LD, $1)=$LD
 _LT_CC_BASENAME([$compiler])
 
 # GCJ did not exist at the time GCC didn't implicitly link libc in.
@@ -7512,7 +8016,7 @@ CFLAGS=$lt_save_CFLAGS
 # --------------------------
 # Ensure that the configuration variables for the GNU Go compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_GO_CONFIG],
 [AC_REQUIRE([LT_PROG_GO])dnl
 AC_LANG_SAVE
@@ -7546,7 +8050,7 @@ CC=${GOC-"gccgo"}
 CFLAGS=$GOFLAGS
 compiler=$CC
 _LT_TAGVAR(compiler, $1)=$CC
-_LT_TAGVAR(LD, $1)="$LD"
+_LT_TAGVAR(LD, $1)=$LD
 _LT_CC_BASENAME([$compiler])
 
 # Go did not exist at the time GCC didn't implicitly link libc in.
@@ -7583,7 +8087,7 @@ CFLAGS=$lt_save_CFLAGS
 # -------------------------
 # Ensure that the configuration variables for the Windows resource compiler
 # are suitably defined.  These variables are subsequently used by _LT_CONFIG
-# to write the compiler configuration to `libtool'.
+# to write the compiler configuration to 'libtool'.
 m4_defun([_LT_LANG_RC_CONFIG],
 [AC_REQUIRE([LT_PROG_RC])dnl
 AC_LANG_SAVE
@@ -7599,7 +8103,7 @@ _LT_TAGVAR(objext, $1)=$objext
 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
 
 # Code to be used in simple link tests
-lt_simple_link_test_code="$lt_simple_compile_test_code"
+lt_simple_link_test_code=$lt_simple_compile_test_code
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 _LT_TAG_COMPILER
@@ -7609,7 +8113,7 @@ _LT_COMPILER_BOILERPLATE
 _LT_LINKER_BOILERPLATE
 
 # Allow CC to be a program name with arguments.
-lt_save_CC="$CC"
+lt_save_CC=$CC
 lt_save_CFLAGS=$CFLAGS
 lt_save_GCC=$GCC
 GCC=
@@ -7638,7 +8142,7 @@ AC_DEFUN([LT_PROG_GCJ],
 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
   [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
     [AC_CHECK_TOOL(GCJ, gcj,)
-      test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
+      test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
       AC_SUBST(GCJFLAGS)])])[]dnl
 ])
 
@@ -7749,7 +8253,7 @@ lt_ac_count=0
 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
 # along with /bin/sed that truncates output.
 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
-  test ! -f $lt_ac_sed && continue
+  test ! -f "$lt_ac_sed" && continue
   cat /dev/null > conftest.in
   lt_ac_count=0
   echo $ECHO_N "0123456789$ECHO_C" >conftest.in
@@ -7766,9 +8270,9 @@ for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
     $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
     cmp -s conftest.out conftest.nl || break
     # 10000 chars as input seems more than enough
-    test $lt_ac_count -gt 10 && break
+    test 10 -lt "$lt_ac_count" && break
     lt_ac_count=`expr $lt_ac_count + 1`
-    if test $lt_ac_count -gt $lt_ac_max; then
+    if test "$lt_ac_count" -gt "$lt_ac_max"; then
       lt_ac_max=$lt_ac_count
       lt_cv_path_SED=$lt_ac_sed
     fi
@@ -7792,27 +8296,7 @@ dnl AC_DEFUN([LT_AC_PROG_SED], [])
 # Find out whether the shell is Bourne or XSI compatible,
 # or has some other useful features.
 m4_defun([_LT_CHECK_SHELL_FEATURES],
-[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
-# Try some XSI features
-xsi_shell=no
-( _lt_dummy="a/b/c"
-  test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
-      = c,a/b,b/c, \
-    && eval 'test $(( 1 + 1 )) -eq 2 \
-    && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
-  && xsi_shell=yes
-AC_MSG_RESULT([$xsi_shell])
-_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
-
-AC_MSG_CHECKING([whether the shell understands "+="])
-lt_shell_append=no
-( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
-    >/dev/null 2>&1 \
-  && lt_shell_append=yes
-AC_MSG_RESULT([$lt_shell_append])
-_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
-
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
   lt_unset=unset
 else
   lt_unset=false
@@ -7836,102 +8320,9 @@ _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
 ])# _LT_CHECK_SHELL_FEATURES
 
 
-# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
-# ------------------------------------------------------
-# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
-# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
-m4_defun([_LT_PROG_FUNCTION_REPLACE],
-[dnl {
-sed -e '/^$1 ()$/,/^} # $1 /c\
-$1 ()\
-{\
-m4_bpatsubsts([$2], [$], [\\], [^\([	 ]\)], [\\\1])
-} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
-  && mv -f "$cfgfile.tmp" "$cfgfile" \
-    || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-test 0 -eq $? || _lt_function_replace_fail=:
-])
-
-
-# _LT_PROG_REPLACE_SHELLFNS
-# -------------------------
-# Replace existing portable implementations of several shell functions with
-# equivalent extended shell implementations where those features are available..
-m4_defun([_LT_PROG_REPLACE_SHELLFNS],
-[if test x"$xsi_shell" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
-    case ${1} in
-      */*) func_dirname_result="${1%/*}${2}" ;;
-      *  ) func_dirname_result="${3}" ;;
-    esac
-    func_basename_result="${1##*/}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
-    # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
-    # positional parameters, so assign one to ordinary parameter first.
-    func_stripname_result=${3}
-    func_stripname_result=${func_stripname_result#"${1}"}
-    func_stripname_result=${func_stripname_result%"${2}"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
-    func_split_long_opt_name=${1%%=*}
-    func_split_long_opt_arg=${1#*=}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
-    func_split_short_opt_arg=${1#??}
-    func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
-
-  _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
-    case ${1} in
-      *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
-      *)    func_lo2o_result=${1} ;;
-    esac])
-
-  _LT_PROG_FUNCTION_REPLACE([func_xform], [    func_xform_result=${1%.*}.lo])
-
-  _LT_PROG_FUNCTION_REPLACE([func_arith], [    func_arith_result=$(( $[*] ))])
-
-  _LT_PROG_FUNCTION_REPLACE([func_len], [    func_len_result=${#1}])
-fi
-
-if test x"$lt_shell_append" = xyes; then
-  _LT_PROG_FUNCTION_REPLACE([func_append], [    eval "${1}+=\\${2}"])
-
-  _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
-    func_quote_for_eval "${2}"
-dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
-    eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
-
-  # Save a `func_append' function call where possible by direct use of '+='
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-else
-  # Save a `func_append' function call even when '+=' is not available
-  sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
-    && mv -f "$cfgfile.tmp" "$cfgfile" \
-      || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
-  test 0 -eq $? || _lt_function_replace_fail=:
-fi
-
-if test x"$_lt_function_replace_fail" = x":"; then
-  AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
-fi
-])
-
 # _LT_PATH_CONVERSION_FUNCTIONS
 # -----------------------------
-# Determine which file name conversion functions should be used by
+# Determine what file name conversion functions should be used by
 # func_to_host_file (and, implicitly, by func_to_host_path).  These are needed
 # for certain cross-compile configurations and native mingw.
 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4
index 5d9acd8..94b0829 100644
--- a/m4/ltoptions.m4
+++ b/m4/ltoptions.m4
@@ -1,14 +1,14 @@
 # Helper functions for option handling.                    -*- Autoconf -*-
 #
-#   Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
-#   Inc.
+#   Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
+#   Foundation, Inc.
 #   Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
 # unlimited permission to copy and/or distribute it, with or without
 # modifications, as long as this notice is preserved.
 
-# serial 7 ltoptions.m4
+# serial 8 ltoptions.m4
 
 # This is to help aclocal find these macros, as it can't see m4_define.
 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
@@ -29,7 +29,7 @@ m4_define([_LT_SET_OPTION],
 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
         _LT_MANGLE_DEFUN([$1], [$2]),
-    [m4_warning([Unknown $1 option `$2'])])[]dnl
+    [m4_warning([Unknown $1 option '$2'])])[]dnl
 ])
 
 
@@ -75,13 +75,15 @@ m4_if([$1],[LT_INIT],[
   dnl
   dnl If no reference was made to various pairs of opposing options, then
   dnl we run the default mode handler for the pair.  For example, if neither
-  dnl `shared' nor `disable-shared' was passed, we enable building of shared
+  dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
   dnl archives by default:
   _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
   _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
   _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
   _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
-  		   [_LT_ENABLE_FAST_INSTALL])
+		   [_LT_ENABLE_FAST_INSTALL])
+  _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
+		   [_LT_WITH_AIX_SONAME([aix])])
   ])
 ])# _LT_SET_OPTIONS
 
@@ -112,7 +114,7 @@ AU_DEFUN([AC_LIBTOOL_DLOPEN],
 [_LT_SET_OPTION([LT_INIT], [dlopen])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `dlopen' option into LT_INIT's first parameter.])
+put the 'dlopen' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -148,7 +150,7 @@ AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
 _LT_SET_OPTION([LT_INIT], [win32-dll])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `win32-dll' option into LT_INIT's first parameter.])
+put the 'win32-dll' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -157,9 +159,9 @@ dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
 
 # _LT_ENABLE_SHARED([DEFAULT])
 # ----------------------------
-# implement the --enable-shared flag, and supports the `shared' and
-# `disable-shared' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-shared flag, and supports the 'shared' and
+# 'disable-shared' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_SHARED],
 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([shared],
@@ -172,14 +174,14 @@ AC_ARG_ENABLE([shared],
     *)
       enable_shared=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_shared=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
@@ -211,9 +213,9 @@ dnl AC_DEFUN([AM_DISABLE_SHARED], [])
 
 # _LT_ENABLE_STATIC([DEFAULT])
 # ----------------------------
-# implement the --enable-static flag, and support the `static' and
-# `disable-static' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-static flag, and support the 'static' and
+# 'disable-static' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_STATIC],
 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([static],
@@ -226,14 +228,14 @@ AC_ARG_ENABLE([static],
     *)
      enable_static=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_static=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
@@ -265,9 +267,9 @@ dnl AC_DEFUN([AM_DISABLE_STATIC], [])
 
 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
 # ----------------------------------
-# implement the --enable-fast-install flag, and support the `fast-install'
-# and `disable-fast-install' LT_INIT options.
-# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
+# implement the --enable-fast-install flag, and support the 'fast-install'
+# and 'disable-fast-install' LT_INIT options.
+# DEFAULT is either 'yes' or 'no'.  If omitted, it defaults to 'yes'.
 m4_define([_LT_ENABLE_FAST_INSTALL],
 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
 AC_ARG_ENABLE([fast-install],
@@ -280,14 +282,14 @@ AC_ARG_ENABLE([fast-install],
     *)
       enable_fast_install=no
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for pkg in $enableval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$pkg" = "X$p"; then
 	  enable_fast_install=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
     [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
@@ -304,14 +306,14 @@ AU_DEFUN([AC_ENABLE_FAST_INSTALL],
 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `fast-install' option into LT_INIT's first parameter.])
+the 'fast-install' option into LT_INIT's first parameter.])
 ])
 
 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
-the `disable-fast-install' option into LT_INIT's first parameter.])
+the 'disable-fast-install' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
@@ -319,11 +321,64 @@ dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
 
 
+# _LT_WITH_AIX_SONAME([DEFAULT])
+# ----------------------------------
+# implement the --with-aix-soname flag, and support the `aix-soname=aix'
+# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
+# is either `aix', `both' or `svr4'.  If omitted, it defaults to `aix'.
+m4_define([_LT_WITH_AIX_SONAME],
+[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
+shared_archive_member_spec=
+case $host,$enable_shared in
+power*-*-aix[[5-9]]*,yes)
+  AC_MSG_CHECKING([which variant of shared library versioning to provide])
+  AC_ARG_WITH([aix-soname],
+    [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
+      [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
+    [case $withval in
+    aix|svr4|both)
+      ;;
+    *)
+      AC_MSG_ERROR([Unknown argument to --with-aix-soname])
+      ;;
+    esac
+    lt_cv_with_aix_soname=$with_aix_soname],
+    [AC_CACHE_VAL([lt_cv_with_aix_soname],
+      [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
+    with_aix_soname=$lt_cv_with_aix_soname])
+  AC_MSG_RESULT([$with_aix_soname])
+  if test aix != "$with_aix_soname"; then
+    # For the AIX way of multilib, we name the shared archive member
+    # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
+    # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
+    # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
+    # the AIX toolchain works better with OBJECT_MODE set (default 32).
+    if test 64 = "${OBJECT_MODE-32}"; then
+      shared_archive_member_spec=shr_64
+    else
+      shared_archive_member_spec=shr
+    fi
+  fi
+  ;;
+*)
+  with_aix_soname=aix
+  ;;
+esac
+
+_LT_DECL([], [shared_archive_member_spec], [0],
+    [Shared archive member basename, for filename based shared library versioning on AIX])dnl
+])# _LT_WITH_AIX_SONAME
+
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
+LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
+
+
 # _LT_WITH_PIC([MODE])
 # --------------------
-# implement the --with-pic flag, and support the `pic-only' and `no-pic'
+# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
 # LT_INIT options.
-# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
+# MODE is either 'yes' or 'no'.  If omitted, it defaults to 'both'.
 m4_define([_LT_WITH_PIC],
 [AC_ARG_WITH([pic],
     [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
@@ -334,19 +389,17 @@ m4_define([_LT_WITH_PIC],
     *)
       pic_mode=default
       # Look at the argument we got.  We use all the common list separators.
-      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
+      lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
       for lt_pkg in $withval; do
-	IFS="$lt_save_ifs"
+	IFS=$lt_save_ifs
 	if test "X$lt_pkg" = "X$lt_p"; then
 	  pic_mode=yes
 	fi
       done
-      IFS="$lt_save_ifs"
+      IFS=$lt_save_ifs
       ;;
     esac],
-    [pic_mode=default])
-
-test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
+    [pic_mode=m4_default([$1], [default])])
 
 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
 ])# _LT_WITH_PIC
@@ -359,7 +412,7 @@ AU_DEFUN([AC_LIBTOOL_PICMODE],
 [_LT_SET_OPTION([LT_INIT], [pic-only])
 AC_DIAGNOSE([obsolete],
 [$0: Remove this warning and the call to _LT_SET_OPTION when you
-put the `pic-only' option into LT_INIT's first parameter.])
+put the 'pic-only' option into LT_INIT's first parameter.])
 ])
 
 dnl aclocal-1.4 backwards compatibility:
diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4
index 9000a05..48bc934 100644
--- a/m4/ltsugar.m4
+++ b/m4/ltsugar.m4
@@ -1,6 +1,7 @@
 # ltsugar.m4 -- libtool m4 base layer.                         -*-Autoconf-*-
 #
-# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
+# Foundation, Inc.
 # Written by Gary V. Vaughan, 2004
 #
 # This file is free software; the Free Software Foundation gives
@@ -33,7 +34,7 @@ m4_define([_lt_join],
 # ------------
 # Manipulate m4 lists.
 # These macros are necessary as long as will still need to support
-# Autoconf-2.59 which quotes differently.
+# Autoconf-2.59, which quotes differently.
 m4_define([lt_car], [[$1]])
 m4_define([lt_cdr],
 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
@@ -44,7 +45,7 @@ m4_define([lt_unquote], $1)
 
 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
 # ------------------------------------------
-# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
+# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
 # Note that neither SEPARATOR nor STRING are expanded; they are appended
 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
diff --git a/m4/ltversion.m4 b/m4/ltversion.m4
index 07a8602..fa04b52 100644
--- a/m4/ltversion.m4
+++ b/m4/ltversion.m4
@@ -1,6 +1,6 @@
 # ltversion.m4 -- version numbers			-*- Autoconf -*-
 #
-#   Copyright (C) 2004 Free Software Foundation, Inc.
+#   Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
 #   Written by Scott James Remnant, 2004
 #
 # This file is free software; the Free Software Foundation gives
@@ -9,15 +9,15 @@
 
 # @configure_input@
 
-# serial 3337 ltversion.m4
+# serial 4179 ltversion.m4
 # This file is part of GNU Libtool
 
-m4_define([LT_PACKAGE_VERSION], [2.4.2])
-m4_define([LT_PACKAGE_REVISION], [1.3337])
+m4_define([LT_PACKAGE_VERSION], [2.4.6])
+m4_define([LT_PACKAGE_REVISION], [2.4.6])
 
 AC_DEFUN([LTVERSION_VERSION],
-[macro_version='2.4.2'
-macro_revision='1.3337'
+[macro_version='2.4.6'
+macro_revision='2.4.6'
 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
 _LT_DECL(, macro_revision, 0)
 ])
diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4
index c573da9..c6b26f8 100644
--- a/m4/lt~obsolete.m4
+++ b/m4/lt~obsolete.m4
@@ -1,6 +1,7 @@
 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions.    -*-Autoconf-*-
 #
-#   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
+#   Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
+#   Foundation, Inc.
 #   Written by Scott James Remnant, 2004.
 #
 # This file is free software; the Free Software Foundation gives
@@ -11,7 +12,7 @@
 
 # These exist entirely to fool aclocal when bootstrapping libtool.
 #
-# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
+# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
 # which have later been changed to m4_define as they aren't part of the
 # exported API, or moved to Autoconf or Automake where they belong.
 #
@@ -25,7 +26,7 @@
 # included after everything else.  This provides aclocal with the
 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
 # because those macros already exist, or will be overwritten later.
-# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. 
+# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
 #
 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
 # Yes, that means every name once taken will need to remain here until
diff --git a/man/Makefile.in b/man/Makefile.in
index 6cf1008..6786301 100644
--- a/man/Makefile.in
+++ b/man/Makefile.in
@@ -215,6 +215,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -262,6 +263,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -278,6 +280,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -367,6 +370,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
diff --git a/man/xmlsec1-config.1 b/man/xmlsec1-config.1
index a8060a4..e91c2a2 100644
--- a/man/xmlsec1-config.1
+++ b/man/xmlsec1-config.1
@@ -1,5 +1,5 @@
-.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.2.
-.TH XMLSEC1-CONFIG "1" "October 2016" "xmlsec1-config 1.2.23" "User Commands"
+.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.3.
+.TH XMLSEC1-CONFIG "1" "April 2017" "xmlsec1-config 1.2.24" "User Commands"
 .SH NAME
 xmlsec1-config \- detail installed version of xmlsec library
 .SH SYNOPSIS
diff --git a/man/xmlsec1.1 b/man/xmlsec1.1
index 8319285..2dd7d6e 100644
--- a/man/xmlsec1.1
+++ b/man/xmlsec1.1
@@ -1,5 +1,5 @@
-.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.2.
-.TH XMLSEC1 "1" "October 2016" "xmlsec1 1.2.23 (openssl)" "User Commands"
+.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.3.
+.TH XMLSEC1 "1" "April 2017" "xmlsec1 1.2.24 (openssl)" "User Commands"
 .SH NAME
 xmlsec1 \- sign, verify, encrypt and decrypt XML documents
 .SH SYNOPSIS
@@ -234,6 +234,10 @@ maximum certificates chain depth
 .IP
 skip strict checking of X509 data
 .HP
+\fB\-\-insecure\fR
+.IP
+do not verify certificates
+.HP
 \fB\-\-crypto\fR <name>
 .IP
 the name of the crypto engine to use from the following
@@ -259,6 +263,12 @@ print errors stack at the end
 \fB\-\-help\fR
 .IP
 print help information about the command
+.HP
+\fB\-\-xxe\fR
+.IP
+enable External Entity resolution.
+WARNING: this may allow the reading of arbitrary files and URLs,
+controlled by the input XML document.  Use with caution!
 .SH AUTHOR
 Written by Aleksey Sanin <aleksey at aleksey.com>.
 .SH "REPORTING BUGS"
diff --git a/scripts/build_release.sh b/scripts/build_release.sh
index 8989eac..cfda1d7 100755
--- a/scripts/build_release.sh
+++ b/scripts/build_release.sh
@@ -33,6 +33,6 @@ cd "$cur_pwd"
 
 echo "DO NOT FORGET TO TAG THE RELEASE"
 echo "git tag -a xmlsec-1_2_N -m 'XMLSec release 1.2.N'"
-echo "git push origin xmlsec-1_2_N"
+echo "git push --follow-tags"
 
 
diff --git a/scripts/change-release.sh b/scripts/change-release.sh
deleted file mode 100755
index 23c6baf..0000000
--- a/scripts/change-release.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/sh
-
-
-old_release=$1
-new_release=$2
-
-sh_files=`find . -name "*.sh" -print`
-am_files=`find . -name "*.am" -print`
-in_files=`find . -name "*.in" -print`
-html_files=`find . -name "*.html" -print`
-sgml_files=`find . -name "*.sgml" -print`
-cvsignore_files=`find . -name ".cvsignore" -print`
-
-files="$sh_files $am_files $in_files $html_files $sgml_files $cvsignore_files"
-for i in  $files; do
-    echo Processing $i ...
-    sed "s/$old_release/$new_release/g" $i > $i.tmp
-    if [ $? != 0 ]; then
-	echo "Failed to process file $i"
-	exit 1
-    fi
-    
-    mode=`stat -c "%a" $i`
-    chmod $mode $i.tmp
-    if [ $? != 0 ]; then
-	echo "Failed to retore permissions for $i"
-	exit 1
-    fi
-done
-
-for i in  $files; do
-    echo Moving $i ...
-    mv $i.tmp $i
-done
diff --git a/scripts/push_release.sh b/scripts/push_release.sh
deleted file mode 100755
index 162c31a..0000000
--- a/scripts/push_release.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/sh 
-
-# input
-version=$1
-
-# config
-svn_module=xmlsec
-svn_uri=svn+ssh://aleksey@svn.gnome.org/svn/$svn_module/trunk
-svn_branch_uri=svn+ssh://aleksey@svn.gnome.org/svn/$svn_module/branches/$version
-
-rpm_name=xmlsec1
-rpm_root=/usr/src/redhat
-remote_root=aleksey at ftp.aleksey.com:/var/ftp/pub/xmlsec/releases
-build_target=i386
-
-echo "Uploading to aleksey.com"
-scp $rpm_root/SOURCES/$rpm_name-$version.tar.gz \
-    $rpm_root/SRPMS/$rpm_name-$version-*.src.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-$version-*.$build_target.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-devel-$version-*.$build_target.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-openssl-$version-*.$build_target.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-openssl-devel-$version-*.$build_target.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-nss-$version-*.$build_target.rpm \
-    $rpm_root/RPMS/$build_target/$rpm_name-nss-devel-$version-*.$build_target.rpm \
-    $remote_root
-
-
-echo "Creating SVN branch $version"
-svn copy $svn_uri $svn_branch_uri -m"creating release $version branch"
-
diff --git a/scripts/test_release.sh b/scripts/test_release.sh
deleted file mode 100755
index 705f796..0000000
--- a/scripts/test_release.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh 
-
-module=$1
-version=$2
-build_root=/tmp
-rpm_root=/usr/src/redhat
-
-./autogen.sh --prefix=/usr --sysconfdir=/etc
-make dist
-mv $module-$version.tar.gz $rpm_root/SOURCES
-rpm -ba $module.spec
-
diff --git a/src/Makefile.am b/src/Makefile.am
index 44cfabe..b0c2444 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -14,6 +14,7 @@ AM_CFLAGS = \
 	$(NULL)
 
 EXTRA_DIST = \
+	errors_helpers.h \
 	globals.h \
 	kw_aes_des.h \
 	skeleton \
diff --git a/src/Makefile.in b/src/Makefile.in
index 1bcfca0..d87bd53 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -315,6 +315,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -362,6 +363,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -378,6 +380,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -467,6 +470,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -489,6 +493,7 @@ AM_CFLAGS = \
 	$(NULL)
 
 EXTRA_DIST = \
+	errors_helpers.h \
 	globals.h \
 	kw_aes_des.h \
 	skeleton \
diff --git a/src/app.c b/src/app.c
index b45bc8b..d724d4a 100644
--- a/src/app.c
+++ b/src/app.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  *
@@ -45,11 +45,7 @@
 int
 xmlSecCryptoInit(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoInit == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoInit",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoInit");
         return(-1);
     }
 
@@ -66,11 +62,7 @@ xmlSecCryptoInit(void) {
 int
 xmlSecCryptoShutdown(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoShutdown == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoShutdown",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoShutdown");
         return(-1);
     }
 
@@ -88,11 +80,7 @@ xmlSecCryptoShutdown(void) {
 int
 xmlSecCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoKeysMngrInit == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoKeysMngrInit",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoKeysMngrInit");
         return(-1);
     }
 
@@ -116,11 +104,7 @@ xmlSecCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 xmlSecKeyDataId
 xmlSecKeyDataAesGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataAesGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataAesId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataAesGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -139,11 +123,7 @@ xmlSecKeyDataAesGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataDesGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataDesGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataDesId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataDesId");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -162,11 +142,7 @@ xmlSecKeyDataDesGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataDsaGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataDsaGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataDsaId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataDsaGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -185,11 +161,7 @@ xmlSecKeyDataDsaGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataEcdsaGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataEcdsaGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataEcdsaId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataEcdsaGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -208,11 +180,7 @@ xmlSecKeyDataEcdsaGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataGost2001GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataGost2001GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataGost2001Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataGost2001GetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -231,11 +199,7 @@ xmlSecKeyDataGost2001GetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataGostR3410_2012_256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataGostR3410_2012_256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataGostR3410_2012_256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataGostR3410_2012_256GetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -254,11 +218,7 @@ xmlSecKeyDataGostR3410_2012_256GetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataGostR3410_2012_512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataGostR3410_2012_512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataGostR3410_2012_512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataGostR3410_2012_512GetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -277,11 +237,7 @@ xmlSecKeyDataGostR3410_2012_512GetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataHmacGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataHmacGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataHmacId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataHmacGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -300,11 +256,7 @@ xmlSecKeyDataHmacGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataRsaGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataRsaGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataRsaId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataRsaGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -323,11 +275,7 @@ xmlSecKeyDataRsaGetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataX509GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataX509GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataX509Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataX509GetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -346,11 +294,7 @@ xmlSecKeyDataX509GetKlass(void) {
 xmlSecKeyDataId
 xmlSecKeyDataRawX509CertGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->keyDataRawX509CertGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "keyDataRawX509CertId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("keyDataRawX509CertGetKlass");
         return(xmlSecKeyDataIdUnknown);
     }
 
@@ -374,11 +318,7 @@ xmlSecKeyDataRawX509CertGetKlass(void) {
 xmlSecKeyDataStoreId
 xmlSecX509StoreGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->x509StoreGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "x509StoreId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("x509StoreGetKlass");
         return(xmlSecKeyStoreIdUnknown);
     }
 
@@ -402,11 +342,7 @@ xmlSecX509StoreGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformAes128CbcGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformAes128CbcGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformAes128CbcId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformAes128CbcGetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -425,11 +361,7 @@ xmlSecTransformAes128CbcGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformAes192CbcGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformAes192CbcGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformAes192CbcId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformAes192CbcGetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -448,11 +380,7 @@ xmlSecTransformAes192CbcGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformAes256CbcGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformAes256CbcGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformAes256CbcId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformAes256CbcGetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -471,11 +399,7 @@ xmlSecTransformAes256CbcGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformKWAes128GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformKWAes128GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformKWAes128Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformKWAes128GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -494,11 +418,7 @@ xmlSecTransformKWAes128GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformKWAes192GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformKWAes192GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformKWAes192Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformKWAes192GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -517,11 +437,7 @@ xmlSecTransformKWAes192GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformKWAes256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformKWAes256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformKWAes256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformKWAes256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -540,11 +456,7 @@ xmlSecTransformKWAes256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformDes3CbcGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformDes3CbcGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformDes3CbcId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformDes3CbcGetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -563,11 +475,7 @@ xmlSecTransformDes3CbcGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformKWDes3GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformKWDes3GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformKWDes3Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformKWDes3GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -586,11 +494,7 @@ xmlSecTransformKWDes3GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformDsaSha1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformDsaSha1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformDsaSha1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformDsaSha1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -609,11 +513,7 @@ xmlSecTransformDsaSha1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformDsaSha256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformDsaSha256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformDsaSha256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformDsaSha256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -632,11 +532,7 @@ xmlSecTransformDsaSha256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformEcdsaSha1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformEcdsaSha1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformEcdsaSha1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformEcdsaSha1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -655,11 +551,7 @@ xmlSecTransformEcdsaSha1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformEcdsaSha224GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformEcdsaSha224GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformEcdsaSha224Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformEcdsaSha224GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -678,11 +570,7 @@ xmlSecTransformEcdsaSha224GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformEcdsaSha256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformEcdsaSha256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformEcdsaSha256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformEcdsaSha256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -701,11 +589,7 @@ xmlSecTransformEcdsaSha256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformEcdsaSha384GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformEcdsaSha384GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformEcdsaSha384Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformEcdsaSha384GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -724,11 +608,7 @@ xmlSecTransformEcdsaSha384GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformEcdsaSha512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformEcdsaSha512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformEcdsaSha512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformEcdsaSha512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -747,11 +627,7 @@ xmlSecTransformEcdsaSha512GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGost2001GostR3411_94GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGost2001GostR3411_94GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGost2001GostR3411_94Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGost2001GostR3411_94GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -770,11 +646,7 @@ xmlSecTransformGost2001GostR3411_94GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGostR3410_2012GostR3411_2012_256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGostR3410_2012GostR3411_2012_256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGostR3410_2012GostR3411_2012_256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -793,11 +665,7 @@ xmlSecTransformGostR3410_2012GostR3411_2012_256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGostR3410_2012GostR3411_2012_512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGostR3410_2012GostR3411_2012_512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGostR3410_2012GostR3411_2012_512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -816,11 +684,7 @@ xmlSecTransformGostR3410_2012GostR3411_2012_512GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacMd5GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacMd5GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacMd5Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacMd5GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -839,11 +703,7 @@ xmlSecTransformHmacMd5GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacRipemd160GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacRipemd160GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacRipemd160Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacRipemd160GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -862,11 +722,7 @@ xmlSecTransformHmacRipemd160GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacSha1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacSha1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacSha1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacSha1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -885,11 +741,7 @@ xmlSecTransformHmacSha1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacSha224GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacSha224GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacSha224Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacSha224GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -908,11 +760,7 @@ xmlSecTransformHmacSha224GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacSha256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacSha256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacSha256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacSha256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -931,11 +779,7 @@ xmlSecTransformHmacSha256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacSha384GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacSha384GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacSha384Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacSha384GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -954,11 +798,7 @@ xmlSecTransformHmacSha384GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformHmacSha512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformHmacSha512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformHmacSha512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformHmacSha512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -977,11 +817,7 @@ xmlSecTransformHmacSha512GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformMd5GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformMd5GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformMd5Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformMd5GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1000,11 +836,7 @@ xmlSecTransformMd5GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRipemd160GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRipemd160GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRipemd160Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRipemd160GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1023,11 +855,7 @@ xmlSecTransformRipemd160GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaMd5GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaMd5GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaMd5Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaMd5GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1046,11 +874,7 @@ xmlSecTransformRsaMd5GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaRipemd160GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaRipemd160GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaRipemd160Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaRipemd160GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1069,11 +893,7 @@ xmlSecTransformRsaRipemd160GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaSha1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaSha1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaSha1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaSha1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1092,11 +912,7 @@ xmlSecTransformRsaSha1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaSha224GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaSha224GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaSha224Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaSha224GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1115,11 +931,7 @@ xmlSecTransformRsaSha224GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaSha256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaSha256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaSha256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaSha256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1138,11 +950,7 @@ xmlSecTransformRsaSha256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaSha384GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaSha384GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaSha384Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaSha384GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1161,11 +969,7 @@ xmlSecTransformRsaSha384GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaSha512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaSha512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaSha512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaSha512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1184,11 +988,7 @@ xmlSecTransformRsaSha512GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaPkcs1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaPkcs1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaPkcs1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaPkcs1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1207,11 +1007,7 @@ xmlSecTransformRsaPkcs1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformRsaOaepGetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformRsaOaepGetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformRsaOaepId",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformRsaOaepGetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1230,11 +1026,7 @@ xmlSecTransformRsaOaepGetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGostR3411_94GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGostR3411_94GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGostR3411_94Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGostR3411_94GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1254,11 +1046,7 @@ xmlSecTransformGostR3411_94GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGostR3411_2012_256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGostR3411_2012_256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGostR3411_2012_256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGostR3411_2012_256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1277,11 +1065,7 @@ xmlSecTransformGostR3411_2012_256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformGostR3411_2012_512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformGostR3411_2012_512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformGostR3411_2012_512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformGostR3411_2012_512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1299,11 +1083,7 @@ xmlSecTransformGostR3411_2012_512GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformSha1GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformSha1GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformSha1Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformSha1GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1322,11 +1102,7 @@ xmlSecTransformSha1GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformSha224GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformSha224GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformSha224Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformSha224GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1345,11 +1121,7 @@ xmlSecTransformSha224GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformSha256GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformSha256GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformSha256Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformSha256GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1368,11 +1140,7 @@ xmlSecTransformSha256GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformSha384GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformSha384GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformSha384Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformSha384GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1391,11 +1159,7 @@ xmlSecTransformSha384GetKlass(void) {
 xmlSecTransformId
 xmlSecTransformSha512GetKlass(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->transformSha512GetKlass == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "transformSha512Id",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("transformSha512GetKlass");
         return(xmlSecTransformIdUnknown);
     }
 
@@ -1420,11 +1184,7 @@ xmlSecTransformSha512GetKlass(void) {
 int
 xmlSecCryptoAppInit(const char* config) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppInit == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppInit",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppInit");
         return(-1);
     }
 
@@ -1444,11 +1204,7 @@ xmlSecCryptoAppInit(const char* config) {
 int
 xmlSecCryptoAppShutdown(void) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppShutdown == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppShutdown",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppShutdown");
         return(-1);
     }
 
@@ -1467,11 +1223,7 @@ xmlSecCryptoAppShutdown(void) {
 int
 xmlSecCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppDefaultKeysMngrInit == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppDefaultKeysMngrInit",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppDefaultKeysMngrInit");
         return(-1);
     }
 
@@ -1491,11 +1243,7 @@ xmlSecCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 int
 xmlSecCryptoAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppDefaultKeysMngrAdoptKey == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppDefaultKeysMngrAdoptKey",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppDefaultKeysMngrAdoptKey");
         return(-1);
     }
 
@@ -1515,11 +1263,7 @@ xmlSecCryptoAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key)
 int
 xmlSecCryptoAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppDefaultKeysMngrLoad == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppDefaultKeysMngrLoad",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppDefaultKeysMngrLoad");
         return(-1);
     }
 
@@ -1540,11 +1284,7 @@ int
 xmlSecCryptoAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filename,
                                    xmlSecKeyDataType type) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppDefaultKeysMngrSave == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppDefaultKeysMngrSave",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppDefaultKeysMngrSave");
         return(-1);
     }
 
@@ -1568,11 +1308,7 @@ int
 xmlSecCryptoAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
                                 xmlSecKeyDataFormat format, xmlSecKeyDataType type) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeysMngrCertLoad == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeysMngrCertLoad",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeysMngrCertLoad");
         return(-1);
     }
 
@@ -1597,11 +1333,7 @@ xmlSecCryptoAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte*
                                     xmlSecSize dataSize, xmlSecKeyDataFormat format,
                                     xmlSecKeyDataType type) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeysMngrCertLoadMemory == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeysMngrCertLoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeysMngrCertLoadMemory");
         return(-1);
     }
 
@@ -1624,11 +1356,7 @@ xmlSecKeyPtr
 xmlSecCryptoAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
                        const char *pwd, void* pwdCallback, void* pwdCallbackCtx) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeyLoad == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeyLoad",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeyLoad");
         return(NULL);
     }
 
@@ -1652,11 +1380,7 @@ xmlSecKeyPtr
 xmlSecCryptoAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize, xmlSecKeyDataFormat format,
                        const char *pwd, void* pwdCallback, void* pwdCallbackCtx) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeyLoadMemory == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeyLoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeyLoadMemory");
         return(NULL);
     }
 
@@ -1680,11 +1404,7 @@ xmlSecKeyPtr
 xmlSecCryptoAppPkcs12Load(const char* filename, const char* pwd, void* pwdCallback,
                           void* pwdCallbackCtx) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppPkcs12Load == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppPkcs12Load",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppPkcs12Load");
         return(NULL);
     }
 
@@ -1710,11 +1430,7 @@ xmlSecCryptoAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
                            const char *pwd, void* pwdCallback,
                            void* pwdCallbackCtx) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppPkcs12LoadMemory == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppPkcs12LoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppPkcs12LoadMemory");
         return(NULL);
     }
 
@@ -1734,11 +1450,7 @@ xmlSecCryptoAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 int
 xmlSecCryptoAppKeyCertLoad(xmlSecKeyPtr key, const char* filename, xmlSecKeyDataFormat format) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeyCertLoad == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeyCertLoad",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeyCertLoad");
         return(-1);
     }
 
@@ -1760,11 +1472,7 @@ int
 xmlSecCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xmlSecSize dataSize,
                                 xmlSecKeyDataFormat format) {
     if((xmlSecCryptoDLGetFunctions() == NULL) || (xmlSecCryptoDLGetFunctions()->cryptoAppKeyCertLoadMemory == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cryptoAppKeyCertLoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppKeyCertLoadMemory");
         return(-1);
     }
 
@@ -1781,11 +1489,7 @@ xmlSecCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xmlSe
 void*
 xmlSecCryptoAppGetDefaultPwdCallback(void) {
     if(xmlSecCryptoDLGetFunctions() == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("cryptoAppDefaultPwdCallback");
         return(NULL);
     }
 
diff --git a/src/base64.c b/src/base64.c
index a78f816..b297713 100644
--- a/src/base64.c
+++ b/src/base64.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Base64 encode/decode transform and utility functions.
@@ -156,22 +156,13 @@ xmlSecBase64CtxCreate(int encode, int columns) {
      */
     ctx = (xmlSecBase64CtxPtr) xmlMalloc(sizeof(xmlSecBase64Ctx));
     if (ctx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecBase64Ctx)=%d",
-                    (int)sizeof(xmlSecBase64Ctx));
+        xmlSecMallocError(sizeof(xmlSecBase64Ctx), NULL);
         return(NULL);
     }
 
     ret = xmlSecBase64CtxInitialize(ctx, encode, columns);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxInitialize", NULL);
         xmlSecBase64CtxDestroy(ctx);
         return(NULL);
     }
@@ -254,22 +245,14 @@ xmlSecBase64CtxUpdate(xmlSecBase64CtxPtr ctx,
         ret = xmlSecBase64CtxEncode(ctx, in, inSize, &inResSize,
                                     out, outSize, &outResSize);
         if((ret < 0) || (inResSize != inSize)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64CtxEncode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBase64CtxEncode", NULL);
             return(-1);
         }
     } else {
         ret = xmlSecBase64CtxDecode(ctx, in, inSize, &inResSize,
                                     out, outSize, &outResSize);
         if((ret < 0) || (inResSize != inSize)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64CtxDecode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBase64CtxDecode", NULL);
             return(-1);
         }
     }
@@ -302,20 +285,12 @@ xmlSecBase64CtxFinal(xmlSecBase64CtxPtr ctx,
     if(ctx->encode != 0) {
         ret = xmlSecBase64CtxEncodeFinal(ctx, out, outSize, &outResSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64CtxEncodeFinal",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBase64CtxEncodeFinal", NULL, "outSize=%d", outSize);
             return(-1);
         }
     } else {
         if(!xmlSecBase64CtxDecodeIsFinished(ctx)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64CtxIsFinished",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBase64CtxIsFinished", NULL);
             return(-1);
         }
     }
@@ -363,11 +338,7 @@ xmlSecBase64CtxEncodeByte(xmlSecBase64CtxPtr ctx, xmlSecByte inByte, xmlSecByte*
         return(xmlSecBase64StatusConsumeAndNext);
     }
 
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                NULL,
-                XMLSEC_ERRORS_R_INVALID_DATA,
-                "ctx->inPos=%d", ctx->inPos);
+    xmlSecInvalidIntegerDataError("ctx->inPos", ctx->inPos, "0,1,2,3", NULL);
     return(xmlSecBase64StatusFailed);
 }
 
@@ -397,11 +368,7 @@ xmlSecBase64CtxEncodeByteFinal(xmlSecBase64CtxPtr ctx, xmlSecByte* outByte) {
         return(xmlSecBase64StatusConsumeAndRepeat);
     }
 
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                NULL,
-                XMLSEC_ERRORS_R_INVALID_DATA,
-                "ctx->inPos=%d", ctx->inPos);
+    xmlSecInvalidIntegerDataError("ctx->inPos", ctx->inPos, "0,1,2,3", NULL);
     return(xmlSecBase64StatusFailed);
 }
 
@@ -414,35 +381,20 @@ xmlSecBase64CtxDecodeByte(xmlSecBase64CtxPtr ctx, xmlSecByte inByte, xmlSecByte*
         return(xmlSecBase64StatusDone);
     } if(inByte == '=') {
         ctx->finished = 1;
-        if(ctx->inPos < 2) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "ctx->inPos=%d", ctx->inPos);
-            return(xmlSecBase64StatusFailed);
-        } else if(ctx->inPos == 2) {
+        if(ctx->inPos == 2) {
             ++ctx->inPos;
             return(xmlSecBase64StatusNext);
         } else if(ctx->inPos == 3) {
             ctx->inPos = 0;
             return(xmlSecBase64StatusNext);
         } else {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "ctx->inPos=%d", ctx->inPos);
+            xmlSecInvalidIntegerDataError("ctx->inPos", ctx->inPos, "2,3", NULL);
             return(xmlSecBase64StatusFailed);
         }
     } else if(xmlSecIsBase64Space(inByte)) {
         return(xmlSecBase64StatusNext);
     } else if(!xmlSecIsBase64Char(inByte) || (ctx->finished != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "inByte=0x%02x", inByte);
+        xmlSecInvalidIntegerDataError("inByte", inByte, "base64 character", NULL);
         return(xmlSecBase64StatusFailed);
     }
 
@@ -464,27 +416,23 @@ xmlSecBase64CtxDecodeByte(xmlSecBase64CtxPtr ctx, xmlSecByte inByte, xmlSecByte*
         ++ctx->inPos;
         return(xmlSecBase64StatusNext);
     } else if(ctx->inPos == 1) {
-        (*outByte) = xmlSecBase64Decode1(ctx->inByte, inByte);
+        (*outByte) = (xmlSecByte)xmlSecBase64Decode1(ctx->inByte, inByte);
         ctx->inByte = inByte;
         ++ctx->inPos;
         return(xmlSecBase64StatusConsumeAndNext);
     } else if(ctx->inPos == 2) {
-        (*outByte) = xmlSecBase64Decode2(ctx->inByte, inByte);
+        (*outByte) = (xmlSecByte)xmlSecBase64Decode2(ctx->inByte, inByte);
         ctx->inByte = inByte;
         ++ctx->inPos;
         return(xmlSecBase64StatusConsumeAndNext);
     } else if(ctx->inPos == 3) {
-        (*outByte) = xmlSecBase64Decode3(ctx->inByte, inByte);
+        (*outByte) = (xmlSecByte)xmlSecBase64Decode3(ctx->inByte, inByte);
         ctx->inByte = 0;
         ctx->inPos = 0;
         return(xmlSecBase64StatusConsumeAndNext);
     }
 
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                NULL,
-                XMLSEC_ERRORS_R_INVALID_DATA,
-                "ctx->inPos=%d", ctx->inPos);
+    xmlSecInvalidIntegerDataError("ctx->inPos", ctx->inPos, "0,1,2,3", NULL);
     return(xmlSecBase64StatusFailed);
 }
 
@@ -516,11 +464,7 @@ xmlSecBase64CtxEncode(xmlSecBase64CtxPtr ctx,
             case xmlSecBase64StatusNext:
             case xmlSecBase64StatusDone:
             case xmlSecBase64StatusFailed:
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecBase64CtxEncodeByte",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "status=%d", status);
+                xmlSecInternalError2("xmlSecBase64CtxEncodeByte", NULL, "status=%d", status);
                 return(-1);
         }
     }
@@ -553,21 +497,13 @@ xmlSecBase64CtxEncodeFinal(xmlSecBase64CtxPtr ctx,
                 break;
             case xmlSecBase64StatusNext:
             case xmlSecBase64StatusFailed:
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecBase64CtxEncodeByteFinal",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "status=%d", status);
+                xmlSecInternalError2("xmlSecBase64CtxEncodeByteFinal", NULL, "status=%d", status);
                 return(-1);
         }
     }
 
     if(status != xmlSecBase64StatusDone) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "outBufSize=%d", outBufSize);
+        xmlSecInvalidSizeOtherError("invalid base64 buffer size", NULL);
         return(-1);
     }
     if(outPos < outBufSize) {
@@ -609,11 +545,7 @@ xmlSecBase64CtxDecode(xmlSecBase64CtxPtr ctx,
             case xmlSecBase64StatusDone:
                 break;
             case xmlSecBase64StatusFailed:
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecBase64CtxDecodeByte",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "status=%d", status);
+                xmlSecInternalError2("xmlSecBase64CtxDecodeByte", NULL, "status=%d", status);
                 return(-1);
         }
     }
@@ -662,11 +594,7 @@ xmlSecBase64Encode(const xmlSecByte *buf, xmlSecSize len, int columns) {
 
     ret = xmlSecBase64CtxInitialize(&ctx, 1, columns);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxInitialize", NULL);
         return(NULL);
     }
 
@@ -677,22 +605,16 @@ xmlSecBase64Encode(const xmlSecByte *buf, xmlSecSize len, int columns) {
     }
     ptr = (xmlChar*) xmlMalloc(size);
     if(ptr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", size);
+        xmlSecMallocError(size, NULL);
         xmlSecBase64CtxFinalize(&ctx);
         return(NULL);
     }
 
     ret = xmlSecBase64CtxUpdate(&ctx, buf, len, (xmlSecByte*)ptr, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxUpdate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "len=%d", len);
+        xmlSecInternalError3("xmlSecBase64CtxUpdate", NULL,
+                             "len=%lu;size=%lu",
+                             (unsigned long)len, (unsigned long)size);
         xmlFree(ptr);
         xmlSecBase64CtxFinalize(&ctx);
         return(NULL);
@@ -701,11 +623,7 @@ xmlSecBase64Encode(const xmlSecByte *buf, xmlSecSize len, int columns) {
 
     ret = xmlSecBase64CtxFinal(&ctx, ((xmlSecByte*)ptr) + size_update, size - size_update);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxFinal",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxFinal", NULL);
         xmlFree(ptr);
         xmlSecBase64CtxFinalize(&ctx);
         return(NULL);
@@ -741,21 +659,13 @@ xmlSecBase64Decode(const xmlChar* str, xmlSecByte *buf, xmlSecSize len) {
 
     ret = xmlSecBase64CtxInitialize(&ctx, 0, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBase64CtxUpdate(&ctx, (const xmlSecByte*)str, xmlStrlen(str), buf, len);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxUpdate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxUpdate", NULL);
         xmlSecBase64CtxFinalize(&ctx);
         return(-1);
     }
@@ -763,11 +673,7 @@ xmlSecBase64Decode(const xmlChar* str, xmlSecByte *buf, xmlSecSize len) {
     size_update = ret;
     ret = xmlSecBase64CtxFinal(&ctx, buf + size_update, len - size_update);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64CtxFinal",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxFinal", NULL);
         xmlSecBase64CtxFinalize(&ctx);
         return(-1);
     }
@@ -873,11 +779,8 @@ xmlSecBase64Initialize(xmlSecTransformPtr transform) {
     transform->operation = xmlSecTransformOperationDecode;
     ret = xmlSecBase64CtxInitialize(ctx, 0, xmlSecBase64GetDefaultLineSize());
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBase64CtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64CtxInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -933,11 +836,9 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
                 }
                 ret = xmlSecBufferSetMaxSize(out, outSize + outLen);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferSetMaxSize",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", outSize + outLen);
+                    xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", outSize + outLen);
                     return(-1);
                 }
 
@@ -946,11 +847,8 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
                                             xmlSecBufferGetData(out) + outSize,
                                             outLen);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBase64CtxUpdate",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecBase64CtxUpdate",
+                                        xmlSecTransformGetName(transform));
                     return(-1);
                 }
                 outLen = ret;
@@ -958,22 +856,18 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
                 /* set correct size */
                 ret = xmlSecBufferSetSize(out, outSize + outLen);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferSetSize",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", outSize + outLen);
+                    xmlSecInternalError2("xmlSecBufferSetSize",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", outSize + outLen);
                     return(-1);
                 }
 
                 /* remove chunk from input */
                 ret = xmlSecBufferRemoveHead(in, inSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferRemoveHead",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", inSize);
+                    xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", inSize);
                     return(-1);
                 }
             }
@@ -983,22 +877,17 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
 
                 ret = xmlSecBufferSetMaxSize(out, outSize + 16);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferSetMaxSize",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", outSize + 16);
+                    xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", outSize + 16);
                     return(-1);
                 }
 
                 /* add from ctx buffer */
                 ret = xmlSecBase64CtxFinal(ctx, xmlSecBufferGetData(out) + outSize, 16);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBase64CtxFinal",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecBase64CtxFinal",
+                                        xmlSecTransformGetName(transform));
                     return(-1);
                 }
                 outLen = ret;
@@ -1006,11 +895,9 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
                 /* set correct size */
                 ret = xmlSecBufferSetSize(out, outSize + outLen);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferSetSize",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", outSize + outLen);
+                    xmlSecInternalError2("xmlSecBufferSetSize",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", outSize + outLen);
                     return(-1);
                 }
                 transform->status = xmlSecTransformStatusFinished;
@@ -1021,11 +908,7 @@ xmlSecBase64Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPt
             xmlSecAssert2(xmlSecBufferGetSize(in) == 0, -1);
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_STATUS,
-                        "status=%d", transform->status);
+            xmlSecInvalidTransfromStatusError(transform);
             return(-1);
     }
     return(0);
diff --git a/src/bn.c b/src/bn.c
index b5333c9..2c56776 100644
--- a/src/bn.c
+++ b/src/bn.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Big Numbers.
@@ -197,23 +197,19 @@ xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar* str, xmlSecSize base) {
      */
     ret = xmlSecBufferSetMaxSize(bn, xmlSecBufferGetSize(bn) + len / 2 + 1 + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnRevLookupTable",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", len / 2 + 1);
+        xmlSecInternalError2("xmlSecBnRevLookupTable", NULL, "size=%d", len / 2 + 1);
         return (-1);
     }
 
     /* figure out if it is positive or negative number */
-    positive = 1;
+    positive = 1; /* no sign, positive by default */
     i = 0;
     while(i < len) {
         ch = str[i++];
 
         /* skip spaces */
         if(isspace(ch)) {
-                continue;
+            continue;
         }
 
         /* check if it is + or - */
@@ -225,64 +221,37 @@ xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar* str, xmlSecSize base) {
             break;
         }
 
-        /* otherwise, it must be start of the number */
-        nn = xmlSecBnLookupTable[ch];
-        if((nn >= 0) && ((xmlSecSize)nn < base)) {
-            xmlSecAssert2(i > 0, -1);
-
-            /* no sign, positive by default */
-            positive = 1;
-            --i; /* make sure that we will look at this character in next loop */
-            break;
-        } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "char=%c;base=%d",
-                        ch, base);
-                return (-1);
-        }
+        /* otherwise, it must be start of the number, make sure that we will look
+         * at this character in next loop */
+        xmlSecAssert2(i > 0, -1);
+        --i;
+        break;
     }
 
     /* now parse the number itself */
     while(i < len) {
         ch = str[i++];
         if(isspace(ch)) {
-                continue;
+            continue;
         }
 
-        xmlSecAssert2(ch <= sizeof(xmlSecBnLookupTable), -1);
         nn = xmlSecBnLookupTable[ch];
-        if((nn < 0) || ((xmlSecSize)nn > base)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "char=%c;base=%d",
-                        ch, base);
-                return (-1);
+        if((nn < 0) || ((xmlSecSize)nn >= base)) {
+            xmlSecInvalidIntegerDataError2("char", nn, "base", base, "0 <= char < base", NULL);
+            return (-1);
         }
 
         ret = xmlSecBnMul(bn, base);
         if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnMul",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "base=%d", base);
-                return (-1);
+            xmlSecInternalError2("xmlSecBnMul", NULL, "base=%d", base);
+            return (-1);
         }
 
         ret = xmlSecBnAdd(bn, nn);
         if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "base=%d", base);
-                return (-1);
-}
+            xmlSecInternalError2("xmlSecBnAdd", NULL, "base=%d", base);
+            return (-1);
+        }
     }
 
     /* check if we need to add 00 prefix, do this for empty bn too */
@@ -292,11 +261,7 @@ xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar* str, xmlSecSize base) {
         ch = 0;
         ret = xmlSecBufferPrepend(bn, &ch, 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecBufferPrepend",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                "base=%d", base);
+            xmlSecInternalError2("xmlSecBufferPrepend", NULL, "base=%d", base);
             return (-1);
         }
     }
@@ -311,11 +276,7 @@ xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar* str, xmlSecSize base) {
 
         ret = xmlSecBnAdd(bn, 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecBnAdd",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                "base=%d", base);
+            xmlSecInternalError2("xmlSecBnAdd", NULL, "base=%d", base);
             return (-1);
         }
     }
@@ -354,21 +315,13 @@ xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base) {
     size = xmlSecBufferGetSize(bn);
     ret = xmlSecBnInitialize(&bn2, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecBnCreate",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            "size=%d", size);
+        xmlSecInternalError2("xmlSecBnCreate", NULL, "size=%d", size);
         return (NULL);
     }
 
     ret = xmlSecBnSetData(&bn2, data, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecBnSetData",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            "size=%d", size);
+        xmlSecInternalError2("xmlSecBnSetData", NULL, "size=%d", size);
         xmlSecBnFinalize(&bn2);
         return (NULL);
     }
@@ -380,11 +333,7 @@ xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base) {
         /* subtract 1 and do 2's compliment */
         ret = xmlSecBnAdd(&bn2, -1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", size);
+            xmlSecInternalError2("xmlSecBnAdd", NULL, "size=%d", size);
             xmlSecBnFinalize(&bn2);
             return (NULL);
         }
@@ -405,11 +354,7 @@ xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base) {
     len = 8 * size + 1 + 1;
     res = (xmlChar*)xmlMalloc(len + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            NULL,
-                            XMLSEC_ERRORS_R_MALLOC_FAILED,
-                            "len=%d", len);
+        xmlSecMallocError(len + 1, NULL);
         xmlSecBnFinalize(&bn2);
         return (NULL);
     }
@@ -417,11 +362,7 @@ xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base) {
 
     for(i = 0; (xmlSecBufferGetSize(&bn2) > 0) && (i < len); i++) {
         if(xmlSecBnDiv(&bn2, base, &nn) < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnDiv",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "base=%d", base);
+            xmlSecInternalError2("xmlSecBnDiv", NULL, "base=%d", base);
             xmlFree(res);
             xmlSecBnFinalize(&bn2);
             return (NULL);
@@ -549,11 +490,7 @@ xmlSecBnMul(xmlSecBnPtr bn, int multiplier) {
 
         ret = xmlSecBufferPrepend(bn, &ch, 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferPrepend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=1");
+            xmlSecInternalError2("xmlSecBufferPrepend", NULL, "size=%d", 1);
             return (-1);
         }
     }
@@ -592,7 +529,7 @@ xmlSecBnDiv(xmlSecBnPtr bn, int divider, int* mod) {
         xmlSecAssert2(data != NULL, -1);
 
         over    = over * 256 + data[i];
-        data[i] = over / divider;
+        data[i] = (xmlSecByte)(over / divider);
         over    = over % divider;
     }
     (*mod) = over;
@@ -608,11 +545,7 @@ xmlSecBnDiv(xmlSecBnPtr bn, int divider, int* mod) {
     if(i > 0) {
         ret = xmlSecBufferRemoveHead(bn, i);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", i);
+            xmlSecInternalError2("xmlSecBufferRemoveHead", NULL, "size=%d", i);
             return (-1);
         }
     }
@@ -659,11 +592,7 @@ xmlSecBnAdd(xmlSecBnPtr bn, int delta) {
 
                 ret = xmlSecBufferPrepend(bn, &ch, 1);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecBufferPrepend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=1");
+                    xmlSecInternalError2("xmlSecBufferPrepend", NULL, "size=%d", 1);
                     return (-1);
                 }
         }
@@ -676,7 +605,7 @@ xmlSecBnAdd(xmlSecBnPtr bn, int delta) {
                 data[i] = 0;
                 over = (over - tmp) / 256;
             } else {
-                data[i] = tmp - over;
+                data[i] = (xmlSecByte)(tmp - over);
                 over = 0;
             }
         }
@@ -843,31 +772,19 @@ xmlSecBnGetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     case xmlSecBnBase64:
         ret = xmlSecBufferBase64NodeContentRead(bn, cur);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferBase64NodeContentRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferBase64NodeContentRead", NULL);
             return(-1);
         }
         break;
     case xmlSecBnHex:
         content = xmlNodeGetContent(cur);
         if(content == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNodeGetContent",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlNodeGetContent", NULL);
             return(-1);
         }
         ret = xmlSecBnFromHexString(bn, content);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnFromHexString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnFromHexString", NULL);
             xmlFree(content);
             return(-1);
         }
@@ -876,20 +793,12 @@ xmlSecBnGetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     case xmlSecBnDec:
         content = xmlNodeGetContent(cur);
         if(content == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNodeGetContent",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlNodeGetContent", NULL);
             return(-1);
         }
         ret = xmlSecBnFromDecString(bn, content);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnFromDecString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnFromDecString", NULL);
             xmlFree(content);
             return(-1);
         }
@@ -900,11 +809,7 @@ xmlSecBnGetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     if(reverse != 0) {
         ret = xmlSecBnReverse(bn);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnReverse",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnReverse", NULL);
             return(-1);
         }
     }
@@ -934,11 +839,7 @@ xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     if(reverse != 0) {
         ret = xmlSecBnReverse(bn);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnReverse",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnReverse", NULL);
             return(-1);
         }
     }
@@ -951,22 +852,14 @@ xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     case xmlSecBnBase64:
         ret = xmlSecBufferBase64NodeContentWrite(bn, cur, xmlSecBase64GetDefaultLineSize());
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferBase64NodeContentWrite",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferBase64NodeContentWrite", NULL);
             return(-1);
         }
         break;
     case xmlSecBnHex:
         content = xmlSecBnToHexString(bn);
         if(content == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnToHexString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnToHexString", NULL);
             xmlFree(content);
             return(-1);
         }
@@ -976,11 +869,7 @@ xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int
     case xmlSecBnDec:
         content = xmlSecBnToDecString(bn);
         if(content == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBnToDecString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnToDecString", NULL);
             xmlFree(content);
             return(-1);
         }
@@ -1023,32 +912,20 @@ xmlSecBnBlobSetNodeValue(const xmlSecByte* data, xmlSecSize dataSize,
 
     ret = xmlSecBnInitialize(&bn, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBnInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBnSetData(&bn, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBnSetData", NULL);
         xmlSecBnFinalize(&bn);
         return(-1);
     }
 
     ret = xmlSecBnSetNodeValue(&bn, cur, format, reverse, addLineBreaks);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBnSetNodeValue", NULL);
         xmlSecBnFinalize(&bn);
         return(-1);
     }
diff --git a/src/buffer.c b/src/buffer.c
index 55a95dd..473613a 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Memory buffer.
@@ -13,7 +13,6 @@
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
-#include <errno.h>
 
 #include <libxml/tree.h>
 
@@ -63,21 +62,13 @@ xmlSecBufferCreate(xmlSecSize size) {
 
     buf = (xmlSecBufferPtr)xmlMalloc(sizeof(xmlSecBuffer));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecBuffer)=%d", (int)sizeof(xmlSecBuffer));
+        xmlSecMallocError(sizeof(xmlSecBuffer), NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferInitialize(buf, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferInitialize", NULL, "size=%d", size);
         xmlSecBufferDestroy(buf);
         return(NULL);
     }
@@ -193,11 +184,7 @@ xmlSecBufferSetData(xmlSecBufferPtr buf, const xmlSecByte* data, xmlSecSize size
 
         ret = xmlSecBufferSetMaxSize(buf, size);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", size);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", NULL, "size=%d", size);
             return(-1);
         }
 
@@ -241,11 +228,7 @@ xmlSecBufferSetSize(xmlSecBufferPtr buf, xmlSecSize size) {
 
     ret = xmlSecBufferSetMaxSize(buf, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", NULL, "size=%d", size);
         return(-1);
     }
 
@@ -309,11 +292,7 @@ xmlSecBufferSetMaxSize(xmlSecBufferPtr buf, xmlSecSize size) {
         newData = (xmlSecByte*)xmlMalloc(newSize);
     }
     if(newData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", newSize);
+        xmlSecMallocError(newSize, NULL);
         return(-1);
     }
 
@@ -349,11 +328,7 @@ xmlSecBufferAppend(xmlSecBufferPtr buf, const xmlSecByte* data, xmlSecSize size)
 
         ret = xmlSecBufferSetMaxSize(buf, buf->size + size);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", buf->size + size);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", NULL, "size=%d", buf->size + size);
             return(-1);
         }
 
@@ -385,11 +360,7 @@ xmlSecBufferPrepend(xmlSecBufferPtr buf, const xmlSecByte* data, xmlSecSize size
 
         ret = xmlSecBufferSetMaxSize(buf, buf->size + size);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", buf->size + size);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", NULL, "size=%d", buf->size + size);
             return(-1);
         }
 
@@ -474,13 +445,7 @@ xmlSecBufferReadFile(xmlSecBufferPtr buf, const char* filename) {
 
     f = fopen(filename, "rb");
     if(f == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "fopen",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecIOError("fopen", filename, NULL);
         return(-1);
     }
 
@@ -489,25 +454,14 @@ xmlSecBufferReadFile(xmlSecBufferPtr buf, const char* filename) {
         if(len == 0) {
             break;
         }else if(len < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "fread",
-                        XMLSEC_ERRORS_R_IO_FAILED,
-                        "filename=%s;errno=%d",
-                        xmlSecErrorsSafeString(filename),
-                        errno);
+            xmlSecIOError("fread", filename, NULL);
             fclose(f);
             return(-1);
         }
 
         ret = xmlSecBufferAppend(buf, buffer, len);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d",
-                        len);
+            xmlSecInternalError2("xmlSecBufferAppend", NULL, "size=%d", len);
             fclose(f);
             return(-1);
         }
@@ -538,33 +492,21 @@ xmlSecBufferBase64NodeContentRead(xmlSecBufferPtr buf, xmlNodePtr node) {
 
     content = xmlNodeGetContent(node);
     if(content == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeContentError(node, NULL, "empty");
         return(-1);
     }
 
     /* base64 decode size is less than input size */
     ret = xmlSecBufferSetMaxSize(buf, xmlStrlen(content));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferSetMaxSize", NULL);
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecBase64Decode(content, xmlSecBufferGetData(buf), xmlSecBufferGetMaxSize(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         xmlFree(content);
         return(-1);
     }
@@ -572,11 +514,7 @@ xmlSecBufferBase64NodeContentRead(xmlSecBufferPtr buf, xmlNodePtr node) {
 
     ret = xmlSecBufferSetSize(buf, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL, "size=%d", size);
         xmlFree(content);
         return(-1);
     }
@@ -604,11 +542,7 @@ xmlSecBufferBase64NodeContentWrite(xmlSecBufferPtr buf, xmlNodePtr node, int col
 
     content = xmlSecBase64Encode(xmlSecBufferGetData(buf), xmlSecBufferGetSize(buf), columns);
     if(content == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         return(-1);
     }
     xmlNodeAddContent(node, content);
@@ -654,11 +588,7 @@ xmlSecBufferIOWrite(xmlSecBufferPtr buf, const xmlSecByte *data, xmlSecSize size
 
     ret = xmlSecBufferAppend(buf, data, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferAppend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferAppend", NULL, "size=%d", size);
         return(-1);
     }
 
diff --git a/src/c14n.c b/src/c14n.c
index 59a7ddc..5e078d6 100644
--- a/src/c14n.c
+++ b/src/c14n.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Canonicalization transforms.
@@ -84,11 +84,8 @@ xmlSecTransformC14NInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecPtrListInitialize(nsList, xmlSecStringListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -127,22 +124,16 @@ xmlSecTransformC14NNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSe
     cur = xmlSecGetNextElementNode(node->children);
     if(cur != NULL) {
         if(!xmlSecCheckNodeName(cur, xmlSecNodeInclusiveNamespaces, xmlSecNsExcC14N)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeError(cur, xmlSecNodeInclusiveNamespaces,
+                                   xmlSecTransformGetName(transform));
             return(-1);
         }
 
         list = xmlGetProp(cur, xmlSecAttrPrefixList);
         if(list == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecAttrPrefixList),
-                        XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInvalidNodeAttributeError(cur, xmlSecAttrPrefixList,
+                                            xmlSecTransformGetName(transform),
+                                            "empty");
             return(-1);
         }
 
@@ -155,22 +146,15 @@ xmlSecTransformC14NNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSe
 
             tmp = xmlStrdup(p);
             if(tmp == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_STRDUP_FAILED,
-                            "len=%d", xmlStrlen(p));
+                xmlSecStrdupError(p, xmlSecTransformGetName(transform));
                 xmlFree(list);
                 return(-1);
             }
 
             ret = xmlSecPtrListAdd(nsList, tmp);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecPtrListAdd",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecPtrListAdd",
+                                    xmlSecTransformGetName(transform));
                 xmlFree(tmp);
                 xmlFree(list);
                 return(-1);
@@ -181,11 +165,8 @@ xmlSecTransformC14NNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSe
         /* add NULL at the end */
         ret = xmlSecPtrListAdd(nsList, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecPtrListAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -194,11 +175,7 @@ xmlSecTransformC14NNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSe
 
     /* check that we have nothing else */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, NULL);
         return(-1);
     }
 
@@ -226,11 +203,7 @@ xmlSecTransformC14NPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr nodes,
     case xmlSecTransformStatusFinished:
         return(0);
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     xmlSecAssert2(transform->status == xmlSecTransformStatusWorking, -1);
@@ -239,21 +212,15 @@ xmlSecTransformC14NPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr nodes,
     if(transform->next != NULL) {
         buf = xmlSecTransformCreateOutputBuffer(transform->next, transformCtx);
         if(buf == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformCreateOutputBuffer",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCreateOutputBuffer",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     } else {
         buf = xmlSecBufferCreateOutputBuffer(&(transform->outBuf));
         if(buf == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferCreateOutputBuffer",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferCreateOutputBuffer",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -265,22 +232,15 @@ xmlSecTransformC14NPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr nodes,
 
     ret = xmlSecTransformC14NExecute(transform->id, nodes, (xmlChar**)(nsList->data), buf);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformC14NExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformC14NExecute",
+                            xmlSecTransformGetName(transform));
         xmlOutputBufferClose(buf);
         return(-1);
     }
 
     ret = xmlOutputBufferClose(buf);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferClose",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferClose", xmlSecTransformGetName(transform));
         return(-1);
     }
     transform->status = xmlSecTransformStatusFinished;
@@ -316,22 +276,16 @@ xmlSecTransformC14NPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
         /* get xml data from previous transform */
         ret = xmlSecTransformPopXml(transform->prev, &(transform->inNodes), transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformPopXml",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPopXml",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
         /* dump everything to internal buffer */
         buf = xmlSecBufferCreateOutputBuffer(out);
         if(buf == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferCreateOutputBuffer",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferCreateOutputBuffer",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -342,21 +296,14 @@ xmlSecTransformC14NPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
 
         ret = xmlSecTransformC14NExecute(transform->id, transform->inNodes, (xmlChar**)(nsList->data), buf);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformC14NExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformC14NExecute",
+                                xmlSecTransformGetName(transform));
             xmlOutputBufferClose(buf);
             return(-1);
         }
         ret = xmlOutputBufferClose(buf);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlOutputBufferClose",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlOutputBufferClose", xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusWorking;
@@ -379,11 +326,9 @@ xmlSecTransformC14NPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
             memcpy(data, xmlSecBufferGetData(&(transform->outBuf)), outSize);
             ret = xmlSecBufferRemoveHead(&(transform->outBuf), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", outSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", outSize);
                 return(-1);
             }
         } else if(xmlSecBufferGetSize(out) == 0) {
@@ -395,11 +340,7 @@ xmlSecTransformC14NPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
         xmlSecAssert2(xmlSecBufferGetSize(out) == 0, -1);
         (*dataSize) = 0;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
@@ -445,20 +386,13 @@ xmlSecTransformC14NExecute(xmlSecTransformId id, xmlSecNodeSetPtr nodes, xmlChar
         ret = xmlSecNodeSetDumpTextNodes(nodes, buf);
     } else {
         /* shoudn't be possible to come here, actually */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_TRANSFORM,
+                         xmlSecTransformKlassGetName(id), NULL);
         return(-1);
     }
 
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)),
-                    "xmlC14NExecute",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlC14NExecute", xmlSecTransformKlassGetName(id));
         return(-1);
     }
 
diff --git a/src/dl.c b/src/dl.c
index 7ab84d7..95d74f3 100644
--- a/src/dl.c
+++ b/src/dl.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  *
@@ -98,44 +98,28 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
     /* Allocate a new xmlSecCryptoDLLibrary and fill the fields. */
     lib = (xmlSecCryptoDLLibraryPtr)xmlMalloc(sizeof(xmlSecCryptoDLLibrary));
     if(lib == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)sizeof(lib));
+        xmlSecMallocError(sizeof(xmlSecCryptoDLLibrary), NULL);
         return(NULL);
     }
     memset(lib, 0, sizeof(xmlSecCryptoDLLibrary));
 
     lib->name = xmlStrdup(name);
     if(lib->name == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlStrdup",
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecStrdupError(name, NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
 
     lib->filename = xmlSecCryptoDLLibraryConstructFilename(name);
     if(lib->filename == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecCryptoDLLibraryConstructFilename",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLLibraryConstructFilename", NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
 
     lib->getFunctionsName = xmlSecCryptoDLLibraryConstructGetFunctionsName(name);
     if(lib->getFunctionsName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecCryptoDLLibraryConstructGetFunctionsName",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLLibraryConstructGetFunctionsName", NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -143,12 +127,7 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
 #ifdef XMLSEC_DL_LIBLTDL
     lib->handle = lt_dlopenext((char*)lib->filename);
     if(lib->handle == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "lt_dlopenext",
-                    NULL,
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(lib->filename));
+        xmlSecIOError("lt_dlopenext", lib->filename, NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -157,12 +136,7 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
                         lt_dlsym(lib->handle, (char*)lib->getFunctionsName)
                     );
     if(getFunctions == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "lt_dlsym",
-                    NULL,
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "function=%s",
-                    xmlSecErrorsSafeString(lib->getFunctionsName));
+        xmlSecIOError("lt_dlsym", lib->getFunctionsName, NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -171,12 +145,7 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
 #ifdef XMLSEC_DL_WIN32
     lib->handle = LoadLibraryA((char*)lib->filename);
     if(lib->handle == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "LoadLibraryA",
-                    NULL,
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(lib->filename));
+        xmlSecIOError("LoadLibraryA", lib->filename, NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -188,34 +157,21 @@ xmlSecCryptoDLLibraryCreate(const xmlChar* name) {
                         )
                     );
     if(getFunctions == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "GetProcAddressA",
-                    NULL,
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "function=%s",
-                    xmlSecErrorsSafeString(lib->getFunctionsName));
+        xmlSecIOError("GetProcAddressA", lib->getFunctionsName, NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
 #endif /* XMLSEC_DL_WIN32 */
 
     if(getFunctions == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "invalid configuration: no way to load library");
+        xmlSecInternalError("invalid configuration: no way to load library", NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
 
     lib->functions = getFunctions();
     if(lib->functions == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "getFunctions",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("getFunctions", NULL);
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -247,11 +203,7 @@ xmlSecCryptoDLLibraryDestroy(xmlSecCryptoDLLibraryPtr lib) {
 
         ret = lt_dlclose(lib->handle);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        "lt_dlclose",
-                        NULL,
-                        XMLSEC_ERRORS_R_IO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecIOError("lt_dlclose", NULL, NULL);
         }
     }
 #endif /* XMLSEC_DL_LIBLTDL */
@@ -262,11 +214,7 @@ xmlSecCryptoDLLibraryDestroy(xmlSecCryptoDLLibraryPtr lib) {
 
         res = FreeLibrary(lib->handle);
         if(!res) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        "FreeLibrary",
-                        NULL,
-                        XMLSEC_ERRORS_R_IO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecIOError("FreeLibrary", NULL, NULL);
         }
         }
 #endif /* XMLSEC_DL_WIN32*/
@@ -285,47 +233,53 @@ xmlSecCryptoDLLibraryDuplicate(xmlSecCryptoDLLibraryPtr lib) {
 
 static xmlChar*
 xmlSecCryptoDLLibraryConstructFilename(const xmlChar* name) {
-    static xmlChar tmpl[] = "lib%s-%s";
+    static char tmpl[] = "lib%s-%s";
     xmlChar* res;
     int len;
+    int ret;
 
     xmlSecAssert2(name != NULL, NULL);
 
     /* TODO */
-    len = xmlStrlen(BAD_CAST PACKAGE) + xmlStrlen(name) + xmlStrlen(tmpl) + 1;
+    len = xmlStrlen(BAD_CAST PACKAGE) + xmlStrlen(name) + strlen(tmpl) + 1;
     res = (xmlChar*)xmlMalloc(len + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", len + 1);
+        xmlSecMallocError(len + 1, NULL);
+        return(NULL);
+    }
+
+    ret = xmlStrPrintf(res, len, tmpl, PACKAGE, name);
+    if(ret < 0) {
+        xmlSecXmlError("xmlStrPrintf", NULL);
+        xmlFree(res);
         return(NULL);
     }
-    xmlSecStrPrintf(res, len, tmpl, PACKAGE, name);
 
     return(res);
 }
 
 static xmlChar*
 xmlSecCryptoDLLibraryConstructGetFunctionsName(const xmlChar* name) {
-    static xmlChar tmpl[] = "xmlSecCryptoGetFunctions_%s";
+    static char tmpl[] = "xmlSecCryptoGetFunctions_%s";
     xmlChar* res;
     int len;
+    int ret;
 
     xmlSecAssert2(name != NULL, NULL);
 
-    len = xmlStrlen(name) + xmlStrlen(tmpl) + 1;
+    len = xmlStrlen(name) + strlen(tmpl) + 1;
     res = (xmlChar*)xmlMalloc(len + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", len + 1);
+        xmlSecMallocError(len + 1, NULL);
+        return(NULL);
+    }
+
+    ret = xmlStrPrintf(res, len, tmpl, name);
+    if(ret < 0) {
+        xmlSecXmlError("xmlStrPrintf", NULL);
+        xmlFree(res);
         return(NULL);
     }
-    xmlSecStrPrintf(res, len, tmpl, name);
 
     return(res);
 }
@@ -373,24 +327,18 @@ int
 xmlSecCryptoDLInit(void) {
     int ret;
 
-    ret = xmlSecPtrListInitialize(&gXmlSecCryptoDLLibraries, xmlSecCryptoDLLibrariesListGetKlass());
+    ret = xmlSecPtrListInitialize(&gXmlSecCryptoDLLibraries,
+                                  xmlSecCryptoDLLibrariesListGetKlass());
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListPtrInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecCryptoDLLibrariesListGetKlass");
+        xmlSecInternalError("xmlSecPtrListPtrInitialize",
+                            "xmlSecCryptoDLLibrariesListGetKlass");
         return(-1);
     }
 
 #ifdef XMLSEC_DL_LIBLTDL
     ret = lt_dlinit ();
     if(ret != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "lt_dlinit",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecIOError("lt_dlinit", NULL, NULL);
         return(-1);
     }
 #endif /* XMLSEC_DL_LIBLTDL */
@@ -416,11 +364,7 @@ xmlSecCryptoDLShutdown(void) {
 #ifdef XMLSEC_DL_LIBLTDL
     ret = lt_dlexit ();
     if(ret != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "lt_dlexit",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecIOError("lt_dlexit", NULL, NULL);
     }
 #endif /* XMLSEC_DL_LIBLTDL */
 
@@ -446,21 +390,13 @@ xmlSecCryptoDLLoadLibrary(const xmlChar* crypto) {
     /* if crypto is not specified, then used default */
     functions = xmlSecCryptoDLGetLibraryFunctions((crypto != NULL ) ? crypto : xmlSecGetDefaultCrypto());
     if(functions == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLGetLibraryFunctions",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLGetLibraryFunctions", NULL);
         return(-1);
     }
 
     ret = xmlSecCryptoDLSetFunctions(functions);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLSetFunctions",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLSetFunctions", NULL);
         return(-1);
     }
 
@@ -496,23 +432,15 @@ xmlSecCryptoDLGetLibraryFunctions(const xmlChar* crypto) {
 
     lib = xmlSecCryptoDLLibraryCreate(crypto);
     if(lib == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLLibraryCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "crypto=%s",
-                    xmlSecErrorsSafeString(crypto));
+        xmlSecInternalError2("xmlSecCryptoDLLibraryCreate", NULL,
+                             "crypto=%s", xmlSecErrorsSafeString(crypto));
         return(NULL);
     }
 
     ret = xmlSecPtrListAdd(&gXmlSecCryptoDLLibraries, lib);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "crypto=%s",
-                    xmlSecErrorsSafeString(crypto));
+        xmlSecInternalError2("xmlSecPtrListAdd", NULL,
+                             "crypto=%s", xmlSecErrorsSafeString(crypto));
         xmlSecCryptoDLLibraryDestroy(lib);
         return(NULL);
     }
@@ -552,11 +480,7 @@ xmlSecCryptoDLUnloadLibrary(const xmlChar* crypto) {
 
     ret = xmlSecPtrListRemove(&gXmlSecCryptoDLLibraries, pos);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListRemove",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListRemove", NULL);
         return(-1);
     }
 
@@ -612,90 +536,57 @@ xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(struct _xmlSecCryptoDLFuncti
      *
      ****************************************************************************/
     if((functions->keyDataAesGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataAesGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataAesGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataAesGetKlass()));
         return(-1);
     }
     if((functions->keyDataDesGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataDesGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataDesGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataDesGetKlass()));
         return(-1);
     }
     if((functions->keyDataDsaGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataDsaGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataDsaGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataDsaGetKlass()));
         return(-1);
     }
     if((functions->keyDataEcdsaGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataEcdsaGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataEcdsaGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataEcdsaGetKlass()));
         return(-1);
     }
     if((functions->keyDataGost2001GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataGost2001GetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataGost2001GetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataGost2001GetKlass()));
         return(-1);
     }
     if((functions->keyDataGostR3410_2012_256GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataGostR3410_2012_256GetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataGostR3410_2012_256GetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataGostR3410_2012_256GetKlass()));
         return(-1);
     }
     if((functions->keyDataGostR3410_2012_512GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataGostR3410_2012_512GetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataGostR3410_2012_512GetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataGostR3410_2012_512GetKlass()));
         return(-1);
     }    if((functions->keyDataHmacGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataHmacGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataHmacGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataHmacGetKlass()));
         return(-1);
     }
     if((functions->keyDataRsaGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataRsaGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataRsaGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataRsaGetKlass()));
         return(-1);
     }
     if((functions->keyDataX509GetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataX509GetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataX509GetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataX509GetKlass()));
         return(-1);
     }
     if((functions->keyDataRawX509CertGetKlass != NULL) && (xmlSecKeyDataIdsRegister(functions->keyDataRawX509CertGetKlass()) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(functions->keyDataRawX509CertGetKlass())),
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegister",
+                            xmlSecKeyDataKlassGetName(functions->keyDataRawX509CertGetKlass()));
         return(-1);
     }
 
@@ -706,397 +597,265 @@ xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(struct _xmlSecCryptoDLFuncti
      *
      ****************************************************************************/
     if((functions->transformAes128CbcGetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformAes128CbcGetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformAes128CbcGetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformAes128CbcGetKlass()));
         return(-1);
     }
 
     if((functions->transformAes192CbcGetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformAes192CbcGetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformAes192CbcGetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformAes192CbcGetKlass()));
         return(-1);
     }
 
     if((functions->transformAes256CbcGetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformAes256CbcGetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformAes256CbcGetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformAes256CbcGetKlass()));
         return(-1);
     }
 
     if((functions->transformKWAes128GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformKWAes128GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformKWAes128GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformKWAes128GetKlass()));
         return(-1);
     }
 
     if((functions->transformKWAes192GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformKWAes192GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformKWAes192GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformKWAes192GetKlass()));
         return(-1);
     }
 
     if((functions->transformKWAes256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformKWAes256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformKWAes256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformKWAes256GetKlass()));
         return(-1);
     }
 
     if((functions->transformDes3CbcGetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformDes3CbcGetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformDes3CbcGetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformDes3CbcGetKlass()));
         return(-1);
     }
 
     if((functions->transformKWDes3GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformKWDes3GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformKWDes3GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformKWDes3GetKlass()));
         return(-1);
     }
 
     if((functions->transformGost2001GostR3411_94GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGost2001GostR3411_94GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGost2001GostR3411_94GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGost2001GostR3411_94GetKlass()));
         return(-1);
     }
 
     if((functions->transformGostR3410_2012GostR3411_2012_256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGostR3410_2012GostR3411_2012_256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGostR3410_2012GostR3411_2012_256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGostR3410_2012GostR3411_2012_256GetKlass()));
         return(-1);
     }
 
     if((functions->transformGostR3410_2012GostR3411_2012_512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGostR3410_2012GostR3411_2012_512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGostR3410_2012GostR3411_2012_512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGostR3410_2012GostR3411_2012_512GetKlass()));
         return(-1);
     }
 
     if((functions->transformDsaSha1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformDsaSha1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformDsaSha1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformDsaSha1GetKlass()));
         return(-1);
     }
 
     if((functions->transformDsaSha256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformDsaSha256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformDsaSha256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformDsaSha256GetKlass()));
         return(-1);
     }
 
     if((functions->transformEcdsaSha1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformEcdsaSha1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformEcdsaSha1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformEcdsaSha1GetKlass()));
         return(-1);
     }
 
     if((functions->transformEcdsaSha224GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformEcdsaSha224GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformEcdsaSha224GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformEcdsaSha224GetKlass()));
         return(-1);
     }
 
     if((functions->transformEcdsaSha256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformEcdsaSha256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformEcdsaSha256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformEcdsaSha256GetKlass()));
         return(-1);
     }
 
     if((functions->transformEcdsaSha384GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformEcdsaSha384GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformEcdsaSha384GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformEcdsaSha384GetKlass()));
         return(-1);
     }
 
     if((functions->transformEcdsaSha512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformEcdsaSha512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformEcdsaSha512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformEcdsaSha512GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacMd5GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacMd5GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacMd5GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacMd5GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacRipemd160GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacRipemd160GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacRipemd160GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacRipemd160GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacSha1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacSha1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacSha1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacSha1GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacSha224GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacSha224GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacSha224GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacSha224GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacSha256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacSha256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacSha256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacSha256GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacSha384GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacSha384GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacSha384GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacSha384GetKlass()));
         return(-1);
     }
 
     if((functions->transformHmacSha512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformHmacSha512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformHmacSha512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformHmacSha512GetKlass()));
         return(-1);
     }
 
     if((functions->transformMd5GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformMd5GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformMd5GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformMd5GetKlass()));
         return(-1);
     }
 
     if((functions->transformRipemd160GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRipemd160GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRipemd160GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRipemd160GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaMd5GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaMd5GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaMd5GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaMd5GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaRipemd160GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaRipemd160GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaRipemd160GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaRipemd160GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaSha1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaSha1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaSha1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaSha1GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaSha224GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaSha224GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaSha224GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaSha224GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaSha256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaSha256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaSha256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaSha256GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaSha384GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaSha384GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaSha384GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaSha384GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaSha512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaSha512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaSha512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaSha512GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaPkcs1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaPkcs1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaPkcs1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaPkcs1GetKlass()));
         return(-1);
     }
 
     if((functions->transformRsaOaepGetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformRsaOaepGetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformRsaOaepGetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformRsaOaepGetKlass()));
         return(-1);
     }
 
     if((functions->transformGostR3411_94GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGostR3411_94GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGostR3411_94GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGostR3411_94GetKlass()));
         return(-1);
     }
 
     if((functions->transformGostR3411_2012_256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGostR3411_2012_256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGostR3411_2012_256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGostR3411_2012_256GetKlass()));
         return(-1);
     }
 
     if((functions->transformGostR3411_2012_512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformGostR3411_2012_512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformGostR3411_2012_512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformGostR3411_2012_512GetKlass()));
         return(-1);
     }
     if((functions->transformSha1GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformSha1GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformSha1GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformSha1GetKlass()));
         return(-1);
     }
 
     if((functions->transformSha224GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformSha224GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformSha224GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformSha224GetKlass()));
         return(-1);
     }
 
     if((functions->transformSha256GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformSha256GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformSha256GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformSha256GetKlass()));
         return(-1);
     }
 
     if((functions->transformSha384GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformSha384GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformSha384GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformSha384GetKlass()));
         return(-1);
     }
 
     if((functions->transformSha512GetKlass != NULL) && xmlSecTransformIdsRegister(functions->transformSha512GetKlass()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(functions->transformSha512GetKlass())),
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegister",
+                            xmlSecTransformKlassGetName(functions->transformSha512GetKlass()));
         return(-1);
     }
 
diff --git a/src/enveloped.c b/src/enveloped.c
index ae11c16..d871cd1 100644
--- a/src/enveloped.c
+++ b/src/enveloped.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Enveloped transform.
@@ -106,44 +106,35 @@ xmlSecTransformEnvelopedExecute(xmlSecTransformPtr transform, int last,
     xmlSecAssert2(transformCtx != NULL, -1);
 
     if((transform->inNodes != NULL) && (transform->inNodes->doc != transform->hereNode->doc)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_TRANSFORM_SAME_DOCUMENT_REQUIRED,
+                         xmlSecTransformGetName(transform),
+                         NULL);
         return(-1);
     }
 
     /* find signature node and get all its children in the nodes set */
     node = xmlSecFindParent(transform->hereNode, xmlSecNodeSignature, xmlSecDSigNs);
     if(node == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeSignature),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindParent", transform->hereNode,
+                                xmlSecNodeSignature,
+                                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     children = xmlSecNodeSetGetChildren(node->doc, node, 1, 1);
     if(children == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecNodeSetGetChildren",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+        xmlSecInternalError2("xmlSecNodeSetGetChildren",
+                             xmlSecTransformGetName(transform),
+                             "node=%s",
+                             xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
         return(-1);
     }
 
     /* intersect <dsig:Signature/> node children with input nodes (if exist) */
     transform->outNodes = xmlSecNodeSetAdd(transform->inNodes, children, xmlSecNodeSetIntersection);
     if(transform->outNodes == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecNodeSetAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNodeSetAdd",
+                            xmlSecTransformGetName(transform));
         xmlSecNodeSetDestroy(children);
         return(-1);
     }
diff --git a/src/errors.c b/src/errors.c
index 2ff1f42..a8fffd2 100644
--- a/src/errors.c
+++ b/src/errors.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Error codes and error reporting functions.
@@ -14,6 +14,7 @@
 #include <stdio.h>
 #include <stdarg.h>
 #include <time.h>
+#include <string.h>
 
 #include <libxml/tree.h>
 
@@ -22,8 +23,12 @@
 #include <xmlsec/private.h>
 #include <xmlsec/errors.h>
 
+/* Must be bigger than fatal_error */
 #define XMLSEC_ERRORS_BUFFER_SIZE       1024
 
+/* Must fit into xmlChar[XMLSEC_ERRORS_BUFFER_SIZE] */
+static const xmlChar fatal_error[] = "Can not format error message";
+
 typedef struct _xmlSecErrorDescription                  xmlSecErrorDescription, *xmlSecErrorDescriptionPtr;
 struct _xmlSecErrorDescription {
     int                 errorCode;
@@ -40,6 +45,7 @@ static xmlSecErrorDescription xmlSecErrorsTable[XMLSEC_ERRORS_MAX_NUMBER + 1] =
   { XMLSEC_ERRORS_R_IO_FAILED,                  "io function failed" },
   { XMLSEC_ERRORS_R_DISABLED,                   "feature is disabled" },
   { XMLSEC_ERRORS_R_NOT_IMPLEMENTED,            "feature is not implemented" },
+  { XMLSEC_ERRORS_R_INVALID_CONFIG,             "invalid configuration" },
   { XMLSEC_ERRORS_R_INVALID_SIZE,               "invalid size" },
   { XMLSEC_ERRORS_R_INVALID_DATA,               "invalid data" },
   { XMLSEC_ERRORS_R_INVALID_RESULT,             "invalid result" },
@@ -48,6 +54,7 @@ static xmlSecErrorDescription xmlSecErrorsTable[XMLSEC_ERRORS_MAX_NUMBER + 1] =
   { XMLSEC_ERRORS_R_INVALID_STATUS,             "invalid status" },
   { XMLSEC_ERRORS_R_INVALID_FORMAT,             "invalid format" },
   { XMLSEC_ERRORS_R_DATA_NOT_MATCH,             "data do not match" },
+  { XMLSEC_ERRORS_R_INVALID_VERSION,            "invalid version" },
   { XMLSEC_ERRORS_R_INVALID_NODE,               "invalid node" },
   { XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,       "invalid node content" },
   { XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,     "invalid node attribute" },
@@ -209,8 +216,8 @@ xmlSecErrorsGetMsg(xmlSecSize pos) {
  * @file:               the error location filename (__FILE__).
  * @line:               the error location line number (__LINE__).
  * @func:               the error location function (__FUNCTIION__).
- * @errorObject:        the error specific error object
- * @errorSubject:       the error specific error subject.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @errorSubject:       the error specific error subject (e.g. failed function name).
  * @reason:             the error code.
  * @msg:                the error message in printf format.
  * @...:                the parameters for the @msg.
@@ -223,16 +230,20 @@ void
 xmlSecError(const char* file, int line, const char* func,
             const char* errorObject, const char* errorSubject,
             int reason, const char* msg, ...) {
-
     if(xmlSecErrorsClbk != NULL) {
         xmlChar error_msg[XMLSEC_ERRORS_BUFFER_SIZE];
+        int ret;
 
         if(msg != NULL) {
             va_list va;
 
             va_start(va, msg);
-            xmlSecStrVPrintf(error_msg, sizeof(error_msg), BAD_CAST msg, va);
-            error_msg[sizeof(error_msg) - 1] = '\0';
+            ret = xmlStrVPrintf(error_msg, sizeof(error_msg), msg, va);
+            if(ret < 0) {
+                /* Can't really report an error from an error callback */
+                memcpy(error_msg, fatal_error, sizeof(fatal_error));
+            }
+            error_msg[sizeof(error_msg) - 1] = '\0'; /* just in case */
             va_end(va);
         } else {
             error_msg[0] = '\0';
diff --git a/src/errors_helpers.h b/src/errors_helpers.h
new file mode 100644
index 0000000..3752fa6
--- /dev/null
+++ b/src/errors_helpers.h
@@ -0,0 +1,872 @@
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
+ *
+ * Internal header only used during the compilation,
+ *
+ * This is free software; see Copyright file in the source
+ * distribution for preciese wording.
+ *
+ * Copyright (C) 2002-2016 Aleksey Sanin <aleksey at aleksey.com>. All Rights Reserved.
+ */
+
+#ifndef __XMLSEC_ERROR_HELPERS_H__
+#define __XMLSEC_ERROR_HELPERS_H__
+
+#ifndef XMLSEC_PRIVATE
+#error "private.h file contains private xmlsec definitions and should not be used outside xmlsec or xmlsec-$crypto libraries"
+#endif /* XMLSEC_PRIVATE */
+
+#include <errno.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+/**********************************************************************
+ *
+ * Error handling macros.
+ *
+ **********************************************************************/
+
+/**
+ * xmlSecInternalError:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting internal XMLSec errors.
+ */
+#define xmlSecInternalError(errorFunction, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
+                    XMLSEC_ERRORS_NO_MESSAGE                \
+        )
+
+/**
+ * xmlSecInternalError2:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting internal XMLSec errors.
+ */
+#define xmlSecInternalError2(errorFunction, errorObject, msg, param) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
+                    (msg), (param)                          \
+        )
+
+/**
+ * xmlSecInternalError3:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param1:             the extra message param1.
+ * @param2:             the extra message param2.
+ *
+ * Macro. The XMLSec library macro for reporting internal XMLSec errors.
+ */
+#define xmlSecInternalError3(errorFunction, errorObject, msg, param1, param2) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
+                    (msg), (param1), (param2)               \
+        )
+
+/**
+ * xmlSecInternalError4:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param1:             the extra message param1.
+ * @param2:             the extra message param2.
+ * @param3:             the extra message param3.
+ *
+ * Macro. The XMLSec library macro for reporting internal XMLSec errors.
+ */
+#define xmlSecInternalError4(errorFunction, errorObject, msg, param1, param2, param3) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_XMLSEC_FAILED,          \
+                    (msg), (param1), (param2), (param3)     \
+        )
+
+/**
+ * xmlSecMallocError:
+ * @allocSize:          the failed allocation size.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting xmlMalloc() errors.
+ */
+#define xmlSecMallocError(allocSize, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    "xmlMalloc",                            \
+                    XMLSEC_ERRORS_R_MALLOC_FAILED,          \
+                    "size=%lu", (unsigned long)(allocSize)  \
+        )
+
+/**
+ * xmlSecStrdupError:
+ * @str:                the failed string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting xmlStrdup() errors.
+ */
+#define xmlSecStrdupError(str, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    "xmlStrdup",                            \
+                    XMLSEC_ERRORS_R_STRDUP_FAILED,          \
+                    "size=%lu", (unsigned long)xmlStrlen(str) \
+        )
+
+/**
+ * xmlSecXmlError:
+ * @errorFunction:      the failed function.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting generic XML errors.
+ */
+#define xmlSecXmlError(errorFunction, errorObject) \
+    {                                                 \
+        xmlErrorPtr error = xmlGetLastError();        \
+        int code = (error != NULL) ? error->code : 0; \
+        const char* message = (error != NULL) ? error->message : NULL; \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_XML_FAILED,        \
+                   "xml error: %lu: %s",              \
+                   (unsigned long)code,               \
+                   xmlSecErrorsSafeString(message)    \
+        );                                            \
+    }
+
+/**
+ * xmlSecXmlError2:
+ * @errorFunction:      the failed function.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting generic XML errors.
+ */
+#define xmlSecXmlError2(errorFunction, errorObject, msg, param) \
+    {                                                 \
+        xmlErrorPtr error = xmlGetLastError();        \
+        int code = (error != NULL) ? error->code : 0; \
+        const char* message = (error != NULL) ? error->message : NULL; \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_XML_FAILED,        \
+                   msg "; xml error: %lu: %s",        \
+                   (param),                           \
+                   (unsigned long)code,               \
+                   xmlSecErrorsSafeString(message)    \
+        );                                            \
+    }
+
+/**
+ * xmlSecXmlParserError:
+ * @errorFunction:      the failed function.
+ * @ctxt:               the parser context.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting XML parser errors.
+ */
+#define xmlSecXmlParserError(errorFunction, ctxt, errorObject) \
+    {                                                 \
+        xmlErrorPtr error = xmlCtxtGetLastError(ctxt);\
+        int code = (error != NULL) ? error->code : 0; \
+        const char* message = (error != NULL) ? error->message : NULL; \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_XML_FAILED,        \
+                   "xml error: %lu: %s",              \
+                   (unsigned long)code,               \
+                   xmlSecErrorsSafeString(message)    \
+        );                                            \
+    }
+
+/**
+ * xmlSecXmlParserError2:
+ * @errorFunction:      the failed function.
+ * @ctxt:               the parser context.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting XML parser errors.
+ */
+#define xmlSecXmlParserError2(errorFunction, ctxt, errorObject, msg, param) \
+    {                                                 \
+        xmlErrorPtr error = xmlCtxtGetLastError(ctxt);\
+        int code = (error != NULL) ? error->code : 0; \
+        const char* message = (error != NULL) ? error->message : NULL; \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_XML_FAILED,        \
+                   msg "; xml error: %lu: %s",        \
+                   (param),                           \
+                   (unsigned long)code,               \
+                   xmlSecErrorsSafeString(message)    \
+        );                                            \
+    }
+
+/**
+ * xmlSecXsltError:
+ * @errorFunction:      the failed function.
+ * @ctxt:               the parser context.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting XSLT errors.
+ */
+#define xmlSecXsltError(errorFunction, ctxt, errorObject) \
+    {                                                 \
+        xmlErrorPtr error = xmlGetLastError();        \
+        int code = (error != NULL) ? error->code : 0; \
+        const char* message = (error != NULL) ? error->message : NULL; \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_XSLT_FAILED,       \
+                   "xslt error: %lu: %s",             \
+                   (unsigned long)code,               \
+                   xmlSecErrorsSafeString(message)    \
+        );                                            \
+    }
+
+/**
+ * xmlSecIOError:
+ * @errorFunction:      the failed function.
+ * @name:               the filename, function name, uri, etc.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting IO errors.
+ */
+#define xmlSecIOError(errorFunction, name, errorObject) \
+    {                                                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_IO_FAILED,         \
+                   "name=\"%s\"; errno=%d",           \
+                   xmlSecErrorsSafeString(name),      \
+                   errno                              \
+        );                                            \
+    }
+
+/**
+ * xmlSecNotImplementedError:
+ * @details:           the additional details.
+ *
+ * Macro. The XMLSec library macro for reporting "not implemented" errors.
+ */
+#define xmlSecNotImplementedError(details) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    NULL,                                   \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,        \
+                    "details=%s",                           \
+                    xmlSecErrorsSafeString(details)         \
+        )
+/**
+ * xmlSecInvalidSizeError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value.
+ * @expected:           the expected value.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid size" errors when
+ * we expect exact match.
+ */
+#define xmlSecInvalidSizeError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
+                    "invalid size for '%s': actual=%lu is not equal to expected=%lu", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (unsigned long)(expected)               \
+        )
+
+/**
+ * xmlSecInvalidSizeLessThanError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value.
+ * @expected:           the expected value.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid size" errors when
+ * we expect at least the expected size.
+ */
+#define xmlSecInvalidSizeLessThanError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
+                    "invalid size for '%s': actual=%lu is less than expected=%lu", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (unsigned long)(expected)               \
+        )
+
+/**
+ * xmlSecInvalidSizeMoreThanError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value.
+ * @expected:           the expected value.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid size" errors when
+ * we expect at most the expected size.
+ */
+#define xmlSecInvalidSizeMoreThanError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,        \
+                    "invalid size for '%s': actual=%lu is more than expected=%lu", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (unsigned long)(expected)               \
+        )
+
+/**
+ * xmlSecInvalidSizeNotMultipleOfError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value.
+ * @divider:            the expected divider.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid size" errors when
+ * we expect the size to be a multiple of the divider.
+ */
+#define xmlSecInvalidSizeNotMultipleOfError(name, actual, divider, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,        \
+                    "invalid size for '%s': actual=%lu is not a multiple of %lu", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (unsigned long)(divider)               \
+        )
+
+/**
+ * xmlSecInvalidSizeOtherError:
+ * @msg:                the message about the error.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid size" errors when
+ * we expect exact match.
+ */
+#define xmlSecInvalidSizeOtherError(msg, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_SIZE,           \
+                    "invalid size: %s",                     \
+                    xmlSecErrorsSafeString(msg)             \
+        )
+
+/**
+ * xmlSecInvalidDataError:
+ * @msg:                the msg with explanation.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid data" errors.
+ */
+#define xmlSecInvalidDataError(msg, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_DATA,           \
+                    "%s",                                   \
+                    xmlSecErrorsSafeString(msg)             \
+        )
+
+/**
+ * xmlSecInvalidStringDataError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value as a string.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid data" errors for string.
+ */
+#define xmlSecInvalidStringDataError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_DATA,           \
+                    "invalid data for '%s': actual='%s' and expected %s", \
+                    xmlSecErrorsSafeString(name),           \
+                    xmlSecErrorsSafeString(actual),         \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidIntegerDataError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value as an integer.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid data" errors for integers.
+ */
+#define xmlSecInvalidIntegerDataError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_DATA,           \
+                    "invalid data for '%s': actual=%ld and expected %s", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidIntegerDataError2:
+ * @name1:              the name of the first variable, parameter, etc.
+ * @actual1:            the actual first value as an integer.
+ * @name2:              the name of the second variable, parameter, etc.
+ * @actual2:            the actual second value as an integer.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid data" errors for integers.
+ */
+#define xmlSecInvalidIntegerDataError2(name1, actual1, name2, actual2, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_DATA,           \
+                    "invalid data: actual value '%s'=%ld, actual value '%s'=%ld and expected %s", \
+                    xmlSecErrorsSafeString(name1),          \
+                    (unsigned long)(actual1),               \
+                    xmlSecErrorsSafeString(name2),          \
+                    (unsigned long)(actual2),               \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidTypeError:
+ * @msg:                the msg with explanation.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid type" errors.
+ */
+#define xmlSecInvalidTypeError(msg, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
+                    "%s",                                   \
+                    xmlSecErrorsSafeString(msg)             \
+        )
+
+/**
+ * xmlSecInvalidStringTypeError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value as a string.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid type" errors for string.
+ */
+#define xmlSecInvalidStringTypeError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
+                    "invalid type for '%s': actual='%s' and expected %s", \
+                    xmlSecErrorsSafeString(name),           \
+                    xmlSecErrorsSafeString(actual),         \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidIntegerTypeError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value as an integer.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid type" errors for integers.
+ */
+#define xmlSecInvalidIntegerTypeError(name, actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
+                    "invalid type for '%s': actual=%ld and expected %s", \
+                    xmlSecErrorsSafeString(name),           \
+                    (unsigned long)(actual),                \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidIntegerTypeError2:
+ * @name1:              the name of the first variable, parameter, etc.
+ * @actual1:            the actual first value as an integer.
+ * @name2:              the name of the second variable, parameter, etc.
+ * @actual2:            the actual second value as an integer.
+ * @expected:           the expected value(s) as a string.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid type" errors for integers.
+ */
+#define xmlSecInvalidIntegerTypeError2(name1, actual1, name2, actual2, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_TYPE,           \
+                    "invalid type: actual value '%s'=%ld, actual value '%s'=%ld and expected %s", \
+                    xmlSecErrorsSafeString(name1),          \
+                    (unsigned long)(actual1),               \
+                    xmlSecErrorsSafeString(name2),          \
+                    (unsigned long)(actual2),               \
+                    (expected)                              \
+        )
+
+/**
+ * xmlSecInvalidNodeError:
+ * @actualNode:         the actual node.
+ * @expectedNodeName:   the expected node name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting an invalid node errors.
+ */
+#define xmlSecInvalidNodeError(actualNode, expectedNodeName, errorObject) \
+    {                                                 \
+        const char* actualNodeName = xmlSecNodeGetName(actualNode); \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_NODE,      \
+                   "actual=%s; expected=%s",          \
+                   xmlSecErrorsSafeString(actualNodeName),  \
+                   xmlSecErrorsSafeString(expectedNodeName) \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidNodeContentError:
+ * @node:               the node.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @reason:             the reason why node content is invalid.
+ *
+ * Macro. The XMLSec library macro for reporting an invalid node content errors.
+ */
+#define xmlSecInvalidNodeContentError(node, errorObject, reason) \
+    {                                                 \
+        const char* nName = xmlSecNodeGetName(node);  \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_NODE_CONTENT, \
+                   "node=%s; reason=%s",              \
+                   xmlSecErrorsSafeString(nName),     \
+                   xmlSecErrorsSafeString(reason)     \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidNodeAttributeError:
+ * @node:               the node.
+ * @attrName:           the attribute name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @reason:             the reason why node content is invalid.
+ *
+ * Macro. The XMLSec library macro for reporting an invalid node attribute errors.
+ */
+#define xmlSecInvalidNodeAttributeError(node, attrName, errorObject, reason) \
+    {                                                 \
+        const char* nName = xmlSecNodeGetName(node);  \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE, \
+                   "node=%s; attribute=%s; reason=%s",\
+                   xmlSecErrorsSafeString(nName),     \
+                   xmlSecErrorsSafeString(attrName),  \
+                   xmlSecErrorsSafeString(reason)     \
+        );                                            \
+    }
+
+/**
+ * xmlSecNodeAlreadyPresentError:
+ * @parent:             the parent node.
+ * @nodeName:           the node name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting node already present errors.
+ */
+#define xmlSecNodeAlreadyPresentError(parent, nodeName, errorObject) \
+    {                                                 \
+        const char* pName = xmlSecNodeGetName(parent);\
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT, \
+                   "parent=%s; node=%s",              \
+                   xmlSecErrorsSafeString(pName),     \
+                   xmlSecErrorsSafeString(nodeName)   \
+        );                                            \
+    }
+
+/**
+ * xmlSecUnexpectedNodeError:
+ * @node:               the node.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting an invalid node errors.
+ */
+#define xmlSecUnexpectedNodeError(node, errorObject) \
+    {                                                 \
+        const char* nName = xmlSecNodeGetName(node);  \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_UNEXPECTED_NODE,   \
+                   "node=%s",                         \
+                   xmlSecErrorsSafeString(nName)      \
+        );                                            \
+    }
+
+/**
+ * xmlSecNodeNotFoundError:
+ * @errorFunction:      the failed function.
+ * @startNode:          the search start node.
+ * @targetNodeName:     the expected child node name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting node not found errors.
+ */
+#define xmlSecNodeNotFoundError(errorFunction, startNode, targetNodeName, errorObject) \
+    {                                                 \
+        const char* startNodeName = xmlSecNodeGetName(startNode); \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)(errorObject),        \
+                   (errorFunction),                   \
+                   XMLSEC_ERRORS_R_NODE_NOT_FOUND,    \
+                   "startNode=%s; target=%s",         \
+                   xmlSecErrorsSafeString(startNodeName), \
+                   xmlSecErrorsSafeString(targetNodeName) \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidTransfromError:
+ * @transform:          the transform.
+ *
+ * Macro. The XMLSec library macro for reporting an invalid transform errors.
+ */
+#define xmlSecInvalidTransfromError(transform) \
+    {                                                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)xmlSecTransformGetName(transform), \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_TRANSFORM, \
+                   XMLSEC_ERRORS_NO_MESSAGE           \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidTransfromError2:
+ * @transform:          the transform.
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ *
+ * Macro. The XMLSec library macro for reporting an invalid transform errors.
+ */
+#define xmlSecInvalidTransfromError2(transform, msg, param) \
+    {                                                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)xmlSecTransformGetName(transform), \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_TRANSFORM, \
+                   (msg), (param)                     \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidTransfromStatusError:
+ * @transform:          the transform.
+ *
+ * Macro. The XMLSec library macro for reporting an invalid transform status errors.
+ */
+#define xmlSecInvalidTransfromStatusError(transform) \
+    {                                                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)xmlSecTransformGetName(transform), \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_STATUS,    \
+                   "transformStatus=%d",              \
+                   (int)((transform)->status)         \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidTransfromStatusError2:
+ * @transform:          the transform.
+ * @msg:                the extra message.
+ *
+ * Macro. The XMLSec library macro for reporting an invalid transform status errors.
+ */
+#define xmlSecInvalidTransfromStatusError2(transform, msg) \
+    {                                                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,               \
+                   (const char*)xmlSecTransformGetName(transform), \
+                   NULL,                              \
+                   XMLSEC_ERRORS_R_INVALID_STATUS,    \
+                   "transformStatus=%ld, msg=%s",     \
+                   (long int)((transform)->status),   \
+                   msg                                \
+        );                                            \
+    }
+
+/**
+ * xmlSecInvalidKeyDataSizeError:
+ * @name:               the name of the variable, parameter, etc.
+ * @actual:             the actual value.
+ * @expected:           the expected value(s).
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid keydata size" errors.
+ */
+#define xmlSecInvalidKeyDataSizeError(actual, expected, errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,  \
+                    "invalid key data size: actual=%ld and expected=%ld", \
+                    (unsigned long)(actual),                \
+                    (unsigned long)(expected)               \
+        )
+
+/**
+ * xmlSecInvalidZeroKeyDataSizeError:
+ * @name:               the name of the variable, parameter, etc.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting "invalid keydata size" errors.
+ */
+#define xmlSecInvalidZeroKeyDataSizeError(errorObject) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,  \
+                    "invalid zero key data size"            \
+        )
+
+
+/**
+ * xmlSecOtherError:
+ * @code:               the error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @details:            the error message.
+ *
+ * Macro. The XMLSec library macro for reporting other XMLSec errors.
+ */
+#define xmlSecOtherError(code, errorObject, details) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    (code),                                 \
+                    "details=%s",                           \
+                    xmlSecErrorsSafeString(details)         \
+        )
+
+/**
+ * xmlSecOtherError2:
+ * @code:               the error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting other XMLSec errors.
+ */
+#define xmlSecOtherError2(code, errorObject, msg, param) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    (code),                                 \
+                    (msg), (param)                          \
+        )
+
+/**
+ * xmlSecOtherError3:
+ * @code:               the error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param1:             the extra message param.
+ * @param2:             the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting other XMLSec errors.
+ */
+#define xmlSecOtherError3(code, errorObject, msg, param1, param2) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    (code),                                 \
+                    (msg), (param1), (param2)               \
+        )
+
+/**
+ * xmlSecOtherError4:
+ * @code:               the error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param1:             the extra message param.
+ * @param2:             the extra message param.
+ * @param3:             the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting other XMLSec errors.
+ */
+#define xmlSecOtherError4(code, errorObject, msg, param1, param2, param3) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    (code),                                 \
+                    (msg), (param1), (param2), (param3)     \
+        )
+
+/**
+ * xmlSecOtherError5:
+ * @code:               the error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param1:             the extra message param.
+ * @param2:             the extra message param.
+ * @param3:             the extra message param.
+ * @param4:             the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting other XMLSec errors.
+ */
+#define xmlSecOtherError5(code, errorObject, msg, param1, param2, param3, param4) \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    NULL,                                   \
+                    (code),                                 \
+                    (msg), (param1), (param2), (param3), (param4) \
+        )
+
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* __XMLSEC_ERROR_HELPERS_H__ */
diff --git a/src/gcrypt/Makefile.am b/src/gcrypt/Makefile.am
index 734c429..9645c40 100644
--- a/src/gcrypt/Makefile.am
+++ b/src/gcrypt/Makefile.am
@@ -35,10 +35,6 @@ libxmlsec1_gcrypt_la_SOURCES =\
 	globals.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_gcrypt_la_SOURCES += ../strings.c
-endif
-
 libxmlsec1_gcrypt_la_LIBADD = \
 	$(GCRYPT_LIBS) \
 	$(LIBXSLT_LIBS) \
diff --git a/src/gcrypt/Makefile.in b/src/gcrypt/Makefile.in
index 1387eac..e1524a7 100644
--- a/src/gcrypt/Makefile.in
+++ b/src/gcrypt/Makefile.in
@@ -88,7 +88,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
- at SHAREDLIB_HACK_TRUE@am__append_1 = ../strings.c
 subdir = src/gcrypt
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -132,21 +131,14 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(libdir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-am__libxmlsec1_gcrypt_la_SOURCES_DIST = app.c asn1.h asn1.c ciphers.c \
-	crypto.c digests.c hmac.c kw_aes.c kw_des.c symkeys.c \
-	asymkeys.c signatures.c globals.h ../strings.c
 am__objects_1 =
-am__dirstamp = $(am__leading_dot)dirstamp
- at SHAREDLIB_HACK_TRUE@am__objects_2 =  \
- at SHAREDLIB_HACK_TRUE@	../libxmlsec1_gcrypt_la-strings.lo
 am_libxmlsec1_gcrypt_la_OBJECTS = libxmlsec1_gcrypt_la-app.lo \
 	libxmlsec1_gcrypt_la-asn1.lo libxmlsec1_gcrypt_la-ciphers.lo \
 	libxmlsec1_gcrypt_la-crypto.lo libxmlsec1_gcrypt_la-digests.lo \
 	libxmlsec1_gcrypt_la-hmac.lo libxmlsec1_gcrypt_la-kw_aes.lo \
 	libxmlsec1_gcrypt_la-kw_des.lo libxmlsec1_gcrypt_la-symkeys.lo \
 	libxmlsec1_gcrypt_la-asymkeys.lo \
-	libxmlsec1_gcrypt_la-signatures.lo $(am__objects_1) \
-	$(am__objects_2)
+	libxmlsec1_gcrypt_la-signatures.lo $(am__objects_1)
 libxmlsec1_gcrypt_la_OBJECTS = $(am_libxmlsec1_gcrypt_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -191,7 +183,7 @@ am__v_CCLD_ = $(am__v_CCLD_ at AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libxmlsec1_gcrypt_la_SOURCES)
-DIST_SOURCES = $(am__libxmlsec1_gcrypt_la_SOURCES_DIST)
+DIST_SOURCES = $(libxmlsec1_gcrypt_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -280,6 +272,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -327,6 +320,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -343,6 +337,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -432,6 +427,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -460,9 +456,22 @@ libxmlsec1_gcrypt_la_CPPFLAGS = \
 	$(LIBXML_CFLAGS) \
 	$(NULL)
 
-libxmlsec1_gcrypt_la_SOURCES = app.c asn1.h asn1.c ciphers.c crypto.c \
-	digests.c hmac.c kw_aes.c kw_des.c symkeys.c asymkeys.c \
-	signatures.c globals.h $(NULL) $(am__append_1)
+libxmlsec1_gcrypt_la_SOURCES = \
+	app.c \
+	asn1.h \
+	asn1.c \
+	ciphers.c \
+	crypto.c \
+	digests.c \
+	hmac.c \
+	kw_aes.c \
+	kw_des.c \
+	symkeys.c \
+	asymkeys.c \
+	signatures.c \
+	globals.h \
+	$(NULL)
+
 libxmlsec1_gcrypt_la_LIBADD = \
 	$(GCRYPT_LIBS) \
 	$(LIBXSLT_LIBS) \
@@ -546,27 +555,16 @@ clean-libLTLIBRARIES:
 	  echo rm -f $${locs}; \
 	  rm -f $${locs}; \
 	}
-../$(am__dirstamp):
-	@$(MKDIR_P) ..
-	@: > ../$(am__dirstamp)
-../$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ../$(DEPDIR)
-	@: > ../$(DEPDIR)/$(am__dirstamp)
-../libxmlsec1_gcrypt_la-strings.lo: ../$(am__dirstamp) \
-	../$(DEPDIR)/$(am__dirstamp)
 
 libxmlsec1-gcrypt.la: $(libxmlsec1_gcrypt_la_OBJECTS) $(libxmlsec1_gcrypt_la_DEPENDENCIES) $(EXTRA_libxmlsec1_gcrypt_la_DEPENDENCIES) 
 	$(AM_V_CCLD)$(libxmlsec1_gcrypt_la_LINK) -rpath $(libdir) $(libxmlsec1_gcrypt_la_OBJECTS) $(libxmlsec1_gcrypt_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
-	-rm -f ../*.$(OBJEXT)
-	-rm -f ../*.lo
 
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ../$(DEPDIR)/libxmlsec1_gcrypt_la-strings.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gcrypt_la-app.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gcrypt_la-asn1.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gcrypt_la-asymkeys.Plo at am__quote@
@@ -680,19 +678,11 @@ libxmlsec1_gcrypt_la-signatures.lo: signatures.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gcrypt_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libxmlsec1_gcrypt_la-signatures.lo `test -f 'signatures.c' || echo '$(srcdir)/'`signatures.c
 
-../libxmlsec1_gcrypt_la-strings.lo: ../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gcrypt_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libxmlsec1_gcrypt_la-strings.lo -MD -MP -MF ../$(DEPDIR)/libxmlsec1_gcrypt_la-strings.Tpo -c -o ../libxmlsec1_gcrypt_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../$(DEPDIR)/libxmlsec1_gcrypt_la-strings.Tpo ../$(DEPDIR)/libxmlsec1_gcrypt_la-strings.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../strings.c' object='../libxmlsec1_gcrypt_la-strings.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gcrypt_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libxmlsec1_gcrypt_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
 clean-libtool:
 	-rm -rf .libs _libs
-	-rm -rf ../.libs ../_libs
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -809,8 +799,6 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-rm -f ../$(DEPDIR)/$(am__dirstamp)
-	-rm -f ../$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -821,7 +809,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -867,7 +855,7 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/src/gcrypt/app.c b/src/gcrypt/app.c
index dd5d770..1b4850a 100644
--- a/src/gcrypt/app.c
+++ b/src/gcrypt/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -34,6 +34,7 @@
  */
 int
 xmlSecGCryptAppInit(const char* config ATTRIBUTE_UNUSED) {
+    gcry_error_t err;
     /* Secure memory initialisation based on documentation from:
          http://www.gnupg.org/documentation/manuals/gcrypt/Initializing-the-library.html
        NOTE sample code don't check gcry_control(...) return code
@@ -65,18 +66,19 @@ Noteworthy changes in version 1.4.3 (2008-09-18)
 
     /* NOTE configure.in defines GCRYPT_MIN_VERSION */
     if (!gcry_check_version (GCRYPT_MIN_VERSION)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_check_version",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError2("gcry_check_version", GPG_ERR_NO_ERROR, NULL,
+                           "min_version=%ld", (long)GCRYPT_MIN_VERSION);
         return(-1);
     }
 
     /* We don't want to see any warnings, e.g. because we have not yet
        parsed program options which might be used to suppress such
        warnings. */
-    gcry_control(GCRYCTL_SUSPEND_SECMEM_WARN);
+    err = gcry_control(GCRYCTL_SUSPEND_SECMEM_WARN);
+    if(err != GPG_ERR_NO_ERROR) {
+        xmlSecGCryptError("gcry_control(GCRYCTL_SUSPEND_SECMEM_WARN)", err, NULL);
+        return(-1);
+    }
 
     /* ... If required, other initialization goes here.  Note that the
        process might still be running with increased privileges and that
@@ -84,17 +86,30 @@ Noteworthy changes in version 1.4.3 (2008-09-18)
 
     /* Allocate a pool of 32k secure memory.  This make the secure memory
        available and also drops privileges where needed.  */
-    gcry_control(GCRYCTL_INIT_SECMEM, 32768, 0);
+    err = gcry_control(GCRYCTL_INIT_SECMEM, 32768, 0);
+    if(err != GPG_ERR_NO_ERROR) {
+        xmlSecGCryptError("gcry_control(GCRYCTL_INIT_SECMEM)", err, NULL);
+        return(-1);
+    }
 
     /* It is now okay to let Libgcrypt complain when there was/is
       a problem with the secure memory. */
-    gcry_control(GCRYCTL_RESUME_SECMEM_WARN);
+    err = gcry_control(GCRYCTL_RESUME_SECMEM_WARN);
+    if(err != GPG_ERR_NO_ERROR) {
+        xmlSecGCryptError("gcry_control(GCRYCTL_RESUME_SECMEM_WARN)", err, NULL);
+        return(-1);
+    }
 
     /* ... If required, other initialization goes here.  */
 
     /* Tell Libgcrypt that initialization has completed. */
-    gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);
+    err = gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);
+    if(err != GPG_ERR_NO_ERROR) {
+        xmlSecGCryptError("gcry_control(GCRYCTL_INITIALIZATION_FINISHED)", err, NULL);
+        return(-1);
+    }
 
+    /* done */
     return(0);
 }
 
@@ -112,14 +127,12 @@ xmlSecGCryptAppShutdown(void) {
     gcry_error_t err;
 
     err = gcry_control(GCRYCTL_TERM_SECMEM);
-    if (gcry_err_code(err)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_control(GCRYCTL_TERM_SECMEM)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+    if(err != GPG_ERR_NO_ERROR) {
+        xmlSecGCryptError("gcry_control(GCRYCTL_TERM_SECMEM)", err, NULL);
         return(-1);
     }
+
+    /* done */
     return(0);
 }
 
@@ -149,22 +162,14 @@ xmlSecGCryptAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
 
     ret = xmlSecBufferInitialize(&buffer, 4*1024);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL) || (xmlSecBufferGetSize(&buffer) <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s", 
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -173,12 +178,8 @@ xmlSecGCryptAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
                     xmlSecBufferGetSize(&buffer),
                     format, pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppKeyLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecGCryptAppKeyLoadMemory", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -220,36 +221,21 @@ xmlSecGCryptAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     case xmlSecKeyDataFormatDer:
         key_data = xmlSecGCryptParseDer(data, dataSize, xmlSecGCryptDerKeyTypeAuto);
         if(key_data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptParseDer",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGCryptParseDer", NULL);
             return(NULL);
         }
         break;
     case xmlSecKeyDataFormatPem:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppKeyLoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("xmlSecKeyDataFormatPem");
         return (NULL);
 #ifndef XMLSEC_NO_X509
     case xmlSecKeyDataFormatPkcs12:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppKeyLoadMemory",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("xmlSecKeyDataFormatPkcs12");
         return (NULL);
 #endif /* XMLSEC_NO_X509 */
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
@@ -257,23 +243,15 @@ xmlSecGCryptAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     xmlSecAssert2(key_data != NULL, NULL);
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         xmlSecKeyDataDestroy(key_data);
         return(NULL);
     }
 
     ret = xmlSecKeySetValue(key, key_data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(key_data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(key_data));
         xmlSecKeyDestroy(key);
         xmlSecKeyDataDestroy(key_data);
         return(NULL);
@@ -304,11 +282,7 @@ xmlSecGCryptAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppKeyCertLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -334,11 +308,7 @@ xmlSecGCryptAppKeyCertLoadMemory(xmlSecKeyPtr key,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppKeyCertLoadMemory",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -364,11 +334,7 @@ xmlSecGCryptAppPkcs12Load(const char *filename,
     xmlSecAssert2(filename != NULL, NULL);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppPkcs12Load",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -395,11 +361,7 @@ xmlSecGCryptAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     xmlSecAssert2(dataSize > 0, NULL);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppPkcs12LoadMemory",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -426,11 +388,7 @@ xmlSecGCryptAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppKeysMngrCertLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -459,11 +417,7 @@ xmlSecGCryptAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecGCryptAppKeysMngrCertLoadMemory",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -490,21 +444,13 @@ xmlSecGCryptAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecSimpleKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -512,11 +458,7 @@ xmlSecGCryptAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecGCryptKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKeysMngrInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -545,21 +487,13 @@ xmlSecGCryptAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key)
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSimpleKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -586,21 +520,14 @@ xmlSecGCryptAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -627,22 +554,14 @@ xmlSecGCryptAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filename,
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreSave",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreSave", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
diff --git a/src/gcrypt/asn1.c b/src/gcrypt/asn1.c
index be3c799..b83e67f 100644
--- a/src/gcrypt/asn1.c
+++ b/src/gcrypt/asn1.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -202,12 +202,8 @@ xmlSecGCryptAsn1ParseIntegerSequence(xmlSecByte const **buffer, xmlSecSize *bufl
     memset(&ti, 0, sizeof(ti));
     ret = xmlSecGCryptAsn1ParseTag (&buf, &length, &ti);
     if((ret != 0)  || (ti.tag != TAG_SEQUENCE) || ti.class || !ti.cons || ti.ndef) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsn1ParseTag",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "TAG_SEQUENCE is expected: tag=%d",
-                    (int)ti.tag);
+        xmlSecInternalError2("xmlSecGCryptAsn1ParseTag", NULL,
+                            "TAG_SEQUENCE is expected: tag=%d", (int)ti.tag);
         return(-1);
     }
 
@@ -217,22 +213,15 @@ xmlSecGCryptAsn1ParseIntegerSequence(xmlSecByte const **buffer, xmlSecSize *bufl
         ret = xmlSecGCryptAsn1ParseTag (&buf, &length, &ti);
         if((ret != 0) || (ti.tag != TAG_INTEGER) || ti.class || ti.cons || ti.ndef)
         {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptAsn1ParseTag",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "TAG_INTEGER is expected - index=%d, tag=%d",
-                        (int)idx, (int)ti.tag);
+            xmlSecInternalError3("xmlSecGCryptAsn1ParseTag", NULL,
+                                 "TAG_INTEGER is expected - index=%d, tag=%d",
+                                 (int)idx, (int)ti.tag);
             return(-1);
         }
 
         err = gcry_mpi_scan(&(params[idx]), GCRYMPI_FMT_USG, buf, ti.length, NULL);
         if((err != GPG_ERR_NO_ERROR) || (params[idx] == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_mpi_scan",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_mpi_scan", err, NULL);
             return(-1);
         }
         buf += ti.length;
@@ -241,12 +230,9 @@ xmlSecGCryptAsn1ParseIntegerSequence(xmlSecByte const **buffer, xmlSecSize *bufl
 
     /* did we parse everything? */
     if(length > 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsn1ParseTag",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "too many params - cur=%d, expected=%d",
-                    (int)(idx - 1), (int)params_size);
+        xmlSecInternalError3("xmlSecGCryptAsn1ParseTag", NULL,
+                             "too many params - cur=%d, expected=%d",
+                             (int)(idx - 1), (int)params_size);
         return(-1);
     }
 
@@ -278,23 +264,15 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
         keyparms,  sizeof(keyparms) / sizeof(keyparms[0])
     );
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsn1ParseIntegerSequence",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptAsn1ParseIntegerSequence", NULL);
         goto done;
     }
     keyparms_num = ret;
 
     /* The value of the first integer should be 0. */
     if ((keyparms_num < 1) || (gcry_mpi_cmp_ui(keyparms[0], 0) != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsn1ParseTag",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "num=%d",
-                    (int)keyparms_num);
+        xmlSecInternalError2("xmlSecGCryptAsn1ParseTag", NULL,
+                             "num=%d", (int)keyparms_num);
         goto done;
     }
 
@@ -319,11 +297,8 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
             break;
         default:
             /* unknown */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "Unexpected number of parameters, unknown key type",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "keyparms_num=%d", (int)keyparms_num);
+            xmlSecInvalidIntegerDataError("keyparms_num", keyparms_num,
+                    "the number of parameters matching key type", NULL);
             goto done;
         }
     }
@@ -334,11 +309,8 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
     case xmlSecGCryptDerKeyTypePrivateDsa:
         /* check we have enough params */
         if(keyparms_num != 6) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "Private DSA key: 6 parameters exepcted",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "parms_num=%d", (int)keyparms_num);
+            xmlSecInvalidSizeError("Private DSA key params",
+                                   keyparms_num, 6, NULL);
             goto done;
         }
 
@@ -354,11 +326,7 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                 keyparms[1], keyparms[2], keyparms[3], keyparms[4], keyparms[5]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_priv_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(private-key/dsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(private-key/dsa)", err, NULL);
             goto done;
         }
 
@@ -367,32 +335,20 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                 keyparms[1], keyparms[2], keyparms[3], keyparms[5]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_pub_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(public-key/dsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(public-key/dsa)", err, NULL);
             goto done;
         }
 
         /* construct key and key data */
         key_data = xmlSecKeyDataCreate(xmlSecGCryptKeyDataDsaId);
         if(key_data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataDsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecGCryptKeyDataDsaId)", NULL);
             goto done;
         }
 
         ret = xmlSecGCryptKeyDataDsaAdoptKeyPair(key_data, s_pub_key, s_priv_key);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptKeyDataDsaAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataDsaId");
+            xmlSecInternalError("xmlSecGCryptKeyDataDsaAdoptKey(xmlSecGCryptKeyDataDsaId)", NULL);
             xmlSecKeyDataDestroy(key_data);
             key_data = NULL;
             goto done;
@@ -404,11 +360,8 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
     case xmlSecGCryptDerKeyTypePublicDsa:
         /* check we have enough params */
         if(keyparms_num != 5) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "Public DSA key: 5 parameters exepcted",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "parms_num=%d", (int)keyparms_num);
+            xmlSecInvalidSizeError("Public DSA key params",
+                                   keyparms_num, 5, NULL);
             goto done;
         }
 
@@ -418,32 +371,20 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                 keyparms[2], keyparms[3], keyparms[4], keyparms[1]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_pub_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(public-key/dsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(public-key/dsa)", err, NULL);
             goto done;
         }
 
         /* construct key and key data */
         key_data = xmlSecKeyDataCreate(xmlSecGCryptKeyDataDsaId);
         if(key_data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataDsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecGCryptKeyDataDsaId)", NULL);
             goto done;
         }
 
         ret = xmlSecGCryptKeyDataDsaAdoptKeyPair(key_data, s_pub_key, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptKeyDataDsaAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataDsaId");
+            xmlSecInternalError("xmlSecGCryptKeyDataDsaAdoptKey(xmlSecGCryptKeyDataDsaId)", NULL);
             xmlSecKeyDataDestroy(key_data);
             key_data = NULL;
             goto done;
@@ -456,11 +397,8 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
     case xmlSecGCryptDerKeyTypePrivateRsa:
         /* check we have enough params */
         if(keyparms_num != 9) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "Private RSA key: 9 parameters exepcted",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "parms_num=%d", (int)keyparms_num);
+            xmlSecInvalidSizeError("Private RSA key params",
+                                   keyparms_num, 9, NULL);
             goto done;
         }
 
@@ -479,11 +417,7 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                          keyparms[4], keyparms[5], keyparms[8]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_priv_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(private-key/rsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(private-key/rsa)", err, NULL);
             goto done;
         }
 
@@ -492,32 +426,20 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                          keyparms[1], keyparms[2]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_pub_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(public-key/rsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(public-key/rsa)", err, NULL);
             goto done;
         }
 
         /* construct key and key data */
         key_data = xmlSecKeyDataCreate(xmlSecGCryptKeyDataRsaId);
         if(key_data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecGCryptKeyDataRsaId)", NULL);
             goto done;
         }
 
         ret = xmlSecGCryptKeyDataRsaAdoptKeyPair(key_data, s_pub_key, s_priv_key);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptKeyDataRsaAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataRsaId");
+            xmlSecInternalError("xmlSecGCryptKeyDataRsaAdoptKey(xmlSecGCryptKeyDataRsaId)", NULL);
             xmlSecKeyDataDestroy(key_data);
             key_data = NULL;
             goto done;
@@ -529,11 +451,8 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
     case xmlSecGCryptDerKeyTypePublicRsa:
         /* check we have enough params */
         if(keyparms_num != 3) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "Public RSA key: 3 parameters exepcted",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "parms_num=%d", (int)keyparms_num);
+            xmlSecInvalidSizeError("Public RSA key params",
+                                   keyparms_num, 3, NULL);
             goto done;
         }
 
@@ -543,32 +462,20 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
                          keyparms[1], keyparms[2]
         );
         if((err != GPG_ERR_NO_ERROR) || (s_pub_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_sexp_build(public-key/rsa)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(public-key/rsa)", err, NULL);
             goto done;
         }
 
         /* construct key and key data */
         key_data = xmlSecKeyDataCreate(xmlSecGCryptKeyDataRsaId);
         if(key_data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecGCryptKeyDataRsaId)", NULL);
             goto done;
         }
 
         ret = xmlSecGCryptKeyDataRsaAdoptKeyPair(key_data, s_pub_key, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGCryptKeyDataRsaAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGCryptKeyDataRsaId");
+            xmlSecInternalError("xmlSecGCryptKeyDataRsaAdoptKey(xmlSecGCryptKeyDataRsaId)", NULL);
             xmlSecKeyDataDestroy(key_data);
             key_data = NULL;
             goto done;
@@ -578,11 +485,7 @@ xmlSecGCryptParseDer(const xmlSecByte * der, xmlSecSize derlen,
 #endif /* XMLSEC_NO_RSA */
 
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "Unsupported key type",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=%d", (int)type);
+        xmlSecInvalidIntegerTypeError("key_type", type, "supported key type", NULL);
         goto done;
         break;
     }
diff --git a/src/gcrypt/asymkeys.c b/src/gcrypt/asymkeys.c
index 03bb212..cdbd263 100644
--- a/src/gcrypt/asymkeys.c
+++ b/src/gcrypt/asymkeys.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -109,11 +109,8 @@ xmlSecGCryptAsymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(ctxSrc->pub_key != NULL) {
         ctxDst->pub_key = xmlSecGCryptAsymSExpDup(ctxSrc->pub_key);
         if(ctxDst->pub_key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecGCryptAsymSExpDup(pub_key)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGCryptAsymSExpDup(pub_key)",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
     }
@@ -121,11 +118,8 @@ xmlSecGCryptAsymKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(ctxSrc->priv_key != NULL) {
         ctxDst->priv_key = xmlSecGCryptAsymSExpDup(ctxSrc->priv_key);
         if(ctxDst->priv_key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecGCryptAsymSExpDup(priv_key)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGCryptAsymSExpDup(priv_key)",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
     }
@@ -170,22 +164,15 @@ xmlSecGCryptAsymKeyDataAdoptKey(xmlSecKeyDataPtr data, gcry_sexp_t key_pair) {
        not be present */
     pub_key = gcry_sexp_find_token(key_pair, "public-key", 0);
     if(pub_key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(public-key)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(public-key)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     priv_key = gcry_sexp_find_token(key_pair, "private-key", 0);
 
     /* assign */
     if(xmlSecGCryptAsymKeyDataAdoptKeyPair(data, pub_key, priv_key) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsymKeyDataAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptAsymKeyDataAdoptKeyPair", NULL);
         goto done;
     }
     pub_key = NULL; /* data owns it now */
@@ -286,31 +273,19 @@ xmlSecGCryptAsymKeyDataGenerate(xmlSecKeyDataPtr data, const char * alg, xmlSecS
                           "(genkey (%s (nbits %d)(transient-key)))",
                           alg, (int)key_size);
     if((err != GPG_ERR_NO_ERROR) || (key_spec == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(genkey)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(genkey)", err, NULL);
         goto done;
     }
 
     err = gcry_pk_genkey(&key_pair, key_spec);
     if((err != GPG_ERR_NO_ERROR) || (key_pair == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_pk_genkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_pk_genkey", err, NULL);
         goto done;
     }
 
     ret = xmlSecGCryptAsymKeyDataAdoptKey(data, key_pair);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAsymKeyDataAdopt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", (int)ret);
+        xmlSecInternalError("xmlSecGCryptAsymKeyDataAdopt", NULL);
         goto done;
     }
     key_pair = NULL; /* now owned by data */
@@ -378,41 +353,26 @@ xmlSecGCryptAsymSExpDup(gcry_sexp_t pKey) {
 
     size = gcry_sexp_sprint(pKey, GCRYSEXP_FMT_ADVANCED, NULL, 0);
     if(size == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_sprint",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_sprint", GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     buf = (xmlSecByte *)xmlMalloc(size);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)size);
+        xmlSecMallocError(size, NULL);
         goto done;
     }
 
     size = gcry_sexp_sprint(pKey, GCRYSEXP_FMT_ADVANCED, buf, size);
     if(size == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_sprint",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", (int)size);
+        xmlSecGCryptError2("gcry_sexp_sprint", GPG_ERR_NO_ERROR, NULL,
+                           "size=%lu", (unsigned long)size);
         goto done;
     }
 
     err = gcry_sexp_new(&res, buf, size, 1);
     if((err != GPG_ERR_NO_ERROR) || (res == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_new", err, NULL);
         goto done;
     }
 
@@ -446,21 +406,13 @@ xmlSecGCryptNodeGetMpiValue(const xmlNodePtr cur) {
 
     ret = xmlSecBufferInitialize(&buf, 128);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferBase64NodeContentRead(&buf, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentRead", NULL);
         xmlSecBufferFinalize(&buf);
         return(NULL);
     }
@@ -470,11 +422,7 @@ xmlSecGCryptNodeGetMpiValue(const xmlNodePtr cur) {
                          xmlSecBufferGetSize(&buf),
                          NULL);
     if((err != GPG_ERR_NO_ERROR) || (res == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan", err, NULL);
         xmlSecBufferFinalize(&buf);
         return(NULL);
     }
@@ -513,21 +461,14 @@ xmlSecGCryptNodeSetMpiValue(xmlNodePtr cur, const gcry_mpi_t a, int addLineBreak
     written = 0;
     err = gcry_mpi_print(GCRYMPI_FMT_USG, NULL, 0, &written, a);
     if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_print",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_print", err, NULL);
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&buf, written + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)written + 1);
+        xmlSecInternalError2("xmlSecBufferInitialize", NULL,
+                             "size=%d", (int)written + 1);
         return(-1);
     }
 
@@ -537,22 +478,15 @@ xmlSecGCryptNodeSetMpiValue(xmlNodePtr cur, const gcry_mpi_t a, int addLineBreak
             xmlSecBufferGetMaxSize(&buf),
             &written, a);
     if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_print",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_print", err, NULL);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
 
     ret = xmlSecBufferSetSize(&buf, written);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "written=%d", (int)written);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", (int)written);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -565,11 +499,7 @@ xmlSecGCryptNodeSetMpiValue(xmlNodePtr cur, const gcry_mpi_t a, int addLineBreak
 
     ret = xmlSecBufferBase64NodeContentWrite(&buf, cur, xmlSecBase64GetDefaultLineSize());
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentWrite", NULL);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -613,23 +543,14 @@ xmlSecGCryptNodeSetSExpTokValue(xmlNodePtr cur, const gcry_sexp_t sexp,
 
     val = gcry_sexp_find_token(sexp, tok, 0);
     if(val == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "tok=%s",
-                    xmlSecErrorsSafeString(tok));
+        xmlSecGCryptError2("gcry_sexp_find_token", GPG_ERR_NO_ERROR, NULL,
+                           "tok=%s", xmlSecErrorsSafeString(tok));
         goto done;
     }
 
     mpi = gcry_sexp_nth_mpi(val, 1, GCRYMPI_FMT_USG);
     if(mpi == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_nth_mpi",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "tok=%s",
-                    xmlSecErrorsSafeString(tok));
+        xmlSecGCryptError("gcry_sexp_nth_mpi", GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
@@ -945,11 +866,9 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         goto done;
     }
 
@@ -957,66 +876,39 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
 
     /* first is P node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeDSAP, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAP, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     p = xmlSecGCryptNodeGetMpiValue(cur);
     if(p == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Q node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAQ, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAQ, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     q = xmlSecGCryptNodeGetMpiValue(cur);
     if(q == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is G node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAG, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAG, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     g = xmlSecGCryptNodeGetMpiValue(cur);
     if(g == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1026,12 +918,8 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
          * we are not sure exactly what do we read */
         x = xmlSecGCryptNodeGetMpiValue(cur);
         if(x == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptNodeGetMpiValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeDSAX)",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
         cur = xmlSecGetNextElementNode(cur->next);
@@ -1039,21 +927,13 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
 
     /* next is Y node. */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAY, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAY, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     y = xmlSecGCryptNodeGetMpiValue(cur);
     if(y == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1074,11 +954,7 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1093,11 +969,8 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
              "(public-key(dsa(p%m)(q%m)(g%m)(y%m)))",
              p, q, g, y);
     if((err != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "gcry_sexp_build(public)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(public)", err,
+                          xmlSecKeyDataGetName(data));
         goto done;
     }
     if(x != NULL) {
@@ -1105,11 +978,8 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
                  "(private-key(dsa(p%m)(q%m)(g%m)(x%m)(y%m)))",
                  p, q, g, x, y);
         if((err != GPG_ERR_NO_ERROR) || (priv_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "gcry_sexp_build(private)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(private)", err,
+                              xmlSecKeyDataGetName(data));
             goto done;
         }
     }
@@ -1117,21 +987,15 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
     /* create key data */
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecGCryptKeyDataDsaAdoptKeyPair(data, pub_key, priv_key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGCryptKeyDataDsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataDsaAdoptKeyPair",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     pub_key = NULL; /* pub_key is owned by data now */
@@ -1140,11 +1004,8 @@ xmlSecGCryptKeyDataDsaXmlRead(xmlSecKeyDataId id,
     /* set key */
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     data = NULL; /* data is owned by key now */
@@ -1214,11 +1075,8 @@ xmlSecGCryptKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(pub_priv_key == NULL) {
         pub_priv_key = xmlSecGCryptKeyDataDsaGetPublicKey(xmlSecKeyGetValue(key));
         if(pub_priv_key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptKeyDataDsaGetPublicKey()",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGCryptKeyDataDsaGetPublicKey()",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     } else {
@@ -1227,77 +1085,50 @@ xmlSecGCryptKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     dsa = gcry_sexp_find_token(pub_priv_key, "dsa", 0);
     if(dsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "gcry_sexp_find_token(dsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(dsa)", GPG_ERR_NO_ERROR,
+                          xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* first is P node */
     cur = xmlSecAddChild(node, xmlSecNodeDSAP, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAP)",
+                             xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, dsa, "p", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* next is Q node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAQ, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, dsa, "q", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* next is G node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAG, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, dsa, "g", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1305,22 +1136,14 @@ xmlSecGCryptKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(((keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePrivate) != 0) && (private != 0)) {
         cur = xmlSecAddChild(node, xmlSecNodeDSAX, xmlSecNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError("xmlSecAddChild(NodeDSAX)",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
         ret = xmlSecGCryptNodeSetSExpTokValue(cur, dsa, "x", 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptNodeSetSExpTokValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeDSAX)",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     }
@@ -1328,22 +1151,14 @@ xmlSecGCryptKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is Y node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAY, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, dsa, "y", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1623,11 +1438,9 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    "key already has a value");
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         goto done;
     }
 
@@ -1635,44 +1448,26 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is Modulus node. It is REQUIRED */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeRSAModulus, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAModulus, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     n = xmlSecGCryptNodeGetMpiValue(cur);
     if(n == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Exponent node. It is REQUIRED */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeRSAExponent, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAExponent, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     e = xmlSecGCryptNodeGetMpiValue(cur);
     if(e == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeGetMpiValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1681,23 +1476,15 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
         /* next is PrivateExponent node. It is REQUIRED for private key */
         d = xmlSecGCryptNodeGetMpiValue(cur);
         if(d == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptNodeGetMpiValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError("xmlSecGCryptNodeGetMpiValue(NodeRSAPrivateExponent)",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
         cur = xmlSecGetNextElementNode(cur->next);
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1706,11 +1493,8 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
              "(public-key(rsa(n%m)(e%m)))",
              n, e);
     if((err != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "gcry_sexp_build(public)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(public)", err,
+                          xmlSecKeyDataGetName(data));
         goto done;
     }
     if(d != NULL) {
@@ -1718,11 +1502,8 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
                  "(private-key(rsa(n%m)(e%m)(d%m)))",
                  n, e, d);
         if((err != GPG_ERR_NO_ERROR) || (priv_key == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "gcry_sexp_build(private)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_sexp_build(private)", err,
+                              xmlSecKeyDataGetName(data));
             goto done;
         }
     }
@@ -1731,21 +1512,15 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* create key data */
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecGCryptKeyDataRsaAdoptKeyPair(data, pub_key, priv_key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGCryptKeyDataRsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataRsaAdoptKeyPair",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     pub_key = NULL; /* pub_key is owned by data now */
@@ -1754,11 +1529,8 @@ xmlSecGCryptKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* set key */
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     data = NULL; /* data is owned by key now */
@@ -1822,11 +1594,8 @@ xmlSecGCryptKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(pub_priv_key == NULL) {
         pub_priv_key = xmlSecGCryptKeyDataRsaGetPublicKey(xmlSecKeyGetValue(key));
         if(pub_priv_key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptKeyDataRsaGetPublicKey()",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGCryptKeyDataRsaGetPublicKey()",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     } else {
@@ -1835,55 +1604,37 @@ xmlSecGCryptKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     rsa = gcry_sexp_find_token(pub_priv_key, "rsa", 0);
     if(rsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "gcry_sexp_find_token(rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(rsa)",
+                          GPG_ERR_NO_ERROR,
+                          xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* first is Modulus node */
     cur = xmlSecAddChild(node, xmlSecNodeRSAModulus, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
        goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, rsa, "n", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* next is Exponent node. */
     cur = xmlSecAddChild(node, xmlSecNodeRSAExponent, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
        goto done;
     }
     ret = xmlSecGCryptNodeSetSExpTokValue(cur, rsa, "e", 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGCryptNodeSetSExpTokValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
        goto done;
     }
 
@@ -1891,22 +1642,14 @@ xmlSecGCryptKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(((keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePrivate) != 0) && (private != 0)) {
         cur = xmlSecAddChild(node, xmlSecNodeRSAPrivateExponent, xmlSecNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError("xmlSecAddChild(NodeRSAPrivateExponent)",
+                                xmlSecKeyDataKlassGetName(id));
            goto done;
         }
         ret = xmlSecGCryptNodeSetSExpTokValue(cur, rsa, "d", 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGCryptNodeSetSExpTokValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError("xmlSecGCryptNodeSetSExpTokValue(NodeRSAPrivateExponent)",
+                                xmlSecKeyDataKlassGetName(id));
            goto done;
         }
     }
diff --git a/src/gcrypt/ciphers.c b/src/gcrypt/ciphers.c
index 76c1d5a..91db557 100644
--- a/src/gcrypt/ciphers.c
+++ b/src/gcrypt/ciphers.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -84,11 +84,8 @@ xmlSecGCryptBlockCipherCtxInit(xmlSecGCryptBlockCipherCtxPtr ctx,
         outSize = xmlSecBufferGetSize(out);
         ret = xmlSecBufferSetSize(out, outSize + blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize + blockLen);
+            xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                                 "size=%d", outSize + blockLen);
             return(-1);
         }
         iv = xmlSecBufferGetData(out) + outSize;
@@ -97,11 +94,8 @@ xmlSecGCryptBlockCipherCtxInit(xmlSecGCryptBlockCipherCtxPtr ctx,
         gcry_randomize(iv, blockLen, GCRY_STRONG_RANDOM);
         err = gcry_cipher_setiv(ctx->cipherCtx, iv, blockLen);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_setiv",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_setiv", err,
+                              cipherName);
             return(-1);
         }
     } else {
@@ -115,22 +109,16 @@ xmlSecGCryptBlockCipherCtxInit(xmlSecGCryptBlockCipherCtxPtr ctx,
         /* set iv */
         err = gcry_cipher_setiv(ctx->cipherCtx, xmlSecBufferGetData(in), blockLen);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_setiv",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_setiv", err,
+                              cipherName);
             return(-1);
         }
 
         /* and remove from input */
         ret = xmlSecBufferRemoveHead(in, blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", blockLen);
+            xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                                 "size=%d", blockLen);
             return(-1);
         }
     }
@@ -181,11 +169,8 @@ xmlSecGCryptBlockCipherCtxUpdate(xmlSecGCryptBlockCipherCtxPtr ctx,
     /* we write out the input size plus may be one block */
     ret = xmlSecBufferSetMaxSize(out, outSize + inSize + blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + inSize + blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                             "size=%d", outSize + inSize + blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -194,22 +179,16 @@ xmlSecGCryptBlockCipherCtxUpdate(xmlSecGCryptBlockCipherCtxPtr ctx,
         err = gcry_cipher_encrypt(ctx->cipherCtx, outBuf, inSize + blockLen,
                                 xmlSecBufferGetData(in), inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_encrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_encrypt", err,
+                              cipherName);
             return(-1);
         }
     } else {
         err = gcry_cipher_decrypt(ctx->cipherCtx, outBuf, inSize + blockLen,
                                 xmlSecBufferGetData(in), inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_decrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_decrypt", err,
+                              cipherName);
             return(-1);
         }
     }
@@ -217,22 +196,16 @@ xmlSecGCryptBlockCipherCtxUpdate(xmlSecGCryptBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + inSize);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + inSize);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
     return(0);
@@ -272,11 +245,8 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
         /* create padding */
         ret = xmlSecBufferSetMaxSize(in, blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", blockLen);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                                 "size=%d", blockLen);
             return(-1);
         }
         inBuf = xmlSecBufferGetData(in);
@@ -290,11 +260,7 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
         inSize = blockLen;
     } else {
         if(inSize != (xmlSecSize)blockLen) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "data=%d;block=%d", inSize, blockLen);
+            xmlSecInvalidSizeError("Input data", inSize, blockLen, cipherName);
             return(-1);
         }
     }
@@ -302,11 +268,8 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
     /* process last block */
     ret = xmlSecBufferSetMaxSize(out, outSize + 2 * blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + 2 * blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                             "size=%d", outSize + 2 * blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -315,22 +278,16 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
         err = gcry_cipher_encrypt(ctx->cipherCtx, outBuf, inSize + blockLen,
                                 xmlSecBufferGetData(in), inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_encrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_encrypt", err,
+                              cipherName);
             return(-1);
         }
     } else {
         err = gcry_cipher_decrypt(ctx->cipherCtx, outBuf, inSize + blockLen,
                                 xmlSecBufferGetData(in), inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "gcry_cipher_decrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_decrypt", err,
+                              cipherName);
             return(-1);
         }
     }
@@ -338,12 +295,8 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
     if(encrypt == 0) {
         /* check padding */
         if(inSize < outBuf[blockLen - 1]) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "padding=%d;buffer=%d",
-                        outBuf[blockLen - 1], inSize);
+            xmlSecInvalidSizeLessThanError("Input data padding",
+                    inSize, outBuf[blockLen - 1], cipherName);
             return(-1);
         }
         outLen = inSize - outBuf[blockLen - 1];
@@ -354,22 +307,16 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + outLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + outLen);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
 
@@ -377,22 +324,16 @@ xmlSecGCryptBlockCipherCtxFinal(xmlSecGCryptBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + outLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + outLen);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
 
@@ -483,21 +424,14 @@ xmlSecGCryptBlockCipherInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_AES */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     err = gcry_cipher_open(&ctx->cipherCtx, ctx->cipher, ctx->mode, GCRY_CIPHER_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_cipher_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_open", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -573,23 +507,16 @@ xmlSecGCryptBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) < keySize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=%d;expected=%d",
-                    xmlSecBufferGetSize(buffer), keySize);
+        xmlSecInvalidKeyDataSizeError(xmlSecBufferGetSize(buffer), keySize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     xmlSecAssert2(xmlSecBufferGetData(buffer) != NULL, -1);
     err = gcry_cipher_setkey(ctx->cipherCtx, xmlSecBufferGetData(buffer), keySize);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_cipher_setkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setkey", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -624,20 +551,14 @@ xmlSecGCryptBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTra
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecGCryptBlockCipherCtxInit",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGCryptBlockCipherCtxInit",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
         if((ctx->ctxInitialized == 0) && (last != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "not enough data to initialize transform");
+            xmlSecInvalidDataError("not enough data to initialize transform",
+                                    xmlSecTransformGetName(transform));
             return(-1);
         }
         if(ctx->ctxInitialized != 0) {
@@ -645,11 +566,8 @@ xmlSecGCryptBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTra
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecGCryptBlockCipherCtxUpdate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGCryptBlockCipherCtxUpdate",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -659,11 +577,8 @@ xmlSecGCryptBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTra
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecGCryptBlockCipherCtxFinal",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGCryptBlockCipherCtxFinal",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             transform->status = xmlSecTransformStatusFinished;
@@ -675,11 +590,7 @@ xmlSecGCryptBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         /* the only way we can get here is if there is no enough data in the input */
         xmlSecAssert2(last == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/gcrypt/crypto.c b/src/gcrypt/crypto.c
index d02eb59..2458058 100644
--- a/src/gcrypt/crypto.c
+++ b/src/gcrypt/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -234,21 +234,13 @@ int
 xmlSecGCryptInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_gcrypt()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
 
@@ -301,11 +293,8 @@ xmlSecGCryptGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
 
     ret = xmlSecBufferSetSize(buffer, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", size);
         return(-1);
     }
 
diff --git a/src/gcrypt/digests.c b/src/gcrypt/digests.c
index d947446..38d8964 100644
--- a/src/gcrypt/digests.c
+++ b/src/gcrypt/digests.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -155,22 +155,15 @@ xmlSecGCryptDigestInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_RIPEMD160 */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create digest ctx */
     err = gcry_md_open(&ctx->digestCtx, ctx->digest, GCRY_MD_FLAG_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_md_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_open", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -210,22 +203,15 @@ xmlSecGCryptDigestVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(ctx->dgstSize > 0, -1);
 
     if(dataSize != ctx->dgstSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest sizes are different (data=%d, dgst=%d)",
-                    dataSize, ctx->dgstSize);
+        xmlSecInvalidSizeError("Input data",
+                dataSize, ctx->dgstSize, xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     if(memcmp(ctx->dgst, data, dataSize) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest do not match");
+        xmlSecInvalidDataError("data and digest do not match",
+                xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -266,11 +252,9 @@ xmlSecGCryptDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -281,11 +265,8 @@ xmlSecGCryptDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             gcry_md_final(ctx->digestCtx);
             buf = gcry_md_read(ctx->digestCtx, ctx->digest);
             if(buf == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "gcry_md_read",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecGCryptError("gcry_md_read", GPG_ERR_NO_ERROR,
+                                  xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -299,11 +280,9 @@ xmlSecGCryptDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, ctx->dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", ctx->dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", ctx->dgstSize);
                     return(-1);
                 }
             }
@@ -313,11 +292,7 @@ xmlSecGCryptDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/gcrypt/globals.h b/src/gcrypt/globals.h
index 3da464d..37198c2 100644
--- a/src/gcrypt/globals.h
+++ b/src/gcrypt/globals.h
@@ -21,10 +21,60 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
 
 #define XMLSEC_GCRYPT_MAX_DIGEST_SIZE           256
-#define XMLSEC_GCRYPT_REPORT_ERROR(err)         \
-        "error code=%d; error message='%s'",    \
-        (int)err, xmlSecErrorsSafeString(gcry_strerror((err)))
+
+
+/**
+ * xmlSecGCryptError:
+ * @errorFunction:      the failed function name.
+ * @errCode:            the GCrypt error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting GCrypt crypro errors.
+ */
+#define xmlSecGCryptError(errorFunction, errCode, errorObject)  \
+    {                                                       \
+        const char* source = gcry_strsource((errCode));     \
+        const char* message = gcry_strerror((errCode));     \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    "gcrypt error: %ld: %s: %s",            \
+                    (long)(errCode),                        \
+                    xmlSecErrorsSafeString(source),         \
+                    xmlSecErrorsSafeString(message)         \
+        );                                                  \
+    }
+
+/**
+ * xmlSecGCryptError2:
+ * @errorFunction:      the failed function name.
+ * @errCode:            the GCrypt error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting GCrypt crypro errors.
+ */
+#define xmlSecGCryptError2(errorFunction, errCode, errorObject, msg, param) \
+    {                                                       \
+        const char* source = gcry_strsource((errCode));     \
+        const char* message = gcry_strerror((errCode));     \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    msg "; gcrypt error: %ld: %s:  %s",       \
+                    (param),                                \
+                    (long)(errCode),                        \
+                    xmlSecErrorsSafeString(source),         \
+                    xmlSecErrorsSafeString(message)         \
+        );                                                  \
+    }
+
 
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/gcrypt/hmac.c b/src/gcrypt/hmac.c
index 631b470..7358dfb 100644
--- a/src/gcrypt/hmac.c
+++ b/src/gcrypt/hmac.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -199,22 +199,15 @@ xmlSecGCryptHmacInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* open context */
     err = gcry_md_open(&ctx->digestCtx, ctx->digest, GCRY_MD_FLAG_HMAC | GCRY_MD_FLAG_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_md_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_open", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -287,11 +280,8 @@ xmlSecGCryptHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTr
            small value
         */
         if((int)ctx->dgstSize < xmlSecGCryptHmacGetMinOutputLength()) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                    "HMAC output length is too small");
+           xmlSecInvalidNodeContentError(cur, xmlSecTransformGetName(transform),
+                                         "HMAC output length is too small");
            return(-1);
         }
 
@@ -299,11 +289,7 @@ xmlSecGCryptHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTr
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -356,22 +342,15 @@ xmlSecGCryptHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key is empty");
+        xmlSecInvalidZeroKeyDataSizeError(xmlSecTransformGetName(transform));
         return(-1);
     }
 
     err = gcry_md_setkey(ctx->digestCtx, xmlSecBufferGetData(buffer),
                         xmlSecBufferGetSize(buffer));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_md_setkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_setkey", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -400,13 +379,10 @@ xmlSecGCryptHmacVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(ctx->dgstSize > 0, -1);
 
     /* compare the digest size in bytes */
-    if(dataSize != ((ctx->dgstSize + 7) / 8)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data=%d;dgst=%d",
-                    dataSize, ((ctx->dgstSize + 7) / 8));
+    if(dataSize != ((ctx->dgstSize + 7) / 8)) {
+        xmlSecInvalidSizeError("HMAC digest size",
+                              dataSize, ((ctx->dgstSize + 7) / 8),
+                              xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -415,22 +391,18 @@ xmlSecGCryptHmacVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(dataSize > 0, -1);
     mask = last_byte_masks[ctx->dgstSize % 8];
     if((ctx->dgst[dataSize - 1] & mask) != (data[dataSize - 1]  & mask)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match (last byte)");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match (last byte)");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     /* now check the rest of the digest */
     if((dataSize > 1) && (memcmp(ctx->dgst, data, dataSize - 1) != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -472,11 +444,9 @@ xmlSecGCryptHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformC
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -485,11 +455,8 @@ xmlSecGCryptHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformC
             gcry_md_final(ctx->digestCtx);
             dgst = gcry_md_read(ctx->digestCtx, ctx->digest);
             if(dgst == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "gcry_md_read",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecGCryptError("gcry_md_read", GPG_ERR_NO_ERROR,
+                                  xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -505,23 +472,18 @@ xmlSecGCryptHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformC
             } else if(ctx->dgstSize <= 8 * dgstSize) {
                 dgstSize = ((ctx->dgstSize + 7) / 8); /* we need to truncate result digest */
             } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_SIZE,
-                            "result-bits=%d;required-bits=%d",
-                            8 * dgstSize, ctx->dgstSize);
+                xmlSecInvalidSizeLessThanError("HMAC digest (bits)",
+                                        8 * dgstSize, ctx->dgstSize,
+                                        xmlSecTransformGetName(transform));
                 return(-1);
             }
 
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", dgstSize);
                     return(-1);
                 }
             }
@@ -531,11 +493,7 @@ xmlSecGCryptHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformC
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "size=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/gcrypt/kw_aes.c b/src/gcrypt/kw_aes.c
index 32bc5cc..8bafa22 100644
--- a/src/gcrypt/kw_aes.c
+++ b/src/gcrypt/kw_aes.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * AES Algorithm support
  *
@@ -111,11 +110,7 @@ xmlSecGCryptKWAesInitialize(xmlSecTransformPtr transform) {
         ctx->cipher             = GCRY_CIPHER_AES256;
         ctx->keyExpectedSize    = XMLSEC_KW_AES256_KEY_SIZE;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
     ctx->mode           = GCRY_CIPHER_MODE_CBC;
@@ -125,11 +120,8 @@ xmlSecGCryptKWAesInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecGCryptKWAesGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKWAesGetKey",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -194,12 +186,8 @@ xmlSecGCryptKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < ctx->keyExpectedSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key=%d;expected=%d",
-                    keySize, ctx->keyExpectedSize);
+        xmlSecInvalidKeyDataSizeError(keySize, ctx->keyExpectedSize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -207,12 +195,9 @@ xmlSecGCryptKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
                             xmlSecBufferGetData(buffer),
                             ctx->keyExpectedSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "expected-size=%d", 
-                    ctx->keyExpectedSize);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", ctx->keyExpectedSize);
         return(-1);
     }
 
@@ -251,11 +236,8 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % 8) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "size=%d(not 8 bytes aligned)", inSize);
+            xmlSecInvalidSizeNotMultipleOfError("Input data", inSize, 8,
+                                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -269,11 +251,9 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "outSize=%d", outSize);
             return(-1);
         }
 
@@ -282,11 +262,8 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -295,11 +272,8 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -307,21 +281,17 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "outSize=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "inSize%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "inSize%d", inSize);
             return(-1);
         }
 
@@ -330,11 +300,7 @@ xmlSecGCryptKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -482,11 +448,7 @@ xmlSecGCryptKWAesBlockEncrypt(const xmlSecByte * in, xmlSecSize inSize,
 
     err = gcry_cipher_open(&cipherCtx, ctx->cipher, ctx->mode, ctx->flags); 
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_open", err, NULL);
         return(-1);
     }
 
@@ -494,32 +456,20 @@ xmlSecGCryptKWAesBlockEncrypt(const xmlSecByte * in, xmlSecSize inSize,
                              xmlSecBufferGetData(&ctx->keyBuffer),
                              xmlSecBufferGetSize(&ctx->keyBuffer));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setkey", err, NULL);
         return(-1);
     }
 
     /* use zero IV and CBC mode to ensure we get result as-is */
     err = gcry_cipher_setiv(cipherCtx, g_zero_iv, sizeof(g_zero_iv));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setiv",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setiv", err, NULL);
         return(-1);
     }
 
     err = gcry_cipher_encrypt(cipherCtx, out, outSize, in, inSize);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_encrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_encrypt", err, NULL);
         gcry_cipher_close(cipherCtx);
         return(-1);
     }
@@ -544,11 +494,7 @@ xmlSecGCryptKWAesBlockDecrypt(const xmlSecByte * in, xmlSecSize inSize,
 
     err = gcry_cipher_open(&cipherCtx, ctx->cipher, ctx->mode, ctx->flags);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_open", err, NULL);
         return(-1);
     }
 
@@ -556,32 +502,20 @@ xmlSecGCryptKWAesBlockDecrypt(const xmlSecByte * in, xmlSecSize inSize,
                              xmlSecBufferGetData(&ctx->keyBuffer),
                              xmlSecBufferGetSize(&ctx->keyBuffer));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setkey", err, NULL);
         return(-1);
     }
 
     /* use zero IV and CBC mode to ensure we get result as-is */
     err = gcry_cipher_setiv(cipherCtx, g_zero_iv, sizeof(g_zero_iv));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setiv",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setiv", err, NULL);
         return(-1);
     }
 
     err = gcry_cipher_decrypt(cipherCtx, out, outSize, in, inSize);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_decrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_decrypt", err, NULL);
         gcry_cipher_close(cipherCtx);
         return(-1);
     }
diff --git a/src/gcrypt/kw_des.c b/src/gcrypt/kw_des.c
index 67e76c5..d972cc7 100644
--- a/src/gcrypt/kw_des.c
+++ b/src/gcrypt/kw_des.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
@@ -158,11 +157,8 @@ xmlSecGCryptKWDes3Initialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -226,22 +222,16 @@ xmlSecGCryptKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < XMLSEC_KW_DES3_KEY_LENGTH) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key length %d is not enough (%d expected)",
-                    keySize, XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInvalidKeyDataSizeError(keySize, XMLSEC_KW_DES3_KEY_LENGTH,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecBufferSetData(&(ctx->keyBuffer), xmlSecBufferGetData(buffer), XMLSEC_KW_DES3_KEY_LENGTH);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
         return(-1);
     }
 
@@ -280,12 +270,9 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % XMLSEC_KW_DES3_BLOCK_LENGTH) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "%d bytes - not %d bytes aligned",
-                        inSize, XMLSEC_KW_DES3_BLOCK_LENGTH);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                    inSize, XMLSEC_KW_DES3_BLOCK_LENGTH,
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -301,11 +288,9 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -314,12 +299,8 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Encode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Encode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d", keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -328,12 +309,8 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Decode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Decode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d", keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -341,21 +318,17 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -364,11 +337,7 @@ xmlSecGCryptKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -400,11 +369,7 @@ xmlSecGCryptKWDes3Sha1(void * context,
 
     err = gcry_md_open(&digestCtx, GCRY_MD_SHA1, GCRY_MD_FLAG_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_md_open(GCRY_MD_SHA1)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_open(GCRY_MD_SHA1)", err, NULL);
         return(-1);
     }
 
@@ -412,22 +377,14 @@ xmlSecGCryptKWDes3Sha1(void * context,
 
     err = gcry_md_final(digestCtx);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_md_final",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_final", err, NULL);
         gcry_md_close(digestCtx);
         return(-1);
     }
 
     res = gcry_md_read(digestCtx, GCRY_MD_SHA1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_md_read(GCRY_MD_SHA1)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_md_read", GPG_ERR_NO_ERROR, NULL);
         gcry_md_close(digestCtx);
         return(-1);
     }
@@ -477,11 +434,7 @@ xmlSecGCryptKWDes3BlockEncrypt(void * context,
                                     out, outSize,
                                     1); /* encrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKWDes3Encrypt", NULL);
         return(-1);
     }
 
@@ -513,11 +466,7 @@ xmlSecGCryptKWDes3BlockDecrypt(void * context,
                                     out, outSize,
                                     0); /* decrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKWDes3Encrypt", NULL);
         return(-1);
     }
     return(ret);
@@ -545,53 +494,33 @@ xmlSecGCryptKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
 
     err = gcry_cipher_open(&cipherCtx, GCRY_CIPHER_3DES, GCRY_CIPHER_MODE_CBC, GCRY_CIPHER_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_open(GCRY_CIPHER_3DES)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_open(GCRY_CIPHER_3DES)", err, NULL);
         return(-1);
     }
 
     err = gcry_cipher_setkey(cipherCtx, key, keySize);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setkey", err, NULL);
         return(-1);
     }
 
     err = gcry_cipher_setiv(cipherCtx, iv, ivSize);
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_cipher_setiv",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_cipher_setiv", err, NULL);
         return(-1);
     }
 
     if(enc) {
         err = gcry_cipher_encrypt(cipherCtx, out, outSize, in, inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_cipher_encrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_encrypt", err, NULL);
             gcry_cipher_close(cipherCtx);
             return(-1);
         }
     } else {
         err = gcry_cipher_decrypt(cipherCtx, out, outSize, in, inSize);
         if(err != GPG_ERR_NO_ERROR) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_cipher_decrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GCRYPT_REPORT_ERROR(err));
+            xmlSecGCryptError("gcry_cipher_decrypt", err, NULL);
             gcry_cipher_close(cipherCtx);
             return(-1);
         }
diff --git a/src/gcrypt/signatures.c b/src/gcrypt/signatures.c
index 1d3f77a..846115c 100644
--- a/src/gcrypt/signatures.c
+++ b/src/gcrypt/signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -260,22 +260,15 @@ xmlSecGCryptPkSignatureInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_RSA */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create digest ctx */
     err = gcry_md_open(&ctx->digestCtx, ctx->digest, GCRY_MD_FLAG_SECURE); /* we are paranoid */
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "gcry_md_open",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_md_open", err,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -327,11 +320,8 @@ xmlSecGCryptPkSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     ctx->key_data = xmlSecKeyDataDuplicate(key_data);
     if(ctx->key_data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecKeyDataDuplicate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataDuplicate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -386,11 +376,7 @@ xmlSecGCryptPkSignatureVerify(xmlSecTransformPtr transform,
 
     ret = ctx->verify(ctx->digest, ctx->key_data, ctx->dgst, ctx->dgstSize, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "ctx->verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("ctx->verify", xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -398,11 +384,9 @@ xmlSecGCryptPkSignatureVerify(xmlSecTransformPtr transform,
     if(ret == 1) {
         transform->status = xmlSecTransformStatusOk;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "ctx->verify",
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "signature do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "ctx->verify: signature does not verify");
         transform->status = xmlSecTransformStatusFail;
     }
 
@@ -451,11 +435,9 @@ xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -468,11 +450,8 @@ xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
             gcry_md_final(ctx->digestCtx);
             buf = gcry_md_read(ctx->digestCtx, ctx->digest);
             if(buf == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "gcry_md_read",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecGCryptError("gcry_md_read", GPG_ERR_NO_ERROR,
+                                  xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -486,11 +465,8 @@ xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = ctx->sign(ctx->digest, ctx->key_data, ctx->dgst, ctx->dgstSize, out);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "ctx->sign",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("ctx->sign",
+                                        xmlSecTransformGetName(transform));
                     return(-1);
                 }
             }
@@ -504,11 +480,7 @@ xmlSecGCryptPkSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
@@ -537,11 +509,7 @@ xmlSecGCryptAppendMpi(gcry_mpi_t a, xmlSecBufferPtr out, xmlSecSize min_size) {
     written = 0;
     err = gcry_mpi_print(GCRYMPI_FMT_USG, NULL, 0, &written, a);
     if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_print",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_print", err, NULL);
         return(-1);
     }
 
@@ -553,11 +521,8 @@ xmlSecGCryptAppendMpi(gcry_mpi_t a, xmlSecBufferPtr out, xmlSecSize min_size) {
     /* allocate space */
     ret = xmlSecBufferSetMaxSize(out, outSize + written + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)(outSize + written + 1));
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", NULL,
+                             "size=%d", (int)(outSize + written + 1));
         return(-1);
     }
     xmlSecAssert2(xmlSecBufferGetMaxSize(out) > outSize, -1);
@@ -579,23 +544,15 @@ xmlSecGCryptAppendMpi(gcry_mpi_t a, xmlSecBufferPtr out, xmlSecSize min_size) {
             xmlSecBufferGetMaxSize(out) - outSize,
             &written, a);
     if((err != GPG_ERR_NO_ERROR) || (written == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_print",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_print", err, NULL);
         return(-1);
     }
 
     /* reset size */
     ret = xmlSecBufferSetSize(out, outSize + written);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d",
-                    (int)(outSize + written));
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                            "size=%d", (int)(outSize + written));
         return(-1);
     }
 
@@ -654,11 +611,7 @@ xmlSecGCryptDsaPkSign(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
     /* get the current digest, can't use "hash" :( */
     err = gcry_mpi_scan(&m_hash, GCRYMPI_FMT_USG, dgst, dgstSize, NULL);
     if((err != GPG_ERR_NO_ERROR) || (m_hash == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan(hash)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan(hash)", err, NULL);
         goto done;
     }
 
@@ -666,33 +619,22 @@ xmlSecGCryptDsaPkSign(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
                            "(data (flags raw)(value %m))",
                            m_hash);
     if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(data)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(data)", err, NULL);
         goto done;
     }
 
     /* create signature */
     err = gcry_pk_sign(&s_sig, s_data, xmlSecGCryptKeyDataDsaGetPrivateKey(key_data));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_pk_sign",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_pk_sign", err, NULL);
         goto done;
     }
 
     /* find signature value */
     s_tmp = gcry_sexp_find_token(s_sig, "sig-val", 0);
     if(s_tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(sig-val)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(sig-val)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     gcry_sexp_release(s_sig);
@@ -700,11 +642,8 @@ xmlSecGCryptDsaPkSign(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
 
     s_tmp = gcry_sexp_find_token(s_sig, "dsa", 0);
     if(s_tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(rsa)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(dsa)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     gcry_sexp_release(s_sig);
@@ -713,63 +652,43 @@ xmlSecGCryptDsaPkSign(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
     /* r */
     s_r = gcry_sexp_find_token(s_sig, "r", 0);
     if(s_r == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(r)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(r)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     m_r = gcry_sexp_nth_mpi(s_r, 1, GCRYMPI_FMT_USG);
     if(m_r == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_nth_mpi(r)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_nth_mpi(r)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     /* s */
     s_s = gcry_sexp_find_token(s_sig, "s", 0);
     if(s_s == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(s)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     m_s = gcry_sexp_nth_mpi(s_s, 1, GCRYMPI_FMT_USG);
     if(m_s == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_nth_mpi(s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_nth_mpi(s)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     /* write out: r + s */
     ret = xmlSecGCryptAppendMpi(m_r, out, 20);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppendMpi",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptAppendMpi", NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBufferGetSize(out) == 20, -1);
     ret = xmlSecGCryptAppendMpi(m_s, out, 20);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppendMpi",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptAppendMpi", NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBufferGetSize(out) == (20 + 20), -1);
@@ -826,11 +745,7 @@ xmlSecGCryptDsaPkVerify(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
     /* get the current digest, can't use "hash" :( */
     err = gcry_mpi_scan(&m_hash, GCRYMPI_FMT_USG, dgst, dgstSize, NULL);
     if((err != GPG_ERR_NO_ERROR) || (m_hash == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan(hash)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan(hash)", err, NULL);
         goto done;
     }
 
@@ -838,31 +753,19 @@ xmlSecGCryptDsaPkVerify(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
                            "(data (flags raw)(value %m))",
                            m_hash);
     if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(data)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(data)", err, NULL);
         goto done;
     }
 
     /* get the existing signature */
     err = gcry_mpi_scan(&m_sig_r, GCRYMPI_FMT_USG, data, 20, NULL);
     if((err != GPG_ERR_NO_ERROR) || (m_sig_r == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan(r)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan(r)", err, NULL);
         goto done;
     }
     err = gcry_mpi_scan(&m_sig_s, GCRYMPI_FMT_USG, data + 20, 20, NULL);
     if((err != GPG_ERR_NO_ERROR) || (m_sig_s == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan(s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan(s)", err, NULL);
         goto done;
     }
 
@@ -870,11 +773,7 @@ xmlSecGCryptDsaPkVerify(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
                            "(sig-val(dsa(r %m)(s %m)))",
                            m_sig_r, m_sig_s);
     if((err != GPG_ERR_NO_ERROR) || (s_sig == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(sig-val)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(sig-val)", err, NULL);
         goto done;
     }
 
@@ -885,11 +784,7 @@ xmlSecGCryptDsaPkVerify(int digest ATTRIBUTE_UNUSED, xmlSecKeyDataPtr key_data,
     } else if(err == GPG_ERR_BAD_SIGNATURE) {
         res = 0; /* bad signature */
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_pk_verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_pk_verify", err, NULL);
         goto done;
     }
 
@@ -1020,33 +915,22 @@ xmlSecGCryptRsaPkcs1PkSign(int digest, xmlSecKeyDataPtr key_data,
                            gcry_md_algo_name(digest),
                            (int)dgstSize, dgst);
     if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(data)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(data)", err, NULL);
         goto done;
     }
 
     /* create signature */
     err = gcry_pk_sign(&s_sig, s_data, xmlSecGCryptKeyDataRsaGetPrivateKey(key_data));
     if(err != GPG_ERR_NO_ERROR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_pk_sign",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_pk_sign", err, NULL);
         goto done;
     }
 
     /* find signature value */
     s_tmp = gcry_sexp_find_token(s_sig, "sig-val", 0);
     if(s_tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(sig-val)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(sig-val)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     gcry_sexp_release(s_sig);
@@ -1054,11 +938,8 @@ xmlSecGCryptRsaPkcs1PkSign(int digest, xmlSecKeyDataPtr key_data,
 
     s_tmp = gcry_sexp_find_token(s_sig, "rsa", 0);
     if(s_tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(rsa)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(rsa)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     gcry_sexp_release(s_sig);
@@ -1066,11 +947,8 @@ xmlSecGCryptRsaPkcs1PkSign(int digest, xmlSecKeyDataPtr key_data,
 
     s_tmp = gcry_sexp_find_token(s_sig, "s", 0);
     if(s_tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_find_token(s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_find_token(s)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
     gcry_sexp_release(s_sig);
@@ -1078,22 +956,15 @@ xmlSecGCryptRsaPkcs1PkSign(int digest, xmlSecKeyDataPtr key_data,
 
     m_sig = gcry_sexp_nth_mpi(s_sig, 1, GCRYMPI_FMT_USG);
     if(m_sig == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_nth_mpi(1)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecGCryptError("gcry_sexp_nth_mpi(1)",
+                          GPG_ERR_NO_ERROR, NULL);
         goto done;
     }
 
     /* write out */
     ret = xmlSecGCryptAppendMpi(m_sig, out, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptAppendMpi",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptAppendMpi", NULL);
         goto done;
     }
 
@@ -1138,22 +1009,14 @@ xmlSecGCryptRsaPkcs1PkVerify(int digest, xmlSecKeyDataPtr key_data,
                            gcry_md_algo_name(digest),
                            (int)dgstSize, dgst);
     if((err != GPG_ERR_NO_ERROR) || (s_data == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(data)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(data)", err, NULL);
         goto done;
     }
 
     /* get the existing signature */
     err = gcry_mpi_scan(&m_sig, GCRYMPI_FMT_USG, data, dataSize, NULL);
     if((err != GPG_ERR_NO_ERROR) || (m_sig == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_mpi_scan",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_mpi_scan", err, NULL);
         goto done;
     }
 
@@ -1161,11 +1024,7 @@ xmlSecGCryptRsaPkcs1PkVerify(int digest, xmlSecKeyDataPtr key_data,
                            "(sig-val(rsa(s %m)))",
                            m_sig);
     if((err != GPG_ERR_NO_ERROR) || (s_sig == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(sig-val)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_sexp_build(sig-val)", err, NULL);
         goto done;
     }
 
@@ -1176,11 +1035,7 @@ xmlSecGCryptRsaPkcs1PkVerify(int digest, xmlSecKeyDataPtr key_data,
     } else if(err == GPG_ERR_BAD_SIGNATURE) {
         res = 0; /* bad signature */
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_pk_verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GCRYPT_REPORT_ERROR(err));
+        xmlSecGCryptError("gcry_pk_verify", err, NULL);
         goto done;
     }
 
diff --git a/src/gcrypt/symkeys.c b/src/gcrypt/symkeys.c
index ecd8368..c07b93e 100644
--- a/src/gcrypt/symkeys.c
+++ b/src/gcrypt/symkeys.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
diff --git a/src/globals.h b/src/globals.h
index 5cc7070..b55443a 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -22,4 +22,7 @@
 #define IN_XMLSEC
 #define XMLSEC_PRIVATE
 
+/* Include common error helper macros. */
+#include "errors_helpers.h"
+
 #endif /* __XMLSEC_GLOBALS_H__ */
diff --git a/src/gnutls/Makefile.am b/src/gnutls/Makefile.am
index 84ce637..370b7a0 100644
--- a/src/gnutls/Makefile.am
+++ b/src/gnutls/Makefile.am
@@ -36,10 +36,6 @@ libxmlsec1_gnutls_la_SOURCES =\
 	globals.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_gnutls_la_SOURCES += ../strings.c
-endif
-
 # xmlsec-gnutls library requires xmlsec-gcrypt
 libxmlsec1_gnutls_la_LIBADD = \
 	$(GNUTLS_LIBS) \
diff --git a/src/gnutls/Makefile.in b/src/gnutls/Makefile.in
index 2d254f6..7b3e8cc 100644
--- a/src/gnutls/Makefile.in
+++ b/src/gnutls/Makefile.in
@@ -88,7 +88,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
- at SHAREDLIB_HACK_TRUE@am__append_1 = ../strings.c
 subdir = src/gnutls
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -132,14 +131,7 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(libdir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-am__libxmlsec1_gnutls_la_SOURCES_DIST = app.c ciphers.c crypto.c \
-	digests.c hmac.c kw_aes.c kw_des.c symkeys.c asymkeys.c \
-	signatures.c x509utils.h x509utils.c x509.c x509vfy.c \
-	globals.h ../strings.c
 am__objects_1 =
-am__dirstamp = $(am__leading_dot)dirstamp
- at SHAREDLIB_HACK_TRUE@am__objects_2 =  \
- at SHAREDLIB_HACK_TRUE@	../libxmlsec1_gnutls_la-strings.lo
 am_libxmlsec1_gnutls_la_OBJECTS = libxmlsec1_gnutls_la-app.lo \
 	libxmlsec1_gnutls_la-ciphers.lo libxmlsec1_gnutls_la-crypto.lo \
 	libxmlsec1_gnutls_la-digests.lo libxmlsec1_gnutls_la-hmac.lo \
@@ -148,8 +140,7 @@ am_libxmlsec1_gnutls_la_OBJECTS = libxmlsec1_gnutls_la-app.lo \
 	libxmlsec1_gnutls_la-asymkeys.lo \
 	libxmlsec1_gnutls_la-signatures.lo \
 	libxmlsec1_gnutls_la-x509utils.lo libxmlsec1_gnutls_la-x509.lo \
-	libxmlsec1_gnutls_la-x509vfy.lo $(am__objects_1) \
-	$(am__objects_2)
+	libxmlsec1_gnutls_la-x509vfy.lo $(am__objects_1)
 libxmlsec1_gnutls_la_OBJECTS = $(am_libxmlsec1_gnutls_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -194,7 +185,7 @@ am__v_CCLD_ = $(am__v_CCLD_ at AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libxmlsec1_gnutls_la_SOURCES)
-DIST_SOURCES = $(am__libxmlsec1_gnutls_la_SOURCES_DIST)
+DIST_SOURCES = $(libxmlsec1_gnutls_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -283,6 +274,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -330,6 +322,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -346,6 +339,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -435,6 +429,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -462,10 +457,24 @@ libxmlsec1_gnutls_la_CPPFLAGS = \
 	$(LIBXML_CFLAGS) \
 	$(NULL)
 
-libxmlsec1_gnutls_la_SOURCES = app.c ciphers.c crypto.c digests.c \
-	hmac.c kw_aes.c kw_des.c symkeys.c asymkeys.c signatures.c \
-	x509utils.h x509utils.c x509.c x509vfy.c globals.h $(NULL) \
-	$(am__append_1)
+libxmlsec1_gnutls_la_SOURCES = \
+	app.c \
+	ciphers.c \
+	crypto.c \
+	digests.c \
+	hmac.c \
+	kw_aes.c \
+	kw_des.c \
+	symkeys.c \
+	asymkeys.c \
+	signatures.c \
+	x509utils.h \
+	x509utils.c \
+	x509.c \
+	x509vfy.c \
+	globals.h \
+	$(NULL)
+
 
 # xmlsec-gnutls library requires xmlsec-gcrypt
 libxmlsec1_gnutls_la_LIBADD = \
@@ -552,27 +561,16 @@ clean-libLTLIBRARIES:
 	  echo rm -f $${locs}; \
 	  rm -f $${locs}; \
 	}
-../$(am__dirstamp):
-	@$(MKDIR_P) ..
-	@: > ../$(am__dirstamp)
-../$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ../$(DEPDIR)
-	@: > ../$(DEPDIR)/$(am__dirstamp)
-../libxmlsec1_gnutls_la-strings.lo: ../$(am__dirstamp) \
-	../$(DEPDIR)/$(am__dirstamp)
 
 libxmlsec1-gnutls.la: $(libxmlsec1_gnutls_la_OBJECTS) $(libxmlsec1_gnutls_la_DEPENDENCIES) $(EXTRA_libxmlsec1_gnutls_la_DEPENDENCIES) 
 	$(AM_V_CCLD)$(libxmlsec1_gnutls_la_LINK) -rpath $(libdir) $(libxmlsec1_gnutls_la_OBJECTS) $(libxmlsec1_gnutls_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
-	-rm -f ../*.$(OBJEXT)
-	-rm -f ../*.lo
 
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ../$(DEPDIR)/libxmlsec1_gnutls_la-strings.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gnutls_la-app.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gnutls_la-asymkeys.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_gnutls_la-ciphers.Plo at am__quote@
@@ -702,19 +700,11 @@ libxmlsec1_gnutls_la-x509vfy.lo: x509vfy.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gnutls_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libxmlsec1_gnutls_la-x509vfy.lo `test -f 'x509vfy.c' || echo '$(srcdir)/'`x509vfy.c
 
-../libxmlsec1_gnutls_la-strings.lo: ../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gnutls_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libxmlsec1_gnutls_la-strings.lo -MD -MP -MF ../$(DEPDIR)/libxmlsec1_gnutls_la-strings.Tpo -c -o ../libxmlsec1_gnutls_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../$(DEPDIR)/libxmlsec1_gnutls_la-strings.Tpo ../$(DEPDIR)/libxmlsec1_gnutls_la-strings.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../strings.c' object='../libxmlsec1_gnutls_la-strings.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_gnutls_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libxmlsec1_gnutls_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
 clean-libtool:
 	-rm -rf .libs _libs
-	-rm -rf ../.libs ../_libs
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -831,8 +821,6 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-rm -f ../$(DEPDIR)/$(am__dirstamp)
-	-rm -f ../$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -843,7 +831,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -889,7 +877,7 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/src/gnutls/app.c b/src/gnutls/app.c
index 042f311..e59d0cf 100644
--- a/src/gnutls/app.c
+++ b/src/gnutls/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -51,11 +51,7 @@ xmlSecGnuTLSAppInit(const char* config) {
 
     err = gnutls_global_init();
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_global_init",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_global_init", err, NULL);
         return(-1);
     }
 
@@ -180,22 +176,14 @@ xmlSecGnuTLSAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
 
     ret = xmlSecBufferInitialize(&buffer, 4*1024);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL) || (xmlSecBufferGetSize(&buffer) <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s", 
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -205,12 +193,8 @@ xmlSecGnuTLSAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
                     xmlSecBufferGetSize(&buffer),
                     format);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSAppKeyCertLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecGnuTLSAppKeyCertLoadMemory", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -247,31 +231,19 @@ xmlSecGnuTLSAppKeyCertLoadMemory(xmlSecKeyPtr key,
 
     keyData = xmlSecKeyEnsureData(key, xmlSecGnuTLSKeyDataX509Id);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
         return(-1);
     }
 
     cert = xmlSecGnuTLSX509CertRead(data, dataSize, format);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertRead", NULL);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(keyData, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert", NULL);
         gnutls_x509_crt_deinit(cert);
         return(-1);
     }
@@ -305,22 +277,14 @@ xmlSecGnuTLSAppPkcs12Load(const char *filename,
 
     ret = xmlSecBufferInitialize(&buffer, 4*1024);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL) || (xmlSecBufferGetSize(&buffer) <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s", 
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -329,12 +293,8 @@ xmlSecGnuTLSAppPkcs12Load(const char *filename,
                     xmlSecBufferGetSize(&buffer),
                     pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSAppPkcs12LoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecGnuTLSAppPkcs12LoadMemory", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -380,56 +340,36 @@ xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     /* prepare */
     ret = xmlSecPtrListInitialize(&(certsList), xmlSecGnuTLSX509CrtListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "certsList");
+        xmlSecInternalError("xmlSecPtrListInitialize(certsListId)", NULL);
         return(NULL);
     }
 
     /* load pkcs12 */
     ret = xmlSecGnuTLSPkcs12LoadMemory(data, dataSize, pwd, &priv_key, &key_cert, &certsList);
     if((ret < 0) || (priv_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSPkcs12LoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSPkcs12LoadMemory", NULL);
         goto done;
     }
 
     /* create key */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         goto done;
     }
 
     /* create key value data */
     keyData = xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey(priv_key);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey", NULL);
         goto done;
     }
     priv_key = NULL; /* owned by keyData now */
 
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     keyData = NULL; /* owned by key now */
@@ -442,11 +382,7 @@ xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 
         x509Data = xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataX509Id);
         if(x509Data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataX509Id)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataX509Id)", NULL);
             goto done;
         }
 
@@ -454,11 +390,7 @@ xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
         if(key_cert != NULL) {
             ret = xmlSecGnuTLSKeyDataX509AdoptKeyCert(x509Data, key_cert);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSKeyDataX509AdoptKeyCert",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptKeyCert", NULL);
                 goto done;
             }
             key_cert = NULL; /* owned by x509Data now */
@@ -473,11 +405,7 @@ xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 
             ret = xmlSecGnuTLSKeyDataX509AdoptCert(x509Data, cert);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSKeyDataX509AdoptCert",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert", NULL);
                 gnutls_x509_crt_deinit(cert);
                 goto done;
             }
@@ -486,12 +414,8 @@ xmlSecGnuTLSAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
         /* set in the key */
         ret = xmlSecKeyAdoptData(key, x509Data);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyAdoptData",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecKeyAdoptData",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         x509Data = NULL; /* owned by key now */
@@ -533,22 +457,14 @@ xmlSecGnuTLSAppKeyFromCertLoad(const char *filename,
 
     ret = xmlSecBufferInitialize(&buffer, 4*1024);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL) || (xmlSecBufferGetSize(&buffer) <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s", 
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -558,12 +474,8 @@ xmlSecGnuTLSAppKeyFromCertLoad(const char *filename,
                     xmlSecBufferGetSize(&buffer),
                     format);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSAppKeyFromCertLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecGnuTLSAppKeyFromCertLoadMemory", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -592,44 +504,28 @@ xmlSecGnuTLSAppKeyFromCertLoadMemory(const xmlSecByte* data,
     /* read cert */
     cert = xmlSecGnuTLSX509CertRead(data, dataSize, format);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertRead", NULL);
         goto done;
     }
 
     /* create key */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         goto done;
     }
 
     /* create key value data */
     keyData = xmlSecGnuTLSX509CertGetKey(cert);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetKey", NULL);
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     keyData = NULL; /* owned by key now */
@@ -637,20 +533,12 @@ xmlSecGnuTLSAppKeyFromCertLoadMemory(const xmlSecByte* data,
     /* create x509 data */
     x509Data = xmlSecKeyEnsureData(key, xmlSecGnuTLSKeyDataX509Id);
     if(x509Data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
         goto done;
     }
     ret = xmlSecGnuTLSKeyDataX509AdoptKeyCert(x509Data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSKeyDataX509AdoptKeyCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptKeyCert", NULL);
         goto done;
     }
     cert = NULL; /* owned by x509Data now */
@@ -699,22 +587,14 @@ xmlSecGnuTLSAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,
 
     ret = xmlSecBufferInitialize(&buffer, 4*1024);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL) || (xmlSecBufferGetSize(&buffer) <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s", 
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -725,12 +605,8 @@ xmlSecGnuTLSAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr,
                     format,
                     type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSAppKeysMngrCertLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecGnuTLSAppKeysMngrCertLoadMemory", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -770,31 +646,19 @@ xmlSecGnuTLSAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr,
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecGnuTLSX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecGnuTLSX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(StoreId)", NULL);
         return(-1);
     }
 
     cert = xmlSecGnuTLSX509CertRead(data, dataSize, format);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertRead", NULL);
         return(-1);
     }
 
     ret = xmlSecGnuTLSX509StoreAdoptCert(x509Store, cert, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509StoreAdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509StoreAdoptCert", NULL);
         gnutls_x509_crt_deinit(cert);
         return(-1);
     }
@@ -825,21 +689,13 @@ xmlSecGnuTLSAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecSimpleKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -847,11 +703,7 @@ xmlSecGnuTLSAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecGnuTLSKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSKeysMngrInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -880,21 +732,13 @@ xmlSecGnuTLSAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key)
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSimpleKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -921,21 +765,14 @@ xmlSecGnuTLSAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -962,22 +799,14 @@ xmlSecGnuTLSAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filename,
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreSave",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreSave", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
diff --git a/src/gnutls/asymkeys.c b/src/gnutls/asymkeys.c
index 8c82b70..9496598 100644
--- a/src/gnutls/asymkeys.c
+++ b/src/gnutls/asymkeys.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -60,13 +60,10 @@ static int xmlSecGnuTLSConvertParamsToMpis(gnutls_datum_t * params, xmlSecSize p
     xmlSecAssert2(paramsNum == mpisNum, -1);
 
     for(ii = 0; ii < paramsNum; ++ii) {
+        mpis[ii] = NULL;
         rc = gcry_mpi_scan(&(mpis[ii]), GCRYMPI_FMT_USG, params[ii].data, params[ii].size, NULL);
         if((rc != GPG_ERR_NO_ERROR) || (mpis[ii] == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gcry_mpi_scan",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+            xmlSecGnuTLSGCryptError("gcry_mpi_scan", rc, NULL);
             xmlSecGnuTLSDestroyMpis(mpis, ii); /* destroy up to now */
             return(-1);
         }
@@ -118,11 +115,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
             &(params[0]), &(params[1]), &(params[2]),
             &(params[3]), &(params[4]));
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_privkey_export_dsa_raw",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_privkey_export_dsa_raw", err, NULL);
         return(-1);
     }
 
@@ -131,11 +124,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
             params, sizeof(params)/sizeof(params[0]),
             mpis, sizeof(mpis)/sizeof(mpis[0]));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSConvertParamsToMpis",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSConvertParamsToMpis", NULL);
         xmlSecGnuTLSDestroyParams(params, sizeof(params)/sizeof(params[0]));
         return(-1);
     }
@@ -151,22 +140,14 @@ xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
     rc = gcry_sexp_build(&(priv_key), NULL, "(private-key(dsa(p%m)(q%m)(g%m)(y%m)(x%m)))",
                         mpis[0], mpis[1], mpis[2], mpis[3], mpis[4]);
     if((rc != GPG_ERR_NO_ERROR) || (priv_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/dsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(private/dsa)", rc, NULL);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
     }
     rc = gcry_sexp_build(&(pub_key), NULL, "(public-key(dsa(p%m)(q%m)(g%m)(y%m)))",
                         mpis[0], mpis[1], mpis[2], mpis[3]);
     if((rc != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(public/dsa)", rc, NULL);
         gcry_sexp_release(priv_key);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
@@ -175,11 +156,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
 
     ret = xmlSecGCryptKeyDataDsaAdoptKeyPair(data, pub_key, priv_key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKeyDataDsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataDsaAdoptKeyPair", NULL);
         gcry_sexp_release(pub_key);
         gcry_sexp_release(priv_key);
         return(-1);
@@ -230,11 +207,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPublicKey(xmlSecKeyDataPtr data,
             params, sizeof(params)/sizeof(params[0]),
             mpis, sizeof(mpis)/sizeof(mpis[0]));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSConvertParamsToMpis",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSConvertParamsToMpis", NULL);
         /* don't destroy params - we got them from outside !!! */
         return(-1);
     }
@@ -244,11 +217,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPublicKey(xmlSecKeyDataPtr data,
     rc = gcry_sexp_build(&(pub_key), NULL, "(public-key(dsa(p%m)(q%m)(g%m)(y%m)))",
                         mpis[0], mpis[1], mpis[2], mpis[3]);
     if((rc != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(public/dsa)", rc, NULL);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
     }
@@ -256,11 +225,7 @@ xmlSecGnuTLSKeyDataDsaAdoptPublicKey(xmlSecKeyDataPtr data,
 
     ret = xmlSecGCryptKeyDataDsaAdoptKeyPair(data, pub_key, NULL);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKeyDataDsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataDsaAdoptKeyPair", NULL);
         gcry_sexp_release(pub_key);
         return(-1);
     }
@@ -318,11 +283,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
             &(params[0]), &(params[1]), &(params[2]),
             &(params[3]), &(params[4]), &(params[5]));
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_privkey_export_rsa_raw",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_privkey_export_rsa_raw", err, NULL);
         return(-1);
     }
 
@@ -331,11 +292,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
             params, sizeof(params)/sizeof(params[0]),
             mpis, sizeof(mpis)/sizeof(mpis[0]));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSConvertParamsToMpis",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSConvertParamsToMpis", NULL);
         xmlSecGnuTLSDestroyParams(params, sizeof(params)/sizeof(params[0]));
         return(-1);
     }
@@ -354,22 +311,14 @@ xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
                         mpis[0], mpis[1], mpis[2],
                         mpis[3], mpis[4], mpis[5]);
     if((rc != GPG_ERR_NO_ERROR) || (priv_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(private/rsa)", rc, NULL);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
     }
     rc = gcry_sexp_build(&(pub_key), NULL, "(public-key(rsa((n%m)(e%m))))",
                         mpis[0], mpis[1]);
     if((rc != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(public/rsa)", rc, NULL);
         gcry_sexp_release(priv_key);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
@@ -378,11 +327,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(xmlSecKeyDataPtr data, gnutls_x509_privkey
 
     ret = xmlSecGCryptKeyDataRsaAdoptKeyPair(data, pub_key, priv_key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKeyDataRsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataRsaAdoptKeyPair", NULL);
         gcry_sexp_release(pub_key);
         gcry_sexp_release(priv_key);
         return(-1);
@@ -426,11 +371,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPublicKey(xmlSecKeyDataPtr data,
             params, sizeof(params)/sizeof(params[0]),
             mpis, sizeof(mpis)/sizeof(mpis[0]));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSConvertParamsToMpis",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSConvertParamsToMpis", NULL);
         /* don't destroy params - we got them from outside !!! */
         return(-1);
     }
@@ -440,11 +381,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPublicKey(xmlSecKeyDataPtr data,
     rc = gcry_sexp_build(&(pub_key), NULL, "(public-key(rsa((n%m)(e%m))))",
                         mpis[0], mpis[1]);
     if((rc != GPG_ERR_NO_ERROR) || (pub_key == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gcry_sexp_build(private/rsa)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(rc));
+        xmlSecGnuTLSGCryptError("gcry_sexp_build(public/rsa)", rc, NULL);
         xmlSecGnuTLSDestroyMpis(mpis, sizeof(mpis)/sizeof(mpis[0]));
         return(-1);
     }
@@ -452,11 +389,7 @@ xmlSecGnuTLSKeyDataRsaAdoptPublicKey(xmlSecKeyDataPtr data,
 
     ret = xmlSecGCryptKeyDataRsaAdoptKeyPair(data, pub_key, NULL);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGCryptKeyDataRsaAdoptKeyPair",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGCryptKeyDataRsaAdoptKeyPair", NULL);
         gcry_sexp_release(pub_key);
         return(-1);
     }
diff --git a/src/gnutls/ciphers.c b/src/gnutls/ciphers.c
index e38fa7d..bb573ba 100644
--- a/src/gnutls/ciphers.c
+++ b/src/gnutls/ciphers.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/gnutls/crypto.c b/src/gnutls/crypto.c
index 0921f2c..6b10442 100644
--- a/src/gnutls/crypto.c
+++ b/src/gnutls/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -242,21 +242,13 @@ int
 xmlSecGnuTLSInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_gnutls()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
 
@@ -296,21 +288,13 @@ xmlSecGnuTLSKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         x509Store = xmlSecKeyDataStoreCreate(xmlSecGnuTLSX509StoreId);
         if(x509Store == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGnuTLSX509StoreId");
+            xmlSecInternalError("xmlSecKeyDataStoreCreate(StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptDataStore(mngr, x509Store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptDataStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptDataStore", NULL);
             xmlSecKeyDataStoreDestroy(x509Store);
             return(-1);
         }
@@ -337,11 +321,8 @@ xmlSecGnuTLSGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
 
     ret = xmlSecBufferSetSize(buffer, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", size);
         return(-1);
     }
 
diff --git a/src/gnutls/digests.c b/src/gnutls/digests.c
index 94f3aa6..33303b2 100644
--- a/src/gnutls/digests.c
+++ b/src/gnutls/digests.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/gnutls/globals.h b/src/gnutls/globals.h
index 1f9f35c..09cb251 100644
--- a/src/gnutls/globals.h
+++ b/src/gnutls/globals.h
@@ -21,11 +21,74 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
-#define XMLSEC_GNUTLS_GCRYPT_REPORT_ERROR(err)  \
-        "error code=%d; error message='%s'",    \
-        (int)err, xmlSecErrorsSafeString(gcry_strerror((err)))
-#define XMLSEC_GNUTLS_REPORT_ERROR(err)         \
-        "error code=%d; error message='%s'",    \
-        (int)err, xmlSecErrorsSafeString(gnutls_strerror((err)))
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
 
+/**
+ * xmlSecGnuTLSGCryptError:
+ * @errorFunction:      the failed function name.
+ * @errCode:            the GCrypt error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting GnuTLS-GCrypt errors.
+ */
+#define xmlSecGnuTLSGCryptError(errorFunction, errCode, errorObject)  \
+    {                                                       \
+        const char* source = gcry_strsource((errCode));     \
+        const char* message = gcry_strerror((errCode));     \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    "gcrypt error: %ld: %s: %s",            \
+                    (long)(errCode),                        \
+                    xmlSecErrorsSafeString(source),         \
+                    xmlSecErrorsSafeString(message)         \
+        );                                                  \
+    }
+
+/**
+ * xmlSecGnuTLSError:
+ * @errorFunction:      the failed function name.
+ * @errCode:            the GnuTLS error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting GnuTLS errors.
+ */
+#define xmlSecGnuTLSError(errorFunction, errCode, errorObject)  \
+    {                                                       \
+        const char* message = gnutls_strerror((errCode));   \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    "gnutls error: %ld: %s",                \
+                    (long)(errCode),                        \
+                    xmlSecErrorsSafeString(message)         \
+        );                                                  \
+    }
+
+/**
+ * xmlSecGnuTLSError2:
+ * @errorFunction:      the failed function name.
+ * @errCode:            the GnuTLS error code.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting GnuTLS errors.
+ */
+#define xmlSecGnuTLSError2(errorFunction, errCode, errorObject, msg, param)  \
+    {                                                       \
+        const char* message = gnutls_strerror((errCode));   \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    msg  "gnutls error: %ld: %s",           \
+                    (param),                                \
+                    (long)(errCode),                        \
+                    xmlSecErrorsSafeString(message)         \
+        );                                                  \
+    }
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/gnutls/hmac.c b/src/gnutls/hmac.c
index 7656805..f18cbca 100644
--- a/src/gnutls/hmac.c
+++ b/src/gnutls/hmac.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/gnutls/kw_aes.c b/src/gnutls/kw_aes.c
index 4186374..6ef45b3 100644
--- a/src/gnutls/kw_aes.c
+++ b/src/gnutls/kw_aes.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * AES Algorithm support
  *
diff --git a/src/gnutls/kw_des.c b/src/gnutls/kw_des.c
index 79660bd..0c930f8 100644
--- a/src/gnutls/kw_des.c
+++ b/src/gnutls/kw_des.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
diff --git a/src/gnutls/signatures.c b/src/gnutls/signatures.c
index 136644c..4ce555d 100644
--- a/src/gnutls/signatures.c
+++ b/src/gnutls/signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/gnutls/symkeys.c b/src/gnutls/symkeys.c
index 74727ee..0b4ac71 100644
--- a/src/gnutls/symkeys.c
+++ b/src/gnutls/symkeys.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
diff --git a/src/gnutls/x509.c b/src/gnutls/x509.c
index a3e3370..c01bcbd 100644
--- a/src/gnutls/x509.c
+++ b/src/gnutls/x509.c
@@ -1,5 +1,6 @@
-/**
- * XMLSec library
+
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -328,11 +329,8 @@ xmlSecGnuTLSKeyDataX509AdoptCert(xmlSecKeyDataPtr data, gnutls_x509_crt_t cert)
 
     ret = xmlSecPtrListAdd(&(ctx->certsList), cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -403,11 +401,8 @@ xmlSecGnuTLSKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, gnutls_x509_crl_t crl) {
 
     ret = xmlSecPtrListAdd(&(ctx->crlsList), crl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -471,21 +466,15 @@ xmlSecGnuTLSKeyDataX509Initialize(xmlSecKeyDataPtr data) {
 
     ret = xmlSecPtrListInitialize(&(ctx->certsList), xmlSecGnuTLSX509CrtListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "certsList");
+        xmlSecInternalError("xmlSecPtrListInitialize(certsList)",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     ret = xmlSecPtrListInitialize(&(ctx->crlsList), xmlSecGnuTLSX509CrlListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "crlsList");
+        xmlSecInternalError("xmlSecPtrListInitialize(crlsList)",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -514,11 +503,8 @@ xmlSecGnuTLSKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(ctxSrc->keyCert != NULL) {
         ctxDst->keyCert = xmlSecGnuTLSX509CertDup(ctxSrc->keyCert);
         if(ctxDst->keyCert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecGnuTLSX509CertDup",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGnuTLSX509CertDup",
+                                xmlSecKeyDataGetName(src));
             return(-1);
         }
     }
@@ -527,11 +513,8 @@ xmlSecGnuTLSKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     xmlSecPtrListEmpty(&(ctxDst->certsList));
     ret = xmlSecPtrListCopy(&(ctxDst->certsList), &(ctxSrc->certsList));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "certsList");
+        xmlSecInternalError("xmlSecPtrListCopy(certsList)",
+                            xmlSecKeyDataGetName(src));
         return(-1);
     }
 
@@ -539,13 +522,11 @@ xmlSecGnuTLSKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     xmlSecPtrListEmpty(&(ctxDst->crlsList));
     ret = xmlSecPtrListCopy(&(ctxDst->crlsList), &(ctxSrc->crlsList));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "crlsList");
+        xmlSecInternalError("xmlSecPtrListCopy(crlsList)",
+                            xmlSecKeyDataGetName(src));
         return(-1);
     }
+
     /* done */
     return(0);
 }
@@ -580,34 +561,23 @@ xmlSecGnuTLSKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyEnsureData(key, id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecGnuTLSX509DataNodeRead(data, node, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGnuTLSX509DataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509DataNodeRead",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
-    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
-        ret = xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGnuTLSKeyDataX509VerifyAndExtractKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
+    ret = xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
+        return(-1);
     }
     return(0);
 }
@@ -629,11 +599,9 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     content = xmlSecX509DataGetNodeContent (node, keyInfoCtx);
     if (content < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecX509DataGetNodeContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "content=%d", content);
+        xmlSecInternalError2("xmlSecX509DataGetNodeContent",
+                             xmlSecKeyDataKlassGetName(id),
+                             "content=%d", content);
         return(-1);
     } else if(content == 0) {
         /* by default we are writing certificates and crls */
@@ -652,22 +620,18 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecGnuTLSKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecGnuTLSKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCert",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         if((content & XMLSEC_X509DATA_CERTIFICATE_NODE) != 0) {
             ret = xmlSecGnuTLSX509CertificateNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSX509CertificateNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSX509CertificateNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -675,11 +639,9 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SUBJECTNAME_NODE) != 0) {
             ret = xmlSecGnuTLSX509SubjectNameNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSX509SubjectNameNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSX509SubjectNameNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -687,11 +649,9 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_ISSUERSERIAL_NODE) != 0) {
             ret = xmlSecGnuTLSX509IssuerSerialNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSX509IssuerSerialNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSX509IssuerSerialNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -699,11 +659,9 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SKI_NODE) != 0) {
             ret = xmlSecGnuTLSX509SKINodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSX509SKINodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSX509SKINodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -715,21 +673,17 @@ xmlSecGnuTLSKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         for(pos = 0; pos < size; ++pos) {
             crl = xmlSecGnuTLSKeyDataX509GetCrl(data, pos);
             if(crl == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSKeyDataX509GetCrl",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCrl",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
 
             ret = xmlSecGnuTLSX509CRLNodeWrite(crl, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecGnuTLSX509CRLNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecGnuTLSX509CRLNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -783,11 +737,9 @@ xmlSecGnuTLSKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output) {
 
         cert = xmlSecGnuTLSKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecGnuTLSKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "==== Certificate:\n");
@@ -801,11 +753,9 @@ xmlSecGnuTLSKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output) {
 
         crl = xmlSecGnuTLSKeyDataX509GetCrl(data, pos);
         if(crl == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecGnuTLSKeyDataX509GetCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCrl",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "==== Crl:\n");
@@ -841,11 +791,9 @@ xmlSecGnuTLSKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
 
         cert = xmlSecGnuTLSKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecGnuTLSKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "<Certificate>\n");
@@ -860,11 +808,9 @@ xmlSecGnuTLSKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
 
         crl = xmlSecGnuTLSKeyDataX509GetCrl(data, pos);
         if(crl == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecGnuTLSKeyDataX509GetCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecGnuTLSKeyDataX509GetCrl",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "<CRL>\n");
@@ -892,29 +838,42 @@ xmlSecGnuTLSX509DataNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
         ret = 0;
         if(xmlSecCheckNodeName(cur, xmlSecNodeX509Certificate, xmlSecDSigNs)) {
             ret = xmlSecGnuTLSX509CertificateNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecGnuTLSX509CertificateNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SubjectName, xmlSecDSigNs)) {
             ret = xmlSecGnuTLSX509SubjectNameNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecGnuTLSX509SubjectNameNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerSerial, xmlSecDSigNs)) {
             ret = xmlSecGnuTLSX509IssuerSerialNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecGnuTLSX509IssuerSerialNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SKI, xmlSecDSigNs)) {
             ret = xmlSecGnuTLSX509SKINodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecGnuTLSX509SKINodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509CRL, xmlSecDSigNs)) {
             ret = xmlSecGnuTLSX509CRLNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecGnuTLSX509CRLNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* laxi schema validation: ignore unknown nodes */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "read node failed");
+            xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
@@ -937,11 +896,7 @@ xmlSecGnuTLSX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -949,22 +904,16 @@ xmlSecGnuTLSX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
 
     cert = xmlSecGnuTLSX509CertBase64DerRead(content);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSX509CertBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         gnutls_x509_crt_deinit(cert);
         xmlFree(content);
         return(-1);
@@ -986,22 +935,13 @@ xmlSecGnuTLSX509CertificateNodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, xm
     /* set base64 lines size from context */
     buf = xmlSecGnuTLSX509CertBase64DerWrite(cert, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509Certificate)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1057,11 +997,8 @@ xmlSecGnuTLSX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecGnuTLSX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1071,11 +1008,7 @@ xmlSecGnuTLSX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
             xmlFree(subject);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1086,12 +1019,8 @@ xmlSecGnuTLSX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
     if(cert == NULL){
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subject));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "subject=%s", xmlSecErrorsSafeString(subject));
             xmlFree(subject);
             return(-1);
         }
@@ -1102,23 +1031,16 @@ xmlSecGnuTLSX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlS
 
     cert2 = xmlSecGnuTLSX509CertDup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSX509CertDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecGnuTLSX509CertDup",
+                            xmlSecKeyDataGetName(data));
         xmlFree(subject);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         gnutls_x509_crt_deinit(cert2);
         xmlFree(subject);
         return(-1);
@@ -1132,6 +1054,7 @@ static int
 xmlSecGnuTLSX509SubjectNameNodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar* buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
@@ -1139,28 +1062,24 @@ xmlSecGnuTLSX509SubjectNameNodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, xm
     /* add node */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecEnsureEmptyChild",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            "node=%s",
-            xmlSecErrorsSafeString(xmlSecNodeX509SubjectName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SubjectName)", NULL);
         return(-1);
     }
 
     /* get subject */
     buf = xmlSecGnuTLSX509CertGetSubjectDN(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecGnuTLSX509CertGetSubjectDN",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetSubjectDN", NULL);
         return(-1);
     }
 
     /* set value */
-    xmlSecNodeEncodeAndSetContent(cur, buf);
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
 
     /* done */
     xmlFree(buf);
@@ -1184,23 +1103,16 @@ xmlSecGnuTLSX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecGnuTLSX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     cur = xmlSecGetNextElementNode(node->children);
     if(cur == NULL) {
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecNodeNotFoundError("xmlSecGetNextElementNode", node, NULL,
+                                    xmlSecKeyDataGetName(data));
             return(-1);
         }
         return(0);
@@ -1208,56 +1120,32 @@ xmlSecGnuTLSX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     /* the first is required node X509IssuerName */
     if(!xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509IssuerName, xmlSecKeyDataGetName(data));
         return(-1);
     }
     issuerName = xmlNodeGetContent(cur);
     if(issuerName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is required node X509SerialNumber */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509SerialNumber, xmlSecKeyDataGetName(data));
         xmlFree(issuerName);
         return(-1);
     }
     issuerSerial = xmlNodeGetContent(cur);
     if(issuerSerial == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         xmlFree(issuerName);
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1269,13 +1157,10 @@ xmlSecGnuTLSX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
     if(cert == NULL){
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "issuerName=%s;issuerSerial=%s",
-                        xmlSecErrorsSafeString(issuerName),
-                        xmlSecErrorsSafeString(issuerSerial));
+            xmlSecOtherError3(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "issuerName=%s;issuerSerial=%s",
+                              xmlSecErrorsSafeString(issuerName),
+                              xmlSecErrorsSafeString(issuerSerial));
             xmlFree(issuerSerial);
             xmlFree(issuerName);
             return(-1);
@@ -1287,11 +1172,8 @@ xmlSecGnuTLSX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     cert2 = xmlSecGnuTLSX509CertDup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSX509CertDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertDup",
+                            xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1299,11 +1181,8 @@ xmlSecGnuTLSX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         gnutls_x509_crt_deinit(cert2);
         xmlFree(issuerSerial);
         xmlFree(issuerName);
@@ -1321,6 +1200,7 @@ xmlSecGnuTLSX509IssuerSerialNodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, x
     xmlNodePtr issuerNameNode;
     xmlNodePtr issuerNumberNode;
     xmlChar* buf;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
@@ -1328,62 +1208,52 @@ xmlSecGnuTLSX509IssuerSerialNodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, x
     /* create xml nodes */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerSerial)", NULL);
         return(-1);
     }
 
     issuerNameNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs);
     if(issuerNameNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerName)", NULL);
         return(-1);
     }
 
     issuerNumberNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
     if(issuerNumberNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SerialNumber)", NULL);
         return(-1);
     }
 
     /* write data */
     buf = xmlSecGnuTLSX509CertGetIssuerDN(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetIssuerDN",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetIssuerDN", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNameNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
     xmlFree(buf);
 
     buf = xmlSecGnuTLSX509CertGetIssuerSerial(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetIssuerSerial",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetIssuerSerial", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNumberNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNumberNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNumberNode, buf);
-    xmlFree(buf);
 
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1403,11 +1273,8 @@ xmlSecGnuTLSX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecGnuTLSX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1417,12 +1284,7 @@ xmlSecGnuTLSX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
             xmlFree(ski);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1434,12 +1296,9 @@ xmlSecGnuTLSX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
         xmlFree(ski);
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "ski=%s",
+                              xmlSecErrorsSafeString(ski));
             return(-1);
         }
         return(0);
@@ -1447,22 +1306,16 @@ xmlSecGnuTLSX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
 
     cert2 = xmlSecGnuTLSX509CertDup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSX509CertDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertDup",
+                            xmlSecKeyDataGetName(data));
         xmlFree(ski);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         gnutls_x509_crt_deinit(cert2);
         xmlFree(ski);
         return(-1);
@@ -1476,6 +1329,7 @@ static int
 xmlSecGnuTLSX509SKINodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar *buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
@@ -1483,29 +1337,26 @@ xmlSecGnuTLSX509SKINodeWrite(gnutls_x509_crt_t cert, xmlNodePtr node, xmlSecKeyI
     /* add node */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SKI)", NULL);
         return(-1);
     }
 
     /* write value */
     buf = xmlSecGnuTLSX509CertGetSKI(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetSKI",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetSKI", NULL);
         return(-1);
     }
 
-    xmlSecNodeEncodeAndSetContent(cur, buf);
-    xmlFree(buf);
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
 
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1525,11 +1376,7 @@ xmlSecGnuTLSX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1537,22 +1384,16 @@ xmlSecGnuTLSX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInf
 
     crl = xmlSecGnuTLSX509CrlBase64DerRead(content);
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSX509CrlBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CrlBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCrl(data, crl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCrl",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCrl",
+                            xmlSecKeyDataGetName(data));
         gnutls_x509_crl_deinit(crl);
         xmlFree(content);
         return(-1);
@@ -1574,22 +1415,13 @@ xmlSecGnuTLSX509CRLNodeWrite(gnutls_x509_crl_t crl, xmlNodePtr node, xmlSecKeyIn
     /* set base64 lines size from context */
     buf = xmlSecGnuTLSX509CrlBase64DerWrite(crl, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CrlBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CrlBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509CRL)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1620,11 +1452,8 @@ xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr k
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecGnuTLSX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1637,42 +1466,30 @@ xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr k
 
             ctx->keyCert = xmlSecGnuTLSX509CertDup(cert);
             if(ctx->keyCert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecGnuTLSX509CertDup",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSX509CertDup",
+                                    xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             keyValue = xmlSecGnuTLSX509CertGetKey(ctx->keyCert);
             if(keyValue == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecGnuTLSX509CertGetKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSX509CertGetKey",
+                                    xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             /* verify that the key matches our expectations */
             if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), keyValue) != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeyReqMatchKeyValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
 
             ret = xmlSecKeySetValue(key, keyValue);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeySetValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeySetValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
@@ -1680,28 +1497,22 @@ xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr k
             /* get expiration time */
             key->notValidBefore = gnutls_x509_crt_get_activation_time(ctx->keyCert);
             if(key->notValidBefore == (time_t)-1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "gnutls_x509_crt_get_activation_time",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecGnuTLSError2("gnutls_x509_crt_get_activation_time", GNUTLS_E_SUCCESS,
+                                   xmlSecKeyDataGetName(data),
+                                   "cert activation time is invalid: %ld",
+                                   (unsigned long)key->notValidBefore);
                 return(-1);
             }
             key->notValidAfter = gnutls_x509_crt_get_expiration_time(ctx->keyCert);
             if(key->notValidAfter == (time_t)-1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "gnutls_x509_crt_get_expiration_time",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecGnuTLSError2("gnutls_x509_crt_get_expiration_time", GNUTLS_E_SUCCESS,
+                                   xmlSecKeyDataGetName(data),
+                                   "cert expiration time is invalid: %ld",
+                                   (unsigned long)key->notValidAfter);
                 return(-1);
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data), NULL);
             return(-1);
         }
     }
@@ -1728,11 +1539,7 @@ xmlSecGnuTLSX509CertGetKey(gnutls_x509_crt_t cert) {
 
     alg = gnutls_x509_crt_get_pk_algorithm(cert, &bits);
     if(alg < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_pk_algorithm",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(alg));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_pk_algorithm", alg, NULL);
         return(NULL);
     }
 
@@ -1744,31 +1551,19 @@ xmlSecGnuTLSX509CertGetKey(gnutls_x509_crt_t cert) {
 
             data = xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataRsaId);
             if(data == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyDataCreate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "xmlSecGnuTLSKeyDataRsaId");
+                xmlSecInternalError("xmlSecKeyDataCreate(KeyDataRsaId)", NULL);
                 return(NULL);
             }
 
             err = gnutls_x509_crt_get_pk_rsa_raw(cert, &m, &e);
             if(err != GNUTLS_E_SUCCESS) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_x509_crt_get_pk_rsa_raw",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(err));
+                xmlSecGnuTLSError("gnutls_x509_crt_get_pk_rsa_raw", err, NULL);
                 return(NULL);
             }
 
             ret = xmlSecGnuTLSKeyDataRsaAdoptPublicKey(data, &m, &e);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSKeyDataRsaAdoptPublicKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSKeyDataRsaAdoptPublicKey", NULL);
                 gnutls_free(m.data);
                 gnutls_free(e.data);
                 return(NULL);
@@ -1785,31 +1580,19 @@ xmlSecGnuTLSX509CertGetKey(gnutls_x509_crt_t cert) {
 
             data = xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataDsaId);
             if(data == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyDataCreate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "xmlSecGnuTLSKeyDataDsaId");
+                xmlSecInternalError("xmlSecKeyDataCreate(KeyDataDsaId)", NULL);
                 return(NULL);
             }
 
             err = gnutls_x509_crt_get_pk_dsa_raw(cert, &p, &q, &g, &y);
             if(err != GNUTLS_E_SUCCESS) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_x509_crt_get_pk_dsa_raw",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(err));
+                xmlSecGnuTLSError("gnutls_x509_crt_get_pk_dsa_raw", err, NULL);
                 return(NULL);
             }
 
             ret = xmlSecGnuTLSKeyDataDsaAdoptPublicKey(data, &p, &q, &g, &y);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSKeyDataDsaAdoptPublicKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecGnuTLSKeyDataDsaAdoptPublicKey", NULL);
                 gnutls_free(p.data);
                 gnutls_free(q.data);
                 gnutls_free(g.data);
@@ -1823,11 +1606,7 @@ xmlSecGnuTLSX509CertGetKey(gnutls_x509_crt_t cert) {
 
     default:
         {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_crt_get_pk_algorithm",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "Unsupported algorithm %d", (int)alg);
+            xmlSecInvalidIntegerTypeError("key_alg", alg, "supported algorithm", NULL);
             return(NULL);
         }
     }
@@ -1915,43 +1694,30 @@ xmlSecGnuTLSKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     cert = xmlSecGnuTLSX509CertRead(buf, bufSize, xmlSecKeyDataFormatCertDer);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertRead", NULL);
         return(-1);
     }
 
     data = xmlSecKeyEnsureData(key, xmlSecGnuTLSKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         gnutls_x509_crt_deinit(cert);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGnuTLSKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509AdoptCert",
+                            xmlSecKeyDataKlassGetName(id));
         gnutls_x509_crt_deinit(cert);
         return(-1);
     }
 
     ret = xmlSecGnuTLSKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecGnuTLSKeyDataX509VerifyAndExtractKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     return(0);
diff --git a/src/gnutls/x509utils.c b/src/gnutls/x509utils.c
index 2ab4df2..b914081 100644
--- a/src/gnutls/x509utils.c
+++ b/src/gnutls/x509utils.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -173,21 +173,13 @@ xmlSecGnuTLSX509CertDup(gnutls_x509_crt_t src) {
 
     buf = xmlSecGnuTLSX509CertBase64DerWrite(src, 0);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertBase64DerWrite", NULL);
         return (NULL);
     }
 
     res = xmlSecGnuTLSX509CertBase64DerRead(buf);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertBase64DerRead", NULL);
         xmlFree(buf);
         return (NULL);
     }
@@ -208,33 +200,21 @@ xmlSecGnuTLSX509CertGetSubjectDN(gnutls_x509_crt_t cert) {
     /* get subject size */
     err = gnutls_x509_crt_get_dn(cert, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_dn", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (char *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* finally write it out */
     err = gnutls_x509_crt_get_dn(cert, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_dn", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -254,33 +234,21 @@ xmlSecGnuTLSX509CertGetIssuerDN(gnutls_x509_crt_t cert) {
     /* get issuer size */
     err = gnutls_x509_crt_get_issuer_dn(cert, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_issuer_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_issuer_dn", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (char *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* finally write it out */
     err = gnutls_x509_crt_get_issuer_dn(cert, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_issuer_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_issuer_dn", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -301,33 +269,21 @@ xmlSecGnuTLSX509CertGetIssuerSerial(gnutls_x509_crt_t cert) {
     /* get issuer serial size */
     err = gnutls_x509_crt_get_serial(cert, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_serial",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_serial", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (unsigned char *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* write it out */
     err = gnutls_x509_crt_get_serial(cert, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_serial",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_serial", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -335,11 +291,7 @@ xmlSecGnuTLSX509CertGetIssuerSerial(gnutls_x509_crt_t cert) {
     /* convert to string */
     res = xmlSecGnuTLSASN1IntegerWrite(buf, bufSize);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSASN1IntegerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSASN1IntegerWrite", NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -362,33 +314,21 @@ xmlSecGnuTLSX509CertGetSKI(gnutls_x509_crt_t cert) {
     /* get ski size */
     err = gnutls_x509_crt_get_subject_key_id(cert, NULL, &bufSize, &critical);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_subject_key_id",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_subject_key_id", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (xmlSecByte *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* write it out */
     err = gnutls_x509_crt_get_subject_key_id(cert, buf, &bufSize, &critical);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_get_subject_key_id",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_get_subject_key_id", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -396,11 +336,7 @@ xmlSecGnuTLSX509CertGetSKI(gnutls_x509_crt_t cert) {
     /* convert to string */
     res = xmlSecBase64Encode(buf, bufSize, 0);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -420,11 +356,7 @@ xmlSecGnuTLSX509CertBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -452,22 +384,15 @@ xmlSecGnuTLSX509CertRead(const xmlSecByte* buf, xmlSecSize size, xmlSecKeyDataFo
         fmt = GNUTLS_X509_FMT_DER;
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
     /* read cert */
     err = gnutls_x509_crt_init(&cert);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_init",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_init", err, NULL);
         return(NULL);
     }
 
@@ -475,11 +400,7 @@ xmlSecGnuTLSX509CertRead(const xmlSecByte* buf, xmlSecSize size, xmlSecKeyDataFo
     data.size = size;
     err = gnutls_x509_crt_import(cert, &data, fmt);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_import",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_import", err, NULL);
         gnutls_x509_crt_deinit(cert);
         return(NULL);
     }
@@ -499,33 +420,21 @@ xmlSecGnuTLSX509CertBase64DerWrite(gnutls_x509_crt_t cert, int base64LineWrap) {
     /* get size */
     err = gnutls_x509_crt_export(cert, GNUTLS_X509_FMT_DER, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_export(GNUTLS_X509_FMT_DER)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_export(GNUTLS_X509_FMT_DER)", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (xmlSecByte *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* write it out */
     err = gnutls_x509_crt_export(cert, GNUTLS_X509_FMT_DER, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crt_export(GNUTLS_X509_FMT_DER)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crt_export(GNUTLS_X509_FMT_DER)", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -533,11 +442,7 @@ xmlSecGnuTLSX509CertBase64DerWrite(gnutls_x509_crt_t cert, int base64LineWrap) {
     /* convert to string */
     res = xmlSecBase64Encode(buf, bufSize, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -628,21 +533,13 @@ xmlSecGnuTLSX509CrlDup(gnutls_x509_crl_t src) {
 
     buf = xmlSecGnuTLSX509CrlBase64DerWrite(src, 0);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CrlBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CrlBase64DerWrite", NULL);
         return (NULL);
     }
 
     res = xmlSecGnuTLSX509CrlBase64DerRead(buf);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CrlBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CrlBase64DerRead", NULL);
         xmlFree(buf);
         return (NULL);
     }
@@ -663,33 +560,21 @@ xmlSecGnuTLSX509CrlGetIssuerDN(gnutls_x509_crl_t crl) {
     /* get issuer size */
     err = gnutls_x509_crl_get_issuer_dn(crl, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_get_issuer_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_get_issuer_dn", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (char *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* finally write it out */
     err = gnutls_x509_crl_get_issuer_dn(crl, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_get_issuer_dn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_get_issuer_dn", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -707,11 +592,7 @@ xmlSecGnuTLSX509CrlBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -739,22 +620,15 @@ xmlSecGnuTLSX509CrlRead(const xmlSecByte* buf, xmlSecSize size, xmlSecKeyDataFor
         fmt = GNUTLS_X509_FMT_DER;
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
     /* read crl */
     err = gnutls_x509_crl_init(&crl);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_init",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_init", err, NULL);
         return(NULL);
     }
 
@@ -762,11 +636,7 @@ xmlSecGnuTLSX509CrlRead(const xmlSecByte* buf, xmlSecSize size, xmlSecKeyDataFor
     data.size = size;
     err = gnutls_x509_crl_import(crl, &data, fmt);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_import",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_import", err, NULL);
         gnutls_x509_crl_deinit(crl);
         return(NULL);
     }
@@ -786,33 +656,21 @@ xmlSecGnuTLSX509CrlBase64DerWrite(gnutls_x509_crl_t crl, int base64LineWrap) {
     /* get size */
     err = gnutls_x509_crl_export(crl, GNUTLS_X509_FMT_DER, NULL, &bufSize);
     if((err != GNUTLS_E_SHORT_MEMORY_BUFFER) || (bufSize <= 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_export(GNUTLS_X509_FMT_DER)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_export(GNUTLS_X509_FMT_DER)", err, NULL);
         return(NULL);
     }
 
     /* allocate buffer */
     buf = (xmlSecByte *)xmlMalloc(bufSize + 1);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)bufSize);
+        xmlSecMallocError(bufSize + 1, NULL);
         return(NULL);
     }
 
     /* write it out */
     err = gnutls_x509_crl_export(crl, GNUTLS_X509_FMT_DER, buf, &bufSize);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_crl_export(GNUTLS_X509_FMT_DER)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_x509_crl_export(GNUTLS_X509_FMT_DER)", err, NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -820,11 +678,7 @@ xmlSecGnuTLSX509CrlBase64DerWrite(gnutls_x509_crl_t crl, int base64LineWrap) {
     /* convert to string */
     res = xmlSecBase64Encode(buf, bufSize, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         xmlFree(buf);
         return(NULL);
     }
@@ -878,6 +732,7 @@ xmlSecGnuTLSASN1IntegerWrite(const unsigned char * data, size_t len) {
     unsigned long long int val = 0;
     size_t ii = 0;
     int shift = 0;
+    int ret;
 
     xmlSecAssert2(data != NULL, NULL);
     xmlSecAssert2(len <= 9, NULL);
@@ -889,15 +744,17 @@ xmlSecGnuTLSASN1IntegerWrite(const unsigned char * data, size_t len) {
 
     res = (xmlChar*)xmlMalloc(resLen + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)resLen);
-        return (NULL);
+        xmlSecMallocError(resLen + 1, NULL);
+        return(NULL);
+    }
+
+    ret = xmlStrPrintf(res, resLen, "%llu", val);
+    if(ret < 0) {
+        xmlSecXmlError("xmlStrPrintf", NULL);
+        xmlFree(res);
+        return(NULL);
     }
 
-    xmlSecStrPrintf(res, resLen, BAD_CAST "%llu", val);
     return(res);
 }
 
@@ -934,11 +791,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     /* read pkcs12 in internal structure */
     err = gnutls_pkcs12_init(&pkcs12);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_pkcs12_init",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_pkcs12_init", err, NULL);
         goto done;
     }
 
@@ -946,22 +799,14 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     datum.size = dataSize;
     err = gnutls_pkcs12_import(pkcs12, &datum, GNUTLS_X509_FMT_DER, 0);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_pkcs12_import",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_pkcs12_import", err, NULL);
         goto done;
     }
 
     /* verify */
     err = gnutls_pkcs12_verify_mac(pkcs12, pwd);
     if(err != GNUTLS_E_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_pkcs12_verify_mac",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+        xmlSecGnuTLSError("gnutls_pkcs12_verify_mac", err, NULL);
         goto done;
     }
 
@@ -973,11 +818,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 
         err = gnutls_pkcs12_bag_init(&bag);
         if(err != GNUTLS_E_SUCCESS) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_pkcs12_bag_init",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(err));
+            xmlSecGnuTLSError("gnutls_pkcs12_bag_init", err, NULL);
             goto done;
         }
 
@@ -986,32 +827,20 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
             /* scanned the whole pkcs12, stop */
             break;
         } else if(err != GNUTLS_E_SUCCESS) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_pkcs12_get_bag",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(err));
+            xmlSecGnuTLSError("gnutls_pkcs12_get_bag", err, NULL);
             goto done;
         }
 
         /* check if we need to decrypt the bag */
         bag_type = gnutls_pkcs12_bag_get_type(bag, 0);
         if(bag_type < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_pkcs12_bag_get_type",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(bag_type));
+            xmlSecGnuTLSError("gnutls_pkcs12_bag_get_type", bag_type, NULL);
             goto done;
         }
         if(bag_type == GNUTLS_BAG_ENCRYPTED) {
             err = gnutls_pkcs12_bag_decrypt(bag, pwd);
             if(err != GNUTLS_E_SUCCESS) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_pkcs12_bag_decrypt",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(err));
+                xmlSecGnuTLSError("gnutls_pkcs12_bag_decrypt", err, NULL);
                 goto done;
             }
         }
@@ -1019,31 +848,19 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
         /* scan elements in bag */
         elements_in_bag = gnutls_pkcs12_bag_get_count(bag);
         if(elements_in_bag < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_pkcs12_bag_get_count",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(bag_type));
+            xmlSecGnuTLSError("gnutls_pkcs12_bag_get_count", elements_in_bag, NULL);
             goto done;
         }
         for(ii = 0; ii < elements_in_bag; ++ii) {
             bag_type = gnutls_pkcs12_bag_get_type(bag, ii);
             if(bag_type < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_pkcs12_bag_get_type",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(bag_type));
+                xmlSecGnuTLSError("gnutls_pkcs12_bag_get_type", bag_type, NULL);
                 goto done;
             }
 
             err = gnutls_pkcs12_bag_get_data(bag, ii, &datum);
             if(err != GNUTLS_E_SUCCESS) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_pkcs12_bag_get_data",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(err));
+                xmlSecGnuTLSError("gnutls_pkcs12_bag_get_data", err, NULL);
                 goto done;
             }
 
@@ -1054,11 +871,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
                 if((*priv_key) == NULL) {
                     err = gnutls_x509_privkey_init(priv_key);
                     if(err != GNUTLS_E_SUCCESS) {
-                        xmlSecError(XMLSEC_ERRORS_HERE,
-                                    NULL,
-                                    "gnutls_x509_privkey_init",
-                                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+                        xmlSecGnuTLSError("gnutls_x509_privkey_init", err, NULL);
                         goto done;
                     }
 
@@ -1067,11 +880,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
                                 pwd,
                                 (bag_type == GNUTLS_BAG_PKCS8_KEY) ? GNUTLS_PKCS_PLAIN : 0);
                     if(err != GNUTLS_E_SUCCESS) {
-                        xmlSecError(XMLSEC_ERRORS_HERE,
-                                    NULL,
-                                    "gnutls_x509_privkey_import_pkcs8",
-                                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                    XMLSEC_GNUTLS_REPORT_ERROR(err));
+                        xmlSecGnuTLSError("gnutls_x509_privkey_import_pkcs8", err, NULL);
                         goto done;
                     }
                 }
@@ -1079,31 +888,19 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
             case GNUTLS_BAG_CERTIFICATE:
                 err = gnutls_x509_crt_init(&cert);
                 if(err != GNUTLS_E_SUCCESS) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "gnutls_x509_crt_init",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_GNUTLS_REPORT_ERROR(err));
+                    xmlSecGnuTLSError("gnutls_x509_crt_init", err, NULL);
                     goto done;
                 }
 
                 err = gnutls_x509_crt_import(cert, &datum, GNUTLS_X509_FMT_DER);
                 if(err != GNUTLS_E_SUCCESS) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "gnutls_x509_crt_import",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_GNUTLS_REPORT_ERROR(err));
+                    xmlSecGnuTLSError("gnutls_x509_crt_import", err, NULL);
                     goto done;
                 }
 
                 ret = xmlSecPtrListAdd(certsList, cert);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecPtrListAdd(certsList)",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecPtrListAdd(certsList)", NULL);
                     goto done;
                 }
                 cert = NULL; /* owned by certsList now */
@@ -1121,11 +918,8 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 
     /* check we have private key */
     if((*priv_key) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "Private key was not found in pkcs12 object");
+        xmlSecOtherError(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL,
+                         "Private key was not found in pkcs12 object");
         goto done;
     }
 
@@ -1141,11 +935,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
         key_id_size = sizeof(key_id);
         err = gnutls_x509_privkey_get_key_id((*priv_key), 0, key_id, &key_id_size);
         if(err != GNUTLS_E_SUCCESS) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_privkey_get_key_id",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(err));
+            xmlSecGnuTLSError("gnutls_x509_privkey_get_key_id", err, NULL);
             goto done;
         }
         for(ii = 0; ii < certsSize; ++ii) {
@@ -1159,11 +949,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
             cert_id_size = sizeof(cert_id);
             err = gnutls_x509_crt_get_key_id(tmp, 0, cert_id, &cert_id_size);
             if(err != GNUTLS_E_SUCCESS) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "gnutls_x509_crt_get_key_id",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_GNUTLS_REPORT_ERROR(err));
+                xmlSecGnuTLSError("gnutls_x509_crt_get_key_id", err, NULL);
                 goto done;
             }
 
@@ -1171,11 +957,7 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
             if((key_id_size == cert_id_size) && (memcmp(key_id, cert_id, key_id_size) == 0)) {
                 (*key_cert) = xmlSecGnuTLSX509CertDup(tmp);
                 if((*key_cert) == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecGnuTLSX509CertDup",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecGnuTLSX509CertDup", NULL);
                     goto done;
                 }
 
@@ -1185,11 +967,8 @@ xmlSecGnuTLSPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
 
         /* check we have key cert */
         if((*key_cert) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "Certificate for the private key was not found in pkcs12 object");
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_FOUND, NULL,
+                             "Certificate for the private key was not found in pkcs12 object");
             goto done;
         }
     }
@@ -1222,11 +1001,7 @@ xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey(gnutls_x509_privkey_t priv_key) {
     /* create key value data */
     key_alg = gnutls_x509_privkey_get_pk_algorithm(priv_key);
     if(key_alg < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_privkey_get_pk_algorithm",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_GNUTLS_REPORT_ERROR(key_alg));
+        xmlSecGnuTLSError("gnutls_x509_privkey_get_pk_algorithm", key_alg < 0, NULL);
         return (NULL);
     }
     switch(key_alg) {
@@ -1234,21 +1009,13 @@ xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey(gnutls_x509_privkey_t priv_key) {
     case GNUTLS_PK_RSA:
         res = xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataRsaId);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGnuTLSKeyDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(KeyDataRsaId)", NULL);
             return(NULL);
         }
 
         ret = xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(res, priv_key);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGnuTLSKeyDataRsaAdoptPrivateKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGnuTLSKeyDataRsaId");
+            xmlSecInternalError("xmlSecGnuTLSKeyDataRsaAdoptPrivateKey(KeyDataRsaId)", NULL);
             xmlSecKeyDataDestroy(res);
             return(NULL);
         }
@@ -1259,32 +1026,20 @@ xmlSecGnuTLSCreateKeyDataAndAdoptPrivKey(gnutls_x509_privkey_t priv_key) {
     case GNUTLS_PK_DSA:
         res = xmlSecKeyDataCreate(xmlSecGnuTLSKeyDataDsaId);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGnuTLSKeyDataDsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(KeyDataDsaId)", NULL);
             return(NULL);
         }
 
         ret = xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(res, priv_key);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGnuTLSKeyDataDsaAdoptPrivateKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecGnuTLSKeyDataDsaId");
+            xmlSecInternalError("xmlSecGnuTLSKeyDataDsaAdoptPrivateKey(KeyDataDsaId)", NULL);
             xmlSecKeyDataDestroy(res);
             return(NULL);
         }
         break;
 #endif /* XMLSEC_NO_DSA */
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "gnutls_x509_privkey_get_pk_algorithm",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "Unsupported algorithm %d", (int)key_alg);
+        xmlSecInvalidIntegerTypeError("key_alg", key_alg, "supported algorithm", NULL);
         return(NULL);
     }
 
@@ -1493,11 +1248,7 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
     /* allocate buffer, we don't need more than string */
     tmp = (xmlChar *)xmlMalloc(xmlStrlen(dn) + 1);
     if(tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)(xmlStrlen(dn) + 1));
+        xmlSecMallocError(xmlStrlen(dn) + 1, NULL);
         goto done;
     }
 
@@ -1532,20 +1283,13 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
 
                 /* insert into the attrs */
                 if(pos >= attrsSize) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "Not enough space: size=%d", (int)attrsSize);
+                    xmlSecInvalidSizeLessThanError("Attributes",
+                                                   attrsSize, pos, NULL);
                     goto done;
                 }
                 attrs[pos].key = xmlStrdup(tmp);
                 if(attrs[pos].key == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlStrdup",
-                                XMLSEC_ERRORS_R_MALLOC_FAILED,
-                                "size=%d", (int)(xmlStrlen(tmp) + 1));
+                    xmlSecStrdupError(tmp, NULL);
                     goto done;
                 }
 
@@ -1583,11 +1327,7 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
 
                 attrs[pos].value = xmlStrdup(tmp);
                 if(attrs[pos].value == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlStrdup",
-                                XMLSEC_ERRORS_R_MALLOC_FAILED,
-                                "size=%d", (int)(xmlStrlen(tmp) + 1));
+                    xmlSecStrdupError(tmp, NULL);
                     goto done;
                 }
                 state = xmlSecGnuTLSDnParseState_BeforeNameComponent;
@@ -1609,11 +1349,7 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
 
                 attrs[pos].value = xmlStrdup(tmp);
                 if(attrs[pos].value == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlStrdup",
-                                XMLSEC_ERRORS_R_MALLOC_FAILED,
-                                "size=%d", (int)(xmlStrlen(tmp) + 1));
+                    xmlSecStrdupError(tmp, NULL);
                     goto done;
                 }
                 state = xmlSecGnuTLSDnParseState_AfterQuotedString;
@@ -1628,12 +1364,7 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
                 if((ch == ',') || (ch == ';') || (ch == '\0')) {
                     state = xmlSecGnuTLSDnParseState_BeforeNameComponent;
                 } else {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "Unexpected character %c (expected space or ',' or ';')",
-                                ch);
+                    xmlSecInvalidIntegerDataError("ch", ch, "space,',',';','\\0'", NULL);
                     goto done;
                 }
             } else {
@@ -1650,12 +1381,7 @@ xmlSecGnuTLSDnAttrsParse(const xmlChar * dn,
 
     /* check end state */
     if(state != xmlSecGnuTLSDnParseState_BeforeNameComponent) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "Unexpected state %d at the end of parsing",
-                    (int)state);
+        xmlSecInvalidIntegerDataError("state", state, "xmlSecGnuTLSDnParseState_BeforeNameComponent", NULL);
         goto done;
     }
 
diff --git a/src/gnutls/x509vfy.c b/src/gnutls/x509vfy.c
index f302d8f..37e27af 100644
--- a/src/gnutls/x509vfy.c
+++ b/src/gnutls/x509vfy.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -159,38 +159,28 @@ xmlSecGnuTLSX509CheckTime(const gnutls_x509_crt_t * cert_list,
         /* get expiration times */
         notValidBefore = gnutls_x509_crt_get_activation_time(cert);
         if(notValidBefore == (time_t)-1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_crt_get_activation_time",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecGnuTLSError2("gnutls_x509_crt_get_activation_time", GNUTLS_E_SUCCESS,
+                               NULL,
+                               "cert activation time is invalid: %ld",
+                               (unsigned long)notValidBefore);
             return(-1);
         }
         notValidAfter = gnutls_x509_crt_get_expiration_time(cert);
         if(notValidAfter == (time_t)-1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_crt_get_expiration_time",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecGnuTLSError2("gnutls_x509_crt_get_expiration_time", GNUTLS_E_SUCCESS,
+                               NULL,
+                               "cert expiration time is invalid: %ld",
+                               (unsigned long)notValidAfter);
             return(-1);
        }
 
         /* check */
         if(ts < notValidBefore) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_YET_VALID,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_YET_VALID, NULL, NULL);
             return(0);
         }
         if(ts > notValidAfter) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_HAS_EXPIRED, NULL, NULL);
             return(0);
         }
     }
@@ -249,11 +239,8 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
     if(cert_list_length > 0) {
         cert_list = (gnutls_x509_crt_t *)xmlMalloc(sizeof(gnutls_x509_crt_t) * cert_list_length);
         if(cert_list == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlMalloc",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "size=%d", (int)(sizeof(gnutls_x509_crt_t) * cert_list_length));
+            xmlSecMallocError(sizeof(gnutls_x509_crt_t) * cert_list_length,
+                              xmlSecKeyDataStoreGetName(store));
             goto done;
         }
     }
@@ -261,21 +248,15 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
     if(crl_list_length > 0) {
         crl_list = (gnutls_x509_crl_t *)xmlMalloc(sizeof(gnutls_x509_crl_t) * crl_list_length);
         if(crl_list == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlMalloc",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "size=%d", (int)(sizeof(gnutls_x509_crl_t) * crl_list_length));
+            xmlSecMallocError(sizeof(gnutls_x509_crl_t) * crl_list_length,
+                              xmlSecKeyDataStoreGetName(store));
             goto done;
         }
         for(ii = 0; ii < crl_list_length; ++ii) {
             crl_list[ii] = xmlSecPtrListGetItem(crls, ii);
             if(crl_list[ii] == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "xmlSecPtrListGetItem(crls)",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecPtrListGetItem(crls)",
+                                    xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -285,21 +266,15 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
     if(ca_list_length > 0) {
         ca_list = (gnutls_x509_crt_t *)xmlMalloc(sizeof(gnutls_x509_crt_t) * ca_list_length);
         if(ca_list == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlMalloc",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "size=%d", (int)(sizeof(gnutls_x509_crt_t) * ca_list_length));
+            xmlSecMallocError(sizeof(gnutls_x509_crt_t) * ca_list_length,
+                              xmlSecKeyDataStoreGetName(store));
             goto done;
         }
         for(ii = 0; ii < ca_list_length; ++ii) {
             ca_list[ii] = xmlSecPtrListGetItem(&(ctx->certsTrusted), ii);
             if(ca_list[ii] == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "xmlSecPtrListGetItem(certsTrusted)",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecPtrListGetItem(certsTrusted)",
+                                    xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -325,11 +300,8 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
 
         cert = xmlSecPtrListGetItem(certs, ii);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlSecPtrListGetItem(certs)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListGetItem(certs)",
+                                xmlSecKeyDataStoreGetName(store));
             goto done;
         }
 
@@ -357,26 +329,24 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
         }
 
         /* try to verify */
-        err = gnutls_x509_crt_list_verify(
-                cert_list, (int)cert_list_cur_length, /* certs chain */
-                ca_list, (int)ca_list_length, /* trusted cas */
-                crl_list, (int)crl_list_length, /* crls */
-                flags, /* flags */
-                &verify);
+	if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
+            err = gnutls_x509_crt_list_verify(
+                    cert_list, (int)cert_list_cur_length, /* certs chain */
+                    ca_list, (int)ca_list_length, /* trusted cas */
+                    crl_list, (int)crl_list_length, /* crls */
+                    flags, /* flags */
+                    &verify);
+        } else {
+            err = GNUTLS_E_SUCCESS;
+        }
         if(err != GNUTLS_E_SUCCESS) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_crt_list_verify",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_GNUTLS_REPORT_ERROR(err));
+            xmlSecGnuTLSError("gnutls_x509_crt_list_verify", err, NULL);
             /* don't stop, continue! */
             continue;
-        } else if(verify != 0){
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "gnutls_x509_crt_list_verify",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "Verification failed: verify=%u", verify);
+        } else if(verify != 0) {
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED, NULL,
+                              "gnutls_x509_crt_list_verify: verification failed: status=%du",
+                              verify);
             /* don't stop, continue! */
             continue;
         }
@@ -385,11 +355,7 @@ xmlSecGnuTLSX509StoreVerify(xmlSecKeyDataStorePtr store,
            we have to do it ourselves */
         ret = xmlSecGnuTLSX509CheckTime(cert_list, cert_list_cur_length, verification_time);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "Time verification failed");
+            xmlSecInternalError("xmlSecGnuTLSX509CheckTime", NULL);
             /* don't stop, continue! */
             continue;
         }
@@ -437,21 +403,15 @@ xmlSecGnuTLSX509StoreAdoptCert(xmlSecKeyDataStorePtr store, gnutls_x509_crt_t ce
     if((type & xmlSecKeyDataTypeTrusted) != 0) {
         ret = xmlSecPtrListAdd(&(ctx->certsTrusted), cert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlSecPtrListAdd(trusted)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd(trusted)",
+                                xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
     } else {
         ret = xmlSecPtrListAdd(&(ctx->certsUntrusted), cert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "xmlSecPtrListAdd(untrusted)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd(untrusted)",
+                                xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
     }
@@ -474,21 +434,15 @@ xmlSecGnuTLSX509StoreInitialize(xmlSecKeyDataStorePtr store) {
 
     ret = xmlSecPtrListInitialize(&(ctx->certsTrusted), xmlSecGnuTLSX509CrtListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "xmlSecPtrListInitialize(trusted)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize(trusted)",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
     ret = xmlSecPtrListInitialize(&(ctx->certsUntrusted), xmlSecGnuTLSX509CrtListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "xmlSecPtrListInitialize(untrusted)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize(untrusted)",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -516,6 +470,7 @@ xmlSecGnuTLSX509StoreFinalize(xmlSecKeyDataStorePtr store) {
  *
  *****************************************************************************/
 #define XMLSEC_GNUTLS_DN_ATTRS_SIZE             1024
+
 static int
 xmlSecGnuTLSX509DnsEqual(const xmlChar * ll, const xmlChar * rr) {
     xmlSecGnuTLSDnAttr ll_attrs[XMLSEC_GNUTLS_DN_ATTRS_SIZE];
@@ -538,21 +493,13 @@ xmlSecGnuTLSX509DnsEqual(const xmlChar * ll, const xmlChar * rr) {
     /* parse */
     ret = xmlSecGnuTLSDnAttrsParse(ll, ll_attrs, XMLSEC_GNUTLS_DN_ATTRS_SIZE);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSDnAttrsParse(ll)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSDnAttrsParse(ll)", NULL);
         goto done;
     }
 
     ret = xmlSecGnuTLSDnAttrsParse(rr, rr_attrs, XMLSEC_GNUTLS_DN_ATTRS_SIZE);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSDnAttrsParse(rr)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSDnAttrsParse(rr)", NULL);
         goto done;
     }
 
@@ -564,11 +511,7 @@ xmlSecGnuTLSX509DnsEqual(const xmlChar * ll, const xmlChar * rr) {
     } else if(ret == 0) {
         res = 0;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSDnAttrsEqual",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSDnAttrsEqual", NULL);
         goto done;
     }
 
@@ -593,11 +536,8 @@ xmlSecGnuTLSX509FindCert(xmlSecPtrListPtr certs,
     for(ii = 0; (ii < sz); ++ii) {
         gnutls_x509_crt_t cert = xmlSecPtrListGetItem(certs, ii);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListGetItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%i", (int)ii);
+            xmlSecInternalError2("xmlSecPtrListGetItem", NULL,
+                                 "pos=%i", (int)ii);
             return(NULL);
         }
 
@@ -606,11 +546,8 @@ xmlSecGnuTLSX509FindCert(xmlSecPtrListPtr certs,
 
             tmp = xmlSecGnuTLSX509CertGetSubjectDN(cert);
             if(tmp == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSX509CertGetSubjectDN",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%i", (int)ii);
+                xmlSecInternalError2("xmlSecGnuTLSX509CertGetSubjectDN", NULL,
+                                     "pos=%i", (int)ii);
                 return(NULL);
             }
 
@@ -625,21 +562,15 @@ xmlSecGnuTLSX509FindCert(xmlSecPtrListPtr certs,
 
             tmp1 = xmlSecGnuTLSX509CertGetIssuerDN(cert);
             if(tmp1 == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSX509CertGetIssuerDN",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%i", (int)ii);
+                xmlSecInternalError2("xmlSecGnuTLSX509CertGetIssuerDN", NULL,
+                                     "pos=%i", (int)ii);
                 return(NULL);
             }
 
             tmp2 = xmlSecGnuTLSX509CertGetIssuerSerial(cert);
             if(tmp2 == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSX509CertGetIssuerSerial",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%i", (int)ii);
+                xmlSecInternalError2("xmlSecGnuTLSX509CertGetIssuerSerial", NULL,
+                                     "pos=%i", (int)ii);
                 xmlFree(tmp1);
                 return(NULL);
             }
@@ -656,11 +587,8 @@ xmlSecGnuTLSX509FindCert(xmlSecPtrListPtr certs,
 
             tmp = xmlSecGnuTLSX509CertGetSKI(cert);
             if(tmp == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGnuTLSX509CertGetSKI",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%i", (int)ii);
+                xmlSecInternalError2("xmlSecGnuTLSX509CertGetSKI", NULL,
+                                     "pos=%i", (int)ii);
                 return(NULL);
             }
 
@@ -688,11 +616,7 @@ xmlSecGnuTLSX509FindSignedCert(xmlSecPtrListPtr certs, gnutls_x509_crt_t cert) {
     /* get subject */
     subject = xmlSecGnuTLSX509CertGetSubjectDN(cert);
     if(subject == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetSubjectDN",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetSubjectDN", NULL);
         goto done;
     }
 
@@ -704,21 +628,15 @@ xmlSecGnuTLSX509FindSignedCert(xmlSecPtrListPtr certs, gnutls_x509_crt_t cert) {
 
         tmp = xmlSecPtrListGetItem(certs, ii);
         if(tmp == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListGetItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%i", (int)ii);
+            xmlSecInternalError2("xmlSecPtrListGetItem", NULL,
+                                 "pos=%i", (int)ii);
             goto done;
         }
 
         issuer = xmlSecGnuTLSX509CertGetIssuerDN(tmp);
         if(issuer == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGnuTLSX509CertGetIssuerDN",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%i", (int)ii);
+            xmlSecInternalError2("xmlSecGnuTLSX509CertGetIssuerDN", NULL,
+                                 "pos=%i", (int)ii);
             goto done;
         }
 
@@ -749,11 +667,7 @@ xmlSecGnuTLSX509FindSignerCert(xmlSecPtrListPtr certs, gnutls_x509_crt_t cert) {
     /* get issuer */
     issuer = xmlSecGnuTLSX509CertGetIssuerDN(cert);
     if(issuer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGnuTLSX509CertGetIssuerDN",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecGnuTLSX509CertGetIssuerDN", NULL);
         goto done;
     }
 
@@ -765,21 +679,15 @@ xmlSecGnuTLSX509FindSignerCert(xmlSecPtrListPtr certs, gnutls_x509_crt_t cert) {
 
         tmp = xmlSecPtrListGetItem(certs, ii);
         if(tmp == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListGetItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%i", (int)ii);
+            xmlSecInternalError2("xmlSecPtrListGetItem", NULL,
+                                 "pos=%i", (int)ii);
             goto done;
         }
 
         subject = xmlSecGnuTLSX509CertGetSubjectDN(tmp);
         if(subject == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGnuTLSX509CertGetSubjectDN",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%i", (int)ii);
+            xmlSecInternalError2("xmlSecGnuTLSX509CertGetSubjectDN", NULL,
+                                 "pos=%i", (int)ii);
             goto done;
         }
 
diff --git a/src/io.c b/src/io.c
index 7d36171..7d409d2 100644
--- a/src/io.c
+++ b/src/io.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Input uri transform and utility functions.
@@ -12,7 +12,6 @@
 
 #include <stdlib.h>
 #include <string.h>
-#include <errno.h>
 
 #include <libxml/uri.h>
 #include <libxml/tree.h>
@@ -61,12 +60,7 @@ xmlSecIOCallbackCreate(xmlInputMatchCallback matchFunc, xmlInputOpenCallback ope
     /* Allocate a new xmlSecIOCallback and fill the fields. */
     callbacks = (xmlSecIOCallbackPtr)xmlMalloc(sizeof(xmlSecIOCallback));
     if(callbacks == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecIOCallback)=%d",
-                    (int)sizeof(xmlSecIOCallback));
+        xmlSecMallocError(sizeof(xmlSecIOCallback), NULL);
         return(NULL);
     }
     memset(callbacks, 0, sizeof(xmlSecIOCallback));
@@ -154,11 +148,7 @@ xmlSecIOInit(void) {
 
     ret = xmlSecPtrListInitialize(&xmlSecAllIOCallbacks, xmlSecIOCallbackPtrListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListPtrInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListPtrInitialize", NULL);
         return(-1);
     }
 
@@ -226,21 +216,13 @@ xmlSecIORegisterCallbacks(xmlInputMatchCallback matchFunc,
 
     callbacks = xmlSecIOCallbackCreate(matchFunc, openFunc, readFunc, closeFunc);
     if(callbacks == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecIOCallbackCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecIOCallbackCreate", NULL);
         return(-1);
     }
 
     ret = xmlSecPtrListAdd(&xmlSecAllIOCallbacks, callbacks);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd", NULL);
         xmlSecIOCallbackDestroy(callbacks);
         return(-1);
     }
@@ -263,11 +245,7 @@ xmlSecIORegisterDefaultCallbacks(void) {
     ret = xmlSecIORegisterCallbacks(xmlIOHTTPMatch, xmlIOHTTPOpen,
                               xmlIOHTTPRead, xmlIOHTTPClose);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecIORegisterCallbacks",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "http");
+        xmlSecInternalError("xmlSecIORegisterCallbacks(http)", NULL);
         return(-1);
     }
 #endif /* LIBXML_HTTP_ENABLED */
@@ -276,11 +254,7 @@ xmlSecIORegisterDefaultCallbacks(void) {
     ret = xmlSecIORegisterCallbacks(xmlIOFTPMatch, xmlIOFTPOpen,
                               xmlIOFTPRead, xmlIOFTPClose);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecIORegisterCallbacks",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ftp");
+        xmlSecInternalError("xmlSecIORegisterCallbacks(ftp)", NULL);
         return(-1);
     }
 #endif /* LIBXML_FTP_ENABLED */
@@ -288,11 +262,7 @@ xmlSecIORegisterDefaultCallbacks(void) {
     ret = xmlSecIORegisterCallbacks(xmlFileMatch, xmlFileOpen,
                               xmlFileRead, xmlFileClose);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecIORegisterCallbacks",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "file");
+        xmlSecInternalError("xmlSecIORegisterCallbacks(file)", NULL);
         return(-1);
     }
 
@@ -420,13 +390,8 @@ xmlSecTransformInputURIOpen(xmlSecTransformPtr transform, const xmlChar *uri) {
     }
 
     if((ctx->clbks == NULL) || (ctx->clbksCtx == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "opencallback",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "uri=%s;errno=%d",
-                    xmlSecErrorsSafeString(uri),
-                    errno);
+        xmlSecInternalError2("ctx->clbks->opencallback", xmlSecTransformGetName(transform),
+                            "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -487,11 +452,9 @@ xmlSecTransformInputURIFinalize(xmlSecTransformPtr transform) {
 
     ret = xmlSecTransformInputURIClose(transform);
     if(ret < 0) {
-		xmlSecError(XMLSEC_ERRORS_HERE,
-					xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-					"xmlSecTransformInputURIClose",
-					XMLSEC_ERRORS_R_XMLSEC_FAILED,
-					"ret=%d", ret);
+        xmlSecInternalError2("xmlSecTransformInputURIClose",
+                             xmlSecTransformGetName(transform),
+                             "ret=%d", ret);
 		/* ignore the error */
 		/* return; */
 	}
@@ -519,11 +482,7 @@ xmlSecTransformInputURIPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
     if((ctx->clbksCtx != NULL) && (ctx->clbks != NULL) && (ctx->clbks->readcallback != NULL)) {
         ret = (ctx->clbks->readcallback)(ctx->clbksCtx, (char*)data, (int)maxDataSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "readcallback",
-                        XMLSEC_ERRORS_R_IO_FAILED,
-                        "errno=%d", errno);
+            xmlSecInternalError("ctx->clbks->readcallback", xmlSecTransformGetName(transform));
             return(-1);
         }
         (*dataSize) = ret;
diff --git a/src/keyinfo.c b/src/keyinfo.c
index 958492f..0c4da9f 100644
--- a/src/keyinfo.c
+++ b/src/keyinfo.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * <dsig:KeyInfo/> element processing
@@ -111,22 +111,16 @@ xmlSecKeyInfoNodeRead(xmlNodePtr keyInfoNode, xmlSecKeyPtr key, xmlSecKeyInfoCtx
             /* read data node */
             ret = xmlSecKeyDataXmlRead(dataId, key, cur, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                            "xmlSecKeyDataXmlRead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+                xmlSecInternalError2("xmlSecKeyDataXmlRead",
+                                     xmlSecKeyDataKlassGetName(dataId),
+                                     "node=%s",
+                                     xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
                 return(-1);
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* there is a laxi schema validation but application may
              * desire to disable unknown nodes*/
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecUnexpectedNodeError(cur, NULL);
             return(-1);
         }
     }
@@ -178,21 +172,15 @@ xmlSecKeyInfoNodeWrite(xmlNodePtr keyInfoNode, xmlSecKeyPtr key, xmlSecKeyInfoCt
         if(dataId != xmlSecKeyDataIdUnknown) {
             ret = xmlSecKeyDataXmlWrite(dataId, key, cur, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                            "xmlSecKeyDataXmlWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+                xmlSecInternalError2("xmlSecKeyDataXmlWrite",
+                                     xmlSecKeyDataKlassGetName(dataId),
+                                     "node=%s",
+                                     xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
                 return(-1);
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* laxi schema validation but application can disable it*/
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecUnexpectedNodeError(cur, NULL);
             return(-1);
         }
     }
@@ -223,21 +211,13 @@ xmlSecKeyInfoCtxCreate(xmlSecKeysMngrPtr keysMngr) {
     /* Allocate a new xmlSecKeyInfoCtx and fill the fields. */
     keyInfoCtx = (xmlSecKeyInfoCtxPtr)xmlMalloc(sizeof(xmlSecKeyInfoCtx));
     if(keyInfoCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)sizeof(xmlSecKeyInfoCtx));
+        xmlSecMallocError(sizeof(xmlSecKeyInfoCtx), NULL);
         return(NULL);
     }
 
     ret = xmlSecKeyInfoCtxInitialize(keyInfoCtx, keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize", NULL);
         xmlSecKeyInfoCtxDestroy(keyInfoCtx);
         return(NULL);
     }
@@ -280,22 +260,14 @@ xmlSecKeyInfoCtxInitialize(xmlSecKeyInfoCtxPtr keyInfoCtx, xmlSecKeysMngrPtr key
     keyInfoCtx->base64LineSize = xmlSecBase64GetDefaultLineSize();
     ret = xmlSecPtrListInitialize(&(keyInfoCtx->enabledKeyData), xmlSecKeyDataIdListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize", NULL);
         return(-1);
     }
 
     keyInfoCtx->maxRetrievalMethodLevel = 1;
     ret = xmlSecTransformCtxInitialize(&(keyInfoCtx->retrievalMethodCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxInitialize", NULL);
         return(-1);
     }
 
@@ -309,11 +281,7 @@ xmlSecKeyInfoCtxInitialize(xmlSecKeyInfoCtxPtr keyInfoCtx, xmlSecKeysMngrPtr key
 
     ret = xmlSecKeyReqInitialize(&(keyInfoCtx->keyReq));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyReqInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyReqInitialize", NULL);
         return(-1);
     }
 
@@ -388,11 +356,7 @@ xmlSecKeyInfoCtxCreateEncCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
     /* we have to use tmp variable to avoid a recursive loop */
     tmp = xmlSecEncCtxCreate(keyInfoCtx->keysMngr);
     if(tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxCreate", NULL);
         return(-1);
     }
     tmp->mode = xmlEncCtxModeEncryptedKey;
@@ -402,11 +366,7 @@ xmlSecKeyInfoCtxCreateEncCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
         case xmlSecKeyInfoModeRead:
             ret = xmlSecKeyInfoCtxCopyUserPref(&(tmp->keyInfoReadCtx), keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyInfoCtxCopyUserPref",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyInfoCtxCopyUserPref", NULL);
                 xmlSecEncCtxDestroy(tmp);
                 return(-1);
             }
@@ -414,11 +374,7 @@ xmlSecKeyInfoCtxCreateEncCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
         case xmlSecKeyInfoModeWrite:
             ret = xmlSecKeyInfoCtxCopyUserPref(&(tmp->keyInfoWriteCtx), keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyInfoCtxCopyUserPref",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyInfoCtxCopyUserPref", NULL);
                 xmlSecEncCtxDestroy(tmp);
                 return(-1);
             }
@@ -428,11 +384,8 @@ xmlSecKeyInfoCtxCreateEncCtx(xmlSecKeyInfoCtxPtr keyInfoCtx) {
 
     return(0);
 #else /* XMLSEC_NO_XMLENC */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xml encryption",
-                XMLSEC_ERRORS_R_DISABLED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+
+    xmlSecOtherError(XMLSEC_ERRORS_R_DISABLED, NULL, "xml encryption");
     return(-1);
 #endif /* XMLSEC_NO_XMLENC */
 }
@@ -462,11 +415,7 @@ xmlSecKeyInfoCtxCopyUserPref(xmlSecKeyInfoCtxPtr dst, xmlSecKeyInfoCtxPtr src) {
 
     ret = xmlSecPtrListCopy(&(dst->enabledKeyData), &(src->enabledKeyData));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "enabledKeyData");
+        xmlSecInternalError("xmlSecPtrListCopy(enabledKeyData)", NULL);
         return(-1);
     }
 
@@ -475,11 +424,7 @@ xmlSecKeyInfoCtxCopyUserPref(xmlSecKeyInfoCtxPtr dst, xmlSecKeyInfoCtxPtr src) {
     ret = xmlSecTransformCtxCopyUserPref(&(dst->retrievalMethodCtx),
                                          &(src->retrievalMethodCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxCopyUserPref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "enabledKeyData");
+        xmlSecInternalError("xmlSecTransformCtxCopyUserPref(enabledKeyData)", NULL);
         return(-1);
     }
 
@@ -489,22 +434,14 @@ xmlSecKeyInfoCtxCopyUserPref(xmlSecKeyInfoCtxPtr dst, xmlSecKeyInfoCtxPtr src) {
     if(src->encCtx != NULL) {
         dst->encCtx = xmlSecEncCtxCreate(dst->keysMngr);
         if(dst->encCtx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecEncCtxCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecEncCtxCreate", NULL);
             return(-1);
         }
 
         dst->encCtx->mode = xmlEncCtxModeEncryptedKey;
         ret = xmlSecEncCtxCopyUserPref(dst->encCtx, src->encCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecEncCtxCopyUserPref",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecEncCtxCopyUserPref", NULL);
             return(-1);
         }
     }
@@ -709,22 +646,15 @@ xmlSecKeyDataNameXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
     oldName = xmlSecKeyGetName(key);
     newName = xmlNodeGetContent(node);
     if(newName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeContentError(node, xmlSecKeyDataKlassGetName(id), "empty");
         return(-1);
     }
-    /* TODO: do we need to decode the name? */
 
     /* compare name values */
     if((oldName != NULL) && !xmlStrEqual(oldName, newName)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "key name is already specified",
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key name is already specified");
         xmlFree(newName);
         return(-1);
     }
@@ -746,11 +676,8 @@ xmlSecKeyDataNameXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
             /* and copy what we've found */
             ret = xmlSecKeyCopy(key, tmpKey);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecKeyCopy",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyCopy",
+                                    xmlSecKeyDataKlassGetName(id));
                 xmlSecKeyDestroy(tmpKey);
                 xmlFree(newName);
                 return(-1);
@@ -763,11 +690,8 @@ xmlSecKeyDataNameXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
     if(xmlSecKeyGetName(key) == NULL) {
         ret = xmlSecKeySetName(key, newName);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeySetName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeySetName",
+                                xmlSecKeyDataKlassGetName(id));
             xmlFree(newName);
             return(-1);
         }
@@ -779,6 +703,7 @@ xmlSecKeyDataNameXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
 static int
 xmlSecKeyDataNameXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx) {
     const xmlChar* name;
+    int ret;
 
     xmlSecAssert2(id == xmlSecKeyDataNameId, -1);
     xmlSecAssert2(key != NULL, -1);
@@ -788,7 +713,11 @@ xmlSecKeyDataNameXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
 
     name = xmlSecKeyGetName(key);
     if(name != NULL) {
-            xmlSecNodeEncodeAndSetContent(node, name);
+        ret = xmlSecNodeEncodeAndSetContent(node, name);
+        if(ret < 0) {
+            xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+            return(-1);
+        }
     }
     return(0);
 }
@@ -896,32 +825,22 @@ xmlSecKeyDataValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node,
         /* read data node */
         ret = xmlSecKeyDataXmlRead(dataId, key, cur, keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeyDataXmlRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError2("xmlSecKeyDataXmlRead",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s",
+                                 xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
             return(-1);
         }
     } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD) != 0) {
         /* laxi schema validation but application can disable it */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     /* <dsig:KeyValue/> might have only one node */
     cur = xmlSecGetNextElementNode(cur->next);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
@@ -967,23 +886,19 @@ xmlSecKeyDataValueXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePtr node
     /* create key node */
     cur = xmlSecAddChild(node, nodeName, nodeNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s",
+                             xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
         return(-1);
     }
 
     ret = xmlSecKeyDataXmlWrite(key->value->id, key, cur, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataXmlWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInternalError2("xmlSecKeyDataXmlWrite",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s",
+                             xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
         return(-1);
     }
 
@@ -1090,13 +1005,11 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
 
     /* check retrieval level */
     if(keyInfoCtx->curRetrievalMethodLevel >= keyInfoCtx->maxRetrievalMethodLevel) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL,
-                    "cur=%d;max=%d",
-                    keyInfoCtx->curRetrievalMethodLevel,
-                    keyInfoCtx->maxRetrievalMethodLevel);
+        xmlSecOtherError3(XMLSEC_ERRORS_R_MAX_RETRIEVALS_LEVEL,
+                          xmlSecKeyDataKlassGetName(id),
+                          "cur=%d;max=%d",
+                          keyInfoCtx->curRetrievalMethodLevel,
+                          keyInfoCtx->maxRetrievalMethodLevel);
         goto done;
     }
     ++keyInfoCtx->curRetrievalMethodLevel;
@@ -1113,14 +1026,12 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
         }
     }
 
-    /* laxi schema validation but aplication can disable it */
+    /* laxi schema validation but application can disable it */
     if(dataId == xmlSecKeyDataIdUnknown) {
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_UNKNOWN_HREF) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecAttrType),
-                        XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                        "value=%s", xmlSecErrorsSafeString(retrType));
+            xmlSecInvalidNodeAttributeError(node, xmlSecAttrType,
+                                            xmlSecKeyDataKlassGetName(id),
+                                            "retrieval type is unknown");
         } else {
             res = 0;
         }
@@ -1134,12 +1045,9 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
     uri = xmlGetProp(node, xmlSecAttrURI);
     ret = xmlSecTransformCtxSetUri(&(keyInfoCtx->retrievalMethodCtx), uri, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecTransformCtxSetUri",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecTransformCtxSetUri",
+                             xmlSecKeyDataKlassGetName(id),
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         goto done;
     }
 
@@ -1149,23 +1057,17 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
         ret = xmlSecTransformCtxNodesListRead(&(keyInfoCtx->retrievalMethodCtx),
                                             cur, xmlSecTransformUsageDSigTransform);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecTransformCtxNodesListRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError2("xmlSecTransformCtxNodesListRead",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s",
+                                 xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
             goto done;
         }
         cur = xmlSecGetNextElementNode(cur->next);
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1175,11 +1077,8 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
        (keyInfoCtx->retrievalMethodCtx.result == NULL) ||
        (xmlSecBufferGetData(keyInfoCtx->retrievalMethodCtx.result) == NULL)) {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecTransformCtxExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxExecute",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1193,11 +1092,8 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
                     xmlSecBufferGetSize(keyInfoCtx->retrievalMethodCtx.result),
                     keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeyDataRetrievalMethodReadXmlResult",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyDataRetrievalMethodReadXmlResult",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     } else {
@@ -1206,11 +1102,8 @@ xmlSecKeyDataRetrievalMethodXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNod
                     xmlSecBufferGetSize(keyInfoCtx->retrievalMethodCtx.result),
                     keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeyDataBinRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyDataBinRead",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     }
@@ -1258,21 +1151,13 @@ xmlSecKeyDataRetrievalMethodReadXmlResult(xmlSecKeyDataId typeId, xmlSecKeyPtr k
 
     doc = xmlRecoverMemory((const char*)buffer, bufferSize);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)),
-                    "xmlRecoverMemory",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlRecoverMemory", xmlSecKeyDataKlassGetName(typeId));
         return(-1);
     }
 
     cur = xmlDocGetRootElement(doc);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)),
-                    "xmlDocGetRootElement",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlDocGetRootElement", xmlSecKeyDataKlassGetName(typeId));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -1293,22 +1178,16 @@ xmlSecKeyDataRetrievalMethodReadXmlResult(xmlSecKeyDataId typeId, xmlSecKeyPtr k
 
         /* laxi schema validation but application can disable it */
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_KEYVALUE_STOP_ON_UNKNOWN_CHILD) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(typeId));
             return(-1);
         }
         return(0);
     } else if((typeId != xmlSecKeyDataIdUnknown) && (typeId != dataId) &&
               ((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_RETRMETHOD_STOP_ON_MISMATCH_HREF) != 0)) {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)),
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_MAX_RETRIEVAL_TYPE_MISMATCH,
+                          xmlSecKeyDataKlassGetName(dataId),
+                          "typeId=%s", xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -1316,12 +1195,10 @@ xmlSecKeyDataRetrievalMethodReadXmlResult(xmlSecKeyDataId typeId, xmlSecKeyPtr k
     /* read data node */
     ret = xmlSecKeyDataXmlRead(dataId, key, cur, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(typeId)),
-                    "xmlSecKeyDataXmlRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInternalError2("xmlSecKeyDataXmlRead",
+                             xmlSecKeyDataKlassGetName(typeId),
+                             "node=%s",
+                             xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -1420,13 +1297,11 @@ xmlSecKeyDataEncryptedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePt
 
     /* check the enc level */
     if(keyInfoCtx->curEncryptedKeyLevel >= keyInfoCtx->maxEncryptedKeyLevel) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL,
-                    "cur=%d;max=%d",
-                    keyInfoCtx->curEncryptedKeyLevel,
-                    keyInfoCtx->maxEncryptedKeyLevel);
+        xmlSecOtherError3(XMLSEC_ERRORS_R_MAX_ENCKEY_LEVEL,
+                          xmlSecKeyDataKlassGetName(id),
+                          "cur=%d;max=%d",
+                          (int)keyInfoCtx->curEncryptedKeyLevel,
+                          (int)keyInfoCtx->maxEncryptedKeyLevel);
         return(-1);
     }
     ++keyInfoCtx->curEncryptedKeyLevel;
@@ -1437,11 +1312,8 @@ xmlSecKeyDataEncryptedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePt
     } else {
         ret = xmlSecKeyInfoCtxCreateEncCtx(keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeyInfoCtxCreateEncCtx",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxCreateEncCtx",
+                                xmlSecKeyDataKlassGetName(id));
             return(-1);
         }
     }
@@ -1454,11 +1326,8 @@ xmlSecKeyDataEncryptedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePt
          * correct enc key.
          */
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_ENCKEY_DONT_STOP_ON_FAILED_DECRYPTION) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecEncCtxDecryptToBuffer",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecEncCtxDecryptToBuffer",
+                                xmlSecKeyDataKlassGetName(id));
             return(-1);
         }
         return(0);
@@ -1469,11 +1338,8 @@ xmlSecKeyDataEncryptedKeyXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodePt
                            xmlSecBufferGetSize(result),
                            keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataBinRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataBinRead",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     --keyInfoCtx->curEncryptedKeyLevel;
@@ -1499,21 +1365,15 @@ xmlSecKeyDataEncryptedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodeP
     /* dump key to a binary buffer */
     ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx2, NULL);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecKeyInfoCtxCopyUserPref(&keyInfoCtx2, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyInfoCtxCopyUserPref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxCopyUserPref",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyInfoCtxFinalize(&keyInfoCtx2);
         goto done;
     }
@@ -1521,11 +1381,8 @@ xmlSecKeyDataEncryptedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodeP
     keyInfoCtx2.keyReq.keyType = xmlSecKeyDataTypeAny;
     ret = xmlSecKeyDataBinWrite(key->value->id, key, &keyBuf, &keySize, &keyInfoCtx2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataBinWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataBinWrite",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyInfoCtxFinalize(&keyInfoCtx2);
         goto done;
     }
@@ -1537,11 +1394,8 @@ xmlSecKeyDataEncryptedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodeP
     } else {
         ret = xmlSecKeyInfoCtxCreateEncCtx(keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecKeyInfoCtxCreateEncCtx",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxCreateEncCtx",
+                                xmlSecKeyDataKlassGetName(id));
             goto done;
         }
     }
@@ -1549,11 +1403,8 @@ xmlSecKeyDataEncryptedKeyXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key, xmlNodeP
 
     ret = xmlSecEncCtxBinaryEncrypt(keyInfoCtx->encCtx, node, keyBuf, keySize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecEncCtxBinaryEncrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxBinaryEncrypt",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
diff --git a/src/keys.c b/src/keys.c
index 456565b..493acb7 100644
--- a/src/keys.c
+++ b/src/keys.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Keys.
@@ -107,34 +107,21 @@ xmlSecKeyUseWithCreate(const xmlChar* application, const xmlChar* identifier) {
     /* Allocate a new xmlSecKeyUseWith and fill the fields. */
     keyUseWith = (xmlSecKeyUseWithPtr)xmlMalloc(sizeof(xmlSecKeyUseWith));
     if(keyUseWith == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecKeyUseWith)=%d",
-                    (int)sizeof(xmlSecKeyUseWith));
+        xmlSecMallocError(sizeof(xmlSecKeyUseWith), NULL);
         return(NULL);
     }
     memset(keyUseWith, 0, sizeof(xmlSecKeyUseWith));
 
     ret = xmlSecKeyUseWithInitialize(keyUseWith);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyUseWithInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyUseWithInitialize", NULL);
         xmlSecKeyUseWithDestroy(keyUseWith);
         return(NULL);
     }
 
     ret = xmlSecKeyUseWithSet(keyUseWith, application, identifier);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyUseWithSet",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyUseWithSet", NULL);
         xmlSecKeyUseWithDestroy(keyUseWith);
         return(NULL);
     }
@@ -161,21 +148,13 @@ xmlSecKeyUseWithDuplicate(xmlSecKeyUseWithPtr keyUseWith) {
 
     newKeyUseWith = xmlSecKeyUseWithCreate(NULL, NULL);
     if(newKeyUseWith == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyUseWithCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyUseWithCreate", NULL);
         return(NULL);
     }
 
     ret = xmlSecKeyUseWithCopy(newKeyUseWith, keyUseWith);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyUseWithCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyUseWithCopy", NULL);
         xmlSecKeyUseWithDestroy(keyUseWith);
         return(NULL);
     }
@@ -224,24 +203,14 @@ xmlSecKeyUseWithSet(xmlSecKeyUseWithPtr keyUseWith, const xmlChar* application,
     if(application != NULL) {
         keyUseWith->application = xmlStrdup(application);
         if(keyUseWith->application == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "xmlStrlen(application)=%d",
-                        xmlStrlen(application));
+            xmlSecStrdupError(application, NULL);
             return(-1);
         }
     }
     if(identifier != NULL) {
         keyUseWith->identifier = xmlStrdup(identifier);
         if(keyUseWith->identifier == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "xmlStrlen(identifier)=%d",
-                        xmlStrlen(identifier));
+            xmlSecStrdupError(identifier, NULL);
             return(-1);
         }
     }
@@ -341,11 +310,7 @@ xmlSecKeyReqInitialize(xmlSecKeyReqPtr keyReq) {
     keyReq->keyUsage    = xmlSecKeyUsageAny;    /* by default you can do whatever you want with the key */
     ret = xmlSecPtrListInitialize(&keyReq->keyUseWithList, xmlSecKeyUseWithPtrListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize", NULL);
         return(-1);
     }
 
@@ -408,11 +373,7 @@ xmlSecKeyReqCopy(xmlSecKeyReqPtr dst, xmlSecKeyReqPtr src) {
 
     ret = xmlSecPtrListCopy(&dst->keyUseWithList, &src->keyUseWithList);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListCopy", NULL);
         return(-1);
     }
 
@@ -543,12 +504,7 @@ xmlSecKeyCreate(void)  {
     /* Allocate a new xmlSecKey and fill the fields. */
     key = (xmlSecKeyPtr)xmlMalloc(sizeof(xmlSecKey));
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecKey)=%d",
-                    (int)sizeof(xmlSecKey));
+        xmlSecMallocError(sizeof(xmlSecKey), NULL);
         return(NULL);
     }
     memset(key, 0, sizeof(xmlSecKey));
@@ -614,11 +570,7 @@ xmlSecKeyCopy(xmlSecKeyPtr keyDst, xmlSecKeyPtr keySrc) {
     if(keySrc->name != NULL) {
         keyDst->name = xmlStrdup(keySrc->name);
         if(keyDst->name == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_STRDUP_FAILED,
-                        "len=%d", xmlStrlen(keySrc->name));
+            xmlSecStrdupError(keySrc->name, NULL);
             return(-1);
         }
     }
@@ -626,11 +578,7 @@ xmlSecKeyCopy(xmlSecKeyPtr keyDst, xmlSecKeyPtr keySrc) {
     if(keySrc->value != NULL) {
         keyDst->value = xmlSecKeyDataDuplicate(keySrc->value);
         if(keyDst->value == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataDuplicate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyDataDuplicate", NULL);
             return(-1);
         }
     }
@@ -638,11 +586,7 @@ xmlSecKeyCopy(xmlSecKeyPtr keyDst, xmlSecKeyPtr keySrc) {
     if(keySrc->dataList != NULL) {
         keyDst->dataList = xmlSecPtrListDuplicate(keySrc->dataList);
         if(keyDst->dataList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListDuplicate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListDuplicate", NULL);
             return(-1);
         }
     }
@@ -671,21 +615,13 @@ xmlSecKeyDuplicate(xmlSecKeyPtr key) {
 
     newKey = xmlSecKeyCreate();
     if(newKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         return(NULL);
     }
 
     ret = xmlSecKeyCopy(newKey, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCopy", NULL);
         xmlSecKeyDestroy(newKey);
         return(NULL);
     }
@@ -771,11 +707,7 @@ xmlSecKeySetName(xmlSecKeyPtr key, const xmlChar* name) {
     if(name != NULL) {
         key->name = xmlStrdup(name);
         if(key->name == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_STRDUP_FAILED,
-                        "len=%d", xmlStrlen(name));
+            xmlSecStrdupError(name, NULL);
             return(-1);
         }
     }
@@ -878,23 +810,17 @@ xmlSecKeyEnsureData(xmlSecKeyPtr key, xmlSecKeyDataId dataId) {
 
     data = xmlSecKeyDataCreate(dataId);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataId=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
+        xmlSecInternalError2("xmlSecKeyDataCreate", NULL,
+                             "dataId=%s",
+                             xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
         return(NULL);
     }
 
     ret = xmlSecKeyAdoptData(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyAdoptData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataId=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
+        xmlSecInternalError2("xmlSecKeyAdoptData", NULL,
+                             "dataId=%s",
+                             xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)));
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
@@ -932,11 +858,7 @@ xmlSecKeyAdoptData(xmlSecKeyPtr key, xmlSecKeyDataPtr data) {
     if(key->dataList == NULL) {
         key->dataList = xmlSecPtrListCreate(xmlSecKeyDataListId);
         if(key->dataList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListCreate", NULL);
             return(-1);
         }
     }
@@ -1067,43 +989,32 @@ xmlSecKeyGenerate(xmlSecKeyDataId dataId, xmlSecSize sizeBits, xmlSecKeyDataType
 
     data = xmlSecKeyDataCreate(dataId);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(dataId));
         return(NULL);
     }
 
     ret = xmlSecKeyDataGenerate(data, sizeBits, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyDataGenerate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d;type=%d", sizeBits, type);
+        xmlSecInternalError3("xmlSecKeyDataGenerate",
+                             xmlSecKeyDataKlassGetName(dataId),
+                             "size=%d;type=%d", sizeBits, type);
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecKeyDataDestroy(data);
         xmlSecKeyDestroy(key);
         return(NULL);
@@ -1130,11 +1041,7 @@ xmlSecKeyGenerateByName(const xmlChar* name, xmlSecSize sizeBits, xmlSecKeyDataT
 
     dataId = xmlSecKeyDataIdListFindByName(xmlSecKeyDataIdsGet(), name, xmlSecKeyDataUsageAny);
     if(dataId == xmlSecKeyDataIdUnknown) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(name),
-                    XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_KEY_DATA_NOT_FOUND, name, NULL);
         return(NULL);
     }
 
@@ -1162,21 +1069,15 @@ xmlSecKeyReadBuffer(xmlSecKeyDataId dataId, xmlSecBuffer* buffer) {
     /* create key data */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate",
+                            xmlSecKeyDataKlassGetName(dataId));
         return(NULL);
     }
 
     ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx, NULL);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecKeyDestroy(key);
         return(NULL);
     }
@@ -1187,11 +1088,8 @@ xmlSecKeyReadBuffer(xmlSecKeyDataId dataId, xmlSecBuffer* buffer) {
                         xmlSecBufferGetSize(buffer),
                         &keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyDataBinRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataBinRead",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecKeyInfoCtxFinalize(&keyInfoCtx);
         xmlSecKeyDestroy(key);
         return(NULL);
@@ -1222,34 +1120,27 @@ xmlSecKeyReadBinaryFile(xmlSecKeyDataId dataId, const char* filename) {
     /* read file to buffer */
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecKeyDataKlassGetName(dataId));
         return(NULL);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile",
+                             xmlSecKeyDataKlassGetName(dataId),
+                             "filename=%s",
+                             xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
 
     key = xmlSecKeyReadBuffer(dataId, &buffer);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyReadBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecKeyReadBuffer",
+                             xmlSecKeyDataKlassGetName(dataId),
+                             "filename=%s",
+                             xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -1281,31 +1172,22 @@ xmlSecKeyReadMemory(xmlSecKeyDataId dataId, const xmlSecByte* data, xmlSecSize d
     /* read file to buffer */
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecKeyDataKlassGetName(dataId));
         return(NULL);
     }
 
     if (xmlSecBufferAppend(&buffer, data, dataSize) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecBufferAppend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferAppend",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
 
     key = xmlSecKeyReadBuffer(dataId, &buffer);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(dataId)),
-                    "xmlSecKeyReadBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyReadBuffer",
+                            xmlSecKeyDataKlassGetName(dataId));
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -1335,23 +1217,17 @@ xmlSecKeysMngrGetKey(xmlNodePtr keyInfoNode, xmlSecKeyInfoCtxPtr keyInfoCtx) {
     /* first try to read data from <dsig:KeyInfo/> node */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         return(NULL);
     }
 
     if(keyInfoNode != NULL) {
         ret = xmlSecKeyInfoNodeRead(keyInfoNode, key, keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyInfoNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(keyInfoNode)));
+            xmlSecInternalError2("xmlSecKeyInfoNodeRead",
+                                 NULL,
+                                 "node=%s",
+                                 xmlSecErrorsSafeString(xmlSecNodeGetName(keyInfoNode)));
             xmlSecKeyDestroy(key);
             return(NULL);
         }
@@ -1367,11 +1243,7 @@ xmlSecKeysMngrGetKey(xmlNodePtr keyInfoNode, xmlSecKeyInfoCtxPtr keyInfoCtx) {
     if(keyInfoCtx->keysMngr != NULL) {
         key = xmlSecKeysMngrFindKey(keyInfoCtx->keysMngr, NULL, keyInfoCtx);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrFindKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrFindKey", NULL);
             return(NULL);
         }
         if(xmlSecKeyGetValue(key) != NULL) {
@@ -1380,11 +1252,7 @@ xmlSecKeysMngrGetKey(xmlNodePtr keyInfoNode, xmlSecKeyInfoCtxPtr keyInfoCtx) {
         xmlSecKeyDestroy(key);
     }
 
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                NULL,
-                XMLSEC_ERRORS_R_KEY_NOT_FOUND,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecOtherError(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL, NULL);
     return(NULL);
 }
 
diff --git a/src/keysdata.c b/src/keysdata.c
index 30c800d..e5fd600 100644
--- a/src/keysdata.c
+++ b/src/keysdata.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Key data.
@@ -59,21 +59,13 @@ xmlSecKeyDataIdsInit(void) {
 
     ret = xmlSecPtrListInitialize(xmlSecKeyDataIdsGet(), xmlSecKeyDataIdListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListPtrInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataIdListId");
+        xmlSecInternalError("xmlSecPtrListPtrInitialize(xmlSecKeyDataIdListId)", NULL);
         return(-1);
     }
 
     ret = xmlSecKeyDataIdsRegisterDefault();
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsRegisterDefault",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsRegisterDefault", NULL);
         return(-1);
     }
 
@@ -107,12 +99,8 @@ xmlSecKeyDataIdsRegister(xmlSecKeyDataId id) {
 
     ret = xmlSecPtrListAdd(xmlSecKeyDataIdsGet(), (xmlSecPtr)id);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataId=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)));
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
@@ -131,39 +119,23 @@ xmlSecKeyDataIdsRegister(xmlSecKeyDataId id) {
 int
 xmlSecKeyDataIdsRegisterDefault(void) {
     if(xmlSecKeyDataIdsRegister(xmlSecKeyDataNameId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataNameId");
+        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataNameId)", NULL);
         return(-1);
     }
 
     if(xmlSecKeyDataIdsRegister(xmlSecKeyDataValueId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataValueId");
+        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataValueId)", NULL);
         return(-1);
     }
 
     if(xmlSecKeyDataIdsRegister(xmlSecKeyDataRetrievalMethodId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataRetrievalMethodId");
+        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataRetrievalMethodId", NULL);
         return(-1);
     }
 
 #ifndef XMLSEC_NO_XMLENC
     if(xmlSecKeyDataIdsRegister(xmlSecKeyDataEncryptedKeyId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataEncryptedKeyId");
+        xmlSecInternalError("xmlSecKeyDataIdsRegister(xmlSecKeyDataEncryptedKeyId)", NULL);
         return(-1);
     }
 #endif /* XMLSEC_NO_XMLENC */
@@ -200,11 +172,8 @@ xmlSecKeyDataCreate(xmlSecKeyDataId id)  {
     /* Allocate a new xmlSecKeyData and fill the fields. */
     data = (xmlSecKeyDataPtr)xmlMalloc(id->objSize);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", id->objSize);
+        xmlSecMallocError(id->objSize,
+                          xmlSecKeyDataKlassGetName(id));
         return(NULL);
     }
     memset(data, 0, id->objSize);
@@ -213,11 +182,8 @@ xmlSecKeyDataCreate(xmlSecKeyDataId id)  {
     if(id->initialize != NULL) {
         ret = (id->initialize)(data);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "id->initialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("id->initialize",
+                                xmlSecKeyDataKlassGetName(id));
             xmlSecKeyDataDestroy(data);
             return(NULL);
         }
@@ -246,21 +212,15 @@ xmlSecKeyDataDuplicate(xmlSecKeyDataPtr data) {
 
     newData = xmlSecKeyDataCreate(data->id);
     if(newData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataGetName(data));
         return(NULL);
     }
 
     ret = (data->id->duplicate)(newData, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "id->duplicate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("id->duplicate",
+                            xmlSecKeyDataGetName(data));
         xmlSecKeyDataDestroy(newData);
         return(NULL);
     }
@@ -398,11 +358,9 @@ xmlSecKeyDataGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,
     /* write data */
     ret = data->id->generate(data, sizeBits, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "id->generate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", sizeBits);
+        xmlSecInternalError2("id->generate",
+                             xmlSecKeyDataGetName(data),
+                             "size=%d", sizeBits);
         return(-1);
     }
     return(0);
@@ -517,11 +475,8 @@ xmlSecKeyDataBinaryValueInitialize(xmlSecKeyDataPtr data) {
 
     ret = xmlSecBufferInitialize(buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -555,11 +510,8 @@ xmlSecKeyDataBinaryValueDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
                     xmlSecBufferGetData(buffer),
                     xmlSecBufferGetSize(buffer));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                    "xmlSecKeyDataBinaryValueSetBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataBinaryValueSetBuffer",
+                            xmlSecKeyDataGetName(dst));
         return(-1);
     }
 
@@ -612,22 +564,15 @@ xmlSecKeyDataBinaryValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     str = xmlNodeGetContent(node);
     if(str == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeContentError(node, xmlSecKeyDataKlassGetName(id), "empty");
         return(-1);
     }
 
     /* usual trick: decode into the same buffer */
     ret = xmlSecBase64Decode(str, (xmlSecByte*)str, xmlStrlen(str));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode",
+                            xmlSecKeyDataKlassGetName(id));
         xmlFree(str);
         return(-1);
     }
@@ -639,32 +584,28 @@ xmlSecKeyDataBinaryValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
         xmlSecBufferPtr buffer;
 
         if(!xmlSecKeyDataCheckId(data, id)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError2(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                              xmlSecKeyDataGetName(data),
+                              "id=%s",
+                              xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)));
             xmlFree(str);
             return(-1);
         }
 
         buffer = xmlSecKeyDataBinaryValueGetBuffer(data);
-        if((buffer != NULL) && ((xmlSecSize)xmlSecBufferGetSize(buffer) != len)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        "cur-data-size=%d;new-data-size=%d",
-                        xmlSecBufferGetSize(buffer), len);
+        if((buffer != NULL) && (xmlSecBufferGetSize(buffer) != len)) {
+            xmlSecOtherError3(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                              xmlSecKeyDataGetName(data),
+                              "cur-data-size=%lu;new-data-size=%lu",
+                              (unsigned long)xmlSecBufferGetSize(buffer),
+                              (unsigned long)len);
             xmlFree(str);
             return(-1);
         }
         if((buffer != NULL) && (len > 0) && (memcmp(xmlSecBufferGetData(buffer), str, len) != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        "key already has a different value");
+            xmlSecOtherError(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                             xmlSecKeyDataGetName(data),
+                             "key already has a different value");
             xmlFree(str);
             return(-1);
         }
@@ -680,22 +621,17 @@ xmlSecKeyDataBinaryValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         xmlFree(str);
         return(-1);
     }
 
     ret = xmlSecKeyDataBinaryValueSetBuffer(data, (xmlSecByte*)str, len);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataBinaryValueSetBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", len);
+        xmlSecInternalError2("xmlSecKeyDataBinaryValueSetBuffer",
+                             xmlSecKeyDataKlassGetName(id),
+                             "size=%d", len);
         xmlSecKeyDataDestroy(data);
         xmlFree(str);
         return(-1);
@@ -703,22 +639,16 @@ xmlSecKeyDataBinaryValueXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlFree(str);
 
     if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), data) != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyReqMatchKeyValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         return(0);
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         return(-1);
     }
@@ -765,11 +695,8 @@ xmlSecKeyDataBinaryValueXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
                              xmlSecBufferGetSize(buffer),
                              keyInfoCtx->base64LineSize);
     if(str == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     xmlNodeSetContent(node, str);
@@ -808,30 +735,26 @@ xmlSecKeyDataBinaryValueBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
         xmlSecBufferPtr buffer;
 
         if(!xmlSecKeyDataCheckId(data, id)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError2(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                              xmlSecKeyDataGetName(data),
+                              "id=%s",
+                              xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)));
             return(-1);
         }
 
         buffer = xmlSecKeyDataBinaryValueGetBuffer(data);
-        if((buffer != NULL) && ((xmlSecSize)xmlSecBufferGetSize(buffer) != bufSize)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        "cur-data-size=%d;new-data-size=%d",
-                        xmlSecBufferGetSize(buffer), bufSize);
+        if((buffer != NULL) && (xmlSecBufferGetSize(buffer) != bufSize)) {
+            xmlSecOtherError3(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                              xmlSecKeyDataGetName(data),
+                              "cur-data-size=%lu;new-data-size=%lu",
+                              (unsigned long)xmlSecBufferGetSize(buffer),
+                              (unsigned long)bufSize);
             return(-1);
         }
         if((buffer != NULL) && (bufSize > 0) && (memcmp(xmlSecBufferGetData(buffer), buf, bufSize) != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
-                        "key already has a different value");
+            xmlSecOtherError(XMLSEC_ERRORS_R_KEY_DATA_ALREADY_EXIST,
+                             xmlSecKeyDataGetName(data),
+                             "key already has a different value");
             return(-1);
         }
         if(buffer != NULL) {
@@ -844,42 +767,31 @@ xmlSecKeyDataBinaryValueBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecKeyDataBinaryValueSetBuffer(data, buf, bufSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataBinaryValueSetBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", bufSize);
+        xmlSecInternalError2("xmlSecKeyDataBinaryValueSetBuffer",
+                             xmlSecKeyDataKlassGetName(id),
+                             "size=%d", bufSize);
         xmlSecKeyDataDestroy(data);
         return(-1);
     }
 
     if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), data) != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyReqMatchKeyValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         return(0);
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         return(-1);
     }
@@ -926,11 +838,8 @@ xmlSecKeyDataBinaryValueBinWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     (*bufSize) = xmlSecBufferGetSize(buffer);
     (*buf) = (xmlSecByte*) xmlMalloc((*bufSize));
     if((*buf) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError((*bufSize),
+                          xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     memcpy((*buf), xmlSecBufferGetData(buffer), (*bufSize));
@@ -1314,11 +1223,8 @@ xmlSecKeyDataStoreCreate(xmlSecKeyDataStoreId id)  {
     /* Allocate a new xmlSecKeyDataStore and fill the fields. */
     store = (xmlSecKeyDataStorePtr)xmlMalloc(id->objSize);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", id->objSize);
+        xmlSecMallocError(id->objSize,
+                          xmlSecKeyDataStoreKlassGetName(id));
         return(NULL);
     }
     memset(store, 0, id->objSize);
@@ -1327,11 +1233,8 @@ xmlSecKeyDataStoreCreate(xmlSecKeyDataStoreId id)  {
     if(id->initialize != NULL) {
         ret = (id->initialize)(store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreKlassGetName(id)),
-                        "id->initialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("id->initialize",
+                                xmlSecKeyDataStoreKlassGetName(id));
             xmlSecKeyDataStoreDestroy(store);
             return(NULL);
         }
diff --git a/src/keysmngr.c b/src/keysmngr.c
index 5315203..6a1b441 100644
--- a/src/keysmngr.c
+++ b/src/keysmngr.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Keys Manager.
@@ -48,23 +48,14 @@ xmlSecKeysMngrCreate(void) {
     /* Allocate a new xmlSecKeysMngr and fill the fields. */
     mngr = (xmlSecKeysMngrPtr)xmlMalloc(sizeof(xmlSecKeysMngr));
     if(mngr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecKeysMngr)=%d",
-                    (int)sizeof(xmlSecKeysMngr));
+        xmlSecMallocError(sizeof(xmlSecKeysMngr), NULL);
         return(NULL);
     }
     memset(mngr, 0, sizeof(xmlSecKeysMngr));
 
     ret = xmlSecPtrListInitialize(&(mngr->storesList), xmlSecKeyDataStorePtrListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyDataStorePtrListId");
+        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecKeyDataStorePtrListId)", NULL);
         return(NULL);
     }
 
@@ -241,11 +232,8 @@ xmlSecKeyStoreCreate(xmlSecKeyStoreId id)  {
     /* Allocate a new xmlSecKeyStore and fill the fields. */
     store = (xmlSecKeyStorePtr)xmlMalloc(id->objSize);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", id->objSize);
+        xmlSecMallocError(id->objSize,
+                          xmlSecKeyStoreKlassGetName(id));
         return(NULL);
     }
     memset(store, 0, id->objSize);
@@ -254,11 +242,8 @@ xmlSecKeyStoreCreate(xmlSecKeyStoreId id)  {
     if(id->initialize != NULL) {
         ret = (id->initialize)(store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreKlassGetName(id)),
-                        "id->initialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("id->initialize",
+                                xmlSecKeyStoreKlassGetName(id));
             xmlSecKeyStoreDestroy(store);
             return(NULL);
         }
@@ -376,11 +361,8 @@ xmlSecSimpleKeysStoreAdoptKey(xmlSecKeyStorePtr store, xmlSecKeyPtr key) {
 
     ret = xmlSecPtrListAdd(list, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecKeyStoreGetName(store));
         return(-1);
     }
 
@@ -412,22 +394,15 @@ xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
     doc = xmlParseFile(uri);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlParseFile",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecXmlError2("xmlParseFile", xmlSecKeyStoreGetName(store),
+                        "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
     root = xmlDocGetRootElement(doc);
     if(!xmlSecCheckNodeName(root, BAD_CAST "Keys", xmlSecNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(root)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected-node=<xmlsec:Keys>");
+        xmlSecInvalidNodeError(root, BAD_CAST "Keys",
+                               xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -436,23 +411,16 @@ xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     while((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeKeyInfo, xmlSecDSigNs)) {
         key = xmlSecKeyCreate();
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        "expected-node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError("xmlSecKeyCreate",
+                                xmlSecKeyStoreGetName(store));
             xmlFreeDoc(doc);
             return(-1);
         }
 
         ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoCtxInitialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
             return(-1);
@@ -468,11 +436,8 @@ xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
         ret = xmlSecKeyInfoNodeRead(cur, key, &keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeRead",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyInfoCtxFinalize(&keyInfoCtx);
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
@@ -483,11 +448,8 @@ xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
         if(xmlSecKeyIsValid(key)) {
             ret = xmlSecSimpleKeysStoreAdoptKey(store, key);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            "xmlSecSimpleKeysStoreAdoptKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecSimpleKeysStoreAdoptKey",
+                                    xmlSecKeyStoreGetName(store));
                 xmlSecKeyDestroy(key);
                 xmlFreeDoc(doc);
                 return(-1);
@@ -500,11 +462,7 @@ xmlSecSimpleKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -547,11 +505,8 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
     /* create doc */
     doc = xmlSecCreateTree(BAD_CAST "Keys", xmlSecNs);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSecCreateTree",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCreateTree",
+                            xmlSecKeyStoreGetName(store));
         return(-1);
     }
 
@@ -566,12 +521,10 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
 
         cur = xmlSecAddChild(xmlDocGetRootElement(doc), xmlSecNodeKeyInfo, xmlSecDSigNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError2("xmlSecAddChild",
+                                 xmlSecKeyStoreGetName(store),
+                                 "node=%s",
+                                 xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
             xmlFreeDoc(doc);
             return(-1);
         }
@@ -579,12 +532,10 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
         /* special data key name */
         if(xmlSecKeyGetName(key) != NULL) {
             if(xmlSecAddChild(cur, xmlSecNodeKeyName, xmlSecDSigNs) == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            "xmlSecAddChild",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeKeyName));
+                xmlSecInternalError2("xmlSecAddChild",
+                                     xmlSecKeyStoreGetName(store),
+                                     "node=%s",
+                                     xmlSecErrorsSafeString(xmlSecNodeKeyName));
                 xmlFreeDoc(doc);
                 return(-1);
             }
@@ -605,12 +556,9 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
             }
 
             if(xmlSecAddChild(cur, dataId->dataNodeName, dataId->dataNodeNs) == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            "xmlSecAddChild",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(dataId->dataNodeName));
+                xmlSecInternalError2("xmlSecAddChild",
+                                     xmlSecKeyStoreGetName(store),
+                                    "node=%s", xmlSecErrorsSafeString(dataId->dataNodeName));
                 xmlFreeDoc(doc);
                 return(-1);
             }
@@ -618,11 +566,8 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
 
         ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoCtxInitialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                                xmlSecKeyStoreGetName(store));
             xmlFreeDoc(doc);
             return(-1);
         }
@@ -635,11 +580,8 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
         /* finally write key in the node */
         ret = xmlSecKeyInfoNodeWrite(cur, key, &keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoNodeWrite",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeWrite",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyInfoCtxFinalize(&keyInfoCtx);
             xmlFreeDoc(doc);
             return(-1);
@@ -650,12 +592,8 @@ xmlSecSimpleKeysStoreSave(xmlSecKeyStorePtr store, const char *filename, xmlSecK
     /* now write result */
     ret = xmlSaveFormatFile(filename, doc, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSaveFormatFile",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecXmlError2("xmlSaveFormatFile", xmlSecKeyStoreGetName(store),
+                        "filename=%s", xmlSecErrorsSafeString(filename));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -697,11 +635,8 @@ xmlSecSimpleKeysStoreInitialize(xmlSecKeyStorePtr store) {
 
     ret = xmlSecPtrListInitialize(list, xmlSecKeyPtrListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecKeyPtrListId");
+        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecKeyPtrListId)",
+                            xmlSecKeyStoreGetName(store));
         return(-1);
     }
 
diff --git a/src/kw_aes_des.c b/src/kw_aes_des.c
index 93a83d7..34c323c 100644
--- a/src/kw_aes_des.c
+++ b/src/kw_aes_des.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Implementation of AES/DES Key Transport algorithm
@@ -94,11 +94,7 @@ xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* step 2: calculate sha1 and CMS */
     ret = kwDes3Id->sha1(context, in, inSize, sha1, sizeof(sha1));
     if((ret < 0) || (ret != sizeof(sha1))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->sha1",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->sha1", NULL);
         return(-1);
     }
 
@@ -109,11 +105,7 @@ xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* step 4: generate random iv */
     ret = kwDes3Id->generateRandom(context, iv, sizeof(iv));
     if((ret < 0) || (ret != sizeof(iv))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->generateRandom",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->generateRandom", NULL);
         return(-1);
     }
 
@@ -123,11 +115,7 @@ xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, void *context,
                            out, inSize + XMLSEC_KW_DES3_BLOCK_LENGTH,
                            out, outSize);
     if((ret < 0) || ((xmlSecSize)ret != inSize + XMLSEC_KW_DES3_BLOCK_LENGTH)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->encrypt", NULL);
         return(-1);
     }
 
@@ -139,11 +127,7 @@ xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* step 7: reverse octets order, result is TEMP3 */
     ret = xmlSecKWDes3BufferReverse(out, s);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKWDes3BufferReverse",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("xmlSecKWDes3BufferReverse", NULL);
         return(-1);
     }
 
@@ -153,11 +137,7 @@ xmlSecKWDes3Encode(xmlSecKWDes3Id kwDes3Id, void *context,
                            out, s,
                            out, outSize);
     if((ret < 0) || ((xmlSecSize)ret != s)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->encrypt", NULL);
         return(-1);
     }
 
@@ -186,11 +166,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* step 2: first decryption with static IV, result is TEMP3 */
     tmp = xmlSecBufferCreate(inSize);
     if(tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "inSize=%d", (int)inSize);
+        xmlSecInternalError2("xmlSecBufferCreate", NULL, "inSize=%d", (int)inSize);
         return(-1);
     }
     
@@ -199,11 +175,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
                            in, inSize, 
                            xmlSecBufferGetData(tmp), xmlSecBufferGetMaxSize(tmp));
     if((ret < 0) || (ret < XMLSEC_KW_DES3_IV_LENGTH)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->decrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->decrypt", NULL);
         xmlSecBufferDestroy(tmp);
         return(-1);
     }
@@ -212,11 +184,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* step 3: reverse octets order in TEMP3, result is TEMP2 */
     ret = xmlSecKWDes3BufferReverse(xmlSecBufferGetData(tmp), s);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKWDes3BufferReverse",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("xmlSecKWDes3BufferReverse", NULL);
         xmlSecBufferDestroy(tmp);
         return(-1);
     }
@@ -227,11 +195,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
                            xmlSecBufferGetData(tmp) + XMLSEC_KW_DES3_IV_LENGTH, s - XMLSEC_KW_DES3_IV_LENGTH,
                            out, outSize);
     if((ret < 0) || (ret < XMLSEC_KW_DES3_BLOCK_LENGTH)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->decrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->decrypt", NULL);
         xmlSecBufferDestroy(tmp);
         return(-1);
     }
@@ -242,11 +206,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
                         out, s,
                         sha1, sizeof(sha1));
     if((ret < 0) || (ret != sizeof(sha1))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "kwDes3Id->sha1",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ret=%d", ret);
+        xmlSecInternalError("kwDes3Id->sha1", NULL);
         xmlSecBufferDestroy(tmp);
         return(-1);
     }
@@ -254,11 +214,7 @@ xmlSecKWDes3Decode(xmlSecKWDes3Id kwDes3Id, void *context,
     /* check sha1 */
     xmlSecAssert2(XMLSEC_KW_DES3_BLOCK_LENGTH <= sizeof(sha1), -1);
     if(memcmp(sha1, out + s, XMLSEC_KW_DES3_BLOCK_LENGTH) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "SHA1 does not match");
+        xmlSecInvalidDataError("SHA1 does not match", NULL);
         xmlSecBufferDestroy(tmp);
         return(-1);
     }
@@ -396,11 +352,7 @@ xmlSecKWAesEncode(xmlSecKWAesId kwAesId, void *context,
     if(N == 1) {
         ret = kwAesId->encrypt(out, inSize + XMLSEC_KW_AES_MAGIC_BLOCK_SIZE, out, outSize, context);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "kwAesId->encrypt",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("kwAesId->encrypt", NULL);
             return(-1);
         }
     } else {
@@ -414,11 +366,7 @@ xmlSecKWAesEncode(xmlSecKWAesId kwAesId, void *context,
 
                 ret = kwAesId->encrypt(block, sizeof(block), block, sizeof(block), context);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "kwAesId->encrypt",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("kwAesId->encrypt", NULL);
                     return(-1);
                 }
                 block[7] ^=  t;
@@ -458,11 +406,7 @@ xmlSecKWAesDecode(xmlSecKWAesId kwAesId, void *context,
     if(N == 1) {
         ret = kwAesId->decrypt(out, inSize, out, outSize, context);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "kwAesId->decrypt",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("kwAesId->decrypt", NULL);
             return(-1);
         }
     } else {
@@ -477,11 +421,7 @@ xmlSecKWAesDecode(xmlSecKWAesId kwAesId, void *context,
 
                 ret = kwAesId->decrypt(block, sizeof(block), block, sizeof(block), context);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "kwAesId->decrypt",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("kwAesId->decrypt", NULL);
                     return(-1);
                 }
                 memcpy(out, block, 8);
@@ -494,11 +434,7 @@ xmlSecKWAesDecode(xmlSecKWAesId kwAesId, void *context,
 
     /* check the output */
     if(memcmp(xmlSecKWAesMagicBlock, out, XMLSEC_KW_AES_MAGIC_BLOCK_SIZE) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "bad magic block");
+        xmlSecInvalidDataError("bad magic block", NULL);
         return(-1);
     }
 
diff --git a/src/kw_aes_des.h b/src/kw_aes_des.h
index 19c9851..58eba88 100644
--- a/src/kw_aes_des.h
+++ b/src/kw_aes_des.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * THIS IS A PRIVATE XMLSEC HEADER FILE
  * DON'T USE IT IN YOUR APPLICATION
diff --git a/src/list.c b/src/list.c
index 40650ca..3214f98 100644
--- a/src/list.c
+++ b/src/list.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * List of pointers.
@@ -60,22 +60,15 @@ xmlSecPtrListCreate(xmlSecPtrListId id) {
     /* Allocate a new xmlSecPtrList and fill the fields. */
     list = (xmlSecPtrListPtr)xmlMalloc(sizeof(xmlSecPtrList));
     if(list == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecPtrList)=%d",
-                    (int)sizeof(xmlSecPtrList));
+        xmlSecMallocError(sizeof(xmlSecPtrList),
+                          xmlSecPtrListKlassGetName(id));
         return(NULL);
     }
 
     ret = xmlSecPtrListInitialize(list, id);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListKlassGetName(id)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize",
+                            xmlSecPtrListKlassGetName(id));
         xmlFree(list);
         return(NULL);
     }
@@ -186,11 +179,9 @@ xmlSecPtrListCopy(xmlSecPtrListPtr dst, xmlSecPtrListPtr src) {
     /* allocate memory */
     ret = xmlSecPtrListEnsureSize(dst, dst->use + src->use);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListGetName(src)),
-                    "xmlSecPtrListEnsureSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", src->use);
+        xmlSecInternalError2("xmlSecPtrListEnsureSize",
+                             xmlSecPtrListGetName(src),
+                             "size=%d", src->use);
         return(-1);
     }
 
@@ -202,11 +193,8 @@ xmlSecPtrListCopy(xmlSecPtrListPtr dst, xmlSecPtrListPtr src) {
         if((dst->id->duplicateItem != NULL) && (src->data[i] != NULL)) {
             dst->data[dst->use] = dst->id->duplicateItem(src->data[i]);
             if(dst->data[dst->use] == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecPtrListGetName(src)),
-                            "duplicateItem",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("duplicateItem",
+                                    xmlSecPtrListGetName(src));
                 return(-1);
             }
         } else {
@@ -234,21 +222,15 @@ xmlSecPtrListDuplicate(xmlSecPtrListPtr list) {
 
     newList = xmlSecPtrListCreate(list->id);
     if(newList == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListGetName(list)),
-                    "xmlSecPtrListCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListCreate",
+                            xmlSecPtrListGetName(list));
         return(NULL);
     }
 
     ret = xmlSecPtrListCopy(newList, list);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListGetName(list)),
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListCopy",
+                            xmlSecPtrListGetName(list));
         xmlSecPtrListDestroy(newList);
         return(NULL);
     }
@@ -306,11 +288,9 @@ xmlSecPtrListAdd(xmlSecPtrListPtr list, xmlSecPtr item) {
 
     ret = xmlSecPtrListEnsureSize(list, list->use + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListGetName(list)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", list->use + 1);
+        xmlSecInternalError2("xmlSecPtrListAdd",
+                             xmlSecPtrListGetName(list),
+                             "size=%d", list->use + 1);
         return(-1);
     }
 
@@ -474,12 +454,8 @@ xmlSecPtrListEnsureSize(xmlSecPtrListPtr list, xmlSecSize size) {
         newData = (xmlSecPtr*)xmlMalloc(sizeof(xmlSecPtr) * newSize);
     }
     if(newData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecPtrListGetName(list)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecPtr)*%d=%d",
-                    newSize, (int)(sizeof(xmlSecPtr) * newSize));
+        xmlSecMallocError(sizeof(xmlSecPtr) * newSize,
+                          xmlSecPtrListGetName(list));
         return(-1);
     }
 
diff --git a/src/membuf.c b/src/membuf.c
index 24cca3d..6cfeb57 100644
--- a/src/membuf.c
+++ b/src/membuf.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Memory buffer transform
@@ -115,11 +115,8 @@ xmlSecTransformMemBufInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -162,31 +159,25 @@ xmlSecTransformMemBufExecute(xmlSecTransformPtr transform, int last, xmlSecTrans
         /* just copy everything from in to our buffer and out */
         ret = xmlSecBufferAppend(buffer, xmlSecBufferGetData(in), inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferAppend",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
         ret = xmlSecBufferAppend(out, xmlSecBufferGetData(in), inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferAppend",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -197,11 +188,7 @@ xmlSecTransformMemBufExecute(xmlSecTransformPtr transform, int last, xmlSecTrans
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(inSize == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
diff --git a/src/mscrypto/Makefile.am b/src/mscrypto/Makefile.am
index 5cea654..20aedc5 100644
--- a/src/mscrypto/Makefile.am
+++ b/src/mscrypto/Makefile.am
@@ -41,10 +41,6 @@ libxmlsec1_mscrypto_la_SOURCES =\
 	xmlsec-mingw.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_mscrypto_la_SOURCES += ../strings.c
-endif
-
 libxmlsec1_mscrypto_la_LIBADD = \
 	$(MSCRYPTO_LIBS) \
 	$(LIBXSLT_LIBS) \
diff --git a/src/mscrypto/Makefile.in b/src/mscrypto/Makefile.in
index f8ad32b..b09340f 100644
--- a/src/mscrypto/Makefile.in
+++ b/src/mscrypto/Makefile.in
@@ -88,7 +88,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
- at SHAREDLIB_HACK_TRUE@am__append_1 = ../strings.c
 subdir = src/mscrypto
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -132,14 +131,7 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(libdir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-am__libxmlsec1_mscrypto_la_SOURCES_DIST = globals.h private.h app.c \
-	certkeys.c ciphers.c crypto.c digests.c hmac.c keysstore.c \
-	kw_aes.c kw_des.c kt_rsa.c signatures.c symkeys.c x509.c \
-	x509vfy.c csp_calg.h csp_oid.h xmlsec-mingw.h ../strings.c
 am__objects_1 =
-am__dirstamp = $(am__leading_dot)dirstamp
- at SHAREDLIB_HACK_TRUE@am__objects_2 =  \
- at SHAREDLIB_HACK_TRUE@	../libxmlsec1_mscrypto_la-strings.lo
 am_libxmlsec1_mscrypto_la_OBJECTS = libxmlsec1_mscrypto_la-app.lo \
 	libxmlsec1_mscrypto_la-certkeys.lo \
 	libxmlsec1_mscrypto_la-ciphers.lo \
@@ -153,8 +145,7 @@ am_libxmlsec1_mscrypto_la_OBJECTS = libxmlsec1_mscrypto_la-app.lo \
 	libxmlsec1_mscrypto_la-signatures.lo \
 	libxmlsec1_mscrypto_la-symkeys.lo \
 	libxmlsec1_mscrypto_la-x509.lo \
-	libxmlsec1_mscrypto_la-x509vfy.lo $(am__objects_1) \
-	$(am__objects_2)
+	libxmlsec1_mscrypto_la-x509vfy.lo $(am__objects_1)
 libxmlsec1_mscrypto_la_OBJECTS = $(am_libxmlsec1_mscrypto_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -199,7 +190,7 @@ am__v_CCLD_ = $(am__v_CCLD_ at AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libxmlsec1_mscrypto_la_SOURCES)
-DIST_SOURCES = $(am__libxmlsec1_mscrypto_la_SOURCES_DIST)
+DIST_SOURCES = $(libxmlsec1_mscrypto_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -288,6 +279,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -335,6 +327,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -351,6 +344,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -440,6 +434,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -468,10 +463,28 @@ libxmlsec1_mscrypto_la_CPPFLAGS = \
 	$(LIBXML_CFLAGS) \
 	$(NULL)
 
-libxmlsec1_mscrypto_la_SOURCES = globals.h private.h app.c certkeys.c \
-	ciphers.c crypto.c digests.c hmac.c keysstore.c kw_aes.c \
-	kw_des.c kt_rsa.c signatures.c symkeys.c x509.c x509vfy.c \
-	csp_calg.h csp_oid.h xmlsec-mingw.h $(NULL) $(am__append_1)
+libxmlsec1_mscrypto_la_SOURCES = \
+	globals.h \
+	private.h \
+	app.c \
+	certkeys.c \
+	ciphers.c \
+	crypto.c \
+	digests.c \
+	hmac.c \
+	keysstore.c \
+	kw_aes.c \
+	kw_des.c \
+	kt_rsa.c \
+	signatures.c \
+	symkeys.c \
+	x509.c \
+	x509vfy.c \
+	csp_calg.h \
+	csp_oid.h \
+	xmlsec-mingw.h \
+	$(NULL)
+
 libxmlsec1_mscrypto_la_LIBADD = \
 	$(MSCRYPTO_LIBS) \
 	$(LIBXSLT_LIBS) \
@@ -556,27 +569,16 @@ clean-libLTLIBRARIES:
 	  echo rm -f $${locs}; \
 	  rm -f $${locs}; \
 	}
-../$(am__dirstamp):
-	@$(MKDIR_P) ..
-	@: > ../$(am__dirstamp)
-../$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ../$(DEPDIR)
-	@: > ../$(DEPDIR)/$(am__dirstamp)
-../libxmlsec1_mscrypto_la-strings.lo: ../$(am__dirstamp) \
-	../$(DEPDIR)/$(am__dirstamp)
 
 libxmlsec1-mscrypto.la: $(libxmlsec1_mscrypto_la_OBJECTS) $(libxmlsec1_mscrypto_la_DEPENDENCIES) $(EXTRA_libxmlsec1_mscrypto_la_DEPENDENCIES) 
 	$(AM_V_CCLD)$(libxmlsec1_mscrypto_la_LINK) -rpath $(libdir) $(libxmlsec1_mscrypto_la_OBJECTS) $(libxmlsec1_mscrypto_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
-	-rm -f ../*.$(OBJEXT)
-	-rm -f ../*.lo
 
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ../$(DEPDIR)/libxmlsec1_mscrypto_la-strings.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_mscrypto_la-app.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_mscrypto_la-certkeys.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_mscrypto_la-ciphers.Plo at am__quote@
@@ -714,19 +716,11 @@ libxmlsec1_mscrypto_la-x509vfy.lo: x509vfy.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_mscrypto_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libxmlsec1_mscrypto_la-x509vfy.lo `test -f 'x509vfy.c' || echo '$(srcdir)/'`x509vfy.c
 
-../libxmlsec1_mscrypto_la-strings.lo: ../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_mscrypto_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libxmlsec1_mscrypto_la-strings.lo -MD -MP -MF ../$(DEPDIR)/libxmlsec1_mscrypto_la-strings.Tpo -c -o ../libxmlsec1_mscrypto_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../$(DEPDIR)/libxmlsec1_mscrypto_la-strings.Tpo ../$(DEPDIR)/libxmlsec1_mscrypto_la-strings.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../strings.c' object='../libxmlsec1_mscrypto_la-strings.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_mscrypto_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libxmlsec1_mscrypto_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
 clean-libtool:
 	-rm -rf .libs _libs
-	-rm -rf ../.libs ../_libs
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -843,8 +837,6 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-rm -f ../$(DEPDIR)/$(am__dirstamp)
-	-rm -f ../$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -855,7 +847,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -901,7 +893,7 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/src/mscrypto/app.c b/src/mscrypto/app.c
index bcb0ea1..a49acad 100644
--- a/src/mscrypto/app.c
+++ b/src/mscrypto/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -52,35 +52,23 @@ xmlSecMSCryptoAppInit(const char* config) {
     if (NULL != config && strlen(config) > 0) {
         if (gXmlSecMSCryptoAppCertStoreName != NULL) {
             /* This should not happen, initialize twice */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "config=%s, config already set",
-                        xmlSecErrorsSafeString(config));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_CONFIG, NULL,
+                              "config=%s, config already set",
+                              xmlSecErrorsSafeString(config));
             return (-1);
         }
 
 #ifdef UNICODE
         gXmlSecMSCryptoAppCertStoreName = xmlSecMSCryptoConvertLocaleToUnicode(config);
         if (gXmlSecMSCryptoAppCertStoreName == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        "xmlSecMSCryptoConvertLocaleToUnicode",
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "config=%s",
-                        xmlSecErrorsSafeString(config));
+            xmlSecInternalError2("xmlSecMSCryptoConvertLocaleToUnicode", NULL,
+                                 "config=%s", xmlSecErrorsSafeString(config));
             return (-1);
         }
 #else  /* UNICODE */
         gXmlSecMSCryptoAppCertStoreName = xmlStrdup(config);
         if (gXmlSecMSCryptoAppCertStoreName == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        "xmlStrdup",
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "config=%s",
-                        xmlSecErrorsSafeString(config));
+            xmlSecStrdupError(config, NULL);
             return (-1);
         }
 #endif /* UNICODE */
@@ -150,33 +138,21 @@ xmlSecMSCryptoAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
     case xmlSecKeyDataFormatPkcs12:
         key = xmlSecMSCryptoAppPkcs12Load(filename, pwd, pwdCallback, pwdCallbackCtx);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoAppPkcs12Load",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoAppPkcs12Load", NULL);
             return(NULL);
         }
         break;
     case xmlSecKeyDataFormatCertDer:
         ret = xmlSecBufferInitialize(&buffer, 0);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferInitialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferInitialize", NULL);
             return(NULL);
         }
 
         ret = xmlSecBufferReadFile(&buffer, filename);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBufferReadFile",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "filename=%s",
-                        xmlSecErrorsSafeString(filename));
+            xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                                 "filename=%s", xmlSecErrorsSafeString(filename));
             xmlSecBufferFinalize(&buffer);
             return (NULL);
         }
@@ -185,11 +161,7 @@ xmlSecMSCryptoAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
                                         xmlSecBufferGetSize(&buffer), format,
                                         pwd, pwdCallback, pwdCallbackCtx);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoAppKeyLoadMemory",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoAppKeyLoadMemory", NULL);
             xmlSecBufferFinalize(&buffer);
             return(NULL);
         }
@@ -197,11 +169,8 @@ xmlSecMSCryptoAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
         break;
     default:
         /* Any other format like PEM keys is currently not supported */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
@@ -238,44 +207,27 @@ xmlSecMSCryptoAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize, xmlS
 
     pCert = CertCreateCertificateContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, data, dataSize);
     if (NULL == pCert) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertCreateCertificateContext",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertCreateCertificateContext", NULL);
         goto done;
     }
 
     x509Data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataX509Id);
     if(x509Data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecMSCryptoKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataX509Id)", NULL);
         goto done;
     }
 
     tmpcert = CertDuplicateCertificateContext(pCert);
     if(tmpcert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertDuplicateCertificateContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
 
     ret = xmlSecMSCryptoKeyDataX509AdoptKeyCert(x509Data, tmpcert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoKeyDataX509AdoptKeyCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptKeyCert",
+                            xmlSecKeyDataGetName(x509Data));
         CertFreeCertificateContext(tmpcert);
         goto done;
     }
@@ -283,45 +235,31 @@ xmlSecMSCryptoAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize, xmlS
 
     keyData = xmlSecMSCryptoCertAdopt(pCert, xmlSecKeyDataTypePublic);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoCertAdopt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoCertAdopt",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     pCert = NULL;
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     keyData = NULL;
 
     ret = xmlSecKeyAdoptData(key, x509Data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyAdoptData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeyAdoptData",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     x509Data = NULL;
@@ -378,22 +316,14 @@ xmlSecMSCryptoAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
 
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return (-1);
     }
@@ -401,11 +331,7 @@ xmlSecMSCryptoAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
     ret = xmlSecMSCryptoAppKeyCertLoadMemory(key, xmlSecBufferGetData(&buffer),
                     xmlSecBufferGetSize(&buffer), format);
     if (ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoAppKeyCertLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoAppKeyCertLoadMemory", NULL);
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -438,12 +364,7 @@ xmlSecMSCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xml
 
     kdata = xmlSecKeyEnsureData(key, xmlSecMSCryptoKeyDataX509Id);
     if(kdata == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecMSCryptoKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyEnsureData(xmlSecMSCryptoKeyDataX509Id)", NULL);
         return(-1);
     }
 
@@ -454,32 +375,22 @@ xmlSecMSCryptoAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xml
     case xmlSecKeyDataFormatCertDer:
         pCert = CertCreateCertificateContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, data, dataSize);
         if (NULL == pCert) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertCreateCertificateContext",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "format=%d", format);
+            xmlSecInternalError2("CertCreateCertificateContext", NULL,
+                                 "format=%d", format);
             return(-1);
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptCert(kdata, pCert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(kdata)));
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(kdata));
             CertFreeCertificateContext(pCert);
             return(-1);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", (int)format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(-1);
     }
 
@@ -511,31 +422,19 @@ xmlSecMSCryptoAppPkcs12Load(const char *filename,
 
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return (NULL);
     }
     if(xmlSecBufferGetData(&buffer) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidDataError("data buffer is empty", NULL);
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -544,11 +443,7 @@ xmlSecMSCryptoAppPkcs12Load(const char *filename,
                                             xmlSecBufferGetSize(&buffer), pwd,
                                             pwdCallback, pwdCallbackCtx);
     if (key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoAppPkcs12LoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoAppPkcs12LoadMemory", NULL);
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -594,56 +489,39 @@ xmlSecMSCryptoAppPkcs12LoadMemory(const xmlSecByte* data,
     pfx.cbData = dataSize;
 
     if(FALSE == PFXIsPFXBlob(&pfx)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PFXIsPFXBlob",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%ld",
-                    pfx.cbData);
+        xmlSecMSCryptoError2("PFXIsPFXBlob", NULL,
+                             "size=%ld", (long int)pfx.cbData);
         goto done;
     }
 
     wcPwd = xmlSecMSCryptoConvertLocaleToUnicode(pwd);
     if (wcPwd == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoConvertLocaleToUnicode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "wcPwd");
+        xmlSecInternalError("xmlSecMSCryptoConvertLocaleToUnicode(pw)", NULL);
         goto done;
     }
 
     if (FALSE == PFXVerifyPassword(&pfx, wcPwd, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PFXVerifyPassword",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("PFXVerifyPassword", NULL);
         goto done;
     }
 
     hCertStore = PFXImportCertStore(&pfx, wcPwd, CRYPT_EXPORTABLE | PKCS12_NO_PERSIST_KEY);
     if (NULL == hCertStore) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PFXImportCertStore",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("PFXImportCertStore", NULL);
         goto done;
     }
 
     x509Data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataX509Id);
     if(x509Data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecMSCryptoKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataX509Id)", NULL);
         goto done;
     }
 
-    while (pCert = CertEnumCertificatesInStore(hCertStore, pCert)) {
+    while (1) {
+        pCert = CertEnumCertificatesInStore(hCertStore, pCert);
+        if(pCert != NULL) {
+            break;
+        }
         DWORD dwData = 0;
         DWORD dwDataLen = sizeof(DWORD);
 
@@ -651,45 +529,30 @@ xmlSecMSCryptoAppPkcs12LoadMemory(const xmlSecByte* data,
         if((TRUE == CertGetCertificateContextProperty(pCert, CERT_KEY_SPEC_PROP_ID, &dwData, &dwDataLen)) && (dwData > 0)) {
             tmpcert = CertDuplicateCertificateContext(pCert);
             if(tmpcert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CertDuplicateCertificateContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "data=%s",
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+                xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                    xmlSecKeyDataGetName(x509Data));
                 goto done;
             }
 
             keyData = xmlSecMSCryptoCertAdopt(tmpcert, xmlSecKeyDataTypePrivate | xmlSecKeyDataTypePublic);
             if(keyData == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecMSCryptoCertAdopt",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoCertAdopt",
+                                    xmlSecKeyDataGetName(x509Data));
                 goto done;
             }
-        tmpcert = NULL;
+            tmpcert = NULL;
 
             tmpcert = CertDuplicateCertificateContext(pCert);
             if(tmpcert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CertDuplicateCertificateContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "data=%s",
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+                xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                    xmlSecKeyDataGetName(x509Data));
                 goto done;
             }
 
             ret = xmlSecMSCryptoKeyDataX509AdoptKeyCert(x509Data, tmpcert);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoKeyDataX509AdoptKeyCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+                xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptKeyCert",
+                                    xmlSecKeyDataGetName(x509Data));
                 goto done;
             }
             tmpcert = NULL;
@@ -698,55 +561,39 @@ xmlSecMSCryptoAppPkcs12LoadMemory(const xmlSecByte* data,
         /* load certificate in the x509 key data */
         tmpcert = CertDuplicateCertificateContext(pCert);
         if(tmpcert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptCert(x509Data, tmpcert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                                 xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         tmpcert = NULL;
     }
 
     if (keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoAppPkcs12Load",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "private key not found in PKCS12 file");
+        /* private key not found in PKCS12 file */
+        xmlSecInternalError2("xmlSecMSCryptoAppPkcs12Load",
+                            xmlSecKeyDataGetName(x509Data),
+                            "private key not found in PKCS12 file", NULL);
         goto done;
     }
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -755,12 +602,8 @@ xmlSecMSCryptoAppPkcs12LoadMemory(const xmlSecByte* data,
 
     ret = xmlSecKeyAdoptData(key, x509Data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyAdoptData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeyAdoptData",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -812,22 +655,14 @@ xmlSecMSCryptoAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
 
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(-1);
     }
 
     ret = xmlSecBufferReadFile(&buffer, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferReadFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecBufferReadFile", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return (-1);
     }
@@ -835,12 +670,8 @@ xmlSecMSCryptoAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
     ret = xmlSecMSCryptoAppKeysMngrCertLoadMemory(mngr, xmlSecBufferGetData(&buffer),
         xmlSecBufferGetSize(&buffer), format, type);
     if (ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoAppKeysMngrCertLoadMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecMSCryptoAppKeysMngrCertLoadMemory", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -878,11 +709,7 @@ xmlSecMSCryptoAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecMSCryptoX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecMSCryptoX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecMSCryptoX509StoreId)", NULL);
         return(-1);
     }
 
@@ -892,31 +719,20 @@ xmlSecMSCryptoAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte
             pCert = CertCreateCertificateContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING,
                                                  data, dataSize);
             if (NULL == pCert) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CertCreateCertificateContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CertCreateCertificateContext", NULL);
                 return (-1);
             }
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_FORMAT,
-                        "format=%d", format);
+            xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                             "format=%d", (int)format);
             return(-1);
     }
 
     xmlSecAssert2(pCert != NULL, -1);
     ret = xmlSecMSCryptoX509StoreAdoptCert(x509Store, pCert, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509StoreAdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509StoreAdoptCert", NULL);
         CertFreeCertificateContext(pCert);
         return(-1);
     }
@@ -943,21 +759,14 @@ xmlSecMSCryptoAppDefaultKeysMngrAdoptKeyStore(xmlSecKeysMngrPtr mngr, HCERTSTORE
 
     x509Store = xmlSecKeysMngrGetDataStore( mngr, xmlSecMSCryptoX509StoreId) ;
         if( x509Store == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecKeysMngrGetDataStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1) ;
+            xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecMSCryptoX509StoreId)", NULL);
+            return(-1) ;
         }
 
         if( xmlSecMSCryptoX509StoreAdoptKeyStore( x509Store, keyStore ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        xmlSecErrorsSafeString( xmlSecKeyDataStoreGetName( x509Store ) ) ,
-                        "xmlSecMSCryptoX509StoreAdoptKeyStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1) ;
+            xmlSecInternalError("xmlSecMSCryptoX509StoreAdoptKeyStore",
+                                xmlSecKeyDataStoreGetName(x509Store));
+            return(-1) ;
         }
 
         return (0) ;
@@ -982,21 +791,14 @@ xmlSecMSCryptoAppDefaultKeysMngrAdoptTrustedStore(xmlSecKeysMngrPtr mngr, HCERTS
 
     x509Store = xmlSecKeysMngrGetDataStore( mngr, xmlSecMSCryptoX509StoreId ) ;
         if( x509Store == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecKeysMngrGetDataStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1) ;
+            xmlSecInternalError("xmlSecKeysMngrGetDataStore", NULL);
+            return(-1) ;
         }
 
         if( xmlSecMSCryptoX509StoreAdoptTrustedStore( x509Store, trustedStore ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        xmlSecErrorsSafeString( xmlSecKeyDataStoreGetName( x509Store ) ) ,
-                        "xmlSecMSCryptoX509StoreAdoptKeyStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1) ;
+            xmlSecInternalError("xmlSecMSCryptoX509StoreAdoptKeyStore",
+                                xmlSecKeyDataStoreGetName(x509Store));
+            return(-1) ;
         }
 
         return(0);
@@ -1020,25 +822,18 @@ xmlSecMSCryptoAppDefaultKeysMngrAdoptUntrustedStore(xmlSecKeysMngrPtr mngr, HCER
         xmlSecAssert2( untrustedStore != NULL, -1 ) ;
 
     x509Store = xmlSecKeysMngrGetDataStore( mngr, xmlSecMSCryptoX509StoreId);
-        if( x509Store == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecKeysMngrGetDataStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+    if(x509Store == NULL) {
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore", NULL);
+        return(-1);
+    }
 
-        if( xmlSecMSCryptoX509StoreAdoptUntrustedStore( x509Store, untrustedStore ) < 0) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        xmlSecErrorsSafeString( xmlSecKeyDataStoreGetName( x509Store ) ) ,
-                        "xmlSecMSCryptoX509StoreAdoptKeyStore" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+    if(xmlSecMSCryptoX509StoreAdoptUntrustedStore(x509Store, untrustedStore) < 0) {
+        xmlSecInternalError("xmlSecMSCryptoX509StoreAdoptKeyStore",
+                            xmlSecKeyDataStoreGetName(x509Store));
+        return(-1);
+    }
 
-        return(0) ;
+    return(0) ;
 }
 
 #endif /* XMLSEC_NO_X509 */
@@ -1064,21 +859,13 @@ xmlSecMSCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecMSCryptoKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecMSCryptoKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecMSCryptoX509StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -1086,11 +873,7 @@ xmlSecMSCryptoAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecMSCryptoKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeysMngrInit",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -1118,21 +901,13 @@ xmlSecMSCryptoAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr ke
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -1159,21 +934,14 @@ xmlSecMSCryptoAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecMSCryptoKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -1200,21 +968,14 @@ xmlSecMSCryptoAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filenam
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrGetKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeysStoreSave",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "filename%s", xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecMSCryptoKeysStoreSave", NULL,
+                             "filename%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
diff --git a/src/mscrypto/certkeys.c b/src/mscrypto/certkeys.c
index 8a3b324..439f6c2 100644
--- a/src/mscrypto/certkeys.c
+++ b/src/mscrypto/certkeys.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -98,12 +98,13 @@ struct _xmlSecMSCryptoKeyDataCtx {
 /******************************** Provider *****************************************/
 #define xmlSecMSCryptoKeyDataCtxGetProvider(ctx)            (ctx)->hProv
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxCreateProvider(xmlSecMSCryptoKeyDataCtxPtr ctx) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
-        ctx->hProv = 0;
-        ctx->fCallerFreeProv = FALSE;
+    ctx->hProv = 0;
+    ctx->fCallerFreeProv = FALSE;
+    return(0);
 }
 
 static void
@@ -111,20 +112,21 @@ xmlSecMSCryptoKeyDataCtxDestroyProvider(xmlSecMSCryptoKeyDataCtxPtr ctx) {
     xmlSecAssert(ctx != NULL);
 
     if ((ctx->hProv != 0) && (ctx->fCallerFreeProv)) {
-            CryptReleaseContext(ctx->hProv, 0);
+        CryptReleaseContext(ctx->hProv, 0);
     }
-        ctx->hProv = 0;
-        ctx->fCallerFreeProv = FALSE;
+    ctx->hProv = 0;
+    ctx->fCallerFreeProv = FALSE;
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxSetProvider(xmlSecMSCryptoKeyDataCtxPtr ctx, HCRYPTPROV hProv, BOOL fCallerFreeProv)
 {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
     xmlSecMSCryptoKeyDataCtxDestroyProvider(ctx);
     ctx->hProv               = hProv;
     ctx->fCallerFreeProv = fCallerFreeProv;
+    return(0);
 }
 
 static int
@@ -136,11 +138,7 @@ xmlSecMSCryptoKeyDataCtxDuplicateProvider(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xm
 
     if(ctxSrc->hProv != 0) {
         if(!CryptContextAddRef(ctxSrc->hProv, NULL, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptContextAddRef",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptContextAddRef", NULL);
             return(-1);
         }
 
@@ -154,11 +152,12 @@ xmlSecMSCryptoKeyDataCtxDuplicateProvider(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xm
 /******************************** Key *****************************************/
 #define xmlSecMSCryptoKeyDataCtxGetKey(ctx)            ((ctx)->hKey)
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxCreateKey(xmlSecMSCryptoKeyDataCtxPtr ctx) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
     ctx->hKey = 0;
+    return(0);
 }
 
 static void
@@ -171,12 +170,13 @@ xmlSecMSCryptoKeyDataCtxDestroyKey(xmlSecMSCryptoKeyDataCtxPtr ctx) {
     ctx->hKey = 0;
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxSetKey(xmlSecMSCryptoKeyDataCtxPtr ctx, HCRYPTKEY hKey) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
     xmlSecMSCryptoKeyDataCtxDestroyKey(ctx);
     ctx->hKey = hKey;
+    return(0);
 }
 
 static int
@@ -187,11 +187,7 @@ xmlSecMSCryptoKeyDataCtxDuplicateKey(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xmlSecM
     xmlSecMSCryptoKeyDataCtxDestroyKey(ctxDst);
     if (ctxSrc->hKey != 0) {
             if (!CryptDuplicateKey(ctxSrc->hKey, NULL, 0, &(ctxDst->hKey))) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptDuplicateKey",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptDuplicateKey", NULL);
                 return(-1);
             }
     }
@@ -204,58 +200,62 @@ xmlSecMSCryptoKeyDataCtxDuplicateKey(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xmlSecM
 /******************************** Provider *****************************************/
 #define xmlSecMSCryptoKeyDataCtxGetProvider(ctx)            (((ctx)->p_prov) ? ((ctx)->p_prov->hProv) : 0)
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxCreateProvider(xmlSecMSCryptoKeyDataCtxPtr ctx) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
-        ctx->p_prov = (struct _mscrypt_prov*)xmlMalloc(sizeof(struct _mscrypt_prov));
-        if(ctx->p_prov == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE,
-                        "mscrypt_create_prov" ,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE
-                );
-        }
+    ctx->p_prov = (struct _mscrypt_prov*)xmlMalloc(sizeof(struct _mscrypt_prov));
+    if(ctx->p_prov == NULL) {
+        xmlSecMallocError(sizeof(struct _mscrypt_prov), NULL);
+        return(-1);
+    }
     memset(ctx->p_prov, 0, sizeof(struct _mscrypt_prov));
+    return(0);
 }
 
 static void
 xmlSecMSCryptoKeyDataCtxDestroyProvider(xmlSecMSCryptoKeyDataCtxPtr ctx) {
     xmlSecAssert(ctx != NULL);
 
-        if(ctx->p_prov != NULL) {
-                if(InterlockedDecrement(&(ctx->p_prov->refcnt)) <= 0) {
-                        if((ctx->p_prov->hProv != 0) && (ctx->p_prov->fCallerFreeProv)) {
-                                CryptReleaseContext(ctx->p_prov->hProv, 0) ;
-                        }
+    if(ctx->p_prov != NULL) {
+        if(InterlockedDecrement(&(ctx->p_prov->refcnt)) <= 0) {
+            if((ctx->p_prov->hProv != 0) && (ctx->p_prov->fCallerFreeProv)) {
+                CryptReleaseContext(ctx->p_prov->hProv, 0) ;
+            }
             memset(ctx->p_prov, 0, sizeof(struct _mscrypt_prov));
-                        xmlFree(ctx->p_prov) ;
-                }
-        ctx->p_prov = NULL;
+            xmlFree(ctx->p_prov) ;
         }
+        ctx->p_prov = NULL;
+    }
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxSetProvider(xmlSecMSCryptoKeyDataCtxPtr ctx, HCRYPTPROV hProv, BOOL fCallerFreeProv)
 {
-    xmlSecAssert(ctx != NULL);
+    int ret;
+
+    xmlSecAssert2(ctx != NULL, -1);
 
     xmlSecMSCryptoKeyDataCtxDestroyProvider(ctx);
 
     if((ctx->p_prov != NULL) && (ctx->p_prov->refcnt == 1)) {
-                if((ctx->p_prov->hProv != 0) && (ctx->p_prov->fCallerFreeProv)) {
-                        CryptReleaseContext(ctx->p_prov->hProv, 0) ;
-                }
+        if((ctx->p_prov->hProv != 0) && (ctx->p_prov->fCallerFreeProv)) {
+                CryptReleaseContext(ctx->p_prov->hProv, 0) ;
+        }
         memset(ctx->p_prov, 0, sizeof(struct _mscrypt_prov));
     } else {
         xmlSecMSCryptoKeyDataCtxDestroyProvider(ctx);
-        xmlSecMSCryptoKeyDataCtxCreateProvider(ctx);
+        ret = xmlSecMSCryptoKeyDataCtxCreateProvider(ctx);
+        if(ret != 0) {
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxCreateProvider", NULL);
+            return(-1);
+        }
     }
 
     ctx->p_prov->hProv = hProv;
     ctx->p_prov->fCallerFreeProv = fCallerFreeProv;
     ctx->p_prov->refcnt = 1;
+    return(0);
 }
 
 static int
@@ -276,20 +276,17 @@ xmlSecMSCryptoKeyDataCtxDuplicateProvider(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xm
 /********************************  Key  *****************************************/
 #define xmlSecMSCryptoKeyDataCtxGetKey(ctx)            (((ctx)->p_key) ? ((ctx)->p_key->hKey) : 0)
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxCreateKey(xmlSecMSCryptoKeyDataCtxPtr ctx) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
-        ctx->p_key = (struct _mscrypt_key*)xmlMalloc(sizeof(struct _mscrypt_key));
-        if(ctx->p_key == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE,
-                        "mscrypt_create_key" ,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE
-                );
-        }
+    ctx->p_key = (struct _mscrypt_key*)xmlMalloc(sizeof(struct _mscrypt_key));
+    if(ctx->p_key == NULL ) {
+        xmlSecMallocError(sizeof(struct _mscrypt_key), NULL);
+        return(-1);
+    }
     memset(ctx->p_key, 0, sizeof(struct _mscrypt_key));
+    return(0);
 }
 
 static void
@@ -308,21 +305,27 @@ xmlSecMSCryptoKeyDataCtxDestroyKey(xmlSecMSCryptoKeyDataCtxPtr ctx) {
         }
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxSetKey(xmlSecMSCryptoKeyDataCtxPtr ctx, HCRYPTKEY hKey) {
-    xmlSecAssert(ctx != NULL);
+    int ret;
+    xmlSecAssert2(ctx != NULL, -1);
 
     if((ctx->p_key != NULL) && (ctx->p_key->refcnt == 1)) {
-                if(ctx->p_key->hKey != 0) {
-                        CryptDestroyKey(ctx->p_key->hKey) ;
-                }
+        if(ctx->p_key->hKey != 0) {
+            CryptDestroyKey(ctx->p_key->hKey) ;
+        }
         memset(ctx->p_key, 0, sizeof(struct _mscrypt_key));
     } else {
         xmlSecMSCryptoKeyDataCtxDestroyKey(ctx);
-        xmlSecMSCryptoKeyDataCtxCreateKey(ctx);
+        ret = xmlSecMSCryptoKeyDataCtxCreateKey(ctx);
+        if(ret != 0) {
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxCreateKey", NULL);
+            return(-1);
+        }
     }
     ctx->p_key->hKey = hKey;
     ctx->p_key->refcnt = 1;
+    return(0);
 }
 
 static int
@@ -361,12 +364,13 @@ xmlSecMSCryptoKeyDataCtxDestroyCert(xmlSecMSCryptoKeyDataCtxPtr ctx) {
     ctx->pCert = NULL;
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataCtxSetCert(xmlSecMSCryptoKeyDataCtxPtr ctx, PCCERT_CONTEXT pCert) {
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
     xmlSecMSCryptoKeyDataCtxDestroyCert(ctx);
     ctx->pCert = pCert;
+    return(0);
 }
 
 static int
@@ -378,11 +382,7 @@ xmlSecMSCryptoKeyDataCtxDuplicateCert(xmlSecMSCryptoKeyDataCtxPtr ctxDst, xmlSec
     if(ctxSrc->pCert != NULL) {
             ctxDst->pCert = xmlSecMSCryptoCertDup(ctxSrc->pCert);
             if(ctxDst->pCert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecMSCryptoPCCDup",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoPCCDup", NULL);
                 return(-1);
             }
     }
@@ -416,6 +416,7 @@ static int
 xmlSecMSCryptoKeyDataAdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT pCert, xmlSecKeyDataType type) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
     HCRYPTKEY hKey = 0;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
     xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecMSCryptoKeyDataSize), -1);
@@ -445,34 +446,30 @@ xmlSecMSCryptoKeyDataAdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT pCert, xmlS
                     &hProv,
                     &(ctx->dwKeySpec),
                     &fCallerFreeProv)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptAcquireCertificatePrivateKey",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptAcquireCertificatePrivateKey", NULL);
                 return(-1);
         }
-        xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, fCallerFreeProv);
+        ret = xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, fCallerFreeProv);
+        if(ret != 0) {
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetProvider", NULL);
+            return(-1);
+        }
     } else if((type & xmlSecKeyDataTypePublic) != 0){
         HCRYPTPROV hProv;
 
         hProv = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, FALSE);
         if (hProv == 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoFindProvider",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoFindProvider", NULL);
+            return(-1);
+        }
+        ret = xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, TRUE);
+        if(ret != 0) {
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetProvider", NULL);
             return(-1);
         }
-        xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, TRUE);
         ctx->dwKeySpec = 0;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "Unsupported keytype");
+        xmlSecInvalidIntegerTypeError("keytype", type, "supported keytype", NULL);
         return(-1);
     }
 
@@ -487,16 +484,20 @@ xmlSecMSCryptoKeyDataAdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT pCert, xmlS
                 X509_ASN_ENCODING | PKCS_7_ASN_ENCODING,
                 &(pCert->pCertInfo->SubjectPublicKeyInfo),
                 &hKey)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptImportPublicKeyInfo",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptImportPublicKeyInfo", NULL);
             return(-1);
     }
 
-    xmlSecMSCryptoKeyDataCtxSetKey(ctx, hKey);
-    xmlSecMSCryptoKeyDataCtxSetCert(ctx, pCert);
+    ret = xmlSecMSCryptoKeyDataCtxSetKey(ctx, hKey);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetKey", NULL);
+        return(-1);
+    }
+    ret = xmlSecMSCryptoKeyDataCtxSetCert(ctx, pCert);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetCert", NULL);
+        return(-1);
+    }
     return(0);
 }
 
@@ -508,6 +509,7 @@ xmlSecMSCryptoKeyDataAdoptKey(xmlSecKeyDataPtr data,
                               DWORD dwKeySpec,
                               xmlSecKeyDataType type) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
     xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecMSCryptoKeyDataSize), -1);
@@ -517,9 +519,21 @@ xmlSecMSCryptoKeyDataAdoptKey(xmlSecKeyDataPtr data,
     ctx = xmlSecMSCryptoKeyDataGetCtx(data);
     xmlSecAssert2(ctx != NULL, -1);
 
-    xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, fCallerFreeProv);
-    xmlSecMSCryptoKeyDataCtxSetKey(ctx, hKey);
-    xmlSecMSCryptoKeyDataCtxSetCert(ctx, NULL);
+    ret = xmlSecMSCryptoKeyDataCtxSetProvider(ctx, hProv, fCallerFreeProv);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetProvider", NULL);
+        return(-1);
+    }
+    ret = xmlSecMSCryptoKeyDataCtxSetKey(ctx, hKey);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetKey", NULL);
+        return(-1);
+    }
+    ret = xmlSecMSCryptoKeyDataCtxSetCert(ctx, NULL);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxSetCert", NULL);
+        return(-1);
+    }
 
     ctx->dwKeySpec       = dwKeySpec;
     ctx->type            = type;
@@ -571,11 +585,7 @@ xmlSecMSCryptoKeyDataGetDecryptKey(xmlSecKeyDataPtr data) {
         xmlSecAssert2(ctx != NULL, 0);
 
         if( !CryptGetUserKey(xmlSecMSCryptoKeyDataCtxGetProvider(ctx), AT_KEYEXCHANGE, &(hKey))) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptGetUserKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptGetUserKey", NULL);
                 return(0);
         }
         return (hKey);
@@ -645,6 +655,44 @@ xmlSecMSCryptoKeyDataGetMSCryptoKeySpec(xmlSecKeyDataPtr data) {
     return(ctx->dwKeySpec);
 }
 
+/**
+ * xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo:
+ * @data:              the key data
+ *
+ * Gets key provider info.
+ *
+ * Returns: the key provider info.
+ */
+PCRYPT_KEY_PROV_INFO
+xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo(xmlSecKeyDataPtr data) {
+    xmlSecMSCryptoKeyDataCtxPtr ctx;
+    LPBYTE pInfoData = NULL;
+    DWORD dwInfoDataLength = 0;
+
+    xmlSecAssert2(data != NULL, NULL);
+
+    ctx = xmlSecMSCryptoKeyDataGetCtx(data);
+    xmlSecAssert2(ctx != NULL, NULL);
+    xmlSecAssert2(ctx->pCert != NULL, NULL);
+
+    if(!CertGetCertificateContextProperty(ctx->pCert, CERT_KEY_PROV_INFO_PROP_ID, NULL, &dwInfoDataLength)) {
+        xmlSecMSCryptoError("CertGetCertificateContextProperty", NULL);
+        return NULL;
+    }
+
+    if(dwInfoDataLength > 0) {
+        pInfoData = malloc(dwInfoDataLength * sizeof(BYTE));
+
+        if(!CertGetCertificateContextProperty(ctx->pCert, CERT_KEY_PROV_INFO_PROP_ID, pInfoData, &dwInfoDataLength)) {
+            xmlSecMSCryptoError("CertGetCertificateContextProperty", NULL);
+            free(pInfoData);
+            return NULL;
+        }
+    }
+
+    return (PCRYPT_KEY_PROV_INFO)pInfoData;
+}
+
 static int
 xmlSecMSCryptoKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     xmlSecMSCryptoKeyDataCtxPtr ctxDst;
@@ -662,29 +710,20 @@ xmlSecMSCryptoKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     xmlSecAssert2(ctxSrc != NULL, -1);
 
     if(xmlSecMSCryptoKeyDataCtxDuplicateProvider(ctxDst, ctxSrc) < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataCtxDuplicateProvider",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxDuplicateProvider",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
     }
 
     if(xmlSecMSCryptoKeyDataCtxDuplicateKey(ctxDst, ctxSrc) < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataCtxDuplicateKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxDuplicateKey",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
     }
 
     if(xmlSecMSCryptoKeyDataCtxDuplicateCert(ctxDst, ctxSrc) < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataCtxDuplicateCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataCtxDuplicateCert",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
     }
 
@@ -695,21 +734,31 @@ xmlSecMSCryptoKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     return(0);
 }
 
-static void
+static int
 xmlSecMSCryptoKeyDataInitialize(xmlSecKeyDataPtr data) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
+    int ret;
 
-    xmlSecAssert(xmlSecKeyDataIsValid(data));
-    xmlSecAssert(xmlSecKeyDataCheckSize(data, xmlSecMSCryptoKeyDataSize));
+    xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
+    xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecMSCryptoKeyDataSize), -1);
 
     ctx = xmlSecMSCryptoKeyDataGetCtx(data);
-    xmlSecAssert(ctx != NULL);
+    xmlSecAssert2(ctx != NULL, -1);
 
     memset(ctx, 0, sizeof(xmlSecMSCryptoKeyDataCtx));
 
-    xmlSecMSCryptoKeyDataCtxCreateProvider(ctx);
-    xmlSecMSCryptoKeyDataCtxCreateKey(ctx);
+    ret = xmlSecMSCryptoKeyDataCtxCreateProvider(ctx);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxCreateProvider", NULL);
+        return(-1);
+    }
+    ret = xmlSecMSCryptoKeyDataCtxCreateKey(ctx);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataCtxCreateKey", NULL);
+        return(-1);
+    }
     xmlSecMSCryptoKeyDataCtxCreateCert(ctx);
+    return(0);
 }
 
 static void
@@ -748,11 +797,7 @@ xmlSecMSCryptoKeyDataGetSize(xmlSecKeyDataPtr data) {
             DWORD lenlen = sizeof(DWORD);
 
         if (!CryptGetKeyParam(xmlSecMSCryptoKeyDataCtxGetKey(ctx), KP_KEYLEN, (BYTE *)&length, &lenlen, 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CertDuplicateCertificateContext", NULL);
             return(0);
         }
         return(length);
@@ -795,11 +840,7 @@ PCCERT_CONTEXT xmlSecMSCryptoCertDup(PCCERT_CONTEXT pCert) {
 
     ret = CertDuplicateCertificateContext(pCert);
     if(ret == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertDuplicateCertificateContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertDuplicateCertificateContext", NULL);
         return(NULL);
     }
 
@@ -829,11 +870,7 @@ xmlSecMSCryptoCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType type) {
     if (!strcmp(pCert->pCertInfo->SubjectPublicKeyInfo.Algorithm.pszObjId, szOID_RSA_RSA)) {
         data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataRsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecMSCryptoDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(KeyDataRsaId)", NULL);
             return(NULL);
         }
     }
@@ -843,11 +880,7 @@ xmlSecMSCryptoCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType type) {
     if (!strcmp(pCert->pCertInfo->SubjectPublicKeyInfo.Algorithm.pszObjId, szOID_X957_DSA /*szOID_DSALG_SIGN*/)) {
         data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataDsaId);
         if(data == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyDataCreate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "xmlSecMSCryptoKeyDataDsaId");
+                xmlSecInternalError("xmlSecKeyDataCreate(KeyDataDsaId)", NULL);
                 return(NULL);
         }
     }
@@ -859,22 +892,16 @@ xmlSecMSCryptoCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType type) {
           !strcmp(pCert->pCertInfo->SubjectPublicKeyInfo.Algorithm.pszObjId,  szOID_MAGPRO_PUBKEY_SIGN_R3410_94_CP)) {
         data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataGost2001Id);
         if(data == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecKeyDataCreate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "xmlSecMSCryptoKeyDataGost2001Id");
+                xmlSecInternalError("xmlSecKeyDataCreate(KeyDataGost2001Id)", NULL);
                 return(NULL);
         }
     }
 #endif /* XMLSEC_NO_GOST*/
 
     if (NULL == data) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "PCCERT_CONTEXT key type %s not supported", pCert->pCertInfo->SubjectPublicKeyInfo.Algorithm.pszObjId);
+        xmlSecInvalidIntegerTypeError("PCCERT_CONTEXT key type",
+                pCert->pCertInfo->SubjectPublicKeyInfo.Algorithm.pszObjId,
+                "supported keytype", NULL);
         return(NULL);
     }
 
@@ -882,11 +909,7 @@ xmlSecMSCryptoCertAdopt(PCCERT_CONTEXT pCert, xmlSecKeyDataType type) {
 
     ret = xmlSecMSCryptoKeyDataAdoptCert(data, pCert, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoPCCDataAdoptPCC",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoPCCDataAdoptPCC", NULL);
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
@@ -1023,10 +1046,15 @@ xmlSecMSCryptoKeyDataRsaGetKlass(void) {
 static int
 xmlSecMSCryptoKeyDataRsaInitialize(xmlSecKeyDataPtr data) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecMSCryptoKeyDataRsaId), xmlSecKeyDataTypeUnknown);
 
-    xmlSecMSCryptoKeyDataInitialize(data);
+    ret = xmlSecMSCryptoKeyDataInitialize(data);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataInitialize", NULL);
+        return(-1);
+    }
 
     ctx = xmlSecMSCryptoKeyDataGetCtx(data);
     xmlSecAssert2(ctx != NULL, -1);
@@ -1072,43 +1100,32 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    "key already has a value");
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         return(-1);
     }
 
     /* initialize buffers */
     ret = xmlSecBnInitialize(&modulus, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "modulus");
+        xmlSecInternalError("xmlSecBnInitialize(modulus)",
+                            xmlSecKeyDataKlassGetName(id));;
         return(-1);
     }
 
     ret = xmlSecBnInitialize(&exponent, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "exponent");
+        xmlSecInternalError("xmlSecBnInitialize(exponent)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&modulus);
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&blob, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "blob");
+        xmlSecInternalError("xmlSecBufferInitialize(blob)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&modulus);
         xmlSecBnFinalize(&exponent);
         return(-1);
@@ -1119,45 +1136,28 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is Modulus node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeRSAModulus, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAModulus,
+                               xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecBnGetNodeValue(&modulus, cur, xmlSecBnBase64, 1);
-    if((ret < 0) || (xmlSecBnGetSize(&modulus) == 0)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+    if((ret < 0) || (xmlSecBnGetSize(&modulus) == 0)) {
+        xmlSecInternalError("xmlSecBnGetNodeValue(modulus)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Exponent node. It is REQUIRED because we do not support Seed and PgenCounter*/
-    if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeRSAExponent, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+    if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeRSAExponent, xmlSecDSigNs))) {    
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAExponent, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecBnGetNodeValue(&exponent, cur, xmlSecBnBase64, 1);
     if((ret < 0) || (xmlSecBnGetSize(&exponent) == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecBnGetNodeValue(exponent)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1169,11 +1169,7 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
@@ -1181,11 +1177,9 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     blobBufferLen = sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY) + xmlSecBnGetSize(&modulus);
     ret = xmlSecBufferSetSize(&blob, blobBufferLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", blobBufferLen);
+        xmlSecInternalError2("xmlSecBufferSetSize",
+                             xmlSecKeyDataKlassGetName(id),
+                             "size=%d", blobBufferLen);
         goto done;
     }
 
@@ -1202,12 +1196,9 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     pubKey->bitlen          = xmlSecBnGetSize(&modulus) * 8;    /* Number of bits in prime modulus */
     pubKey->pubexp          = 0;
     if(sizeof(pubKey->pubexp) < xmlSecBnGetSize(&exponent)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "exponent size=%d",
-                    xmlSecBnGetSize(&exponent));
+        xmlSecInvalidSizeLessThanError("exponent size",
+                sizeof(pubKey->pubexp), xmlSecBnGetSize(&exponent),
+                NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBnGetData(&exponent) != NULL, -1);
@@ -1220,40 +1211,28 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* Now that we have the blob, import */
     hProv = xmlSecMSCryptoFindProvider(xmlSecMSCryptoProviderInfo_Rsa, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(hProv == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     if (!CryptImportKey(hProv, xmlSecBufferGetData(&blob), xmlSecBufferGetSize(&blob), 0, 0, &hKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptImportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptImportKey",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecMSCryptoKeyDataAdoptKey(data, hProv, TRUE, hKey, 0, xmlSecKeyDataTypePublic);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataAdoptKey",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     hProv = 0;
@@ -1261,11 +1240,8 @@ xmlSecMSCryptoKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         goto done;
     }
@@ -1315,40 +1291,29 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(xmlSecMSCryptoKeyDataCtxGetKey(ctx) != 0, -1);
 
     if (!CryptExportKey(xmlSecMSCryptoKeyDataCtxGetKey(ctx), 0, PUBLICKEYBLOB, 0, NULL, &dwBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptExportKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&buf, dwBlobLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%ld", dwBlobLen);
+        xmlSecInternalError2("xmlSecBufferInitialize",
+                             xmlSecKeyDataKlassGetName(id),
+                             "size=%ld", dwBlobLen);
         return(-1);
     }
 
     blob = xmlSecBufferGetData(&buf);
     if (!CryptExportKey(xmlSecMSCryptoKeyDataCtxGetKey(ctx), 0, PUBLICKEYBLOB, 0, blob, &dwBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptExportKey",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
     if (dwBlobLen < sizeof(PUBLICKEYSTRUC)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "blobLen=%ld", dwBlobLen);
+        xmlSecInvalidSizeLessThanError("Key blob", dwBlobLen, sizeof(PUBLICKEYSTRUC),
+                xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -1356,20 +1321,18 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* check PUBLICKEYSTRUC */
     pubKeyStruc = (PUBLICKEYSTRUC*)blob;
     if(pubKeyStruc->bVersion != 0x02) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bVersion=%d", pubKeyStruc->bVersion);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKeyStruc->bVersion=%ld",
+                             (long int)pubKeyStruc->bVersion);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
     if(pubKeyStruc->bType != PUBLICKEYBLOB) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bType=%d", (int)pubKeyStruc->bType);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKeyStruc->bType=%ld",
+                             (long int)pubKeyStruc->bType);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -1377,22 +1340,19 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* check RSAPUBKEY */
     pubKey          = (RSAPUBKEY *)(blob + sizeof(PUBLICKEYSTRUC));
     if(pubKey->magic != 0x31415352) { /* RSA public key magic */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKey->magic=0x%08lx", pubKey->magic);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKey->magic=0x%08lx",
+                             (long int)pubKey->magic);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
     modulusLen      = pubKey->bitlen / 8;
 
     if (dwBlobLen < sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY) + modulusLen) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "blobLen=%ld; modulusLen=%d", dwBlobLen, modulusLen);
+        xmlSecInvalidSizeLessThanError("Key blob",
+                dwBlobLen, sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY) + modulusLen,
+                xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -1401,24 +1361,16 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* first is Modulus node */
     cur = xmlSecAddChild(node, xmlSecNodeRSAModulus, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
 
     ret = xmlSecBnBlobSetNodeValue(blob, modulusLen, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -1426,12 +1378,8 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is Exponent node. */
     cur = xmlSecAddChild(node, xmlSecNodeRSAExponent, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -1445,18 +1393,15 @@ xmlSecMSCryptoKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBnBlobSetNodeValue(blob, exponentLen, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
 
     /* next is PrivateExponent node: not supported in MSCrypto */
 
+    /* done */
     xmlSecBufferFinalize(&buf);
     return(0);
 }
@@ -1483,33 +1428,24 @@ xmlSecMSCryptoKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits,
     /* get provider */
     hProv = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(hProv == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
 
     dwKeySpec = AT_KEYEXCHANGE | AT_SIGNATURE;
     dwSize = ((sizeBits << 16) | CRYPT_EXPORTABLE);
     if (!CryptGenKey(hProv, CALG_RSA_SIGN, dwSize, &hKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "CryptGenKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGenKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
 
     ret = xmlSecMSCryptoKeyDataAdoptKey(data, hProv, TRUE, hKey, dwKeySpec,
                                         xmlSecKeyDataTypePublic | xmlSecKeyDataTypePrivate);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataAdoptKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     hProv = 0;
@@ -1723,10 +1659,15 @@ xmlSecMSCryptoKeyDataDsaGetKlass(void) {
 static int
 xmlSecMSCryptoKeyDataDsaInitialize(xmlSecKeyDataPtr data) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecMSCryptoKeyDataDsaId), xmlSecKeyDataTypeUnknown);
 
-    xmlSecMSCryptoKeyDataInitialize(data);
+    ret = xmlSecMSCryptoKeyDataInitialize(data);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataInitialize", NULL);
+        return(-1);
+    }
 
     ctx = xmlSecMSCryptoKeyDataGetCtx(data);
     xmlSecAssert2(ctx != NULL, -1);
@@ -1774,43 +1715,32 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    "key already has a value");
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         return(-1);
     }
 
     /* initialize buffers */
     ret = xmlSecBnInitialize(&p, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "p");
+        xmlSecInternalError("xmlSecBnInitialize(p)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecBnInitialize(&q, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "q");
+        xmlSecInternalError("xmlSecBnInitialize(q)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&p);
         return(-1);
     }
 
     ret = xmlSecBnInitialize(&g, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "g");
+        xmlSecInternalError("xmlSecBnInitialize(g)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&p);
         xmlSecBnFinalize(&q);
         return(-1);
@@ -1818,11 +1748,8 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBnInitialize(&y, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "y");
+        xmlSecInternalError("xmlSecBnInitialize(y)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&p);
         xmlSecBnFinalize(&q);
         xmlSecBnFinalize(&g);
@@ -1831,11 +1758,8 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBufferInitialize(&blob, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "blob");
+        xmlSecInternalError("xmlSecBufferInitialize(blob)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBnFinalize(&p);
         xmlSecBnFinalize(&q);
         xmlSecBnFinalize(&g);
@@ -1848,67 +1772,40 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is P node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeDSAP, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAP, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecBnGetNodeValue(&p, cur, xmlSecBnBase64, 1);
-    if((ret < 0) || (xmlSecBnGetSize(&p) == 0)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+    if((ret < 0) || (xmlSecBnGetSize(&p) == 0)) {
+        xmlSecInternalError("xmlSecBnGetNodeValue(p)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Q node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAQ, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAQ, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecBnGetNodeValue(&q, cur, xmlSecBnBase64, 1);
-    if((ret < 0) || (xmlSecBnGetSize(&q) == 0)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+    if((ret < 0) || (xmlSecBnGetSize(&q) == 0)) {
+        xmlSecInternalError("xmlSecBnGetNodeValue(q)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is G node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAG, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAG, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecBnGetNodeValue(&g, cur, xmlSecBnBase64, 1);
     if((ret < 0) || (xmlSecBnGetSize(&q) == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecBnGetNodeValue(g)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1922,21 +1819,13 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is Y node. */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAY, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAY, xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     ret = xmlSecBnGetNodeValue(&y, cur, xmlSecBnBase64, 1);
     if((ret < 0) || (xmlSecBnGetSize(&y) == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnGetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecBnGetNodeValue(y)",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1957,11 +1846,7 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id))
         goto done;
     }
 
@@ -1969,11 +1854,7 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     blobBufferLen = sizeof(PUBLICKEYSTRUC) + sizeof(DSSPUBKEY) + 3 * xmlSecBnGetSize(&p) + 0x14 + sizeof(DSSSEED);
     ret = xmlSecBufferSetSize(&blob, blobBufferLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", blobBufferLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL, "size=%d", blobBufferLen);
         goto done;
     }
 
@@ -1999,11 +1880,8 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* set q */
     if(xmlSecBnGetSize(&q) > 0x14) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "q",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "size=%d > 0x14", xmlSecBnGetSize(&q));
+        xmlSecInvalidSizeLessThanError("DSA key q",
+                                       xmlSecBnGetSize(&q), 0x14, NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBnGetData(&q) != NULL, -1);
@@ -2017,13 +1895,10 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* set generator */
     if(xmlSecBnGetSize(&g) > xmlSecBnGetSize(&p)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "g",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "size=%d > %d",
-                    xmlSecBnGetSize(&g),
-                    xmlSecBnGetSize(&p));
+        xmlSecInvalidSizeMoreThanError("DSA key g",
+                                       xmlSecBnGetSize(&g),
+                                       xmlSecBnGetSize(&p),
+                                       NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBnGetData(&g) != NULL, -1);
@@ -2036,13 +1911,10 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* Public key */
     if(xmlSecBnGetSize(&y) > xmlSecBnGetSize(&p)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "y",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "size=%d > %d",
-                    xmlSecBnGetSize(&y),
-                    xmlSecBnGetSize(&p));
+        xmlSecInvalidSizeMoreThanError("DSA key y",
+                                       xmlSecBnGetSize(&y),
+                                       xmlSecBnGetSize(&p),
+                                       NULL);
         goto done;
     }
     xmlSecAssert2(xmlSecBnGetData(&y) != NULL, -1);
@@ -2060,41 +1932,29 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     hProv = xmlSecMSCryptoFindProvider(xmlSecMSCryptoProviderInfo_Dss, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(hProv == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     /* import the key blob */
     if (!CryptImportKey(hProv, xmlSecBufferGetData(&blob), xmlSecBufferGetSize(&blob), 0, 0, &hKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptImportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptImportKey",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto done;
     }
 
     ret = xmlSecMSCryptoKeyDataAdoptKey(data, hProv, TRUE, hKey, 0, xmlSecKeyDataTypePublic);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataAdoptKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     hProv = 0;
@@ -2102,11 +1962,8 @@ xmlSecMSCryptoKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     data = NULL;
@@ -2159,40 +2016,29 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(xmlSecMSCryptoKeyDataCtxGetKey(ctx) != 0, -1);
 
     if (!CryptExportKey(xmlSecMSCryptoKeyDataCtxGetKey(ctx), 0, PUBLICKEYBLOB, 0, NULL, &dwBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("CryptExportKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&buf, dwBlobLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%ld", dwBlobLen);
+        xmlSecInternalError2("xmlSecBufferInitialize",
+                             xmlSecKeyDataKlassGetName(id),
+                             "size=%ld", dwBlobLen);
         return(-1);
     }
 
     blob = xmlSecBufferGetData(&buf);
     if (!CryptExportKey(xmlSecMSCryptoKeyDataCtxGetKey(ctx), 0, PUBLICKEYBLOB, 0, blob, &dwBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptExportKey",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
     if (dwBlobLen < sizeof(PUBLICKEYSTRUC)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "blobLen=%ld", dwBlobLen);
+        xmlSecInvalidSizeLessThanError("Key blob", dwBlobLen, sizeof(PUBLICKEYSTRUC),
+                xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2200,20 +2046,18 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* check PUBLICKEYSTRUC */
     pubKeyStruc     = (PUBLICKEYSTRUC*)blob;
     if(pubKeyStruc->bVersion != 0x02) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bVersion=%d", pubKeyStruc->bVersion);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKeyStruc->bVersion=%ld",
+                             (long int)pubKeyStruc->bVersion);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
     if(pubKeyStruc->bType != PUBLICKEYBLOB) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bType=%d", (int)pubKeyStruc->bType);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKeyStruc->bType=%ld",
+                             (long int)pubKeyStruc->bType);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2221,11 +2065,10 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* check DSSPUBKEY */
     pubKey          = (DSSPUBKEY*)(blob + sizeof(PUBLICKEYSTRUC));
     if(pubKey->magic != 0x31535344) { /* DSS key magic */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKey->magic=0x%08lx", pubKey->magic);
+        xmlSecMSCryptoError2("CryptExportKey",
+                             xmlSecKeyDataKlassGetName(id),
+                             "pubKey->magic=0x%08lx",
+                             (long int)pubKey->magic);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2233,11 +2076,9 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* we assume that sizeof(q) < 0x14, sizeof(g) <= sizeof(p) and sizeof(y) <= sizeof(p) */
     if (dwBlobLen < sizeof(PUBLICKEYSTRUC) + sizeof(DSSPUBKEY) + 3 * keyLen + 0x14 + sizeof(DSSSEED)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "blobLen=%ld; keyLen=%d", dwBlobLen, keyLen);
+        xmlSecInvalidSizeLessThanError("Key blob",
+                dwBlobLen, sizeof(PUBLICKEYSTRUC) + sizeof(DSSPUBKEY) + 3 * keyLen + 0x14 + sizeof(DSSSEED),
+                xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2246,24 +2087,16 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* first is P node */
     cur = xmlSecAddChild(node, xmlSecNodeDSAP, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
 
     ret = xmlSecBnBlobSetNodeValue(blob, keyLen, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2272,12 +2105,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is Q node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAQ, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2287,12 +2116,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBnBlobSetNodeValue(blob, len, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2301,12 +2126,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is G node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAG, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2316,12 +2137,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBnBlobSetNodeValue(blob, len, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2332,12 +2149,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is Y node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAY, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2347,12 +2160,8 @@ xmlSecMSCryptoKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecBnBlobSetNodeValue(blob, len, cur, xmlSecBnBase64, 1, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecBnBlobSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecBnBlobSetNodeValue(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -2381,33 +2190,24 @@ xmlSecMSCryptoKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xml
 
     hProv = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(hProv == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     dwKeySpec = AT_SIGNATURE;
     dwSize = ((sizeBits << 16) | CRYPT_EXPORTABLE);
     if (!CryptGenKey(hProv, CALG_DSS_SIGN, dwSize, &hKey)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "CryptGenKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptGenKey",
+                                xmlSecKeyDataGetName(data));
             goto done;
     }
 
     ret = xmlSecMSCryptoKeyDataAdoptKey(data, hProv, TRUE, hKey, dwKeySpec,
         xmlSecKeyDataTypePublic | xmlSecKeyDataTypePrivate);
     if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecMSCryptoKeyDataAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataAdoptKey",
+                                xmlSecKeyDataGetName(data));
             goto done;
     }
     hProv = 0;
@@ -2555,10 +2355,15 @@ xmlSecMSCryptoKeyDataGost2001GetKlass(void) {
 static int
 xmlSecMSCryptoKeyDataGost2001Initialize(xmlSecKeyDataPtr data) {
     xmlSecMSCryptoKeyDataCtxPtr ctx;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecMSCryptoKeyDataGost2001Id), xmlSecKeyDataTypeUnknown);
 
-    xmlSecMSCryptoKeyDataInitialize(data);
+    ret = xmlSecMSCryptoKeyDataInitialize(data);
+    if(ret != 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataInitialize", NULL);
+        return(-1);
+    }
 
     ctx = xmlSecMSCryptoKeyDataGetCtx(data);
     xmlSecAssert2(ctx != NULL, -1);
@@ -2612,41 +2417,4 @@ xmlSecMSCryptoKeyDataGost2001DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
             xmlSecMSCryptoKeyDataGost2001GetSize(data));
 }
 
-PCRYPT_KEY_PROV_INFO xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo(xmlSecKeyDataPtr data) {
-    xmlSecMSCryptoKeyDataCtxPtr ctx;
-    LPBYTE pInfoData = NULL;
-    DWORD dwInfoDataLength = 0;
-
-    xmlSecAssert2(data != NULL, NULL);
-
-    ctx = xmlSecMSCryptoKeyDataGetCtx(data);
-    xmlSecAssert2(ctx != NULL, NULL);
-    xmlSecAssert2(ctx->pCert != NULL, NULL);
-
-    if(!CertGetCertificateContextProperty(ctx->pCert, CERT_KEY_PROV_INFO_PROP_ID, NULL, &dwInfoDataLength)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertGetCertificateContextProperty",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-        return NULL;
-    }
-
-    if(dwInfoDataLength > 0) {
-        pInfoData = malloc(dwInfoDataLength * sizeof(BYTE));
-
-        if(!CertGetCertificateContextProperty(ctx->pCert, CERT_KEY_PROV_INFO_PROP_ID, pInfoData, &dwInfoDataLength)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertGetCertificateContextProperty",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            free(pInfoData);
-            return NULL;
-        }
-    }
-
-    return (PCRYPT_KEY_PROV_INFO)pInfoData;
-}
-
 #endif /* XMLSEC_NO_GOST*/
diff --git a/src/mscrypto/ciphers.c b/src/mscrypto/ciphers.c
index 2ac3da0..78693c5 100644
--- a/src/mscrypto/ciphers.c
+++ b/src/mscrypto/ciphers.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -72,11 +72,7 @@ xmlSecMSCryptoBlockCipherCtxInit(xmlSecMSCryptoBlockCipherCtxPtr ctx,
     /* iv len == block len */
     dwBlockLenLen = sizeof(DWORD);
     if (!CryptGetKeyParam(ctx->cryptKey, KP_BLOCKLEN, (BYTE *)&dwBlockLen, &dwBlockLenLen, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "CryptGetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGetKeyParam", cipherName);
         return(-1);
     }
 
@@ -90,31 +86,21 @@ xmlSecMSCryptoBlockCipherCtxInit(xmlSecMSCryptoBlockCipherCtxPtr ctx,
         outSize = xmlSecBufferGetSize(out);
         ret = xmlSecBufferSetSize(out, outSize + blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize + blockLen);
+            xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                                 "size=%d", outSize + blockLen);
             return(-1);
         }
         iv = xmlSecBufferGetData(out) + outSize;
 
         /* generate and use random iv */
         if(!CryptGenRandom(ctx->cryptProvider, blockLen, iv)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptGenRandom",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "len=%d", blockLen);
+            xmlSecMSCryptoError2("CryptGenRandom", cipherName,
+                                 "len=%d", blockLen);
             return(-1);
         }
 
         if(!CryptSetKeyParam(ctx->cryptKey, KP_IV, iv, 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptSetKeyParam",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptSetKeyParam", cipherName);
             return(-1);
         }
     } else {
@@ -127,22 +113,15 @@ xmlSecMSCryptoBlockCipherCtxInit(xmlSecMSCryptoBlockCipherCtxPtr ctx,
 
         /* set iv */
         if (!CryptSetKeyParam(ctx->cryptKey, KP_IV, xmlSecBufferGetData(in), 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptSetKeyParam",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptSetKeyParam", cipherName);
             return(-1);
         }
 
         /* and remove from input */
         ret = xmlSecBufferRemoveHead(in, blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", blockLen);
+            xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                                 "size=%d", blockLen);
             return(-1);
 
         }
@@ -173,11 +152,7 @@ xmlSecMSCryptoBlockCipherCtxUpdate(xmlSecMSCryptoBlockCipherCtxPtr ctx,
 
     dwBlockLenLen = sizeof(DWORD);
     if (!CryptGetKeyParam(ctx->cryptKey, KP_BLOCKLEN, (BYTE *)&dwBlockLen, &dwBlockLenLen, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "CryptSetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptSetKeyParam", cipherName);
         return(-1);
     }
     blockLen = dwBlockLen / 8;
@@ -202,11 +177,8 @@ xmlSecMSCryptoBlockCipherCtxUpdate(xmlSecMSCryptoBlockCipherCtxPtr ctx,
     /* we write out the input size plus may be one block */
     ret = xmlSecBufferSetMaxSize(out, outSize + inSize + blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + inSize + blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                             "size=%d", outSize + inSize + blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -217,52 +189,35 @@ xmlSecMSCryptoBlockCipherCtxUpdate(xmlSecMSCryptoBlockCipherCtxPtr ctx,
     dwCLen = inSize;
     if(encrypt) {
         if(!CryptEncrypt(ctx->cryptKey, 0, FALSE, 0, outBuf, &dwCLen, inSize + blockLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptEncrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptEncrypt", cipherName);
             return(-1);
         }
     } else {
         if (!CryptDecrypt(ctx->cryptKey, 0, FALSE, 0, outBuf, &dwCLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptSetKeyDecrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptSetKeyDecrypt", cipherName);
             return(-1);
         }
     }
     /* Check if we really have de/encrypted the numbers of bytes that we requested */
     if (dwCLen != inSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "CryptEn/Decrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%ld", dwCLen);
+        xmlSecInternalError2("CryptEn/Decrypt", cipherName,
+                             "size=%ld", dwCLen);
         return(-1);
     }
 
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + inSize);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + inSize);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
     return(0);
@@ -290,11 +245,7 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
 
     dwBlockLenLen = sizeof(DWORD);
     if (!CryptGetKeyParam(ctx->cryptKey, KP_BLOCKLEN, (BYTE *)&dwBlockLen, &dwBlockLenLen, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "CryptGetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGetKeyParam", cipherName);
         return(-1);
     }
     blockLen = dwBlockLen / 8;
@@ -309,11 +260,8 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
         /* create padding */
         ret = xmlSecBufferSetMaxSize(in, blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", blockLen);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                                 "size=%d", blockLen);
             return(-1);
         }
         inBuf = xmlSecBufferGetData(in);
@@ -321,23 +269,15 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
         /* create random padding */
         if((size_t)blockLen > (inSize + 1)) {
             if (!CryptGenRandom(ctx->cryptProvider, blockLen - inSize - 1, inBuf + inSize)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(cipherName),
-                            "CryptGenRandom",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptGenRandom", cipherName);
                 return(-1);
             }
         }
-        inBuf[blockLen - 1] = blockLen - inSize;
+        inBuf[blockLen - 1] = (unsigned char)(blockLen - inSize);
         inSize = blockLen;
     } else {
         if(inSize != (size_t)blockLen) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "data=%d;block=%d", inSize, blockLen);
+            xmlSecInvalidSizeError("Input data", inSize, blockLen, cipherName);
             return(-1);
         }
         inBuf = xmlSecBufferGetData(in);
@@ -346,11 +286,8 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
     /* process last block */
     ret = xmlSecBufferSetMaxSize(out, outSize + 2 * blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + 2 * blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                             "size=%d", outSize + 2 * blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -361,43 +298,28 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
         /* Set process last block to false, since we handle padding ourselves, and MSCrypto padding
          * can be skipped. I hope this will work .... */
         if(!CryptEncrypt(ctx->cryptKey, 0, FALSE, 0, outBuf, &dwCLen, inSize + blockLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptEncrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptEncrypt", cipherName);
             return(-1);
         }
     } else {
         if (!CryptDecrypt(ctx->cryptKey, 0, FALSE, 0, outBuf, &dwCLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "CryptDecrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptDecrypt", cipherName);
             return(-1);
         }
     }
 
     /* Check if we really have de/encrypted the numbers of bytes that we requested */
     if (dwCLen != inSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "CryptEn/Decrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%ld", dwCLen);
+        xmlSecInternalError2("CryptEn/Decrypt", cipherName,
+                             "size=%ld", dwCLen);
         return(-1);
     }
 
     if(encrypt == 0) {
         /* check padding */
         if(inSize < outBuf[blockLen - 1]) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "padding=%d;buffer=%d",
-                        outBuf[blockLen - 1], inSize);
+            xmlSecInvalidSizeLessThanError("Input data padding",
+                    inSize, outBuf[blockLen - 1], cipherName);
             return(-1);
         }
         outLen = inSize - outBuf[blockLen - 1];
@@ -408,22 +330,16 @@ xmlSecMSCryptoBlockCipherCtxFinal(xmlSecMSCryptoBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + outLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + outLen);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
 
@@ -538,33 +454,21 @@ xmlSecMSCryptoBlockCipherInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_AES */
 
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-            NULL,
-            XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ctx->cryptProvider = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->cryptProvider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* Create dummy key to be able to import plain session keys */
     if (!xmlSecMSCryptoCreatePrivateExponentOneKey(ctx->cryptProvider, &(ctx->pubPrivKey))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoCreatePrivateExponentOneKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecMSCryptoError("xmlSecMSCryptoCreatePrivateExponentOneKey",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -643,12 +547,8 @@ xmlSecMSCryptoBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key)
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) < ctx->keySize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=%d;expected=%d",
-                    xmlSecBufferGetSize(buffer), ctx->keySize);
+        xmlSecInvalidKeyDataSizeError(xmlSecBufferGetSize(buffer), ctx->keySize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -664,11 +564,8 @@ xmlSecMSCryptoBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key)
         TRUE,
         &(ctx->cryptKey)))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -706,20 +603,14 @@ xmlSecMSCryptoBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecT
                                                    transformCtx);
 
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecMSCryptoBlockCipherCtxInit",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoBlockCipherCtxInit",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
         if((ctx->ctxInitialized == 0) && (last != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "not enough data to initialize transform");
+            xmlSecInvalidDataError("not enough data to initialize transform",
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
         if(ctx->ctxInitialized != 0) {
@@ -727,11 +618,8 @@ xmlSecMSCryptoBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecT
                 (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                 xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecMSCryptoBlockCipherCtxUpdate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoBlockCipherCtxUpdate",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -742,11 +630,8 @@ xmlSecMSCryptoBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecT
                 xmlSecTransformGetName(transform), transformCtx);
 
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecMSCryptoBlockCipherCtxFinal",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoBlockCipherCtxFinal",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             transform->status = xmlSecTransformStatusFinished;
@@ -758,11 +643,7 @@ xmlSecMSCryptoBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecT
         /* the only way we can get here is if there is no enough data in the input */
         xmlSecAssert2(last == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/mscrypto/crypto.c b/src/mscrypto/crypto.c
index aea9685..8864003 100644
--- a/src/mscrypto/crypto.c
+++ b/src/mscrypto/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -25,36 +25,14 @@
 #include <xmlsec/mscrypto/x509.h>
 #include "private.h"
 
-#if defined(__MINGW32__)
-/* NOTE mingw.org project don't define any xxx_s function and may
- * be never will define them.
- *
- * In this file is save to use non _s function as into destination
- * buffer program code copy empty string and the size of source buffer
- * (XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE=4096) is enough for any
- * encoding. Also program code don't check result of _s functions.
- */
-
-static int
-strcpy_s(char *dest, size_t n, const char *src) {
-    strcpy(dest, src);
-    return(0);
-}
-
-static int
-wcscpy_s(wchar_t *dest, size_t n, const wchar_t *src) {
-    wcscpy(dest, src);
-    return(0);
-}
-#endif
 
 #define XMLSEC_CONTAINER_NAME_A "xmlsec-key-container"
 #define XMLSEC_CONTAINER_NAME_W L"xmlsec-key-container"
 #ifdef UNICODE
 #define XMLSEC_CONTAINER_NAME XMLSEC_CONTAINER_NAME_W
-#else
+#else /* UNICODE */
 #define XMLSEC_CONTAINER_NAME XMLSEC_CONTAINER_NAME_A
-#endif
+#endif /* UNICODE */
 
 
 static xmlSecCryptoDLFunctionsPtr gXmlSecMSCryptoFunctions = NULL;
@@ -273,11 +251,7 @@ int
 xmlSecMSCryptoInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
@@ -286,11 +260,7 @@ xmlSecMSCryptoInit (void)  {
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_mscrypto()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
     return(0);
@@ -330,21 +300,13 @@ xmlSecMSCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         x509Store = xmlSecKeyDataStoreCreate(xmlSecMSCryptoX509StoreId);
         if(x509Store == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecMSCryptoX509StoreId");
+            xmlSecInternalError("xmlSecKeyDataStoreCreate(xmlSecMSCryptoX509StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptDataStore(mngr, x509Store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptDataStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptDataStore", NULL);
             xmlSecKeyDataStoreDestroy(x509Store);
             return(-1);
         }
@@ -354,7 +316,6 @@ xmlSecMSCryptoKeysMngrInit(xmlSecKeysMngrPtr mngr) {
     return(0);
 }
 
-
 static xmlSecMSCryptoProviderInfo xmlSecMSCryptoProviderInfo_Random[] = {
     { MS_STRONG_PROV,               PROV_RSA_FULL },
     { MS_ENHANCED_PROV,             PROV_RSA_FULL },
@@ -381,29 +342,18 @@ xmlSecMSCryptoGenerateRandom(xmlSecBufferPtr buffer, size_t size) {
 
     ret = xmlSecBufferSetSize(buffer, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", size);
         return(-1);
     }
 
     hProv = xmlSecMSCryptoFindProvider(xmlSecMSCryptoProviderInfo_Random, NULL, CRYPT_VERIFYCONTEXT, FALSE);
     if (0 == hProv) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider", NULL);
         return(-1);
     }
     if (FALSE == CryptGenRandom(hProv, (DWORD)size, xmlSecBufferGetData(buffer))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGenRandom",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGenRandom", NULL);
         CryptReleaseContext(hProv,0);
         return(-1);
     }
@@ -412,71 +362,85 @@ xmlSecMSCryptoGenerateRandom(xmlSecBufferPtr buffer, size_t size) {
     return(0);
 }
 
-#define XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE       4096
-
 /**
- * xmlSecMSCryptoErrorsDefaultCallback:
- * @file:               the error location file name (__FILE__ macro).
- * @line:               the error location line number (__LINE__ macro).
- * @func:               the error location function name (__FUNCTION__ macro).
- * @errorObject:        the error specific error object
- * @errorSubject:       the error specific error subject.
- * @reason:             the error code.
- * @msg:                the additional error message.
+ * xmlSecMSCryptoGetErrorMessage:
+ * @dwError:            the error code.
+ * @out:                the output buffer.
+ * $outSize:            the output buffer size.
  *
- * The default errors reporting callback function.
+ * Returns the system error message for the give error code.
  */
 void
-xmlSecMSCryptoErrorsDefaultCallback(const char* file, int line, const char* func,
-                                const char* errorObject, const char* errorSubject,
-                                int reason, const char* msg) {
-    DWORD dwError;
-    TCHAR errorT[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];
-    WCHAR errorW[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];
-    CHAR  errorUTF8[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];
-    xmlChar buf[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];
-    DWORD rc;
-    int ret;
+xmlSecMSCryptoGetErrorMessage(DWORD dwError, xmlChar * out, xmlSecSize outSize) {
+    LPTSTR errorText = NULL;
+    DWORD ret;
+#ifndef UNICODE
+    WCHAR errorTextW[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];
+#endif /* UNICODE */
 
-    dwError = GetLastError();
-    rc = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,
-                  NULL,
-                  dwError,
-                  MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), /* Default language */
-                  errorT,
-                  XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE,
-                  NULL);
-    
-#ifdef UNICODE
-    if(rc <= 0) {
-        wcscpy_s(errorT, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, L"");
+    xmlSecAssert(out != NULL);
+    xmlSecAssert(outSize > 0);
+
+    /* Use system message tables to retrieve error text, allocate buffer on local
+       heap for error text, don't use any inserts/parameters */
+    ret = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM
+                      | FORMAT_MESSAGE_ALLOCATE_BUFFER
+                      | FORMAT_MESSAGE_IGNORE_INSERTS,
+                      NULL,
+                      dwError,
+                      MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), /* Default language */
+                      (LPTSTR)&errorText,
+                      0,
+                      NULL);
+    if((ret <= 0) || (errorText == NULL)) {
+        out[0] = '\0';
+        goto done;
     }
-    ret = WideCharToMultiByte(CP_UTF8, 0, errorT, -1, errorUTF8, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, NULL, NULL);
+
+#ifdef UNICODE
+    ret = WideCharToMultiByte(CP_UTF8, 0, errorText, -1, out, outSize, NULL, NULL);
     if(ret <= 0) {
-        strcpy_s(errorUTF8, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, "");
+        out[0] = '\0';
+        goto done;
     }
 #else /* UNICODE */
-    if(rc <= 0) {
-        strcpy_s(errorT, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, "");
-    }
-    ret = MultiByteToWideChar(CP_ACP, 0, errorT, -1, errorW, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE);
+    ret = MultiByteToWideChar(CP_ACP, 0, errorText, -1, errorTextW, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE);
     if(ret <= 0) {
-        wcscpy_s(errorW, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, L"");
+        out[0] = '\0';
+        goto done;
     }
-    ret = WideCharToMultiByte(CP_UTF8, 0, errorW, -1, errorUTF8, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, NULL, NULL);
+    ret = WideCharToMultiByte(CP_UTF8, 0, errorTextW, -1, out, outSize, NULL, NULL);
     if(ret <= 0) {
-        strcpy_s(errorUTF8, XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE, "");
+        out[0] = '\0';
+        goto done;
     }
 #endif /* UNICODE */
 
-    if((msg != NULL) && ((*msg) != '\0')) {
-        xmlSecStrPrintf(buf, sizeof(buf), BAD_CAST "%s;last error=%d (0x%08x);last error msg=%s", msg, dwError, dwError, errorUTF8);
-    } else {
-        xmlSecStrPrintf(buf, sizeof(buf), BAD_CAST "last error=%d (0x%08x);last error msg=%s", dwError, dwError, errorUTF8);
+done:
+    if(errorText != NULL) {
+        LocalFree(errorText);
     }
-    xmlSecErrorsDefaultCallback(file, line, func,
-                errorObject, errorSubject,
-                reason, (char*)buf);
+    return;
+}
+
+
+/**
+ * xmlSecMSCryptoErrorsDefaultCallback:
+ * @file:               the error location file name (__FILE__ macro).
+ * @line:               the error location line number (__LINE__ macro).
+ * @func:               the error location function name (__FUNCTION__ macro).
+ * @errorObject:        the error specific error object
+ * @errorSubject:       the error specific error subject.
+ * @reason:             the error code.
+ * @msg:                the additional error message.
+ *
+ * The default errors reporting callback function. Just a pass through to the default callback.
+ */
+void
+xmlSecMSCryptoErrorsDefaultCallback(const char* file, int line, const char* func,
+                                const char* errorObject, const char* errorSubject,
+                                int reason, const char* msg) {
+    xmlSecErrorsDefaultCallback(file, line, func, errorObject, errorSubject, reason, msg);
 }
 
 /**
@@ -496,7 +460,7 @@ xmlSecMSCryptoConvertUtf8ToUnicode(const xmlChar* str) {
     xmlSecAssert2(str != NULL, NULL);
 
     /* call MultiByteToWideChar first to get the buffer size */
-    ret = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);
+    ret = MultiByteToWideChar(CP_UTF8, 0, (LPCCH)str, -1, NULL, 0);
     if(ret <= 0) {
         return(NULL);
     }
@@ -505,16 +469,12 @@ xmlSecMSCryptoConvertUtf8ToUnicode(const xmlChar* str) {
     /* allocate buffer */
     res = (LPWSTR)xmlMalloc(sizeof(WCHAR) * len);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", sizeof(WCHAR) * len);
+        xmlSecMallocError(sizeof(WCHAR) * len, NULL);
         return(NULL);
     }
 
     /* convert */
-    ret = MultiByteToWideChar(CP_UTF8, 0, str, -1, res, len);
+    ret = MultiByteToWideChar(CP_UTF8, 0, (LPCCH)str, -1, res, len);
     if(ret <= 0) {
         xmlFree(res);
         return(NULL);
@@ -550,16 +510,12 @@ xmlSecMSCryptoConvertUnicodeToUtf8(LPCWSTR str) {
     /* allocate buffer */
     res = (xmlChar*)xmlMalloc(sizeof(xmlChar) * len);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", sizeof(xmlChar) * len);
+        xmlSecMallocError(sizeof(xmlChar) * len, NULL);
         return(NULL);
     }
 
     /* convert */
-    ret = WideCharToMultiByte(CP_UTF8, 0, str, -1, res, len, NULL, NULL);
+    ret = WideCharToMultiByte(CP_UTF8, 0, str, -1, (LPSTR)res, len, NULL, NULL);
     if(ret <= 0) {
         xmlFree(res);
         return(NULL);
@@ -595,19 +551,15 @@ xmlSecMSCryptoConvertLocaleToUnicode(const char* str) {
     /* allocate buffer */
     res = (LPWSTR)xmlMalloc(sizeof(WCHAR) * len);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(sizeof(WCHAR) * len, NULL);
         return(NULL);
     }
 
     /* convert */
     ret = MultiByteToWideChar(CP_ACP, 0, str, -1, res, len);
     if(ret <= 0) {
-            xmlFree(res);
-            return(NULL);
+        xmlFree(res);
+        return(NULL);
     }
 
     /* done */
@@ -647,17 +599,13 @@ xmlSecMSCryptoConvertLocaleToUtf8(const char * str) {
     /* allocate buffer */
     res = (xmlChar*)xmlMalloc(sizeof(xmlChar) * len);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", sizeof(xmlChar) * len);
+        xmlSecMallocError(sizeof(xmlChar) * len, NULL);
         xmlFree(strW);
         return(NULL);
     }
 
     /* convert */
-    ret = WideCharToMultiByte(CP_ACP, 0, strW, -1, res, len, NULL, NULL);
+    ret = WideCharToMultiByte(CP_ACP, 0, strW, -1, (LPSTR)res, len, NULL, NULL);
     if(ret <= 0) {
         xmlFree(strW);
         xmlFree(res);
@@ -702,11 +650,7 @@ xmlSecMSCryptoConvertUtf8ToLocale(const xmlChar* str) {
     /* allocate buffer */
     res = (char*)xmlMalloc(sizeof(char) * len);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", sizeof(xmlChar) * len);
+        xmlSecMallocError(sizeof(char) * len, NULL);
         xmlFree(strW);
         return(NULL);
     }
diff --git a/src/mscrypto/csp_calg.h b/src/mscrypto/csp_calg.h
index 984fe34..2ca5253 100644
--- a/src/mscrypto/csp_calg.h
+++ b/src/mscrypto/csp_calg.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/mscrypto/csp_oid.h b/src/mscrypto/csp_oid.h
index e563674..e37e53c 100644
--- a/src/mscrypto/csp_oid.h
+++ b/src/mscrypto/csp_oid.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/mscrypto/digests.c b/src/mscrypto/digests.c
index 9394afd..4e6a209 100644
--- a/src/mscrypto/digests.c
+++ b/src/mscrypto/digests.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -194,21 +194,14 @@ xmlSecMSCryptoDigestInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_GOST*/
 
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ctx->provider = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->provider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-            "xmlSecMSCryptoFindProvider",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -253,22 +246,15 @@ xmlSecMSCryptoDigestVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(ctx->dgstSize > 0, -1);
 
     if(dataSize != ctx->dgstSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data_size=%d;dgst_size=%d",
-                    dataSize, ctx->dgstSize);
+        xmlSecInvalidSizeError("Digest", dataSize, ctx->dgstSize,
+                              xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     if(memcmp(ctx->dgst, data, ctx->dgstSize) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest do not match");
+        xmlSecInvalidDataError("data and digest do not match",
+                xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -307,11 +293,7 @@ xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,
             &(ctx->mscHash));
 
         if((ret == 0) || (ctx->mscHash == 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "CryptCreateHash",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptCreateHash", xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -329,21 +311,17 @@ xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,
                 0);
 
             if(ret == 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "CryptHashData",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "size=%d", inSize);
+                xmlSecMSCryptoError2("CryptHashData",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -354,17 +332,14 @@ xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,
             retLen = MSCRYPTO_MAX_HASH_SIZE;
 
             ret = CryptGetHashParam(ctx->mscHash,
-                HP_HASHVAL,
-                ctx->dgst,
-                &retLen,
-                0);
-
+                                    HP_HASHVAL,
+                                    ctx->dgst,
+                                    &retLen,
+                                    0);
             if (ret == 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "CryptGetHashParam(HP_HASHVAL)",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", MSCRYPTO_MAX_HASH_SIZE);
+                xmlSecMSCryptoError2("CryptGetHashParam(HP_HASHVAL)",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", MSCRYPTO_MAX_HASH_SIZE);
                 return(-1);
             }
 
@@ -376,11 +351,9 @@ xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, ctx->dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", ctx->dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", ctx->dgstSize);
                     return(-1);
                 }
             }
@@ -390,11 +363,7 @@ xmlSecMSCryptoDigestExecute(xmlSecTransformPtr transform,
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(in) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/mscrypto/globals.h b/src/mscrypto/globals.h
index 35cbf24..3c10df5 100644
--- a/src/mscrypto/globals.h
+++ b/src/mscrypto/globals.h
@@ -22,5 +22,62 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
+#include <windows.h>
+#include <xmlsec/xmlsec.h>
+
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
+
+#define XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE       4096
+
+void xmlSecMSCryptoGetErrorMessage      (DWORD dwError,
+                                         xmlChar * out,
+                                         xmlSecSize outSize);
+
+
+/**
+ * xmlSecMSCryptoError:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting MSCrypto crypro errors.
+ */
+#define xmlSecMSCryptoError(errorFunction, errorObject) \
+    {                                                             \
+        DWORD dwError = GetLastError();                           \
+        xmlChar buf[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];       \
+        xmlSecMSCryptoGetErrorMessage(dwError, buf, sizeof(buf)); \
+        xmlSecError(XMLSEC_ERRORS_HERE,                           \
+                    (const char*)(errorObject),                   \
+                    (errorFunction),                              \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,                \
+                    "MSCrypto error: %ld: 0x%08lx: %s",           \
+                    (long int)dwError, (long int)dwError, buf     \
+        );                                                        \
+    }
+
+/**
+ * xmlSecMSCryptoError2:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting MSCrypto crypro errors.
+ */
+#define xmlSecMSCryptoError2(errorFunction, errorObject, msg, param) \
+    {                                                             \
+        DWORD dwError = GetLastError();                           \
+        xmlChar buf[XMLSEC_MSCRYPTO_ERROR_MSG_BUFFER_SIZE];       \
+        xmlSecMSCryptoGetErrorMessage(dwError, buf, sizeof(buf)); \
+        xmlSecError(XMLSEC_ERRORS_HERE,                           \
+                    (const char*)(errorObject),                   \
+                    (errorFunction),                              \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,                \
+                    msg  "MSCrypto error: %ld: 0x%08lx: %s",      \
+                    (param),                                      \
+                    (long int)dwError, (long int)dwError, buf     \
+        );                                                        \
+    }
 
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/mscrypto/hmac.c b/src/mscrypto/hmac.c
index 3637024..a397d0c 100644
--- a/src/mscrypto/hmac.c
+++ b/src/mscrypto/hmac.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * HMAC Algorithm support (http://www.w3.org/TR/xmldsig-core/#sec-HMAC):
  * The HMAC algorithm (RFC2104 [HMAC]) takes the truncation length in bits
@@ -221,31 +220,21 @@ xmlSecMSCryptoHmacInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ctx->provider = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->provider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-            "xmlSecMSCryptoFindProvider",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* Create dummy key to be able to import plain session keys */
     if (!xmlSecMSCryptoCreatePrivateExponentOneKey(ctx->provider, &(ctx->pubPrivKey))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoCreatePrivateExponentOneKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("xmlSecMSCryptoCreatePrivateExponentOneKey",
+                            xmlSecTransformGetName(transform));
 
         return(-1);
     }
@@ -307,23 +296,16 @@ xmlSecMSCryptoHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSec
            small value
         */
         if((int)ctx->dgstSize < xmlSecMSCryptoHmacGetMinOutputLength()) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                    "HMAC output length is too small");
-           return(-1);
+            xmlSecInvalidNodeContentError(cur, xmlSecTransformGetName(transform),
+                                          "HMAC output length is too small");
+            return(-1);
         }
 
         cur = xmlSecGetNextElementNode(cur->next);
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -375,11 +357,7 @@ xmlSecMSCryptoHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=0");
+        xmlSecInvalidZeroKeyDataSizeError(xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -400,11 +378,8 @@ xmlSecMSCryptoHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
         &(ctx->cryptKey)
         ) || (ctx->cryptKey == 0))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }   
 
@@ -415,11 +390,8 @@ xmlSecMSCryptoHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
         0,
         &(ctx->mscHash));
     if((ret == 0) || (ctx->mscHash == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "CryptCreateHash",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptCreateHash",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -428,11 +400,8 @@ xmlSecMSCryptoHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     hmacInfo.HashAlgid = ctx->alg_id;
     ret = CryptSetHashParam(ctx->mscHash, HP_HMAC_INFO, (BYTE*)&hmacInfo, 0);
     if(ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "CryptSetHashParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptSetHashParam",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -464,20 +433,9 @@ xmlSecMSCryptoHmacVerify(xmlSecTransformPtr transform,
 
     /* compare the digest size in bytes */
     if(dataSize != ((ctx->dgstSize + 7) / 8)){
-        /* NO COMMIT */
-        xmlChar* a;
-        mask = last_byte_masks[ctx->dgstSize % 8];
-        ctx->dgst[dataSize - 1] &= mask;
-        a = xmlSecBase64Encode(ctx->dgst, (ctx->dgstSize + 7) / 8, -1);
-        fprintf(stderr, "%s\n", a);
-        xmlFree(a);
-
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data=%d;dgst=%d",
-                    dataSize, ((ctx->dgstSize + 7) / 8));
+        xmlSecInvalidSizeError("HMAC digest",
+                               dataSize, ((ctx->dgstSize + 7) / 8),
+                               xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -486,22 +444,18 @@ xmlSecMSCryptoHmacVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(dataSize > 0, -1);
     mask = last_byte_masks[ctx->dgstSize % 8];
     if((ctx->dgst[dataSize - 1] & mask) != (data[dataSize - 1]  & mask)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match (last byte)");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match (last byte)");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     /* now check the rest of the digest */
     if((dataSize > 1) && (memcmp(ctx->dgst, data, dataSize - 1) != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -544,21 +498,17 @@ xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                 0);
 
             if(ret == 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "CryptHashData",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "size=%d", inSize);
+                xmlSecMSCryptoError2("CryptHashData",
+                                    xmlSecTransformGetName(transform),
+                                    "size=%d", inSize);
                 return(-1);
             }
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -576,11 +526,9 @@ xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                 0);
 
             if (ret == 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "CryptGetHashParam",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("CryptGetHashParam",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
             xmlSecAssert2(retLen > 0, -1);
@@ -591,12 +539,9 @@ xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             } else if(ctx->dgstSize <= 8 * retLen) {
                 retLen = ((ctx->dgstSize + 7) / 8); /* we need to truncate result digest */
             } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_SIZE,
-                            "result-bits=%d;required-bits=%d",
-                            8 * retLen, ctx->dgstSize);
+                xmlSecInvalidSizeLessThanError("HMAC digest (bits)",
+                                        8 * retLen, ctx->dgstSize,
+                                        xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -604,11 +549,9 @@ xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, retLen);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", ctx->dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", ctx->dgstSize);
                     return(-1);
                 }
             }
@@ -618,11 +561,7 @@ xmlSecMSCryptoHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(in) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/mscrypto/keysstore.c b/src/mscrypto/keysstore.c
index 8ead554..16e188d 100644
--- a/src/mscrypto/keysstore.c
+++ b/src/mscrypto/keysstore.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * MSCrypto keys store that uses Simple Keys Store under the hood. Uses the
  * MS Certificate store as a backing store for the finding keys, but the
@@ -146,22 +146,14 @@ xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
     doc = xmlParseFile(uri);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlParseFile",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecXmlError2("xmlParseFile", xmlSecKeyStoreGetName(store),
+                        "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
     root = xmlDocGetRootElement(doc);
     if(!xmlSecCheckNodeName(root, BAD_CAST "Keys", xmlSecNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(root)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected-node=<xmlsec:Keys>");
+        xmlSecInvalidNodeError(root, BAD_CAST "Keys", xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -170,23 +162,16 @@ xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     while((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeKeyInfo, xmlSecDSigNs)) {
         key = xmlSecKeyCreate();
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        "expected-node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError("xmlSecKeyCreate",
+                                xmlSecKeyStoreGetName(store));
             xmlFreeDoc(doc);
             return(-1);
         }
 
         ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoCtxInitialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
             return(-1);
@@ -202,11 +187,8 @@ xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
         ret = xmlSecKeyInfoNodeRead(cur, key, &keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeRead",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyInfoCtxFinalize(&keyInfoCtx);
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
@@ -217,11 +199,8 @@ xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
         if(xmlSecKeyIsValid(key)) {
             ret = xmlSecMSCryptoKeysStoreAdoptKey(store, key);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            "xmlSecMSCryptoKeysStoreAdoptKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecMSCryptoKeysStoreAdoptKey",
+                                    xmlSecKeyStoreGetName(store));
                 xmlSecKeyDestroy(key);
                 xmlFreeDoc(doc);
                 return(-1);
@@ -234,11 +213,7 @@ xmlSecMSCryptoKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -282,11 +257,8 @@ xmlSecMSCryptoKeysStoreInitialize(xmlSecKeyStorePtr store) {
 
     *ss = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
     if(*ss == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSecKeyStoreCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecSimpleKeysStoreId");
+        xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId)",
+                            xmlSecKeyStoreGetName(store));
         return(-1);
     }
 
@@ -324,23 +296,18 @@ xmlSecMSCryptoKeysStoreFindCert(xmlSecKeyStorePtr store, const xmlChar* name,
 
     hStoreHandle = CertOpenSystemStore(0, storeName);
     if (NULL == hStoreHandle) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertOpenSystemStore",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "storeName=%s",
-                    xmlSecErrorsSafeString(storeName));
+        xmlSecMSCryptoError2("CertOpenSystemStore",
+                             xmlSecKeyStoreGetName(store),
+                             "storeName=%s",
+                             xmlSecErrorsSafeString(storeName));
         return(NULL);
     }
 
     /* convert name to unicode */
     wcName = xmlSecMSCryptoConvertUtf8ToTstr(name);
     if(wcName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecMSCryptoConvertUtf8ToUnicode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "wcName");
+        xmlSecInternalError("xmlSecMSCryptoConvertUtf8ToTstr(name)",
+                            xmlSecKeyStoreGetName(store));
         CertCloseStore(hStoreHandle, 0);
         return(NULL);
     }
@@ -362,7 +329,12 @@ xmlSecMSCryptoKeysStoreFindCert(xmlSecKeyStorePtr store, const xmlChar* name,
         PCCERT_CONTEXT pCertCtxIter = NULL;
 
 
-        while (pCertCtxIter = CertEnumCertificatesInStore(hStoreHandle, pCertCtxIter)) {
+        while (1) {
+           pCertCtxIter = CertEnumCertificatesInStore(hStoreHandle, pCertCtxIter);
+            if(pCertCtxIter == NULL) {
+                break;
+            }
+
             if (TRUE != CertGetCertificateContextProperty(pCertCtxIter,
                                                       CERT_FRIENDLY_NAME_PROP_ID,
                                                       NULL,
@@ -372,11 +344,7 @@ xmlSecMSCryptoKeysStoreFindCert(xmlSecKeyStorePtr store, const xmlChar* name,
 
             pbFriendlyName = xmlMalloc(dwPropSize);
             if(pbFriendlyName == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            NULL,
-                            XMLSEC_ERRORS_R_MALLOC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMallocError(dwPropSize, xmlSecKeyStoreGetName(store));
                 xmlFree(wcName);
                 CertCloseStore(hStoreHandle, 0);
                 return(NULL);
@@ -478,57 +446,37 @@ xmlSecMSCryptoKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         /* set cert in x509 data */
         x509Data = xmlSecKeyDataCreate(xmlSecMSCryptoKeyDataX509Id);
         if(x509Data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecKeyDataCreate",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         pCertContext2 = CertDuplicateCertificateContext(pCertContext);
         if (NULL == pCertContext2) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptCert(x509Data, pCertContext2);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         pCertContext2 = NULL;
 
         pCertContext2 = CertDuplicateCertificateContext(pCertContext);
         if (NULL == pCertContext2) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptKeyCert(x509Data, pCertContext2);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataX509AdoptKeyCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptKeyCert",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         pCertContext2 = NULL;
@@ -536,11 +484,7 @@ xmlSecMSCryptoKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         /* set cert in key data */
         data = xmlSecMSCryptoCertAdopt(pCertContext, keyReq->keyType);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoCertAdopt",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoCertAdopt", NULL);
             goto done;
         }
         pCertContext = NULL;
@@ -548,34 +492,22 @@ xmlSecMSCryptoKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         /* create key and add key data and x509 data to it */
         key = xmlSecKeyCreate();
         if (key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyCreate", NULL);
             goto done;
         }
 
         ret = xmlSecKeySetValue(key, data);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeySetValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+            xmlSecInternalError("xmlSecKeySetValue",
+                                xmlSecKeyDataGetName(data));
             goto done;
         }
         data = NULL;
 
         ret = xmlSecKeyAdoptData(key, x509Data);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyAdoptData",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecKeyAdoptData",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         x509Data = NULL;
@@ -583,11 +515,8 @@ xmlSecMSCryptoKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         /* Set the name of the key to the given name */
         ret = xmlSecKeySetName(key, name);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeySetName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeySetName",
+                                xmlSecKeyStoreGetName(store));
             goto done;
         }
 
diff --git a/src/mscrypto/kt_rsa.c b/src/mscrypto/kt_rsa.c
index 9b4908f..ac60ae5 100644
--- a/src/mscrypto/kt_rsa.c
+++ b/src/mscrypto/kt_rsa.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * RSA Algorithms support
  *
@@ -106,11 +105,8 @@ xmlSecMSCryptoRsaPkcs1OaepInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->oaepParams), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -124,11 +120,7 @@ xmlSecMSCryptoRsaPkcs1OaepInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
@@ -194,11 +186,8 @@ xmlSecMSCryptoRsaPkcs1OaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key)
 
     ctx->data = xmlSecKeyDataDuplicate(xmlSecKeyGetValue(key));
     if(ctx->data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecKeyDataDuplicate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataDuplicate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -227,11 +216,8 @@ xmlSecMSCryptoRsaPkcs1OaepExecute(xmlSecTransformPtr transform, int last, xmlSec
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         ret = xmlSecMSCryptoRsaPkcs1OaepProcess(transform, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecMSCryptoRsaPkcs1OaepProcess",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoRsaPkcs1OaepProcess",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusFinished;
@@ -239,11 +225,7 @@ xmlSecMSCryptoRsaPkcs1OaepExecute(xmlSecTransformPtr transform, int last, xmlSec
                 /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -286,61 +268,44 @@ xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform, xmlSecTransformC
     /* the encoded size is equal to the keys size so we could not
      * process more than that */
     if((transform->operation == xmlSecTransformOperationEncrypt) && (inSize >= keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected less than %d", inSize, keySize);
+        xmlSecInvalidSizeLessThanError("Input data", inSize, keySize,
+                                       xmlSecTransformGetName(transform));
         return(-1);
     } else if((transform->operation == xmlSecTransformOperationDecrypt) && (inSize != keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected %d", inSize, keySize);
+        xmlSecInvalidSizeError("Input data", inSize, keySize,
+                               xmlSecTransformGetName(transform));
         return(-1);
     }
 
     outSize = keySize;
     ret = xmlSecBufferSetMaxSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", outSize);
         return(-1);
     }
 
     if(transform->operation == xmlSecTransformOperationEncrypt) {
         if(inSize > outSize) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "inSize=%d;outSize=%d",
-                        inSize, outSize);
+            xmlSecInvalidSizeLessThanError("Output data", outSize, inSize,
+                                          xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ret = xmlSecBufferSetData(out, xmlSecBufferGetData(in), inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetData",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferSetData",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
         dwInLen = inSize;
         dwBufLen = outSize;
         if (0 == (hKey = xmlSecMSCryptoKeyDataGetKey(ctx->data, xmlSecKeyDataTypePublic))) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataGetKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataGetKey",
+                                xmlSecTransformGetName(transform));
             return (-1);
         }
 
@@ -360,22 +325,16 @@ xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform, xmlSecTransformC
             oaepParams.cbData = xmlSecBufferGetSize(&(ctx->oaepParams));
 
             if (!CryptSetKeyParam(hKey, KP_OAEP_PARAMS, (const BYTE*)&oaepParams, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptSetKeyParam",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptSetKeyParam",
+                                    xmlSecTransformGetName(transform));
                 return (-1);
             }
         }
 
         /* encrypt */
         if (!CryptEncrypt(hKey, 0, TRUE, ctx->dwFlags, outBuf, &dwInLen, dwBufLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptEncrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptEncrypt",
+                                xmlSecTransformGetName(transform));
             return (-1);
         }
 
@@ -393,12 +352,10 @@ xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform, xmlSecTransformC
         outBuf  = xmlSecBufferGetData(out);
         ConvertEndian(inBuf, outBuf, inSize);
 
-        if (0 == (hKey = xmlSecMSCryptoKeyDataGetDecryptKey(ctx->data))) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoKeyDataGetKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        hKey = xmlSecMSCryptoKeyDataGetDecryptKey(ctx->data);
+        if (0 == hKey) {
+            xmlSecInternalError("xmlSecMSCryptoKeyDataGetKey",
+                                xmlSecTransformGetName(transform));
             return (-1);
         }
 
@@ -415,22 +372,16 @@ xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform, xmlSecTransformC
             oaepParams.cbData = xmlSecBufferGetSize(&(ctx->oaepParams));
 
             if (!CryptSetKeyParam(hKey, KP_OAEP_PARAMS, (const BYTE*)&oaepParams, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptSetKeyParam",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptSetKeyParam",
+                                    xmlSecTransformGetName(transform));
                 return (-1);
             }
         }
 
         /* decrypt */
         if (!CryptDecrypt(hKey, 0, TRUE, ctx->dwFlags, outBuf, &dwOutLen)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "CryptDecrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptDecrypt",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -439,21 +390,17 @@ xmlSecMSCryptoRsaPkcs1OaepProcess(xmlSecTransformPtr transform, xmlSecTransformC
 
     ret = xmlSecBufferSetSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetSize",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", outSize);
         return(-1);
     }
 
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", inSize);
         return(-1);
     }
 
@@ -577,11 +524,8 @@ xmlSecMSCryptoRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
         if(xmlSecCheckNodeName(cur,  xmlSecNodeRsaOAEPparams, xmlSecEncNs)) {
             ret = xmlSecBufferBase64NodeContentRead(&(ctx->oaepParams), cur);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferBase64NodeContentRead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecBufferBase64NodeContentRead",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else if(xmlSecCheckNodeName(cur,  xmlSecNodeDigestMethod, xmlSecDSigNs)) {
@@ -590,33 +534,24 @@ xmlSecMSCryptoRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
             /* Algorithm attribute is required */
             algorithm = xmlGetProp(cur, xmlSecAttrAlgorithm);
             if(algorithm == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                            XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+                xmlSecInvalidNodeAttributeError(cur, xmlSecAttrAlgorithm,
+                                                xmlSecTransformGetName(transform),
+                                                "empty");
                 return(-1);
             }
 
             /* for now we support only sha1 */
             if(xmlStrcmp(algorithm, xmlSecHrefSha1) != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            xmlSecErrorsSafeString(algorithm),
-                            XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                            "digest algorithm is not supported for rsa/oaep");
+                xmlSecInvalidTransfromError2(transform,
+                                "digest algorithm=\"%s\" is not supported for rsa/oaep",
+                                xmlSecErrorsSafeString(algorithm));
                 xmlFree(algorithm);
                 return(-1);
             }
             xmlFree(algorithm);
         } else {
-            /* not found */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            /* node not recognized */
+            xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
             return(-1);
         }
 
diff --git a/src/mscrypto/kw_aes.c b/src/mscrypto/kw_aes.c
index 71ac447..8cfa0b6 100644
--- a/src/mscrypto/kw_aes.c
+++ b/src/mscrypto/kw_aes.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -151,44 +151,29 @@ xmlSecMSCryptoKWAesInitialize(xmlSecTransformPtr transform) {
         ctx->providers              = xmlSecMSCryptoProviderInfo_Aes;
         ctx->keySize                = XMLSEC_KW_AES256_KEY_SIZE;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-            NULL,
-            XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&ctx->keyBuffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* find provider */
     ctx->cryptProvider = xmlSecMSCryptoFindProvider(ctx->providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->cryptProvider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoFindProvider",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecMSCryptoFindProvider",
+                             xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* Create dummy key to be able to import plain session keys */
     if (!xmlSecMSCryptoCreatePrivateExponentOneKey(ctx->cryptProvider, &(ctx->pubPrivKey))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoCreatePrivateExponentOneKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecMSCryptoCreatePrivateExponentOneKey",
+                             xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -265,12 +250,8 @@ xmlSecMSCryptoKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < ctx->keySize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key=%d;expected=%d",
-                    keySize, ctx->keySize);
+        xmlSecInvalidKeyDataSizeError(keySize, ctx->keySize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -278,12 +259,9 @@ xmlSecMSCryptoKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
                             xmlSecBufferGetData(buffer),
                             ctx->keySize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "expected-size=%d", 
-                    ctx->keySize);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", ctx->keySize);
         return(-1);
     }
 
@@ -319,11 +297,8 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % 8) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "size=%d(not 8 bytes aligned)", inSize);
+            xmlSecInvalidSizeNotMultipleOfError("Input data", inSize, 8,
+                                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -337,11 +312,9 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -350,11 +323,8 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -363,11 +333,8 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -375,21 +342,17 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "inSize%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -398,11 +361,7 @@ xmlSecMSCryptoKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfo
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -440,11 +399,7 @@ xmlSecMSCryptoKWAesBlockEncrypt(const xmlSecByte * in, xmlSecSize inSize,
         TRUE,
         &cryptKey))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob", NULL);
         return(-1);
     }
     xmlSecAssert2(cryptKey != 0, -1);
@@ -456,11 +411,7 @@ xmlSecMSCryptoKWAesBlockEncrypt(const xmlSecByte * in, xmlSecSize inSize,
     }
     dwCLen = inSize;
     if(!CryptEncrypt(cryptKey, 0, FALSE, 0, out, &dwCLen, outSize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptEncrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptEncrypt", NULL);
         CryptDestroyKey(cryptKey);    
         return(-1);
     }
@@ -496,11 +447,7 @@ xmlSecMSCryptoKWAesBlockDecrypt(const xmlSecByte * in, xmlSecSize inSize,
         TRUE,
         &cryptKey))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob", NULL);
         return(-1);
     }
     xmlSecAssert2(cryptKey != 0, -1);
@@ -512,11 +459,7 @@ xmlSecMSCryptoKWAesBlockDecrypt(const xmlSecByte * in, xmlSecSize inSize,
     }
     dwCLen = inSize;
     if(!CryptDecrypt(cryptKey, 0, FALSE, 0, out, &dwCLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptEncrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptDecrypt", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
diff --git a/src/mscrypto/kw_des.c b/src/mscrypto/kw_des.c
index 227e76d..b8b2b9b 100644
--- a/src/mscrypto/kw_des.c
+++ b/src/mscrypto/kw_des.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
@@ -187,55 +186,36 @@ xmlSecMSCryptoKWDes3Initialize(xmlSecTransformPtr transform) {
         ctx->keyId                   = xmlSecMSCryptoKeyDataDesId;
         ctx->keySize                 = XMLSEC_KW_DES3_KEY_LENGTH;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-            NULL,
-            XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* find providers */
     ctx->desCryptProvider = xmlSecMSCryptoFindProvider(ctx->desProviders, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->desCryptProvider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoFindProvider(des)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecMSCryptoFindProvider(des)",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ctx->sha1CryptProvider = xmlSecMSCryptoFindProvider(ctx->sha1Providers, NULL, CRYPT_VERIFYCONTEXT, TRUE);
     if(ctx->sha1CryptProvider == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoFindProvider(sha1)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecInternalError("xmlSecMSCryptoFindProvider(sha1)",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* Create dummy key to be able to import plain session keys */
     if (!xmlSecMSCryptoCreatePrivateExponentOneKey(ctx->desCryptProvider, &(ctx->pubPrivKey))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoCreatePrivateExponentOneKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecMSCryptoError("xmlSecMSCryptoCreatePrivateExponentOneKey",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -311,22 +291,16 @@ xmlSecMSCryptoKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < XMLSEC_KW_DES3_KEY_LENGTH) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key length %d is not enough (%d expected)",
-                    keySize, XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInvalidKeyDataSizeError(keySize, XMLSEC_KW_DES3_KEY_LENGTH,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecBufferSetData(&(ctx->keyBuffer), xmlSecBufferGetData(buffer), XMLSEC_KW_DES3_KEY_LENGTH);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
         return(-1);
     }
 
@@ -365,12 +339,9 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % XMLSEC_KW_DES3_BLOCK_LENGTH) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "%d bytes - not %d bytes aligned",
-                        inSize, XMLSEC_KW_DES3_BLOCK_LENGTH);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                    inSize, XMLSEC_KW_DES3_BLOCK_LENGTH,
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -386,11 +357,9 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -399,12 +368,9 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Encode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Encode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d",
+                                    keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -413,12 +379,9 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Decode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Decode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d",
+                                     keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -426,21 +389,17 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -449,11 +408,7 @@ xmlSecMSCryptoKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransf
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -488,11 +443,7 @@ xmlSecMSCryptoKWDes3Sha1(void * context,
         0,
         &mscHash);
     if((ret == 0) || (mscHash == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptCreateHash",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptCreateHash", NULL);
         return(-1);
     }
 
@@ -502,11 +453,8 @@ xmlSecMSCryptoKWDes3Sha1(void * context,
         inSize,
         0);
     if(ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptHashData",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", inSize);
+        xmlSecMSCryptoError2("CryptHashData", NULL,
+                             "size=%d", inSize);
         CryptDestroyHash(mscHash);
         return(-1);
     }
@@ -519,11 +467,8 @@ xmlSecMSCryptoKWDes3Sha1(void * context,
         &retLen,
         0);
     if (ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetHashParam(HP_HASHVAL)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecMSCryptoError2("CryptGetHashParam(HP_HASHVAL)", NULL,
+                             "size=%d", outSize);
         CryptDestroyHash(mscHash);
         return(-1);
     }
@@ -546,11 +491,8 @@ xmlSecMSCryptoKWDes3GenerateRandom(void * context,
     xmlSecAssert2(outSize > 0, -1);
 
     if(!CryptGenRandom(ctx->desCryptProvider, outSize, out)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGenRandom",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "len=%d", outSize);
+        xmlSecMSCryptoError2("CryptGenRandom", NULL,
+                             "len=%d", outSize);
         return(-1);
     }
 
@@ -587,11 +529,7 @@ xmlSecMSCryptoKWDes3BlockEncrypt(void * context,
         TRUE,
         &cryptKey))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob", NULL);
         return(-1);
     }
     xmlSecAssert2(cryptKey != 0, -1);
@@ -599,23 +537,20 @@ xmlSecMSCryptoKWDes3BlockEncrypt(void * context,
     /* iv len == block len */
     dwBlockLenLen = sizeof(DWORD);
     if (!CryptGetKeyParam(cryptKey, KP_BLOCKLEN, (BYTE *)&dwBlockLen, &dwBlockLenLen, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGetKeyParam", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
 
     /* set IV */
-    if((ivSize < dwBlockLen / 8) || (!CryptSetKeyParam(cryptKey, KP_IV, iv, 0))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptSetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "ivSize=%d, dwBlockLen=%d", 
-                    ivSize, dwBlockLen / 8);
+    if(ivSize < dwBlockLen / 8) {
+        xmlSecInvalidSizeLessThanError("ivSize", ivSize, dwBlockLen / 8, NULL);
+        CryptDestroyKey(cryptKey);
+        return(-1);
+    }
+
+    if(!CryptSetKeyParam(cryptKey, KP_IV, iv, 0)) {
+        xmlSecMSCryptoError("CryptSetKeyParam", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
@@ -627,11 +562,7 @@ xmlSecMSCryptoKWDes3BlockEncrypt(void * context,
     }
     dwCLen = inSize;
     if(!CryptEncrypt(cryptKey, 0, FALSE, 0, out, &dwCLen, outSize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptEncrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptEncrypt", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
@@ -671,11 +602,7 @@ xmlSecMSCryptoKWDes3BlockDecrypt(void * context,
         TRUE,
         &cryptKey))  {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoImportPlainSessionBlob",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoImportPlainSessionBlob", NULL);
         return(-1);
     }
     xmlSecAssert2(cryptKey != 0, -1);
@@ -683,23 +610,19 @@ xmlSecMSCryptoKWDes3BlockDecrypt(void * context,
     /* iv len == block len */
     dwBlockLenLen = sizeof(DWORD);
     if (!CryptGetKeyParam(cryptKey, KP_BLOCKLEN, (BYTE *)&dwBlockLen, &dwBlockLenLen, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGetKeyParam", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
 
     /* set IV */
-    if((ivSize < dwBlockLen / 8) || (!CryptSetKeyParam(cryptKey, KP_IV, iv, 0))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptSetKeyParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "ivSize=%d, dwBlockLen=%d", 
-                    ivSize, dwBlockLen / 8);
+    if(ivSize < dwBlockLen / 8) {
+        xmlSecInvalidSizeLessThanError("ivSize", ivSize, dwBlockLen / 8, NULL);
+        CryptDestroyKey(cryptKey);
+        return(-1);
+    }
+    if(!CryptSetKeyParam(cryptKey, KP_IV, iv, 0)) {
+        xmlSecMSCryptoError("CryptSetKeyParam", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
@@ -711,11 +634,7 @@ xmlSecMSCryptoKWDes3BlockDecrypt(void * context,
     }
     dwCLen = inSize;
     if(!CryptDecrypt(cryptKey, 0, FALSE, 0, out, &dwCLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptEncrypt",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptEncrypt", NULL);
         CryptDestroyKey(cryptKey);
         return(-1);
     }
diff --git a/src/mscrypto/private.h b/src/mscrypto/private.h
index 37e7b9a..2ba8776 100644
--- a/src/mscrypto/private.h
+++ b/src/mscrypto/private.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * THIS IS A PRIVATE XMLSEC HEADER FILE
  * DON'T USE IT IN YOUR APPLICATION
diff --git a/src/mscrypto/signatures.c b/src/mscrypto/signatures.c
index 342b652..3eb601e 100644
--- a/src/mscrypto/signatures.c
+++ b/src/mscrypto/signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -197,11 +197,7 @@ static int xmlSecMSCryptoSignatureInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
@@ -249,11 +245,8 @@ static int xmlSecMSCryptoSignatureSetKey(xmlSecTransformPtr transform, xmlSecKey
 
     ctx->data = xmlSecKeyDataDuplicate(value);
     if(ctx->data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecKeyDataDuplicate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataDuplicate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -307,11 +300,9 @@ static int xmlSecMSCryptoSignatureVerify(xmlSecTransformPtr transform,
 
     ret = xmlSecBufferInitialize(&tmp, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataSize=%d", dataSize);
+        xmlSecInternalError2("xmlSecBufferInitialize",
+                             xmlSecTransformGetName(transform),
+                             "dataSize=%d", dataSize);
         return(-1);
     }
 
@@ -368,22 +359,15 @@ static int xmlSecMSCryptoSignatureVerify(xmlSecTransformPtr transform,
 #endif /* XMLSEC_NO_GOST*/
 
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "Invalid algo");
+        xmlSecInvalidTypeError("Invalid signature algorithm", xmlSecTransformGetName(transform));
         xmlSecBufferFinalize(&tmp);
         return(-1);
     }
 
     hKey = xmlSecMSCryptoKeyDataGetKey(ctx->data, xmlSecKeyDataTypePublic);
     if (hKey == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecMSCryptoKeyDataGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataGetKey",
+                            xmlSecTransformGetName(transform));
         xmlSecBufferFinalize(&tmp);
         return(-1);
     }
@@ -395,20 +379,15 @@ static int xmlSecMSCryptoSignatureVerify(xmlSecTransformPtr transform,
                               0)) {
         dwError = GetLastError();
         if (NTE_BAD_SIGNATURE == dwError) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "CryptVerifySignature",
-                        XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                        "signature do not match");
+            xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                             xmlSecTransformGetName(transform),
+                             "CryptVerifySignature: signature does not verify");
             transform->status = xmlSecTransformStatusFail;
             xmlSecBufferFinalize(&tmp);
             return(0);
         } else {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "CryptVerifySignature",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptVerifySignature",
+                                xmlSecTransformGetName(transform));
             xmlSecBufferFinalize(&tmp);
             return (-1);
         }
@@ -432,8 +411,6 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
     BYTE *tmpBuf, *outBuf;
     int bOk;
     PCRYPT_KEY_PROV_INFO pProviderInfo = NULL;
-    char strContName[1000];
-    char strProvName[1000];
     size_t size;
 
     xmlSecAssert2(xmlSecMSCryptoSignatureCheckId(transform), -1);
@@ -457,11 +434,8 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         xmlSecAssert2(outSize == 0, -1);
 
         if (0 == (hProv = xmlSecMSCryptoKeyDataGetMSCryptoProvider(ctx->data))) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecMSCryptoKeyDataGetMSCryptoProvider",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("xmlSecMSCryptoKeyDataGetMSCryptoProvider",
+                                xmlSecTransformGetName(transform));
             return (-1);
         }
 
@@ -473,54 +447,23 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
             pProviderInfo = xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo(ctx->data);
 
             if(pProviderInfo == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
-                return(-1);
-            }
-
-            ret = wcstombs_s(&size, strContName, 1000, pProviderInfo->pwszContainerName, _TRUNCATE);
-            if(ret != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "wcstombs_s",
-                            XMLSEC_ERRORS_R_INVALID_DATA,
-                            "ret=%d", ret);
-                return(-1);
-            }
-
-            ret = wcstombs_s(&size, strProvName, 1000, pProviderInfo->pwszProvName, _TRUNCATE);
-            if(ret != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "wcstombs_s",
-                            XMLSEC_ERRORS_R_INVALID_DATA,
-                            "ret=%d", ret);
+                xmlSecInternalError("xmlSecMSCryptoKeyDataGetMSCryptoProviderInfo", NULL);
                 return(-1);
             }
 
             if(!CryptReleaseContext(hProv, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptReleaseContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptReleaseContext", NULL);
                 return(-1);
             }
-            hProv = NULL;
+            hProv = (HCRYPTPROV)0;
 
             if(!CryptAcquireContext(&hProv,
-                strContName,
-                strProvName,
+                pProviderInfo->pwszContainerName,
+                pProviderInfo->pwszProvName,
                 pProviderInfo->dwProvType,
                 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptAcquireContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+
+                xmlSecMSCryptoError("CryptAcquireContext", NULL);
                 return(-1);
             }
 
@@ -530,25 +473,17 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         //Last try it with PROV_RSA_AES provider type.
         if(!bOk) {
             if (!CryptReleaseContext(hProv, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptReleaseContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptReleaseContext", NULL);
                 return(-1);
             }
-            hProv = NULL;
+            hProv = (HCRYPTPROV)0;
 
             if(!CryptAcquireContext(&hProv,
-                strContName,
+                pProviderInfo->pwszContainerName,
                 NULL,
                 PROV_RSA_AES,
                 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptAcquireContext",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptAcquireContext", NULL);
                 return(-1);
             }
 
@@ -560,11 +495,7 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         }
 
         if(!bOk) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptCreateHash",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptCreateHash", NULL);
             return(-1);
         }
 
@@ -575,21 +506,14 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         xmlSecAssert2(outSize == 0, -1);
 
         if (!CryptHashData(ctx->mscHash, xmlSecBufferGetData(in), inSize, 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptHashData",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CryptHashData", NULL);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferRemoveHead",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -602,33 +526,23 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         if(transform->operation == xmlSecTransformOperationSign) {
             dwKeySpec = xmlSecMSCryptoKeyDataGetMSCryptoKeySpec(ctx->data);
             if (!CryptSignHash(ctx->mscHash, dwKeySpec, NULL, 0, NULL, &dwSigLen)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptSignHash",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptSignHash", NULL);
                 return(-1);
             }
             outSize = (xmlSecSize)dwSigLen;
 
             ret = xmlSecBufferInitialize(&tmp, outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetMaxSize",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", outSize);
+                xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", outSize);
                 return(-1);
             }
             tmpBuf = xmlSecBufferGetData(&tmp);
             xmlSecAssert2(tmpBuf != NULL, -1);
 
             if (!CryptSignHash(ctx->mscHash, dwKeySpec, NULL, 0, tmpBuf, &dwSigLen)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CryptSignHash",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecMSCryptoError("CryptSignHash", NULL);
                 xmlSecBufferFinalize(&tmp);
                 return(-1);
             }
@@ -636,11 +550,9 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
 
             ret = xmlSecBufferSetSize(out, outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetSize",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", outSize);
+                xmlSecInternalError2("xmlSecBufferSetSize",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", outSize);
                 xmlSecBufferFinalize(&tmp);
                 return(-1);
             }
@@ -698,11 +610,7 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
 
             {
                 /* We shouldn't get at this place */
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "Invalid algo");
+                xmlSecInvalidTypeError("Invalid signature algorithm", xmlSecTransformGetName(transform));
                 xmlSecBufferFinalize(&tmp);
                 return(-1);
             }
@@ -715,11 +623,7 @@ xmlSecMSCryptoSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTra
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/mscrypto/symkeys.c b/src/mscrypto/symkeys.c
index 658a6d4..7bd1660 100644
--- a/src/mscrypto/symkeys.c
+++ b/src/mscrypto/symkeys.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
@@ -238,40 +237,24 @@ xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY *hPrivateK
 
     /* Generate the private key */
     if(!CryptGenKey(hProv, AT_KEYEXCHANGE, CRYPT_EXPORTABLE, &hKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGenKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptGenKey", NULL);
         goto done;
     }
 
     /* Export the private key, we'll convert it to a private exponent of one key */
     if(!CryptExportKey(hKey, 0, PRIVATEKEYBLOB, 0, NULL, &keyBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptExportKey", NULL);
         goto done;
     }
 
     keyBlob = (LPBYTE)xmlMalloc(sizeof(BYTE) * keyBlobLen);
     if(keyBlob == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(sizeof(BYTE) * keyBlobLen, NULL);
         goto done;
     }
 
     if(!CryptExportKey(hKey, 0, PRIVATEKEYBLOB, 0, keyBlob, &keyBlobLen)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptExportKey", NULL);
         goto done;
     }
     CryptDestroyKey(hKey);
@@ -279,28 +262,22 @@ xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY *hPrivateK
 
     /* Get the bit length of the key */
     if(keyBlobLen < sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "len=%ld", keyBlobLen);
+        xmlSecMSCryptoError2("CryptExportKey", NULL,
+                             "len=%ld",
+                             (long int)keyBlobLen);
         goto done;
     }
     pubKeyStruc = (PUBLICKEYSTRUC*)keyBlob;
     if(pubKeyStruc->bVersion != 0x02) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bVersion=%d", pubKeyStruc->bVersion);
+        xmlSecMSCryptoError2("CryptExportKey", NULL,
+                             "pubKeyStruc->bVersion=%ld",
+                             (long int)pubKeyStruc->bVersion);
         goto done;
     }
     if(pubKeyStruc->bType != PRIVATEKEYBLOB) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "pubKeyStruc->bType=%d", (int)pubKeyStruc->bType);
+        xmlSecMSCryptoError2("CryptExportKey", NULL,
+                             "pubKeyStruc->bType=%ld",
+                             (long int)pubKeyStruc->bType);
         goto done;
     }
 
@@ -309,11 +286,9 @@ xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY *hPrivateK
 
     /* check that we have RSA private key */
     if(rsaPubKey->magic != 0x32415352) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "rsaPubKey->magic=0x%08lx", rsaPubKey->magic);
+        xmlSecMSCryptoError2("CryptExportKey", NULL,
+                             "rsaPubKey->magic=0x%08lx",
+                             (long int)rsaPubKey->magic);
         goto done;
     }
     bitLen = rsaPubKey->bitlen;
@@ -335,11 +310,8 @@ xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY *hPrivateK
      * BYTE privateExponent[rsapubkey.bitlen/8];        1/8
      */
     if(keyBlobLen < sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY) + bitLen / 2 + bitLen / 16) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptExportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "len=%ld", keyBlobLen);
+        xmlSecMSCryptoError2("CryptExportKey", NULL,
+                             "keBlobLen=%ld", keyBlobLen);
         goto done;
     }
     ptr = (BYTE*)(keyBlob + sizeof(PUBLICKEYSTRUC) + sizeof(RSAPUBKEY));
@@ -374,11 +346,7 @@ xmlSecMSCryptoCreatePrivateExponentOneKey(HCRYPTPROV hProv, HCRYPTKEY *hPrivateK
 
     /* Import the exponent-of-one private key. */
     if (!CryptImportKey(hProv, keyBlob, keyBlobLen, 0, 0, &hKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptImportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CryptImportKey", NULL);
         goto done;
     }
     (*hPrivateKey) = hKey;
@@ -434,11 +402,9 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
         dwFlags = 0;
     }
     if(!fFound) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetProvParam",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "algId=%d is not supported", dwAlgId);
+        xmlSecMSCryptoError2("CryptGetProvParam", NULL,
+                             "algId=%ld is not supported",
+                             (long int)dwAlgId);
         goto done;
     }
 
@@ -447,21 +413,16 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
          * PP_ENUMALGS_EX contains the key size without the padding so we can't use it.
          */
         if(!CryptGenKey(hProv, dwAlgId, 0, &hTempKey)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptGenKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "algId=%d", dwAlgId);
+            xmlSecMSCryptoError2("CryptGenKey", NULL,
+                                 "algId=%ld",
+                                 (long int)dwAlgId);
             goto done;
         }
 
         dwSize = sizeof(DWORD);
         if(!CryptGetKeyParam(hTempKey, KP_KEYLEN, (LPBYTE)&dwProvSessionKeySize, &dwSize, 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CryptGetKeyParam(KP_KEYLEN)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "algId=%d", dwAlgId);
+            xmlSecMSCryptoError2("CryptGetKeyParam(KP_KEYLEN)", NULL,
+                                 "algId=%ld", (long int)dwAlgId);
             goto done;
         }
         CryptDestroyKey(hTempKey);
@@ -469,12 +430,9 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
 
         /* yell if key is too big */
         if ((dwKeyMaterial * 8) > dwProvSessionKeySize) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "dwKeyMaterial=%ld;dwProvSessionKeySize=%ld",
-                        dwKeyMaterial, dwProvSessionKeySize);
+            xmlSecInvalidSizeMoreThanError("Key value (bits)",
+                                           (dwKeyMaterial * 8), dwProvSessionKeySize,
+                                           NULL);
             goto done;
         }
     } else {
@@ -484,33 +442,24 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
     /* Get private key's algorithm */
     dwSize = sizeof(ALG_ID);
     if(!CryptGetKeyParam(hPrivateKey, KP_ALGID, (LPBYTE)&dwPrivKeyAlg, &dwSize, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetKeyParam(KP_ALGID)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "algId=%d", dwAlgId);
+        xmlSecMSCryptoError2("CryptGetKeyParam(KP_ALGID)", NULL,
+                             "algId=%ld",
+                             (long int)dwAlgId);
         goto done;
     }
 
     /* Get private key's length in bits */
     dwSize = sizeof(DWORD);
     if(!CryptGetKeyParam(hPrivateKey, KP_KEYLEN, (LPBYTE)&dwPublicKeySize, &dwSize, 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGetKeyParam(KP_KEYLEN)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "algId=%d", dwAlgId);
+        xmlSecMSCryptoError2("CryptGetKeyParam(KP_KEYLEN)", NULL,
+                             "algId=%ld",
+                             (long int)dwAlgId);
         goto done;
     }
 
     /* 3 is for the first reserved byte after the key material and the 2 reserved bytes at the end. */
     if(dwPublicKeySize / 8 < dwKeyMaterial + 3) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "dwKeyMaterial=%ld;dwPublicKeySize=%ld",
-                    dwKeyMaterial, dwPublicKeySize);
+        xmlSecInvalidSizeLessThanError("Key value", dwPublicKeySize / 8, dwKeyMaterial + 3, NULL);
         goto done;
     }
     rndBlobSize = dwPublicKeySize / 8 - (dwKeyMaterial + 3);
@@ -530,11 +479,7 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
     /* allocate simple blob buffer */
     keyBlob = (LPBYTE)xmlMalloc(sizeof(BYTE) * keyBlobLen);
     if(keyBlob == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(sizeof(BYTE) * keyBlobLen, NULL);
         goto done;
     }
     memset(keyBlob, 0, keyBlobLen);
@@ -562,11 +507,9 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
 
     /* Generate random data for the rest of the buffer */
     if((rndBlobSize > 0) && !CryptGenRandom(hProv, rndBlobSize, pbPtr)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptGenRandom",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "rndBlobSize=%ld", rndBlobSize);
+        xmlSecMSCryptoError2("CryptGenRandom", NULL,
+                             "rndBlobSize=%ld",
+                             (long int)rndBlobSize);
         goto done;
     }
     /* aleksey: why are we doing this? */
@@ -578,11 +521,9 @@ xmlSecMSCryptoImportPlainSessionBlob(HCRYPTPROV hProv, HCRYPTKEY hPrivateKey,
     keyBlob[keyBlobLen - 2] = 2;
 
     if(!CryptImportKey(hProv, keyBlob , keyBlobLen, hPrivateKey, CRYPT_EXPORTABLE, hSessionKey)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CryptImportKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "algId=%d", dwAlgId);
+        xmlSecMSCryptoError2("CryptImportKey", NULL,
+                             "algId=%ld",
+                             (long int)dwAlgId);
         goto done;
     }
 
diff --git a/src/mscrypto/x509.c b/src/mscrypto/x509.c
index f35a8b9..7aec5c6 100644
--- a/src/mscrypto/x509.c
+++ b/src/mscrypto/x509.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -360,11 +360,8 @@ xmlSecMSCryptoKeyDataX509AdoptCert(xmlSecKeyDataPtr data, PCCERT_CONTEXT cert) {
     xmlSecAssert2(ctx->hMemStore != 0, -1);
 
     if (!CertAddCertificateContextToStore(ctx->hMemStore, cert, CERT_STORE_ADD_ALWAYS, NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "CertAddCertificateContextToStore",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddCertificateContextToStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
     CertFreeCertificateContext(cert);
@@ -395,7 +392,11 @@ xmlSecMSCryptoKeyDataX509GetCert(xmlSecKeyDataPtr data, xmlSecSize pos) {
     xmlSecAssert2(ctx->hMemStore != 0, NULL);
     xmlSecAssert2(ctx->numCerts > pos, NULL);
 
-    while ((pCert = CertEnumCertificatesInStore(ctx->hMemStore, pCert)) && (pos > 0)) {
+    while (pos > 0) {
+       pCert = CertEnumCertificatesInStore(ctx->hMemStore, pCert);
+       if(pCert == NULL) {
+            break;
+       }
         pos--;
     }
 
@@ -443,11 +444,8 @@ xmlSecMSCryptoKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, PCCRL_CONTEXT crl) {
     xmlSecAssert2(ctx->hMemStore != 0, -1);
 
     if (!CertAddCRLContextToStore(ctx->hMemStore, crl, CERT_STORE_ADD_ALWAYS, NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "CertAddCRLContextToStore",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddCRLContextToStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
     ctx->numCrls++;
@@ -476,7 +474,11 @@ xmlSecMSCryptoKeyDataX509GetCrl(xmlSecKeyDataPtr data, xmlSecSize pos) {
     xmlSecAssert2(ctx->hMemStore != 0, NULL);
     xmlSecAssert2(ctx->numCrls > pos, NULL);
 
-    while ((pCRL = CertEnumCRLsInStore(ctx->hMemStore, pCRL)) && (pos > 0)) {
+    while(pos > 0) {
+        pCRL = CertEnumCRLsInStore(ctx->hMemStore, pCRL);
+       if(pCRL == NULL) {
+            break;
+        }
         pos--;
     }
 
@@ -520,11 +522,8 @@ xmlSecMSCryptoKeyDataX509Initialize(xmlSecKeyDataPtr data) {
                                    CERT_STORE_CREATE_NEW_FLAG,
                                    NULL);
     if (ctx->hMemStore == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "CertOpenStore",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertOpenStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -549,31 +548,23 @@ xmlSecMSCryptoKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
         */
         certSrc = xmlSecMSCryptoKeyDataX509GetCert(src, pos);
         if(certSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecMSCryptoKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(src),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         certDst = CertDuplicateCertificateContext(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(dst));
             CertFreeCertificateContext(certDst);
             return(-1);
         }
@@ -584,31 +575,23 @@ xmlSecMSCryptoKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     for(pos = 0; pos < size; ++pos) {
         crlSrc = xmlSecMSCryptoKeyDataX509GetCrl(src, pos);
         if(crlSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecMSCryptoKeyDataX509GetCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCrl",
+                                 xmlSecKeyDataGetName(src),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         crlDst = CertDuplicateCRLContext(crlSrc);
         if(crlDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "CertDuplicateCRLContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CertDuplicateCRLContext",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecMSCryptoKeyDataX509AdoptCrl(dst, crlDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataX509AdoptCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCrl",
+                                xmlSecKeyDataGetName(dst));
             CertFreeCRLContext(crlDst);
             return(-1);
         }
@@ -619,20 +602,14 @@ xmlSecMSCryptoKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(certSrc != NULL) {
         certDst = CertDuplicateCertificateContext(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "CertDuplicateCertificateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
         ret = xmlSecMSCryptoKeyDataX509AdoptKeyCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecMSCryptoKeyDataX509AdoptKeyCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptKeyCert",
+                                xmlSecKeyDataGetName(dst));
             CertFreeCertificateContext(certDst);
             return(-1);
         }
@@ -656,11 +633,7 @@ xmlSecMSCryptoKeyDataX509Finalize(xmlSecKeyDataPtr data) {
 
     if (ctx->hMemStore != 0) {
         if (!CertCloseStore(ctx->hMemStore, CERT_CLOSE_STORE_FORCE_FLAG)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertCloseStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("CertCloseStore", NULL);
             return;
         }
     }
@@ -681,34 +654,23 @@ xmlSecMSCryptoKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyEnsureData(key, id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecMSCryptoX509DataNodeRead(data, node, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoX509DataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509DataNodeRead",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
-    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
-        ret = xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecMSCryptoKeyDataX509VerifyAndExtractKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
+    ret = xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
+        return(-1);
     }
     return(0);
 }
@@ -730,11 +692,9 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     content = xmlSecX509DataGetNodeContent (node, keyInfoCtx);
     if (content < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecX509DataGetNodeContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "content=%d", content);
+        xmlSecInternalError2("xmlSecX509DataGetNodeContent",
+                             xmlSecKeyDataKlassGetName(id),
+                             "content=%d", content);
         return(-1);
     } else if(content == 0) {
         /* by default we are writing certificates and crls */
@@ -753,22 +713,18 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecMSCryptoKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecMSCryptoKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCert",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         if((content & XMLSEC_X509DATA_CERTIFICATE_NODE) != 0) {
             ret = xmlSecMSCryptoX509CertificateNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoX509CertificateNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoX509CertificateNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -776,11 +732,9 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SUBJECTNAME_NODE) != 0) {
             ret = xmlSecMSCryptoX509SubjectNameNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoX509SubjectNameNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoX509SubjectNameNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -788,11 +742,9 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_ISSUERSERIAL_NODE) != 0) {
             ret = xmlSecMSCryptoX509IssuerSerialNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoX509IssuerSerialNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoX509IssuerSerialNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -800,11 +752,9 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SKI_NODE) != 0) {
             ret = xmlSecMSCryptoX509SKINodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoX509SKINodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoX509SKINodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -816,21 +766,17 @@ xmlSecMSCryptoKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         for(pos = 0; pos < size; ++pos) {
             crl = xmlSecMSCryptoKeyDataX509GetCrl(data, pos);
             if(crl == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoKeyDataX509GetCrl",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCrl",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
 
             ret = xmlSecMSCryptoX509CRLNodeWrite(crl, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecMSCryptoX509CRLNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecMSCryptoX509CRLNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -874,11 +820,9 @@ xmlSecMSCryptoKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecMSCryptoKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecMSCryptoKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "==== Certificate:\n");
@@ -908,11 +852,9 @@ xmlSecMSCryptoKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecMSCryptoKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecMSCryptoKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecMSCryptoKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "<Certificate>\n");
@@ -940,29 +882,42 @@ xmlSecMSCryptoX509DataNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKey
         ret = 0;
         if(xmlSecCheckNodeName(cur, xmlSecNodeX509Certificate, xmlSecDSigNs)) {
             ret = xmlSecMSCryptoX509CertificateNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecMSCryptoX509CertificateNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SubjectName, xmlSecDSigNs)) {
             ret = xmlSecMSCryptoX509SubjectNameNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecMSCryptoX509SubjectNameNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerSerial, xmlSecDSigNs)) {
             ret = xmlSecMSCryptoX509IssuerSerialNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecMSCryptoX509IssuerSerialNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SKI, xmlSecDSigNs)) {
             ret = xmlSecMSCryptoX509SKINodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecMSCryptoX509SKINodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509CRL, xmlSecDSigNs)) {
             ret = xmlSecMSCryptoX509CRLNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecMSCryptoX509CRLNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* laxi schema validation: ignore unknown nodes */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                "read node failed");
+            xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
@@ -985,11 +940,7 @@ xmlSecMSCryptoX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -997,22 +948,16 @@ xmlSecMSCryptoX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     cert = xmlSecMSCryptoX509CertBase64DerRead(content);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoX509CertBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509CertBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CertFreeCertificateContext(cert);
         xmlFree(content);
         return(-1);
@@ -1035,22 +980,13 @@ xmlSecMSCryptoX509CertificateNodeWrite(PCCERT_CONTEXT cert, xmlNodePtr node,
     /* set base64 lines size from context */
     buf = xmlSecMSCryptoX509CertBase64DerWrite(cert, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509CertBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509CertBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509Certificate)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1077,11 +1013,8 @@ xmlSecMSCryptoX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecMSCryptoX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1091,11 +1024,7 @@ xmlSecMSCryptoX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
             xmlFree(subject);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1104,12 +1033,8 @@ xmlSecMSCryptoX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
     cert = xmlSecMSCryptoX509StoreFindCert(x509Store, subject, NULL, NULL, NULL, keyInfoCtx);
     if(cert == NULL){
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subject));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "subject=%s", xmlSecErrorsSafeString(subject));
             xmlFree(subject);
             return(-1);
         }
@@ -1119,11 +1044,8 @@ xmlSecMSCryptoX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     ret = xmlSecMSCryptoKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CertFreeCertificateContext(cert);
         xmlFree(subject);
         return(-1);
@@ -1137,32 +1059,32 @@ static int
 xmlSecMSCryptoX509SubjectNameNodeWrite(PCCERT_CONTEXT cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar* buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Subject));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Subject))",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Subject))", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SubjectName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SubjectName)", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
+
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    /* done */
     xmlFree(buf);
     return(0);
 }
@@ -1183,23 +1105,16 @@ xmlSecMSCryptoX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, x
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecMSCryptoX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     cur = xmlSecGetNextElementNode(node->children);
     if(cur == NULL) {
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecNodeNotFoundError("xmlSecGetNextElementNode", node, NULL,
+                                    xmlSecKeyDataGetName(data));
             return(-1);
         }
         return(0);
@@ -1207,56 +1122,32 @@ xmlSecMSCryptoX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, x
 
     /* the first is required node X509IssuerName */
     if(!xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509IssuerName, xmlSecKeyDataGetName(data));
         return(-1);
     }
     issuerName = xmlNodeGetContent(cur);
     if(issuerName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is required node X509SerialNumber */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509SerialNumber, xmlSecKeyDataGetName(data));
         xmlFree(issuerName);
         return(-1);
     }
     issuerSerial = xmlNodeGetContent(cur);
     if(issuerSerial == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         xmlFree(issuerName);
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1265,13 +1156,10 @@ xmlSecMSCryptoX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, x
     cert = xmlSecMSCryptoX509StoreFindCert(x509Store, NULL, issuerName, issuerSerial, NULL, keyInfoCtx);
     if(cert == NULL){
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "issuerName=%s;issuerSerial=%s",
-                        xmlSecErrorsSafeString(issuerName),
-                        xmlSecErrorsSafeString(issuerSerial));
+            xmlSecOtherError3(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "issuerName=%s;issuerSerial=%s",
+                              xmlSecErrorsSafeString(issuerName),
+                              xmlSecErrorsSafeString(issuerSerial));
             xmlFree(issuerSerial);
             xmlFree(issuerName);
             return(-1);
@@ -1284,11 +1172,8 @@ xmlSecMSCryptoX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, x
 
     ret = xmlSecMSCryptoKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CertFreeCertificateContext(cert);
         xmlFree(issuerSerial);
         xmlFree(issuerName);
@@ -1316,57 +1201,41 @@ xmlSecMSCryptoX509IssuerSerialNodeWrite(PCCERT_CONTEXT cert,
     /* create xml nodes */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerSerial)", NULL);
         return(-1);
     }
 
     issuerNameNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs);
     if(issuerNameNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerName)", NULL);
         return(-1);
     }
 
     issuerNumberNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
     if(issuerNumberNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SerialNumber)", NULL);
         return(-1);
     }
 
     /* write data */
     buf = xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Issuer));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Issuer))",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509NameWrite(&(cert->pCertInfo->Issuer))", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNameNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
+
     xmlFree(buf);
 
     ret = xmlSecMSCryptoASN1IntegerWrite(issuerNumberNode, &(cert->pCertInfo->SerialNumber));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoASN1IntegerWrite(&(cert->serialNumber))",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoASN1IntegerWrite(&(cert->serialNumber))", NULL);
         return(-1);
     }
     return(0);
@@ -1386,11 +1255,8 @@ xmlSecMSCryptoX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecMSCryptoX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1400,12 +1266,7 @@ xmlSecMSCryptoX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
             xmlFree(ski);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1416,12 +1277,8 @@ xmlSecMSCryptoX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
         xmlFree(ski);
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "ski=%s", xmlSecErrorsSafeString(ski));
             return(-1);
         }
         return(0);
@@ -1429,11 +1286,8 @@ xmlSecMSCryptoX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
 
     ret = xmlSecMSCryptoKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CertFreeCertificateContext(cert);
         xmlFree(ski);
         return(-1);
@@ -1447,34 +1301,33 @@ static int
 xmlSecMSCryptoX509SKINodeWrite(PCCERT_CONTEXT cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar *buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecMSCryptoX509SKIWrite(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509SKIWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509SKIWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SKI)", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
-    xmlFree(buf);
 
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1493,11 +1346,7 @@ xmlSecMSCryptoX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1505,21 +1354,15 @@ xmlSecMSCryptoX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
 
     crl = xmlSecMSCryptoX509CrlBase64DerRead(content, keyInfoCtx);
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoX509CrlBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509CrlBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     if (0 != xmlSecMSCryptoKeyDataX509AdoptCrl(data, crl)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCrl",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCrl",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         CertFreeCRLContext(crl);
         return(-1);
@@ -1541,22 +1384,13 @@ xmlSecMSCryptoX509CRLNodeWrite(PCCRL_CONTEXT crl, xmlNodePtr node, xmlSecKeyInfo
     /* set base64 lines size from context */
     buf = xmlSecMSCryptoX509CrlBase64DerWrite(crl, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509CrlBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509CrlBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509CRL)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1588,11 +1422,8 @@ xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecMSCryptoX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1606,34 +1437,24 @@ xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
 
             ctx->keyCert = CertDuplicateCertificateContext(cert);
             if(ctx->keyCert == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "CertDuplicateCertificateContext",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
             }
 
                 /* search key according to KeyReq */
                 pCert = CertDuplicateCertificateContext( ctx->keyCert ) ;
                 if( pCert == NULL ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "CertDuplicateCertificateContext",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
-
-                        return(-1);
+                    xmlSecMSCryptoError("CertDuplicateCertificateContext",
+                                        xmlSecKeyDataGetName(data));
+                    return(-1);
                 }
 
                 if( ( keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePrivate ) == xmlSecKeyDataTypePrivate ) {
                         keyValue = xmlSecMSCryptoCertAdopt( pCert, xmlSecKeyDataTypePrivate ) ;
                         if(keyValue == NULL) {
-                                xmlSecError(XMLSEC_ERRORS_HERE,
-                                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                                "xmlSecMSCryptoCertAdopt",
-                                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                                XMLSEC_ERRORS_NO_MESSAGE);
+                                xmlSecInternalError("xmlSecMSCryptoCertAdopt",
+                                                    xmlSecKeyDataGetName(data));
                                 CertFreeCertificateContext( pCert ) ;
                                 return(-1);
                         }
@@ -1641,11 +1462,8 @@ xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
                 } else if( ( keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePublic ) == xmlSecKeyDataTypePublic ) {
                         keyValue = xmlSecMSCryptoCertAdopt( pCert, xmlSecKeyDataTypePublic ) ;
                         if(keyValue == NULL) {
-                                xmlSecError(XMLSEC_ERRORS_HERE,
-                                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                                "xmlSecMSCryptoCertAdopt",
-                                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                                XMLSEC_ERRORS_NO_MESSAGE);
+                                xmlSecInternalError("xmlSecMSCryptoCertAdopt",
+                                                    xmlSecKeyDataGetName(data));
                                 CertFreeCertificateContext( pCert ) ;
                                 return(-1);
                         }
@@ -1654,51 +1472,36 @@ xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
 
             /* verify that the key matches our expectations */
             if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), keyValue) != 1) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecKeyReqMatchKeyValue",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                                        xmlSecKeyDataGetName(data));
                     xmlSecKeyDataDestroy(keyValue);
                     return(-1);
             }
 
             ret = xmlSecKeySetValue(key, keyValue);
             if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecKeySetValue",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecKeySetValue",
+                                        xmlSecKeyDataGetName(data));
                     xmlSecKeyDataDestroy(keyValue);
                     return(-1);
             }
 
             ret = xmlSecMSCryptoX509CertGetTime(ctx->keyCert->pCertInfo->NotBefore, &(key->notValidBefore));
             if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecMSCryptoX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidBefore");
+                    xmlSecInternalError("xmlSecMSCryptoX509CertGetTime(notValidBefore)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
             }
 
             ret = xmlSecMSCryptoX509CertGetTime(ctx->keyCert->pCertInfo->NotAfter, &(key->notValidAfter));
             if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecMSCryptoX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidAfter");
+                    xmlSecInternalError("xmlSecMSCryptoX509CertGetTime(notValidAfter)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_FOUND,
+            				 xmlSecKeyDataGetName(data), NULL);
             return(-1);
         }
     }
@@ -1735,11 +1538,7 @@ xmlSecMSCryptoX509CertBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1756,11 +1555,7 @@ xmlSecMSCryptoX509CertDerRead(const xmlSecByte* buf, xmlSecSize size) {
 
     cert = CertCreateCertificateContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, buf, size);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertCreateCertificateContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertCreateCertificateContext", NULL);
         return(NULL);
     }
 
@@ -1778,21 +1573,13 @@ xmlSecMSCryptoX509CertBase64DerWrite(PCCERT_CONTEXT cert, int base64LineWrap) {
     p = cert->pbCertEncoded;
     size = cert->cbCertEncoded;
     if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cert->pbCertEncoded",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("cert->pbCertEncoded", NULL);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         return(NULL);
     }
 
@@ -1809,11 +1596,7 @@ xmlSecMSCryptoX509CrlBase64DerRead(xmlChar* buf,
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1833,11 +1616,7 @@ xmlSecMSCryptoX509CrlDerRead(xmlSecByte* buf, xmlSecSize size,
     crl = CertCreateCRLContext(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, buf, size);
 
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertCreateCRLContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertCreateCRLContext", NULL);
         return(NULL);
     }
 
@@ -1855,21 +1634,13 @@ xmlSecMSCryptoX509CrlBase64DerWrite(PCCRL_CONTEXT crl, int base64LineWrap) {
     p = crl->pbCrlEncoded;
     size = crl->cbCrlEncoded;
     if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "crl->pbCrlEncoded",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("crl->pbCrlEncoded", NULL);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         return(NULL);
     }
 
@@ -1888,42 +1659,26 @@ xmlSecMSCryptoX509NameWrite(PCERT_NAME_BLOB nm) {
 
     csz = CertNameToStr(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, nm, CERT_X500_NAME_STR | CERT_NAME_STR_REVERSE_FLAG, NULL, 0);
     if(csz <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertNameToStr",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertNameToStr", NULL);
         return(NULL);
     }
 
     resT = (LPTSTR)xmlMalloc(sizeof(TCHAR) * (csz + 1));
     if (NULL == resT) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", sizeof(WCHAR) * (csz + 1));
+        xmlSecMallocError(sizeof(TCHAR) * (csz + 1), NULL);
         return (NULL);
     }
 
     csz = CertNameToStr(X509_ASN_ENCODING | PKCS_7_ASN_ENCODING, nm, CERT_X500_NAME_STR | CERT_NAME_STR_REVERSE_FLAG, resT, csz + 1);
     if (csz <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CertNameToStr",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertNameToStr", NULL);
         xmlFree(resT);
         return(NULL);
     }
 
     res = xmlSecMSCryptoConvertTstrToUtf8(resT);
     if (NULL == res) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoConvertTstrToUtf8",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoConvertTstrToUtf8", NULL);
         xmlFree(resT);
         return(NULL);
     }
@@ -1944,21 +1699,14 @@ xmlSecMSCryptoASN1IntegerWrite(xmlNodePtr node, PCRYPT_INTEGER_BLOB num) {
 
     ret = xmlSecBnInitialize(&bn, num->cbData + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%ld", num->cbData + 1);
+        xmlSecInternalError2("xmlSecBnInitialize", NULL,
+                             "size=%ld", num->cbData + 1);
         return(-1);
     }
 
     ret = xmlSecBnSetData(&bn, num->pbData, num->cbData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBnSetData", NULL);
         xmlSecBnFinalize(&bn);
         return(-1);
     }
@@ -1969,11 +1717,7 @@ xmlSecMSCryptoASN1IntegerWrite(xmlNodePtr node, PCRYPT_INTEGER_BLOB num) {
      */
     ret = xmlSecBnSetNodeValue(&bn, node, xmlSecBnDec, 1, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBnSetNodeValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBnSetNodeValue", NULL);
         xmlSecBnFinalize(&bn);
         return(-1);
     }
@@ -1994,41 +1738,25 @@ xmlSecMSCryptoX509SKIWrite(PCCERT_CONTEXT cert) {
     /* First check if the SKI extension actually exists, otherwise we get a SHA1 hash o fthe key/cert */
     pCertExt = CertFindExtension(szOID_SUBJECT_KEY_IDENTIFIER, cert->pCertInfo->cExtension, cert->pCertInfo->rgExtension);
     if (pCertExt == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                    "CertFindExtension",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-                return (NULL);
-            }
+        xmlSecMSCryptoError("CertFindExtension", NULL);
+        return (NULL);
+    }
 
     if (!CertGetCertificateContextProperty(cert, CERT_KEY_IDENTIFIER_PROP_ID, NULL, &dwSize) || dwSize < 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                    "CertGetCertificateContextProperty",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-                return (NULL);
-            }
+        xmlSecMSCryptoError("CertGetCertificateContextProperty", NULL);
+        return (NULL);
+    }
     bSKI = xmlMalloc(dwSize);
     if (NULL == bSKI) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(dwSize, NULL);
         return (NULL);
     }
 
     if (!CertGetCertificateContextProperty(cert, CERT_KEY_IDENTIFIER_PROP_ID, bSKI, &dwSize)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CertGetCertificateContextProperty",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
-                xmlFree(bSKI);
-                return (NULL);
-            }
+        xmlSecMSCryptoError("CertGetCertificateContextProperty", NULL);
+        xmlFree(bSKI);
+        return (NULL);
+    }
 
     if (NULL == bSKI) {
         return(NULL);
@@ -2036,11 +1764,7 @@ xmlSecMSCryptoX509SKIWrite(PCCERT_CONTEXT cert) {
 
     res = xmlSecBase64Encode(bSKI, dwSize, 0);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         xmlFree(bSKI);
         return(NULL);
     }
@@ -2065,11 +1789,7 @@ xmlSecMSCryptoX509CertDebugDump(PCCERT_CONTEXT cert, FILE* output) {
     /* subject */
     subject = xmlSecMSCryptoX509GetNameString(cert, CERT_NAME_RDN_TYPE, 0, NULL);
     if(subject == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecMSCryptoX509GetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "subject");
+        xmlSecInternalError("xmlSecMSCryptoX509GetNameString(subject)", NULL);
         goto done;
     }
     fprintf(output, "==== Subject Name: %s\n", subject);
@@ -2077,11 +1797,7 @@ xmlSecMSCryptoX509CertDebugDump(PCCERT_CONTEXT cert, FILE* output) {
     /* issuer */
     issuer = xmlSecMSCryptoX509GetNameString(cert, CERT_NAME_RDN_TYPE, CERT_NAME_ISSUER_FLAG, NULL);
     if(issuer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecMSCryptoX509GetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "issuer");
+        xmlSecInternalError("xmlSecMSCryptoX509GetNameString(issuer)", NULL);
         goto done;
     }
     fprintf(output, "==== Issuer Name: %s\n", issuer);
@@ -2116,11 +1832,7 @@ xmlSecMSCryptoX509CertDebugXmlDump(PCCERT_CONTEXT cert, FILE* output) {
     /* subject */
     subject = xmlSecMSCryptoX509GetNameString(cert, CERT_NAME_RDN_TYPE, 0, NULL);
     if(subject == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecMSCryptoX509GetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "subject");
+        xmlSecInternalError("xmlSecMSCryptoX509GetNameString(subject)", NULL);
         goto done;
     }
     fprintf(output, "<SubjectName>");
@@ -2130,11 +1842,7 @@ xmlSecMSCryptoX509CertDebugXmlDump(PCCERT_CONTEXT cert, FILE* output) {
     /* issuer */
     issuer = xmlSecMSCryptoX509GetNameString(cert, CERT_NAME_RDN_TYPE, CERT_NAME_ISSUER_FLAG, NULL);
     if(issuer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecMSCryptoX509GetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "issuer");
+        xmlSecInternalError("xmlSecMSCryptoX509GetNameString(issuer)", NULL);
         goto done;
     }
     fprintf(output, "<IssuerName>");
@@ -2237,43 +1945,30 @@ xmlSecMSCryptoKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     cert = xmlSecMSCryptoX509CertDerRead(buf, bufSize);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoX509CertDerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509CertDerRead", NULL);
         return(-1);
     }
 
     data = xmlSecKeyEnsureData(key, xmlSecMSCryptoKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         CertFreeCertificateContext(cert);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509AdoptCert",
+                            xmlSecKeyDataKlassGetName(id));
         CertFreeCertificateContext(cert);
         return(-1);
     }
 
     ret = xmlSecMSCryptoKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecMSCryptoKeyDataX509VerifyAndExtractKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     return(0);
diff --git a/src/mscrypto/x509vfy.c b/src/mscrypto/x509vfy.c
index 899cb6e..e4a84a6 100644
--- a/src/mscrypto/x509vfy.c
+++ b/src/mscrypto/x509vfy.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -182,11 +182,8 @@ xmlSecMSCryptoCheckRevocation(HCERTSTORE hStore, PCCERT_CONTEXT pCert) {
 
     while((pCrl = CertEnumCRLsInStore(hStore, pCrl)) != NULL) {
         if (CertFindCertificateInCRL(pCert, pCrl, 0, NULL, &pCrlEntry) && (pCrlEntry != NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "CertFindCertificateInCRL",
-                XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
-                "cert found in crl list");
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED, NULL,
+                             "CertFindCertificateInCRL: cert found in crl list");
             return(FALSE);
         }
     }
@@ -206,47 +203,38 @@ xmlSecMSCryptoX509StoreCertError(xmlSecKeyDataStorePtr store, PCCERT_CONTEXT cer
     /* get certs subject */
     subject = xmlSecMSCryptoX509GetNameString(cert, CERT_NAME_RDN_TYPE, 0, NULL);
     if(subject == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            "xmlSecMSCryptoX509GetNameString",
-            NULL,
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoX509GetNameString", NULL);
         return;
     }
 
     /* print error */
     if (flags & CERT_STORE_SIGNATURE_FLAG) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                xmlSecErrorsSafeString(subject),
-                XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
-                "signature");
+        xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
+                          xmlSecKeyDataStoreGetName(store),
+                          "signature failed, subject=%s",
+                          xmlSecErrorsSafeString(subject));
     } else if (flags & CERT_STORE_TIME_VALIDITY_FLAG) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                xmlSecErrorsSafeString(subject),
-                XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
+                          xmlSecKeyDataStoreGetName(store),
+                          "subject=%s",
+                          xmlSecErrorsSafeString(subject));
     } else if (flags & CERT_STORE_REVOCATION_FLAG) {
         if (flags & CERT_STORE_NO_CRL_FLAG) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                xmlSecErrorsSafeString(subject),
-                XMLSEC_ERRORS_R_CERT_REVOKED,
-                "no crl");
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_REVOKED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "no crl, subject=%s",
+                              xmlSecErrorsSafeString(subject));
         } else {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                xmlSecErrorsSafeString(subject),
-                XMLSEC_ERRORS_R_CERT_REVOKED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_REVOKED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=%s",
+                              xmlSecErrorsSafeString(subject));
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                xmlSecErrorsSafeString(subject),
-                XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
+                          xmlSecKeyDataStoreGetName(store),
+                          "subject=%s",
+                          xmlSecErrorsSafeString(subject));
     }
 
     xmlFree(subject);
@@ -267,90 +255,66 @@ static BOOL
 xmlSecBuildChainUsingWinapi (PCCERT_CONTEXT cert, LPFILETIME pfTime,
                 HCERTSTORE store_untrusted, HCERTSTORE store_doc)
 {
-        PCCERT_CHAIN_CONTEXT     pChainContext = NULL;
-        CERT_CHAIN_PARA          chainPara;
-        BOOL rc = FALSE;
-        HCERTSTORE store_add = NULL;
+    PCCERT_CHAIN_CONTEXT     pChainContext = NULL;
+    CERT_CHAIN_PARA          chainPara;
+    BOOL rc = FALSE;
+    HCERTSTORE store_add = NULL;
 
     /* Initialize data structures. */
-
-        memset(&chainPara, 0, sizeof(CERT_CHAIN_PARA));
-        chainPara.cbSize = sizeof(CERT_CHAIN_PARA);
-
-        /* Create additional store for CertGetCertificateChain() */
-        store_add = CertOpenStore(CERT_STORE_PROV_COLLECTION, 0, 0, 0, NULL);
-        if (!store_add) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                                        "chain additional collection store",
-                                        "CertOpenStore",
-                                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                        XMLSEC_ERRORS_NO_MESSAGE);
-                goto end;
-        }
-        if (!CertAddStoreToCollection(store_add, store_doc, 0, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                                        "adding document store",
-                                        "CertAddStoreToCollection",
-                                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                        XMLSEC_ERRORS_NO_MESSAGE);
-                goto end;
-        }
-        if (!CertAddStoreToCollection(store_add, store_untrusted, 0, 0)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                                        "adding untrusted store",
-                                        "CertAddStoreToCollection",
-                                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                        XMLSEC_ERRORS_NO_MESSAGE);
-                goto end;
-        }
+    memset(&chainPara, 0, sizeof(CERT_CHAIN_PARA));
+    chainPara.cbSize = sizeof(CERT_CHAIN_PARA);
+
+    /* Create additional store for CertGetCertificateChain() */
+    store_add = CertOpenStore(CERT_STORE_PROV_COLLECTION, 0, 0, 0, NULL);
+    if (!store_add) {
+        xmlSecMSCryptoError("CertOpenStore", NULL);
+        goto end;
+    }
+    if (!CertAddStoreToCollection(store_add, store_doc, 0, 0)) {
+        xmlSecMSCryptoError("CertAddStoreToCollection", NULL);
+        goto end;
+    }
+    if (!CertAddStoreToCollection(store_add, store_untrusted, 0, 0)) {
+        xmlSecMSCryptoError("CertAddStoreToCollection", NULL);
+        goto end;
+    }
 
     /* Build a chain using CertGetCertificateChain
      and the certificate retrieved. */
-    if(!CertGetCertificateChain(
-                NULL,                  /* use the default chain engine */
+    if(!CertGetCertificateChain(NULL,  /* use the default chain engine */
                                 cert,
-                pfTime,
+                                pfTime,
                                 store_add,
                                 &chainPara,
                                 CERT_CHAIN_REVOCATION_CHECK_CHAIN,
-                NULL,
-                &pChainContext))
-    {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "building certificate chain, checking root",
-                    "CertGetCertificateChain",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-                goto end;
+                                NULL,
+                                &pChainContext)) {
+        xmlSecMSCryptoError("CertGetCertificateChain", NULL);
+        goto end;
+    }
+    if (pChainContext->TrustStatus.dwErrorStatus == CERT_TRUST_REVOCATION_STATUS_UNKNOWN) {
+        CertFreeCertificateChain(pChainContext); pChainContext = NULL;
+        if(!CertGetCertificateChain(NULL,   /* use the default chain engine */
+                                    cert,
+                                    pfTime,
+                                    store_add,
+                                    &chainPara,
+                                    CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT,
+                                    NULL,
+                                    &pChainContext)) {
+            xmlSecMSCryptoError("CertGetCertificateChain", NULL);
+            goto end;
         }
-        if (pChainContext->TrustStatus.dwErrorStatus == CERT_TRUST_REVOCATION_STATUS_UNKNOWN) {
-                CertFreeCertificateChain(pChainContext); pChainContext = NULL;
-                if(!CertGetCertificateChain(
-                           NULL,                  /* use the default chain engine */
-                           cert,
-                           pfTime,
-                           store_add,
-                           &chainPara,
-                           CERT_CHAIN_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT,
-            NULL,
-                           &pChainContext))
-                {
-                        xmlSecError(XMLSEC_ERRORS_HERE,
-                                                "building certificate chain, excluding root",
-                                                "CertGetCertificateChain",
-                                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
-                        goto end;
-                }
     }
 
-        if (pChainContext->TrustStatus.dwErrorStatus == CERT_TRUST_NO_ERROR)
-                rc = TRUE;
+    if (pChainContext->TrustStatus.dwErrorStatus == CERT_TRUST_NO_ERROR) {
+        rc = TRUE;
+    }
 
 end:
-        if (pChainContext) CertFreeCertificateChain(pChainContext);
-        if (store_add) CertCloseStore(store_add, 0);
-        return (rc);
+    if (pChainContext) CertFreeCertificateChain(pChainContext);
+    if (store_add) CertCloseStore(store_add, 0);
+    return (rc);
 }
 
 /**
@@ -560,8 +524,11 @@ xmlSecMSCryptoX509StoreVerify(xmlSecKeyDataStorePtr store, HCERTSTORE certs,
             CertFreeCertificateContext(nextCert);
         }
 
-        if((selected == 1) && xmlSecMSCryptoX509StoreConstructCertsChain(store, cert, certs, keyInfoCtx)) {
-            return(cert);
+        if(selected == 1) {
+	    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) != 0
+               || xmlSecMSCryptoX509StoreConstructCertsChain(store, cert, certs, keyInfoCtx)) {
+                return(cert);
+            }
         }
     }
 
@@ -596,11 +563,9 @@ xmlSecMSCryptoX509StoreAdoptCert(xmlSecKeyDataStorePtr store, PCCERT_CONTEXT pCe
     } else if(type == xmlSecKeyDataTypeNone) {
         certStore = ctx->untrusted;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                NULL,
-                XMLSEC_ERRORS_R_INVALID_TYPE,
-                "type=%d", type);
+        xmlSecInvalidIntegerTypeError("type", type,
+                "xmlSecKeyDataTypeTrusted, xmlSecKeyDataTypeNone",
+                xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -610,11 +575,8 @@ xmlSecMSCryptoX509StoreAdoptCert(xmlSecKeyDataStorePtr store, PCCERT_CONTEXT pCe
     */
     xmlSecAssert2(certStore != NULL, -1);
     if (!CertAddCertificateContextToStore(certStore, pCert, CERT_STORE_ADD_ALWAYS, NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertAddCertificateContextToStore",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddCertificateContextToStore",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -643,11 +605,8 @@ xmlSecMSCryptoX509StoreAdoptKeyStore (xmlSecKeyDataStorePtr store, HCERTSTORE ke
     xmlSecAssert2(ctx->trusted != NULL, -1);
 
     if(!CertAddStoreToCollection ( ctx->trusted , keyStore , CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG , 2)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-            "CertAddStoreToCollection",
-            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddStoreToCollection",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -675,11 +634,8 @@ xmlSecMSCryptoX509StoreAdoptTrustedStore (xmlSecKeyDataStorePtr store, HCERTSTOR
     xmlSecAssert2(ctx->trusted != NULL, -1);
 
     if( !CertAddStoreToCollection ( ctx->trusted , trustedStore , CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG , 3 ) ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-            "CertAddStoreToCollection",
-            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddStoreToCollection",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -707,11 +663,8 @@ xmlSecMSCryptoX509StoreAdoptUntrustedStore (xmlSecKeyDataStorePtr store, HCERTST
     xmlSecAssert2(ctx->untrusted != NULL, -1);
 
     if( !CertAddStoreToCollection ( ctx->untrusted , untrustedStore , CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG , 2 ) ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-            "CertAddStoreToCollection",
-            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddStoreToCollection",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -759,11 +712,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
                    0,
                    NULL);
     if(ctx->trusted == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertOpenStore",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertOpenStore",
+                            xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
@@ -774,11 +724,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
                    CERT_STORE_CREATE_NEW_FLAG,
                    NULL);
     if(hTrustedMemStore == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertOpenStore",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertOpenStore",
+                            xmlSecKeyDataStoreGetName(store));
         CertCloseStore(ctx->trusted, CERT_CLOSE_STORE_FORCE_FLAG);
         ctx->trusted = NULL ;
         return(-1);
@@ -786,11 +733,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
 
     /* add the memory trusted certs store to trusted certs store collection */
     if( !CertAddStoreToCollection( ctx->trusted, hTrustedMemStore, CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG, 1 ) ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertAddStoreToCollection",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddStoreToCollection",
+                            xmlSecKeyDataStoreGetName(store));
         CertCloseStore(ctx->trusted, CERT_CLOSE_STORE_FORCE_FLAG);
         CertCloseStore(hTrustedMemStore, CERT_CLOSE_STORE_CHECK_FLAG);
         ctx->trusted = NULL ;
@@ -805,11 +749,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
                    0,
                    NULL);
     if(ctx->untrusted == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertOpenStore",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertOpenStore",
+                            xmlSecKeyDataStoreGetName(store));
         CertCloseStore(ctx->trusted, CERT_CLOSE_STORE_FORCE_FLAG);
         ctx->trusted = NULL ;
         return(-1);
@@ -822,11 +763,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
                    CERT_STORE_CREATE_NEW_FLAG,
                    NULL);
     if(hUntrustedMemStore == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertOpenStore",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertOpenStore",
+                            xmlSecKeyDataStoreGetName(store));
         CertCloseStore(ctx->trusted, CERT_CLOSE_STORE_FORCE_FLAG);
         CertCloseStore(ctx->untrusted, CERT_CLOSE_STORE_FORCE_FLAG);
         ctx->trusted = NULL ;
@@ -836,11 +774,8 @@ xmlSecMSCryptoX509StoreInitialize(xmlSecKeyDataStorePtr store) {
 
     /* add the memory trusted certs store to untrusted certs store collection */
     if( !CertAddStoreToCollection( ctx->untrusted, hUntrustedMemStore, CERT_PHYSICAL_STORE_ADD_ENABLE_FLAG, 1 ) ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                "CertAddStoreToCollection",
-                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertAddStoreToCollection",
+                            xmlSecKeyDataStoreGetName(store));
         CertCloseStore(ctx->untrusted, CERT_CLOSE_STORE_FORCE_FLAG);
         CertCloseStore(ctx->trusted, CERT_CLOSE_STORE_FORCE_FLAG);
         CertCloseStore(hUntrustedMemStore, CERT_CLOSE_STORE_CHECK_FLAG);
@@ -899,28 +834,19 @@ xmlSecMSCryptoCertStrToName(DWORD dwCertEncodingType, LPTSTR pszX500, DWORD dwSt
     if (!CertStrToName(dwCertEncodingType, pszX500, dwStrType,
                         NULL, NULL, len, &ppszError)) {
         /* this might not be an error, string might just not exist */
-        DWORD dw = GetLastError();
         return(NULL);
     }
 
     str = (BYTE *)xmlMalloc(sizeof(TCHAR) * ((*len) + 1));
     if(str == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "len=%ld", (*len));
+        xmlSecMallocError(sizeof(TCHAR) * ((*len) + 1), NULL);
         return(NULL);
     }
     memset(str, 0, (*len) + 1);
 
     if (!CertStrToName(dwCertEncodingType, pszX500, dwStrType,
                         NULL, str, len, NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CertStrToName",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertStrToName", NULL);
         xmlFree(str);
         return(NULL);
     }
@@ -1163,12 +1089,7 @@ xmlSecMSCryptoX509GetCertName(const xmlChar * name) {
      */
     name2 = xmlStrdup(name);
     if(name2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "xmlStrlen(name)=%d",
-                    xmlStrlen(name));
+        xmlSecStrdupError(name, NULL);
         return(NULL);
     }
     while( (p = (xmlChar*)xmlStrstr(name2, BAD_CAST "emailAddress=")) != NULL) {
@@ -1178,11 +1099,7 @@ xmlSecMSCryptoX509GetCertName(const xmlChar * name) {
     /* get name */
     res = xmlSecMSCryptoConvertUtf8ToTstr(name2);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecMSCryptoConvertUtf8ToTstr",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoConvertUtf8ToTstr", NULL);
         xmlFree(name2);
         return(NULL);
     }
@@ -1209,11 +1126,7 @@ xmlSecMSCryptoX509FindCert(HCERTSTORE store,
         /* get unicode subject name */
         wcSubjectName = xmlSecMSCryptoX509GetCertName(subjectName);
         if(wcSubjectName == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoX509GetCertName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "wcSubjectName");
+            xmlSecInternalError("xmlSecMSCryptoX509GetCertName(subjectName)", NULL);
             return(NULL);
         }
 
@@ -1234,21 +1147,13 @@ xmlSecMSCryptoX509FindCert(HCERTSTORE store,
         /* get serial number */
         ret = xmlSecBnInitialize(&issuerSerialBn, 0);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecBnInitialize",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnInitialize", NULL);
             return(NULL);
         }
 
         ret = xmlSecBnFromDecString(&issuerSerialBn, issuerSerial);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecBnInitialize",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnInitialize", NULL);
             xmlSecBnFinalize(&issuerSerialBn);
             return(NULL);
         }
@@ -1259,11 +1164,7 @@ xmlSecMSCryptoX509FindCert(HCERTSTORE store,
         */
         ret = xmlSecBnReverse(&issuerSerialBn);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecBnReverse",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBnReverse", NULL);
             xmlSecBnFinalize(&issuerSerialBn);
             return(NULL);
         }
@@ -1271,11 +1172,7 @@ xmlSecMSCryptoX509FindCert(HCERTSTORE store,
         /* get issuer name */
         wcIssuerName = xmlSecMSCryptoX509GetCertName(issuerName);
         if(wcIssuerName == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecMSCryptoX509GetCertName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "wcIssuerName");
+            xmlSecInternalError("xmlSecMSCryptoX509GetCertName(issuerName)", NULL);
             xmlSecBnFinalize(&issuerSerialBn);
             return(NULL);
         }
@@ -1299,23 +1196,14 @@ xmlSecMSCryptoX509FindCert(HCERTSTORE store,
 
         binSki = xmlStrdup(ski);
         if(binSki == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlStrdup",
-                XMLSEC_ERRORS_R_MALLOC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecStrdupError(ski, NULL);
             return (NULL);
         }
 
         /* trick: base64 decode "in place" */
         binSkiLen = xmlSecBase64Decode(binSki, (xmlSecByte*)binSki, xmlStrlen(binSki));
         if(binSkiLen < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64Decode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecInternalError("xmlSecBase64Decode", NULL);
             xmlFree(binSki);
             return(NULL);
         }
@@ -1357,44 +1245,28 @@ xmlSecMSCryptoX509GetNameString(PCCERT_CONTEXT pCertContext, DWORD dwType, DWORD
     /* get size first */
     dwSize = CertGetNameString(pCertContext, dwType, dwFlags, pvTypePara, NULL, 0);
     if(dwSize <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "CertGetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertGetNameString", NULL);
         return (NULL);
     }
 
     /* allocate buffer */
     name = (LPTSTR)xmlMalloc(sizeof(TCHAR) * (dwSize + 1));
     if(name == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(sizeof(TCHAR) * (dwSize + 1), NULL);
         return (NULL);
     }
 
     /* actually get the name */
     dwSize = CertGetNameString(pCertContext, dwType, dwFlags, pvTypePara, name, dwSize);
     if(dwSize <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "CertGetNameString",
-                    NULL,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMSCryptoError("CertGetNameString", NULL);
         xmlFree(name);
         return (NULL);
     }
 
     res = xmlSecMSCryptoConvertTstrToUtf8(name);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    "xmlSecMSCryptoConvertTstrToUtf8",
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecMSCryptoConvertTstrToUtf8", NULL);
         xmlFree(name);
         return (NULL);
     }
diff --git a/src/mscrypto/xmlsec-mingw.h b/src/mscrypto/xmlsec-mingw.h
index da7d1d0..e535034 100644
--- a/src/mscrypto/xmlsec-mingw.h
+++ b/src/mscrypto/xmlsec-mingw.h
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
diff --git a/src/nodeset.c b/src/nodeset.c
index 800f150..5b7b4ad 100644
--- a/src/nodeset.c
+++ b/src/nodeset.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Enchanced nodes set
@@ -52,12 +52,7 @@ xmlSecNodeSetCreate(xmlDocPtr doc, xmlNodeSetPtr nodes, xmlSecNodeSetType type)
 
     nset = (xmlSecNodeSetPtr)xmlMalloc(sizeof(xmlSecNodeSet));
     if(nset == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecNodeSet)=%d",
-                    (int)sizeof(xmlSecNodeSet));
+        xmlSecMallocError(sizeof(xmlSecNodeSet), NULL);
         return(NULL);
     }
     memset(nset, 0,  sizeof(xmlSecNodeSet));
@@ -193,11 +188,8 @@ xmlSecNodeSetOneContains(xmlSecNodeSetPtr nset, xmlNodePtr node, xmlNodePtr pare
         }
         return(1);
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "type=%d", nset->type);
+        xmlSecInvalidIntegerTypeError("node set type", nset->type,
+                "supported nodeset type", NULL);
     }
 
     return(0);
@@ -246,11 +238,8 @@ xmlSecNodeSetContains(xmlSecNodeSetPtr nset, xmlNodePtr node, xmlNodePtr parent)
             }
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_OPERATION,
-                        "operation=%d", cur->op);
+            xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_OPERATION, NULL,
+                              "node set operation=%d", (int)cur->op);
             return(-1);
         }
         cur = cur->next;
@@ -310,22 +299,14 @@ xmlSecNodeSetAddList(xmlSecNodeSetPtr nset, xmlSecNodeSetPtr newNSet, xmlSecNode
 
     tmp1 = xmlSecNodeSetCreate(newNSet->doc, NULL, xmlSecNodeSetList);
     if(tmp1 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNodeSetCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNodeSetCreate", NULL);
         return(NULL);
     }
     tmp1->children = newNSet;
 
     tmp2 = xmlSecNodeSetAdd(nset, tmp1, op);
     if(tmp2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNodeSetAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNodeSetAdd", NULL);
         xmlSecNodeSetDestroy(tmp1);
         return(NULL);
     }
@@ -477,11 +458,7 @@ xmlSecNodeSetGetChildren(xmlDocPtr doc, const xmlNodePtr parent, int withComment
 
     nodes = xmlXPathNodeSetCreate(parent);
     if(nodes == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlXPathNodeSetCreate",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlXPathNodeSetCreate", NULL);
         return(NULL);
     }
 
@@ -512,13 +489,19 @@ static int
 xmlSecNodeSetDumpTextNodesWalkCallback(xmlSecNodeSetPtr nset, xmlNodePtr cur,
                                    xmlNodePtr parent ATTRIBUTE_UNUSED,
                                    void* data) {
+    int ret;
     xmlSecAssert2(nset != NULL, -1);
     xmlSecAssert2(cur != NULL, -1);
     xmlSecAssert2(data != NULL, -1);
 
-    if(cur->type == XML_TEXT_NODE) {
-        xmlOutputBufferWriteString((xmlOutputBufferPtr)data,
-                                    (char*)(cur->content));
+    if(cur->type != XML_TEXT_NODE) {
+        return(0);
+    }
+    ret = xmlOutputBufferWriteString((xmlOutputBufferPtr)data,
+            (char*)(cur->content));
+    if(ret < 0) {
+        xmlSecXmlError("xmlOutputBufferWriteString", NULL);
+        return(-1);
     }
     return(0);
 }
@@ -583,11 +566,8 @@ xmlSecNodeSetDebugDump(xmlSecNodeSetPtr nset, FILE *output) {
         return;
     default:
         fprintf(output, "(unknown=%d)\n", nset->type);
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "type=%d", nset->type);
+        xmlSecInvalidIntegerTypeError("node set type", nset->type,
+                "supported nodeset type", NULL);
     }
 
     l = xmlXPathNodeSetGetLength(nset->nodes);
diff --git a/src/nss/Makefile.am b/src/nss/Makefile.am
index 8cd8586..e666f33 100644
--- a/src/nss/Makefile.am
+++ b/src/nss/Makefile.am
@@ -37,10 +37,6 @@ libxmlsec1_nss_la_SOURCES =\
 	globals.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_nss_la_SOURCES += ../strings.c
-endif
-
 libxmlsec1_nss_la_LIBADD = \
 	$(NSS_LIBS) \
 	$(LIBXSLT_LIBS) \
diff --git a/src/nss/Makefile.in b/src/nss/Makefile.in
index 0e9c5b7..51836f3 100644
--- a/src/nss/Makefile.in
+++ b/src/nss/Makefile.in
@@ -88,7 +88,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
- at SHAREDLIB_HACK_TRUE@am__append_1 = ../strings.c
 subdir = src/nss
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -132,13 +131,7 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(libdir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-am__libxmlsec1_nss_la_SOURCES_DIST = app.c bignum.c ciphers.c crypto.c \
-	digests.c hmac.c pkikeys.c signatures.c symkeys.c x509.c \
-	x509vfy.c keysstore.c keytrans.c kw_des.c kw_aes.c globals.h \
-	../strings.c
 am__objects_1 =
-am__dirstamp = $(am__leading_dot)dirstamp
- at SHAREDLIB_HACK_TRUE@am__objects_2 = ../libxmlsec1_nss_la-strings.lo
 am_libxmlsec1_nss_la_OBJECTS = libxmlsec1_nss_la-app.lo \
 	libxmlsec1_nss_la-bignum.lo libxmlsec1_nss_la-ciphers.lo \
 	libxmlsec1_nss_la-crypto.lo libxmlsec1_nss_la-digests.lo \
@@ -147,7 +140,7 @@ am_libxmlsec1_nss_la_OBJECTS = libxmlsec1_nss_la-app.lo \
 	libxmlsec1_nss_la-x509.lo libxmlsec1_nss_la-x509vfy.lo \
 	libxmlsec1_nss_la-keysstore.lo libxmlsec1_nss_la-keytrans.lo \
 	libxmlsec1_nss_la-kw_des.lo libxmlsec1_nss_la-kw_aes.lo \
-	$(am__objects_1) $(am__objects_2)
+	$(am__objects_1)
 libxmlsec1_nss_la_OBJECTS = $(am_libxmlsec1_nss_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -192,7 +185,7 @@ am__v_CCLD_ = $(am__v_CCLD_ at AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libxmlsec1_nss_la_SOURCES)
-DIST_SOURCES = $(am__libxmlsec1_nss_la_SOURCES_DIST)
+DIST_SOURCES = $(libxmlsec1_nss_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -281,6 +274,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -328,6 +322,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -344,6 +339,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -433,6 +429,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -460,10 +457,25 @@ libxmlsec1_nss_la_CPPFLAGS = \
 	$(LIBXML_CFLAGS) \
 	$(NULL)
 
-libxmlsec1_nss_la_SOURCES = app.c bignum.c ciphers.c crypto.c \
-	digests.c hmac.c pkikeys.c signatures.c symkeys.c x509.c \
-	x509vfy.c keysstore.c keytrans.c kw_des.c kw_aes.c globals.h \
-	$(NULL) $(am__append_1)
+libxmlsec1_nss_la_SOURCES = \
+	app.c \
+	bignum.c \
+	ciphers.c \
+	crypto.c \
+	digests.c \
+	hmac.c \
+	pkikeys.c \
+	signatures.c \
+	symkeys.c \
+	x509.c \
+	x509vfy.c \
+	keysstore.c \
+	keytrans.c \
+	kw_des.c \
+	kw_aes.c \
+	globals.h \
+	$(NULL)
+
 libxmlsec1_nss_la_LIBADD = \
 	$(NSS_LIBS) \
 	$(LIBXSLT_LIBS) \
@@ -547,27 +559,16 @@ clean-libLTLIBRARIES:
 	  echo rm -f $${locs}; \
 	  rm -f $${locs}; \
 	}
-../$(am__dirstamp):
-	@$(MKDIR_P) ..
-	@: > ../$(am__dirstamp)
-../$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ../$(DEPDIR)
-	@: > ../$(DEPDIR)/$(am__dirstamp)
-../libxmlsec1_nss_la-strings.lo: ../$(am__dirstamp) \
-	../$(DEPDIR)/$(am__dirstamp)
 
 libxmlsec1-nss.la: $(libxmlsec1_nss_la_OBJECTS) $(libxmlsec1_nss_la_DEPENDENCIES) $(EXTRA_libxmlsec1_nss_la_DEPENDENCIES) 
 	$(AM_V_CCLD)$(libxmlsec1_nss_la_LINK) -rpath $(libdir) $(libxmlsec1_nss_la_OBJECTS) $(libxmlsec1_nss_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
-	-rm -f ../*.$(OBJEXT)
-	-rm -f ../*.lo
 
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ../$(DEPDIR)/libxmlsec1_nss_la-strings.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_nss_la-app.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_nss_la-bignum.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_nss_la-ciphers.Plo at am__quote@
@@ -713,19 +714,11 @@ libxmlsec1_nss_la-kw_aes.lo: kw_aes.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_nss_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libxmlsec1_nss_la-kw_aes.lo `test -f 'kw_aes.c' || echo '$(srcdir)/'`kw_aes.c
 
-../libxmlsec1_nss_la-strings.lo: ../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_nss_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libxmlsec1_nss_la-strings.lo -MD -MP -MF ../$(DEPDIR)/libxmlsec1_nss_la-strings.Tpo -c -o ../libxmlsec1_nss_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../$(DEPDIR)/libxmlsec1_nss_la-strings.Tpo ../$(DEPDIR)/libxmlsec1_nss_la-strings.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../strings.c' object='../libxmlsec1_nss_la-strings.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_nss_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libxmlsec1_nss_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
 clean-libtool:
 	-rm -rf .libs _libs
-	-rm -rf ../.libs ../_libs
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -842,8 +835,6 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-rm -f ../$(DEPDIR)/$(am__dirstamp)
-	-rm -f ../$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -854,7 +845,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -900,7 +891,7 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/src/nss/README b/src/nss/README
index 65a0f45..536552e 100644
--- a/src/nss/README
+++ b/src/nss/README
@@ -1,6 +1,6 @@
 WHAT VERSION OF NSS?
 ------------------------------------------------------------------------
-NSS 3.9 or greater and NSPR 4.4.1 or greater are required.
+NSS 3.11.1 or greater and NSPR 4.4.1 or greater are required.
 
 KEYS MANAGER
 ------------------------------------------------------------------------
diff --git a/src/nss/app.c b/src/nss/app.c
index 0a9046f..b69539e 100644
--- a/src/nss/app.c
+++ b/src/nss/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -73,22 +73,15 @@ xmlSecNssAppInit(const char* config) {
     if(config) {
         rv = NSS_InitReadWrite(config);
         if(rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "NSS_InitReadWrite",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "config=%s",
-                        xmlSecErrorsSafeString(config));
+            xmlSecNssError2("NSS_InitReadWrite", NULL,
+                            "config=%s",
+                            xmlSecErrorsSafeString(config));
             return(-1);
         }
     } else {
         rv = NSS_NoDB_Init(NULL);
         if(rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "NSS_NoDB_Init",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNssError("NSS_NoDB_Init", NULL);
             return(-1);
         }
     }
@@ -131,11 +124,7 @@ xmlSecNssAppShutdown(void) {
     PK11_LogoutAll();
     rv = NSS_Shutdown();
     if(rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "NSS_Shutdown",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("NSS_Shutdown", NULL);
         return(-1);
     }
     return(0);
@@ -149,11 +138,7 @@ xmlSecNssAppCreateSECItem(SECItem *contents, const xmlSecByte* data, xmlSecSize
 
     contents->data = 0;
     if (!SECITEM_AllocItem(NULL, contents, dataSize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SECITEM_AllocItem",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SECITEM_AllocItem", NULL);
         return(-1);
     }
 
@@ -178,33 +163,21 @@ xmlSecNssAppReadSECItem(SECItem *contents, const char *fn) {
 
     file = PR_Open(fn, PR_RDONLY, 00660);
     if (file == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PR_Open",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(fn));
+        xmlSecNssError2("PR_Open", NULL,
+                        "filename=%s", xmlSecErrorsSafeString(fn));
         goto done;
     }
 
     prStatus = PR_GetOpenFileInfo(file, &info);
     if (prStatus != PR_SUCCESS) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PR_GetOpenFileInfo",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(fn));
+        xmlSecNssError2("PR_GetOpenFileInfo", NULL,
+                        "filename=%s", xmlSecErrorsSafeString(fn));
         goto done;
     }
 
     contents->data = 0;
     if (!SECITEM_AllocItem(NULL, contents, info.size)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SECITEM_AllocItem",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SECITEM_AllocItem", NULL);
         goto done;
     }
 
@@ -286,21 +259,13 @@ xmlSecNssAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppReadSECItem(&secItem, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppReadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppReadSECItem", NULL);
         return(NULL);
     }
 
     res = xmlSecNssAppKeyLoadSECItem(&secItem, format, pwd, pwdCallback, pwdCallbackCtx);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeyLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeyLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(NULL);
     }
@@ -335,21 +300,13 @@ xmlSecNssAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize, xmlSecKey
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppCreateSECItem(&secItem, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppCreateSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppCreateSECItem", NULL);
         return(NULL);
     }
 
     res = xmlSecNssAppKeyLoadSECItem(&secItem, format, pwd, pwdCallback, pwdCallbackCtx);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeyLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeyLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(NULL);
     }
@@ -385,22 +342,14 @@ xmlSecNssAppKeyLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format,
     case xmlSecKeyDataFormatPkcs12:
         key = xmlSecNssAppPkcs12LoadSECItem(secItem, pwd, pwdCallback, pwdCallbackCtx);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssAppPkcs12LoadSECItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssAppPkcs12LoadSECItem", NULL);
             return(NULL);
         }
         break;
     case xmlSecKeyDataFormatCertDer:
         key = xmlSecNssAppKeyFromCertLoadSECItem(secItem, format);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssAppKeyFromCertLoadSECItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssAppKeyFromCertLoadSECItem", NULL);
             return(NULL);
         }
         break;
@@ -408,21 +357,14 @@ xmlSecNssAppKeyLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format,
     case xmlSecKeyDataFormatDer:
         key = xmlSecNssAppDerKeyLoadSECItem(secItem);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssAppDerKeyLoadSECItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssAppDerKeyLoadSECItem", NULL);
             return(NULL);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeyLoad",
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
-            return(NULL);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
+        return(NULL);
     }
 
     return(key);
@@ -448,11 +390,7 @@ xmlSecNssAppDerKeyLoadSECItem(SECItem* secItem) {
      */
     slot = xmlSecNssGetInternalKeySlot();
     if (slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssGetInternalKeySlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssGetInternalKeySlot", NULL);
         goto done;
     }
 
@@ -472,31 +410,19 @@ xmlSecNssAppDerKeyLoadSECItem(SECItem* secItem) {
         /* TRY PUBLIC KEY */
         spki = SECKEY_DecodeDERSubjectPublicKeyInfo(secItem);
         if (spki == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SECKEY_DecodeDERSubjectPublicKeyInfo",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNssError("SECKEY_DecodeDERSubjectPublicKeyInfo", NULL);
         }
 
         pubkey = SECKEY_ExtractPublicKey(spki);
         if (pubkey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SECKEY_ExtractPublicKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNssError("SECKEY_ExtractPublicKey", NULL);
             goto done;
         }
     }
 
     data = xmlSecNssPKIAdoptKey(privkey, pubkey);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssPKIAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIAdoptKey", NULL);
         goto done;
     }
     privkey = NULL;
@@ -504,22 +430,14 @@ xmlSecNssAppDerKeyLoadSECItem(SECItem* secItem) {
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     retval = key;
@@ -573,21 +491,13 @@ xmlSecNssAppKeyCertLoad(xmlSecKeyPtr key, const char* filename, xmlSecKeyDataFor
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppReadSECItem(&secItem, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppReadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppReadSECItem", NULL);
         return(-1);
     }
 
     ret = xmlSecNssAppKeyCertLoadSECItem(key, &secItem, format);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeyCertLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeyCertLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(-1);
     }
@@ -620,21 +530,13 @@ xmlSecNssAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xmlSecSi
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppCreateSECItem(&secItem, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppCreateSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppCreateSECItem", NULL);
         return(-1);
     }
 
     ret = xmlSecNssAppKeyCertLoadSECItem(key, &secItem, format);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeyCertLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeyCertLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(-1);
     }
@@ -665,12 +567,7 @@ xmlSecNssAppKeyCertLoadSECItem(xmlSecKeyPtr key, SECItem* secItem, xmlSecKeyData
 
     data = xmlSecKeyEnsureData(key, xmlSecNssKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecNssKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyEnsureData(xmlSecNssKeyDataX509Id)", NULL);
         return(-1);
     }
 
@@ -680,32 +577,22 @@ xmlSecNssAppKeyCertLoadSECItem(xmlSecKeyPtr key, SECItem* secItem, xmlSecKeyData
         cert = __CERT_NewTempCertificate(CERT_GetDefaultCertDB(),
                                          secItem, NULL, PR_FALSE, PR_TRUE);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "__CERT_NewTempCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "format=%d", format);
+            xmlSecNssError2("__CERT_NewTempCertificate", NULL,
+                            "format=%d", (int)format);
             return(-1);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(-1);
     }
 
     xmlSecAssert2(cert != NULL, -1);
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CERT_DestroyCertificate(cert);
         return(-1);
     }
@@ -740,21 +627,13 @@ xmlSecNssAppPkcs12Load(const char *filename, const char *pwd,
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppReadSECItem(&secItem, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppReadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppReadSECItem", NULL);
         return(NULL);
     }
 
     res = xmlSecNssAppPkcs12LoadSECItem(&secItem, pwd, pwdCallback, pwdCallbackCtx);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppPkcs12LoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppPkcs12LoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(NULL);
     }
@@ -790,21 +669,13 @@ xmlSecNssAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize, const
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppCreateSECItem(&secItem, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppCreateSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppCreateSECItem", NULL);
         return(NULL);
     }
 
     res = xmlSecNssAppPkcs12LoadSECItem(&secItem, pwd, pwdCallback, pwdCallbackCtx);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppPkcs12LoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppPkcs12LoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(NULL);
     }
@@ -860,111 +731,69 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
      */
     slot = xmlSecNssGetInternalKeySlot();
     if (slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssGetInternalKeySlot",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssGetInternalKeySlot", NULL);
         goto done;
     }
 
     pwditem.data = (unsigned char *)pwd;
     pwditem.len = strlen(pwd)+1;
     if (!SECITEM_AllocItem(NULL, &uc2_pwditem, 2*pwditem.len)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SECITEM_AllocItem",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SECITEM_AllocItem", NULL);
         goto done;
     }
 
     if (PORT_UCS2_ASCIIConversion(PR_TRUE, pwditem.data, pwditem.len,
                               uc2_pwditem.data, 2*pwditem.len,
                               &(uc2_pwditem.len), 0) == PR_FALSE) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PORT_UCS2_ASCIIConversion",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PORT_UCS2_ASCIIConversion", NULL);
         goto done;
     }
 
     p12ctx = SEC_PKCS12DecoderStart(&uc2_pwditem, slot, NULL,
                                     NULL, NULL, NULL, NULL, NULL);
     if (p12ctx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderStart",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderStart", NULL);
         goto done;
     }
 
     rv = SEC_PKCS12DecoderUpdate(p12ctx, secItem->data, secItem->len);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderUpdate",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderUpdate", NULL);
         goto done;
     }
 
     rv = SEC_PKCS12DecoderVerify(p12ctx);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderVerify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderVerify", NULL);
         goto done;
     }
 
     rv = SEC_PKCS12DecoderValidateBags(p12ctx, xmlSecNssAppNicknameCollisionCallback);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderValidateBags",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderValidateBags", NULL);
         goto done;
     }
 
     rv = SEC_PKCS12DecoderImportBags(p12ctx);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderImportBags",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderImportBags", NULL);
         goto done;
     }
 
     certlist = SEC_PKCS12DecoderGetCerts(p12ctx);
     if (certlist == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SEC_PKCS12DecoderGetCerts",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("SEC_PKCS12DecoderGetCerts", NULL);
         goto done;
     }
 
     x509Data = xmlSecKeyDataCreate(xmlSecNssKeyDataX509Id);
     if(x509Data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecNssKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecTransformKlassGetName(xmlSecNssKeyDataX509Id));
         goto done;
     }
 
-    for (head = CERT_LIST_HEAD(certlist);
-         !CERT_LIST_END(head, certlist);
-         head = CERT_LIST_NEXT(head)) {
+    for (head = CERT_LIST_HEAD(certlist); !CERT_LIST_END(head, certlist); head = CERT_LIST_NEXT(head)) {
         cert = head->cert;
         privkey = PK11_FindKeyByAnyCert(cert, NULL);
 
@@ -978,20 +807,14 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
             } else {
                 pubkey = CERT_ExtractPublicKey(cert);
                 if (pubkey == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "CERT_ExtractPublicKey",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecNssError("CERT_ExtractPublicKey",
+                                   xmlSecKeyDataGetName(x509Data));
                     goto done;
                 }
                 data = xmlSecNssPKIAdoptKey(privkey, pubkey);
                 if(data == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecNssPKIAdoptKey",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecNssPKIAdoptKey",
+                                        xmlSecKeyDataGetName(x509Data));
                     goto done;
                 }
 
@@ -1000,23 +823,15 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
 
                 tmpcert = CERT_DupCertificate(cert);
                 if(tmpcert == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "CERT_DupCertificate",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                "data=%s",
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+                    xmlSecNssError("CERT_DupCertificate",
+                                   xmlSecKeyDataGetName(x509Data));
                     goto done;
                 }
 
                 ret = xmlSecNssKeyDataX509AdoptKeyCert(x509Data, tmpcert);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecNssKeyDataX509AdoptKeyCert",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "data=%s",
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+                    xmlSecInternalError("xmlSecNssKeyDataX509AdoptKeyCert",
+                                        xmlSecKeyDataGetName(x509Data));
                     CERT_DestroyCertificate(tmpcert);
                     goto done;
                 }
@@ -1026,22 +841,14 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
 
         tmpcert = CERT_DupCertificate(cert);
         if(tmpcert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CERT_DupCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecNssError("CERT_DupCertificate",
+                           xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         ret = xmlSecNssKeyDataX509AdoptCert(x509Data, tmpcert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(x509Data));
             CERT_DestroyCertificate(tmpcert);
             goto done;
         }
@@ -1049,32 +856,21 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
     } /* end for loop */
 
     if (data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppPkcs12Load",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "private key not found in PKCS12 file");
+        /* private key not found in PKCS12 file */
+        xmlSecInternalError("xmlSecNssAppPkcs12Load(private key)", NULL);
         goto done;
      }
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -1083,12 +879,8 @@ xmlSecNssAppPkcs12LoadSECItem(SECItem* secItem, const char *pwd,
 
     ret = xmlSecKeyAdoptData(key, x509Data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyAdoptData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeyAdoptData",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -1148,31 +940,21 @@ xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format)
         cert = __CERT_NewTempCertificate(CERT_GetDefaultCertDB(),
                                          secItem, NULL, PR_FALSE, PR_TRUE);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "__CERT_NewTempCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "format=%d", format);
+            xmlSecNssError2("__CERT_NewTempCertificate", NULL,
+                            "format=%d", (int)format);
             return(NULL);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
     /* get key value */
     keyData = xmlSecNssX509CertGetKey(cert);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509CertGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CertGetKey", NULL);
         CERT_DestroyCertificate(cert);
         return(NULL);
     }
@@ -1180,11 +962,7 @@ xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format)
     /* create key */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         xmlSecKeyDataDestroy(keyData);
         CERT_DestroyCertificate(cert);
         return(NULL);
@@ -1193,11 +971,7 @@ xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format)
     /* set key value */
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue", NULL);
         xmlSecKeyDestroy(key);
         xmlSecKeyDataDestroy(keyData);
         CERT_DestroyCertificate(cert);
@@ -1207,11 +981,7 @@ xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format)
     /* create cert data */
     certData = xmlSecKeyEnsureData(key, xmlSecNssKeyDataX509Id);
     if(certData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
         xmlSecKeyDestroy(key);
         CERT_DestroyCertificate(cert);
         return(NULL);
@@ -1220,11 +990,7 @@ xmlSecNssAppKeyFromCertLoadSECItem(SECItem* secItem, xmlSecKeyDataFormat format)
     /* put cert in the cert data */
     ret = xmlSecNssKeyDataX509AdoptCert(certData, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert", NULL);
         xmlSecKeyDestroy(key);
         CERT_DestroyCertificate(cert);
         return(NULL);
@@ -1261,21 +1027,13 @@ xmlSecNssAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppReadSECItem(&secItem, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppReadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppReadSECItem", NULL);
         return(-1);
     }
 
     ret = xmlSecNssAppKeysMngrCertLoadSECItem(mngr, &secItem, format, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeysMngrCertLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeysMngrCertLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(-1);
     }
@@ -1311,21 +1069,13 @@ xmlSecNssAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte* dat
     memset(&secItem, 0, sizeof(secItem));
     ret = xmlSecNssAppCreateSECItem(&secItem, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppCreateSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppCreateSECItem", NULL);
         return(-1);
     }
 
     ret = xmlSecNssAppKeysMngrCertLoadSECItem(mngr, &secItem, format, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAppKeysMngrCertLoadSECItem",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAppKeysMngrCertLoadSECItem", NULL);
         SECITEM_FreeItem(&secItem, PR_FALSE);
         return(-1);
     }
@@ -1360,11 +1110,7 @@ xmlSecNssAppKeysMngrCertLoadSECItem(xmlSecKeysMngrPtr mngr, SECItem* secItem,
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecNssX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecNssX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecNssX509StoreId)", NULL);
         return(-1);
     }
 
@@ -1373,30 +1119,20 @@ xmlSecNssAppKeysMngrCertLoadSECItem(xmlSecKeysMngrPtr mngr, SECItem* secItem,
         cert = __CERT_NewTempCertificate(CERT_GetDefaultCertDB(),
                                          secItem, NULL, PR_FALSE, PR_TRUE);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "__CERT_NewTempCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "format=%d", format);
+            xmlSecNssError2("__CERT_NewTempCertificate", NULL,
+                            "format=%d", (int)format);
             return(-1);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(-1);
     }
 
     ret = xmlSecNssX509StoreAdoptCert(x509Store, cert, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509StoreAdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509StoreAdoptCert", NULL);
         CERT_DestroyCertificate(cert);
         return(-1);
     }
@@ -1427,21 +1163,13 @@ xmlSecNssAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecNssKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecNssKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecNssX509StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -1449,11 +1177,7 @@ xmlSecNssAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecNssKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeysMngrInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -1481,21 +1205,13 @@ xmlSecNssAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecNssKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -1522,21 +1238,14 @@ xmlSecNssAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecNssKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecNssKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -1563,21 +1272,14 @@ xmlSecNssAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filename, xm
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecNssKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKeysStoreSave",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename%s", xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecNssKeysStoreSave", NULL,
+                             "filename%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
diff --git a/src/nss/bignum.c b/src/nss/bignum.c
index 261155e..d1898a6 100644
--- a/src/nss/bignum.c
+++ b/src/nss/bignum.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Reading/writing bignum values
  *
@@ -53,21 +53,13 @@ xmlSecNssNodeGetBigNumValue(PRArenaPool *arena, const xmlNodePtr cur,
 
     ret = xmlSecBufferInitialize(&buf, 128);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferBase64NodeContentRead(&buf, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentRead", NULL);
         xmlSecBufferFinalize(&buf);
         return(NULL);
     }
@@ -115,11 +107,7 @@ xmlSecNssNodeSetBigNumValue(xmlNodePtr cur, const SECItem *a, int addLineBreaks)
 
     ret = xmlSecBufferInitialize(&buf, a->len + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", a->len + 1);
+        xmlSecInternalError2("xmlSecBufferInitialize", NULL, "size=%d", a->len + 1);
         return(-1);
     }
 
@@ -127,11 +115,7 @@ xmlSecNssNodeSetBigNumValue(xmlNodePtr cur, const SECItem *a, int addLineBreaks)
 
     ret = xmlSecBufferSetSize(&buf, a->len);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", a->len);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL, "size=%d", a->len);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -144,11 +128,7 @@ xmlSecNssNodeSetBigNumValue(xmlNodePtr cur, const SECItem *a, int addLineBreaks)
 
     ret = xmlSecBufferBase64NodeContentWrite(&buf, cur, xmlSecBase64GetDefaultLineSize());
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentWrite", NULL);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
diff --git a/src/nss/ciphers.c b/src/nss/ciphers.c
index cf67936..e9412f7 100644
--- a/src/nss/ciphers.c
+++ b/src/nss/ciphers.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -65,10 +65,10 @@ static int      xmlSecNssBlockCipherCtxFinal            (xmlSecNssBlockCipherCtx
                                                          xmlSecTransformCtxPtr transformCtx);
 static int
 xmlSecNssBlockCipherCtxInit(xmlSecNssBlockCipherCtxPtr ctx,
-                                xmlSecBufferPtr in, xmlSecBufferPtr out,
-                                int encrypt,
-                                const xmlChar* cipherName,
-                                xmlSecTransformCtxPtr transformCtx) {
+                            xmlSecBufferPtr in, xmlSecBufferPtr out,
+                            int encrypt,
+                            const xmlChar* cipherName,
+                            xmlSecTransformCtxPtr transformCtx) {
     SECItem keyItem;
     SECItem ivItem;
     PK11SlotInfo* slot;
@@ -94,22 +94,16 @@ xmlSecNssBlockCipherCtxInit(xmlSecNssBlockCipherCtxPtr ctx,
         /* generate random iv */
         rv = PK11_GenerateRandom(ctx->iv, ivLen);
         if(rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "PK11_GenerateRandom",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "size=%d", ivLen);
+            xmlSecNssError2("PK11_GenerateRandom", cipherName,
+                            "size=%d", ivLen);
             return(-1);
         }
 
         /* write iv to the output */
         ret = xmlSecBufferAppend(out, ctx->iv, ivLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", ivLen);
+            xmlSecInternalError2("xmlSecBufferAppend", cipherName,
+                                 "size=%d", ivLen);
             return(-1);
         }
 
@@ -127,11 +121,8 @@ xmlSecNssBlockCipherCtxInit(xmlSecNssBlockCipherCtxPtr ctx,
         /* and remove from input */
         ret = xmlSecBufferRemoveHead(in, ivLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", ivLen);
+            xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                                 "size=%d", ivLen);
             return(-1);
         }
     }
@@ -145,22 +136,14 @@ xmlSecNssBlockCipherCtxInit(xmlSecNssBlockCipherCtxPtr ctx,
 
     slot = PK11_GetBestSlot(ctx->cipher, NULL);
     if(slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", cipherName);
         return(-1);
     }
 
     symKey = PK11_ImportSymKey(slot, ctx->cipher, PK11_OriginDerive,
                                CKA_SIGN, &keyItem, NULL);
     if(symKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "PK11_ImportSymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ImportSymKey", cipherName);
         PK11_FreeSlot(slot);
         return(-1);
     }
@@ -169,11 +152,7 @@ xmlSecNssBlockCipherCtxInit(xmlSecNssBlockCipherCtxPtr ctx,
                         (encrypt) ? CKA_ENCRYPT : CKA_DECRYPT,
                         symKey, &ivItem);
     if(ctx->cipherCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "PK11_CreateContextBySymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CreateContextBySymKey", cipherName);
         PK11_FreeSymKey(symKey);
         PK11_FreeSlot(slot);
         return(-1);
@@ -228,11 +207,8 @@ xmlSecNssBlockCipherCtxUpdate(xmlSecNssBlockCipherCtxPtr ctx,
     /* we write out the input size plus may be one block */
     ret = xmlSecBufferSetMaxSize(out, outSize + inSize + blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + inSize + blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName, 
+                             "size=%d", outSize + inSize + blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -240,11 +216,7 @@ xmlSecNssBlockCipherCtxUpdate(xmlSecNssBlockCipherCtxPtr ctx,
     rv = PK11_CipherOp(ctx->cipherCtx, outBuf, &outLen, inSize + blockLen,
                         xmlSecBufferGetData(in), inSize);
     if(rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "PK11_CipherOp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CipherOp", cipherName);
         return(-1);
     }
     xmlSecAssert2((xmlSecSize)outLen == inSize, -1);
@@ -252,22 +224,16 @@ xmlSecNssBlockCipherCtxUpdate(xmlSecNssBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + outLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", outSize + outLen);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                             "size=%d", inSize);
         return(-1);
     }
     return(0);
@@ -307,11 +273,8 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
         /* create padding */
         ret = xmlSecBufferSetMaxSize(in, blockLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", blockLen);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                                 "size=%d", blockLen);
             return(-1);
         }
         inBuf = xmlSecBufferGetData(in);
@@ -320,11 +283,8 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
         if((xmlSecSize)blockLen > (inSize + 1)) {
             rv = PK11_GenerateRandom(inBuf + inSize, blockLen - inSize - 1);
             if(rv != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(cipherName),
-                            "PK11_GenerateRandom",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "size=%d", blockLen - inSize - 1);
+                xmlSecNssError2("PK11_GenerateRandom", cipherName,
+                                "size=%d", ((int)blockLen - inSize - 1));
                 return(-1);
             }
         }
@@ -332,11 +292,7 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
         inSize = blockLen;
     } else {
         if(inSize != (xmlSecSize)blockLen) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "data=%d;block=%d", inSize, blockLen);
+            xmlSecInvalidSizeError("Input data", inSize, blockLen, cipherName);
             return(-1);
         }
     }
@@ -344,11 +300,8 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
     /* process last block */
     ret = xmlSecBufferSetMaxSize(out, outSize + 2 * blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + 2 * blockLen);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize", cipherName,
+                            "size=%d", outSize + 2 * blockLen);
         return(-1);
     }
     outBuf = xmlSecBufferGetData(out) + outSize;
@@ -356,11 +309,7 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
     rv = PK11_CipherOp(ctx->cipherCtx, outBuf, &outLen, 2 * blockLen,
                         xmlSecBufferGetData(in), inSize);
     if(rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "PK11_CipherOp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CipherOp", cipherName);
         return(-1);
     }
     xmlSecAssert2((xmlSecSize)outLen == inSize, -1);
@@ -368,12 +317,8 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
     if(encrypt == 0) {
         /* check padding */
         if(outLen < outBuf[blockLen - 1]) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "padding=%d;buffer=%d",
-                        outBuf[blockLen - 1], outLen);
+            xmlSecInvalidSizeLessThanError("Input data padding",
+                    inSize, outBuf[blockLen - 1], cipherName);
             return(-1);
         }
         outLen -= outBuf[blockLen - 1];
@@ -382,22 +327,16 @@ xmlSecNssBlockCipherCtxFinal(xmlSecNssBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize + outLen);
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                            "size=%d", outSize + outLen);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName,
+                            "size=%d", inSize);
         return(-1);
     }
 
@@ -487,11 +426,7 @@ xmlSecNssBlockCipherInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_AES */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
@@ -563,12 +498,8 @@ xmlSecNssBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) < ctx->keySize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=%d;expected=%d",
-                    xmlSecBufferGetSize(buffer), ctx->keySize);
+        xmlSecInvalidKeyDataSizeError(xmlSecBufferGetSize(buffer), ctx->keySize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -606,20 +537,14 @@ xmlSecNssBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecNssBlockCipherCtxInit",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNssBlockCipherCtxInit",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
         if((ctx->ctxInitialized == 0) && (last != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "not enough data to initialize transform");
+            xmlSecInvalidDataError("not enough data to initialize transform",
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -628,11 +553,8 @@ xmlSecNssBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecNssBlockCipherCtxUpdate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNssBlockCipherCtxUpdate",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -642,11 +564,8 @@ xmlSecNssBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecNssBlockCipherCtxFinal",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNssBlockCipherCtxFinal",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             transform->status = xmlSecTransformStatusFinished;
@@ -658,11 +577,7 @@ xmlSecNssBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
         /* the only way we can get here is if there is no enough data in the input */
         xmlSecAssert2(last == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/nss/crypto.c b/src/nss/crypto.c
index ea79519..a0559c8 100644
--- a/src/nss/crypto.c
+++ b/src/nss/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -124,6 +124,19 @@ xmlSecCryptoGetFunctions_nss(void) {
     gXmlSecNssFunctions->transformDsaSha1GetKlass       = xmlSecNssTransformDsaSha1GetKlass;
 #endif /* XMLSEC_NO_DSA */
 
+    /******************************* ECDSA ******************************/
+#ifndef XMLSEC_NO_ECDSA
+#ifndef XMLSEC_NO_SHA1
+    gXmlSecNssFunctions->transformEcdsaSha1GetKlass = xmlSecNssTransformEcdsaSha1GetKlass;
+#endif /* XMLSEC_NO_SHA1 */
+#ifndef XMLSEC_NO_SHA256
+    gXmlSecNssFunctions->transformEcdsaSha256GetKlass = xmlSecNssTransformEcdsaSha256GetKlass;
+#endif /* XMLSEC_NO_SHA256 */
+#ifndef XMLSEC_NO_SHA512
+    gXmlSecNssFunctions->transformEcdsaSha512GetKlass = xmlSecNssTransformEcdsaSha512GetKlass;
+#endif /* XMLSEC_NO_SHA512 */
+#endif /* XMLSEC_NO_ECDSA */
+
     /******************************* HMAC ********************************/
 #ifndef XMLSEC_NO_HMAC
 
@@ -246,11 +259,7 @@ int
 xmlSecNssInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
@@ -259,11 +268,7 @@ xmlSecNssInit (void)  {
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_nss()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
 
@@ -303,21 +308,13 @@ xmlSecNssKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         x509Store = xmlSecKeyDataStoreCreate(xmlSecNssX509StoreId);
         if(x509Store == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecNssX509StoreId");
+            xmlSecInternalError("xmlSecKeyDataStoreCreate(xmlSecNssX509StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptDataStore(mngr, x509Store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptDataStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptDataStore", NULL);
             xmlSecKeyDataStoreDestroy(x509Store);
             return(-1);
         }
@@ -342,22 +339,14 @@ xmlSecNssGetInternalKeySlot()
 
     slot = PK11_GetInternalKeySlot();
     if (slot == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "PK11_GetInternalKeySlot",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                "error code=%d", PORT_GetError());
+        xmlSecNssError("PK11_GetInternalKeySlot", NULL);
         return NULL;
     }
 
     if (PK11_NeedUserInit(slot)) {
         rv = PK11_InitPin(slot, NULL, NULL);
         if (rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PK11_Authenticate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNssError("PK11_InitPin", NULL);
             return NULL;
         }
     }
@@ -365,11 +354,8 @@ xmlSecNssGetInternalKeySlot()
     if(PK11_IsLoggedIn(slot, NULL) != PR_TRUE) {
         rv = PK11_Authenticate(slot, PR_TRUE, NULL);
         if (rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PK11_Authenticate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNssError2("PK11_Authenticate", NULL,
+                            "token=%s", xmlSecErrorsSafeString(PK11_GetTokenName(slot)));
             return NULL;
         }
     }
@@ -396,22 +382,15 @@ xmlSecNssGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
 
     ret = xmlSecBufferSetSize(buffer, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL, "size=%d", size);
         return(-1);
     }
 
     /* get random data */
     rv = PK11_GenerateRandom((xmlSecByte*)xmlSecBufferGetData(buffer), size);
     if(rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_GenerateRandom",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", size);
+        xmlSecNssError2("PK11_GenerateRandom", NULL,
+                        "size=%lu", (unsigned long)size);
         return(-1);
     }
     return(0);
@@ -427,18 +406,11 @@ xmlSecNssGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
  * @reason:             the error code.
  * @msg:                the additional error message.
  *
- * The default errors reporting callback function.
+ * The errors reporting callback function. Just a pass through to the default callback.
  */
 void
 xmlSecNssErrorsDefaultCallback(const char* file, int line, const char* func,
                                 const char* errorObject, const char* errorSubject,
                                 int reason, const char* msg) {
-    xmlChar buf[500];
-    int err;
-
-    err = PORT_GetError();
-    xmlSecStrPrintf(buf, sizeof(buf), BAD_CAST "%s;last nss error=%d (0x%08X)", msg, err, err);
-    xmlSecErrorsDefaultCallback(file, line, func,
-                errorObject, errorSubject,
-                reason, (char*)buf);
+    xmlSecErrorsDefaultCallback(file, line, func, errorObject, errorSubject, reason, msg);
 }
diff --git a/src/nss/digests.c b/src/nss/digests.c
index 2a81375..e800cbf 100644
--- a/src/nss/digests.c
+++ b/src/nss/digests.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -143,30 +143,18 @@ xmlSecNssDigestInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_SHA512 */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     if(ctx->digest == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "SECOID_FindOIDByTag",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("SECOID_FindOIDByTag", xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ctx->digestCtx = PK11_CreateDigestContext(ctx->digest->offset);
     if(ctx->digestCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "PK11_CreateDigestContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PK11_CreateDigestContext", xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -207,22 +195,16 @@ xmlSecNssDigestVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(ctx->dgstSize > 0, -1);
 
     if(dataSize != ctx->dgstSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest sizes are different (data=%d, dgst=%d)",
-                    dataSize, ctx->dgstSize);
+        xmlSecInvalidIntegerDataError2("dataSize", dataSize,
+                "dgstSize", ctx->dgstSize, "dataSize == dgstSize",
+                xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     if(memcmp(ctx->dgst, data, dataSize) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest do not match");
+        xmlSecInvalidDataError("data and digest do not match",
+                xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -253,11 +235,7 @@ xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
     if(transform->status == xmlSecTransformStatusNone) {
         rv = PK11_DigestBegin(ctx->digestCtx);
         if(rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "PK11_DigestBegin",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("PK11_DigestBegin", xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusWorking;
@@ -270,21 +248,15 @@ xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
         if(inSize > 0) {
             rv = PK11_DigestOp(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
             if (rv != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "PK11_DigestOp",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("PK11_DigestOp", xmlSecTransformGetName(transform));
                 return(-1);
             }
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -293,11 +265,7 @@ xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
 
             rv = PK11_DigestFinal(ctx->digestCtx, ctx->dgst, &dgstSize, sizeof(ctx->dgst));
             if(rv != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "PK11_DigestFinal",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("PK11_DigestFinal", xmlSecTransformGetName(transform));
                 return(-1);
             }
             xmlSecAssert2(dgstSize > 0, -1);
@@ -306,11 +274,9 @@ xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, ctx->dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", ctx->dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", ctx->dgstSize);
                     return(-1);
                 }
             }
@@ -320,11 +286,7 @@ xmlSecNssDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/nss/globals.h b/src/nss/globals.h
index 065c3e8..c3dec2d 100644
--- a/src/nss/globals.h
+++ b/src/nss/globals.h
@@ -21,4 +21,48 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
+
+/**
+ * xmlSecNssError:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting NSS crypro errors.
+ */
+#define xmlSecNssError(errorFunction, errorObject) \
+    {                                                       \
+        PRInt32 error_code = PR_GetError();                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    "NSS error: %ld",                       \
+                    (long int)error_code                    \
+        );                                                  \
+    }
+
+/**
+ * xmlSecNssError2:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting NSS crypro errors.
+ */
+#define xmlSecNssError2(errorFunction, errorObject, msg, param) \
+    {                                                       \
+        PRInt32 error_code = PR_GetError();                 \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    msg "; NSS error: %ld",                 \
+                    (param),                                \
+                    (long int)error_code                    \
+        );                                                  \
+    }
+
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/nss/hmac.c b/src/nss/hmac.c
index 79fbf40..f5158da 100644
--- a/src/nss/hmac.c
+++ b/src/nss/hmac.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -196,11 +196,7 @@ xmlSecNssHmacInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
     return(0);
@@ -272,11 +268,8 @@ xmlSecNssHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTrans
            small value
         */
         if((int)ctx->dgstSize < xmlSecNssHmacGetMinOutputLength()) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                    "HMAC output length is too small");
+            xmlSecInvalidNodeContentError(cur, xmlSecTransformGetName(transform),
+                                          "HMAC output length is too small");
            return(-1);
         }
 
@@ -284,11 +277,7 @@ xmlSecNssHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTrans
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -345,11 +334,7 @@ xmlSecNssHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key is empty");
+        xmlSecInvalidZeroKeyDataSizeError(xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -360,33 +345,21 @@ xmlSecNssHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     slot = PK11_GetBestSlot(ctx->digestType, NULL);
     if(slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", xmlSecTransformGetName(transform));
         return(-1);
     }
 
     symKey = PK11_ImportSymKey(slot, ctx->digestType, PK11_OriginDerive,
                                CKA_SIGN, &keyItem, NULL);
     if(symKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "PK11_ImportSymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PK11_ImportSymKey", xmlSecTransformGetName(transform));
         PK11_FreeSlot(slot);
         return(-1);
     }
 
     ctx->digestCtx = PK11_CreateContextBySymKey(ctx->digestType, CKA_SIGN, symKey, &ignore);
     if(ctx->digestCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "PK11_CreateContextBySymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PK11_CreateContextBySymKey", xmlSecTransformGetName(transform));
         PK11_FreeSymKey(symKey);
         PK11_FreeSlot(slot);
         return(-1);
@@ -421,12 +394,9 @@ xmlSecNssHmacVerify(xmlSecTransformPtr transform,
 
     /* compare the digest size in bytes */
     if(dataSize != ((ctx->dgstSize + 7) / 8)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data=%d;dgst=%d",
-                    dataSize, ((ctx->dgstSize + 7) / 8));
+        xmlSecInvalidSizeError("HMAC digest",
+                               dataSize, ((ctx->dgstSize + 7) / 8),
+                               xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -435,22 +405,18 @@ xmlSecNssHmacVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(dataSize > 0, -1);
     mask = last_byte_masks[ctx->dgstSize % 8];
     if((ctx->dgst[dataSize - 1] & mask) != (data[dataSize - 1]  & mask)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match (last byte)");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match (last byte)");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     /* now check the rest of the digest */
     if((dataSize > 1) && (memcmp(ctx->dgst, data, dataSize - 1) != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -481,11 +447,7 @@ xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxP
     if(transform->status == xmlSecTransformStatusNone) {
         rv = PK11_DigestBegin(ctx->digestCtx);
         if(rv != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "PK11_DigestBegin",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("PK11_DigestBegin", xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusWorking;
@@ -498,21 +460,15 @@ xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxP
         if(inSize > 0) {
             rv = PK11_DigestOp(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
             if (rv != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "PK11_DigestOp",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("PK11_DigestOp", xmlSecTransformGetName(transform));
                 return(-1);
             }
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -521,11 +477,7 @@ xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxP
 
             rv = PK11_DigestFinal(ctx->digestCtx, ctx->dgst, &dgstSize, sizeof(ctx->dgst));
             if(rv != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "PK11_DigestFinal",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("PK11_DigestFinal", xmlSecTransformGetName(transform));
                 return(-1);
             }
             xmlSecAssert2(dgstSize > 0, -1);
@@ -536,23 +488,18 @@ xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxP
             } else if(ctx->dgstSize <= XMLSEC_SIZE_BAD_CAST(8 * dgstSize)) {
                 dgstSize = ((ctx->dgstSize + 7) / 8); /* we need to truncate result digest */
             } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_SIZE,
-                            "result-bits=%d;required-bits=%d",
-                            8 * dgstSize, ctx->dgstSize);
+                xmlSecInvalidSizeLessThanError("HMAC digest (bits)",
+                                        8 * dgstSize, ctx->dgstSize,
+                                        xmlSecTransformGetName(transform));
                 return(-1);
             }
 
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", dgstSize);
                     return(-1);
                 }
             }
@@ -562,11 +509,7 @@ xmlSecNssHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxP
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "size=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/nss/keysstore.c b/src/nss/keysstore.c
index 057fc45..0976e4a 100644
--- a/src/nss/keysstore.c
+++ b/src/nss/keysstore.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Nss keys store that uses Simple Keys Store under the hood. Uses the
  * Nss DB as a backing store for the finding keys, but the NSS DB is
@@ -139,22 +139,14 @@ xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
     doc = xmlParseFile(uri);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlParseFile",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecXmlError2("xmlParseFile", xmlSecKeyStoreGetName(store),
+                        "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
     root = xmlDocGetRootElement(doc);
     if(!xmlSecCheckNodeName(root, BAD_CAST "Keys", xmlSecNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(root)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected-node=<xmlsec:Keys>");
+        xmlSecInvalidNodeError(root, BAD_CAST "Keys", xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -163,23 +155,16 @@ xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     while((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeKeyInfo, xmlSecDSigNs)) {
         key = xmlSecKeyCreate();
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        "expected-node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError("xmlSecKeyCreate",
+                                xmlSecKeyStoreGetName(store));
             xmlFreeDoc(doc);
             return(-1);
         }
 
         ret = xmlSecKeyInfoCtxInitialize(&keyInfoCtx, NULL);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoCtxInitialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoCtxInitialize",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
             return(-1);
@@ -195,11 +180,8 @@ xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
 
         ret = xmlSecKeyInfoNodeRead(cur, key, &keyInfoCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                        "xmlSecKeyInfoNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeRead",
+                                xmlSecKeyStoreGetName(store));
             xmlSecKeyInfoCtxFinalize(&keyInfoCtx);
             xmlSecKeyDestroy(key);
             xmlFreeDoc(doc);
@@ -210,11 +192,8 @@ xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
         if(xmlSecKeyIsValid(key)) {
             ret = xmlSecNssKeysStoreAdoptKey(store, key);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                            "xmlSecNssKeysStoreAdoptKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNssKeysStoreAdoptKey",
+                                    xmlSecKeyStoreGetName(store));
                 xmlSecKeyDestroy(key);
                 xmlFreeDoc(doc);
                 return(-1);
@@ -227,11 +206,7 @@ xmlSecNssKeysStoreLoad(xmlSecKeyStorePtr store, const char *uri,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyStoreGetName(store));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -275,11 +250,8 @@ xmlSecNssKeysStoreInitialize(xmlSecKeyStorePtr store) {
 
     *ss = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
     if(*ss == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyStoreGetName(store)),
-                    "xmlSecKeyStoreCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecSimpleKeysStoreId");
+        xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId)",
+                            xmlSecKeyStoreGetName(store));
         return(-1);
     }
 
@@ -346,11 +318,7 @@ xmlSecNssKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         if (keyReq->keyType & xmlSecKeyDataTypePublic) {
             pubkey = CERT_ExtractPublicKey(cert);
             if (pubkey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "CERT_ExtractPublicKey",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecNssError("CERT_ExtractPublicKey", NULL);
                 goto done;
             }
         }
@@ -358,22 +326,14 @@ xmlSecNssKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
         if (keyReq->keyType & xmlSecKeyDataTypePrivate) {
             privkey = PK11_FindKeyByAnyCert(cert, NULL);
             if (privkey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PK11_FindKeyByAnyCert",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecNssError("PK11_FindKeyByAnyCert", NULL);
                 goto done;
             }
         }
 
         data = xmlSecNssPKIAdoptKey(privkey, pubkey);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssPKIAdoptKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssPKIAdoptKey", NULL);
             goto done;
         }
         privkey = NULL;
@@ -381,78 +341,50 @@ xmlSecNssKeysStoreFindKey(xmlSecKeyStorePtr store, const xmlChar* name,
 
         key = xmlSecKeyCreate();
         if (key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyCreate", NULL);
             return (NULL);
         }
 
         x509Data = xmlSecKeyDataCreate(xmlSecNssKeyDataX509Id);
         if(x509Data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecNssKeyDataX509Id)));
+            xmlSecInternalError("xmlSecKeyDataCreate",
+                                xmlSecTransformKlassGetName(xmlSecNssKeyDataX509Id));
             goto done;
         }
 
         ret = xmlSecNssKeyDataX509AdoptKeyCert(x509Data, cert);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssKeyDataX509AdoptKeyCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptKeyCert",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         cert = CERT_DupCertificate(cert);
         if (cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "CERT_DupCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecNssError("CERT_DupCertificate",
+                           xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         ret = xmlSecNssKeyDataX509AdoptCert(x509Data, cert);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         cert = NULL;
 
         ret = xmlSecKeySetValue(key, data);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeySetValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+            xmlSecInternalError("xmlSecKeySetValue",
+				xmlSecKeyDataGetName(data));
             goto done;
         }
         data = NULL;
 
         ret = xmlSecKeyAdoptData(key, x509Data);
         if (ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyAdoptData",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecKeyAdoptData",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
         x509Data = NULL;
diff --git a/src/nss/keytrans.c b/src/nss/keytrans.c
index d84593b..dd5a442 100644
--- a/src/nss/keytrans.c
+++ b/src/nss/keytrans.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * AES Algorithm support
  *
@@ -39,17 +38,17 @@ typedef struct _xmlSecNssKeyTransportCtx                        xmlSecNssKeyTran
 typedef struct _xmlSecNssKeyTransportCtx*                   xmlSecNssKeyTransportCtxPtr;
 
 #define xmlSecNssKeyTransportSize       \
-        ( sizeof( xmlSecTransform ) + sizeof( xmlSecNssKeyTransportCtx ) )
-#define xmlSecNssKeyTransportGetCtx( transform ) \
-        ( ( xmlSecNssKeyTransportCtxPtr )( ( ( xmlSecByte* )( transform ) ) + sizeof( xmlSecTransform ) ) )
+        (sizeof(xmlSecTransform) + sizeof(xmlSecNssKeyTransportCtx))
+#define xmlSecNssKeyTransportGetCtx(transform) \
+        ((xmlSecNssKeyTransportCtxPtr)(((xmlSecByte*)(transform)) + sizeof(xmlSecTransform)))
 
 struct _xmlSecNssKeyTransportCtx {
-        CK_MECHANISM_TYPE               cipher ;
-        SECKEYPublicKey*                pubkey ;
-        SECKEYPrivateKey*               prikey ;
-        xmlSecKeyDataId                 keyId ;
-        xmlSecBufferPtr                 material ; /* to be encrypted/decrypted material */
-} ;
+        CK_MECHANISM_TYPE               cipher;
+        SECKEYPublicKey*                pubkey;
+        SECKEYPrivateKey*               prikey;
+        xmlSecKeyDataId                 keyId;
+        xmlSecBufferPtr                 material; /* to be encrypted/decrypted material */
+};
 
 static int      xmlSecNssKeyTransportInitialize         (xmlSecTransformPtr transform);
 static void     xmlSecNssKeyTransportFinalize           (xmlSecTransformPtr transform);
@@ -89,12 +88,12 @@ xmlSecNssKeyTransportCheckId(xmlSecTransformPtr transform) {
 
 static int
 xmlSecNssKeyTransportInitialize(xmlSecTransformPtr transform) {
-    xmlSecNssKeyTransportCtxPtr context ;
+    xmlSecNssKeyTransportCtxPtr context;
     xmlSecAssert2(xmlSecNssKeyTransportCheckId(transform), -1);
     xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecNssKeyTransportSize), -1);
 
-    context = xmlSecNssKeyTransportGetCtx( transform ) ;
-    xmlSecAssert2( context != NULL , -1 ) ;
+    context = xmlSecNssKeyTransportGetCtx(transform);
+    xmlSecAssert2(context != NULL, -1);
 
     /* initialize context */
     memset(context, 0, sizeof(xmlSecNssKeyTransportCtx));
@@ -122,11 +121,7 @@ xmlSecNssKeyTransportInitialize(xmlSecTransformPtr transform) {
 
     /* not found */
     {
-        xmlSecError(XMLSEC_ERRORS_HERE ,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL ,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                    XMLSEC_ERRORS_NO_MESSAGE ) ;
+        xmlSecNotImplementedError(xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
         return(-1);
     }
 
@@ -135,43 +130,43 @@ xmlSecNssKeyTransportInitialize(xmlSecTransformPtr transform) {
 
 static void
 xmlSecNssKeyTransportFinalize(xmlSecTransformPtr transform) {
-    xmlSecNssKeyTransportCtxPtr context ;
+    xmlSecNssKeyTransportCtxPtr context;
 
     xmlSecAssert(xmlSecNssKeyTransportCheckId(transform));
     xmlSecAssert(xmlSecTransformCheckSize(transform, xmlSecNssKeyTransportSize));
 
-    context = xmlSecNssKeyTransportGetCtx( transform ) ;
-    xmlSecAssert( context != NULL ) ;
+    context = xmlSecNssKeyTransportGetCtx(transform);
+    xmlSecAssert(context != NULL);
 
-    if( context->pubkey != NULL ) {
-        SECKEY_DestroyPublicKey( context->pubkey ) ;
-        context->pubkey = NULL ;
+    if(context->pubkey != NULL) {
+        SECKEY_DestroyPublicKey(context->pubkey);
+        context->pubkey = NULL;
     }
 
-    if( context->prikey != NULL ) {
-        SECKEY_DestroyPrivateKey( context->prikey ) ;
-        context->prikey = NULL ;
+    if(context->prikey != NULL) {
+        SECKEY_DestroyPrivateKey(context->prikey);
+        context->prikey = NULL;
     }
 
-    if( context->material != NULL ) {
+    if(context->material != NULL) {
         xmlSecBufferDestroy(context->material);
-        context->material = NULL ;
+        context->material = NULL;
     }
 }
 
 static int
 xmlSecNssKeyTransportSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr keyReq) {
-    xmlSecNssKeyTransportCtxPtr context ;
+    xmlSecNssKeyTransportCtxPtr context;
 
     xmlSecAssert2(xmlSecNssKeyTransportCheckId(transform), -1);
     xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecNssKeyTransportSize), -1);
     xmlSecAssert2((transform->operation == xmlSecTransformOperationEncrypt) || (transform->operation == xmlSecTransformOperationDecrypt), -1);
     xmlSecAssert2(keyReq != NULL, -1);
 
-    context = xmlSecNssKeyTransportGetCtx( transform ) ;
-    xmlSecAssert2( context != NULL , -1 ) ;
+    context = xmlSecNssKeyTransportGetCtx(transform);
+    xmlSecAssert2(context != NULL, -1);
 
-    keyReq->keyId        = context->keyId;
+    keyReq->keyId = context->keyId;
     if(transform->operation == xmlSecTransformOperationEncrypt) {
         keyReq->keyUsage = xmlSecKeyUsageEncrypt;
         keyReq->keyType  = xmlSecKeyDataTypePublic;
@@ -185,480 +180,373 @@ xmlSecNssKeyTransportSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr ke
 
 static int
 xmlSecNssKeyTransportSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
-    xmlSecNssKeyTransportCtxPtr context = NULL ;
-    xmlSecKeyDataPtr        keyData = NULL ;
-    SECKEYPublicKey*        pubkey = NULL ;
-    SECKEYPrivateKey*       prikey = NULL ;
+    xmlSecNssKeyTransportCtxPtr context = NULL;
+    xmlSecKeyDataPtr  keyData = NULL;
+    SECKEYPublicKey*  pubkey = NULL;
+    SECKEYPrivateKey* prikey = NULL;
 
     xmlSecAssert2(xmlSecNssKeyTransportCheckId(transform), -1);
     xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecNssKeyTransportSize), -1);
     xmlSecAssert2((transform->operation == xmlSecTransformOperationEncrypt) || (transform->operation == xmlSecTransformOperationDecrypt), -1);
     xmlSecAssert2(key != NULL, -1);
 
-    context = xmlSecNssKeyTransportGetCtx( transform ) ;
-    if( (context == NULL) || (context->keyId == NULL) || (context->pubkey != NULL) ) {
-        xmlSecError( XMLSEC_ERRORS_HERE ,
-                    xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                    "xmlSecNssKeyTransportGetCtx" ,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                    XMLSEC_ERRORS_NO_MESSAGE ) ;
+    context = xmlSecNssKeyTransportGetCtx(transform);
+    if((context == NULL) || (context->keyId == NULL) || (context->pubkey != NULL)) {
+        xmlSecInternalError("xmlSecNssKeyTransportGetCtx", xmlSecTransformGetName(transform));
         return(-1);
     }
-    xmlSecAssert2( xmlSecKeyCheckId( key, context->keyId ), -1 ) ;
-
-    keyData = xmlSecKeyGetValue( key ) ;
-    if( keyData == NULL ) {
-        xmlSecError( XMLSEC_ERRORS_HERE ,
-                    xmlSecErrorsSafeString( xmlSecKeyGetName( key ) ) ,
-                    "xmlSecKeyGetValue" ,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                    XMLSEC_ERRORS_NO_MESSAGE ) ;
+    xmlSecAssert2(xmlSecKeyCheckId(key, context->keyId), -1);
+
+    keyData = xmlSecKeyGetValue(key);
+    if(keyData == NULL) {
+        xmlSecInternalError("xmlSecKeyGetValue", xmlSecTransformGetName(transform));
         return(-1);
     }
 
     if(transform->operation == xmlSecTransformOperationEncrypt) {
-        if( ( pubkey = xmlSecNssPKIKeyDataGetPubKey( keyData ) ) == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                            xmlSecErrorsSafeString( xmlSecKeyDataGetName( keyData ) ) ,
-                            "xmlSecNssPKIKeyDataGetPubKey" ,
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                            XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
+        pubkey = xmlSecNssPKIKeyDataGetPubKey(keyData);
+        if(pubkey == NULL) {
+            xmlSecInternalError("xmlSecNssPKIKeyDataGetPubKey", xmlSecKeyDataGetName(keyData));
+            return(-1);
         }
-
-        context->pubkey = pubkey ;
+        context->pubkey = pubkey;
     } else {
-        if( ( prikey = xmlSecNssPKIKeyDataGetPrivKey( keyData ) ) == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                            xmlSecErrorsSafeString( xmlSecKeyDataGetName( keyData ) ) ,
-                            "xmlSecNssPKIKeyDataGetPrivKey" ,
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                            XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
+        prikey = xmlSecNssPKIKeyDataGetPrivKey(keyData);
+        if(prikey == NULL) {
+            xmlSecInternalError("xmlSecNssPKIKeyDataGetPrivKey", xmlSecKeyDataGetName(keyData));
+            return(-1);
         }
-
-        context->prikey = prikey ;
+        context->prikey = prikey;
     }
 
-    return(0) ;
+    /* done */
+    return(0);
 }
 
 static int
-xmlSecNssKeyTransportCtxInit(
-        xmlSecNssKeyTransportCtxPtr             ctx ,
-        xmlSecBufferPtr                         in ,
-        xmlSecBufferPtr                         out ,
-        int                                             encrypt ,
-        xmlSecTransformCtxPtr           transformCtx
-) {
-        int                     blockSize ;
-
-        xmlSecAssert2( ctx != NULL , -1 ) ;
-        xmlSecAssert2( ctx->cipher != CKM_INVALID_MECHANISM , -1 ) ;
-        xmlSecAssert2( ( ctx->pubkey != NULL && encrypt ) || ( ctx->prikey != NULL && !encrypt ), -1 ) ;
-        xmlSecAssert2( ctx->keyId != NULL , -1 ) ;
-        xmlSecAssert2( in != NULL , -1 ) ;
-        xmlSecAssert2( out != NULL , -1 ) ;
-        xmlSecAssert2( transformCtx != NULL , -1 ) ;
-
-        if( ctx->material != NULL ) {
-                xmlSecBufferDestroy( ctx->material ) ;
-                ctx->material = NULL ;
-        }
+xmlSecNssKeyTransportCtxInit(xmlSecNssKeyTransportCtxPtr ctx, xmlSecBufferPtr in, xmlSecBufferPtr out,
+                             int encrypt, xmlSecTransformCtxPtr transformCtx) {
+    int blockSize;
+
+    xmlSecAssert2(ctx != NULL, -1);
+    xmlSecAssert2(ctx->cipher != CKM_INVALID_MECHANISM, -1);
+    xmlSecAssert2((ctx->pubkey != NULL && encrypt) || (ctx->prikey != NULL && !encrypt), -1);
+    xmlSecAssert2(ctx->keyId != NULL, -1);
+    xmlSecAssert2(in != NULL, -1);
+    xmlSecAssert2(out != NULL, -1);
+    xmlSecAssert2(transformCtx != NULL, -1);
+
+    if(ctx->material != NULL) {
+        xmlSecBufferDestroy(ctx->material);
+        ctx->material = NULL;
+    }
 
-        if( ctx->pubkey != NULL ) {
-                blockSize = SECKEY_PublicKeyStrength( ctx->pubkey ) ;
-        } else if( ctx->prikey != NULL ) {
-                blockSize = PK11_SignatureLen( ctx->prikey ) ;
-        } else {
-                blockSize = -1 ;
+    if(ctx->pubkey != NULL) {
+        blockSize = SECKEY_PublicKeyStrength(ctx->pubkey);
+        if(blockSize <= 0) {
+            xmlSecNssError("SECKEY_PublicKeyStrength", NULL);
+            return(-1);
         }
-
-        if( blockSize < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        NULL ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
+    } else if(ctx->prikey != NULL) {
+        blockSize = PK11_SignatureLen(ctx->prikey);
+        if(blockSize <= 0) {
+            xmlSecNssError("PK11_SignatureLen", NULL);
+            return(-1);
         }
+    } else {
+        xmlSecOtherError(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL,
+                         "neither public or private keys are set");
+        return(-1);
+    }
 
-        ctx->material = xmlSecBufferCreate( blockSize ) ;
-        if( ctx->material == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferCreate" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+    ctx->material = xmlSecBufferCreate(blockSize);
+    if(ctx->material == NULL) {
+        xmlSecInternalError2("xmlSecBufferSetData", NULL,
+                             "size=%lu", (long unsigned)blockSize);
+        return(-1);
+    }
 
-        /* read raw key material into context */
-        if( xmlSecBufferSetData( ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferSetData" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+    /* read raw key material into context */
+    if(xmlSecBufferSetData(ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferSetData", NULL,
+                             "size=%lu", (long unsigned)xmlSecBufferGetSize(in));
+        return(-1);
+    }
 
-        if( xmlSecBufferRemoveHead( in , xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferRemoveHead" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+    if(xmlSecBufferRemoveHead(in, xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferRemoveHead", NULL,
+                             "size=%lu", (long unsigned)xmlSecBufferGetSize(in));
+        return(-1);
+    }
 
-        return(0);
+    return(0);
 }
 
 static int
-xmlSecNssKeyTransportCtxUpdate(
-        xmlSecNssKeyTransportCtxPtr             ctx ,
-        xmlSecBufferPtr                         in ,
-        xmlSecBufferPtr                         out ,
-        int                                             encrypt ,
-        xmlSecTransformCtxPtr           transformCtx
-) {
-        xmlSecAssert2( ctx != NULL , -1 ) ;
-        xmlSecAssert2( ctx->cipher != CKM_INVALID_MECHANISM , -1 ) ;
-        xmlSecAssert2( ( ctx->pubkey != NULL && encrypt ) || ( ctx->prikey != NULL && !encrypt ), -1 ) ;
-        xmlSecAssert2( ctx->keyId != NULL , -1 ) ;
-        xmlSecAssert2( ctx->material != NULL , -1 ) ;
-        xmlSecAssert2( in != NULL , -1 ) ;
-        xmlSecAssert2( out != NULL , -1 ) ;
-        xmlSecAssert2( transformCtx != NULL , -1 ) ;
-
-        /* read raw key material and append into context */
-        if( xmlSecBufferAppend( ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferAppend" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
-
-        if( xmlSecBufferRemoveHead( in , xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferRemoveHead" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
-        }
+xmlSecNssKeyTransportCtxUpdate(xmlSecNssKeyTransportCtxPtr ctx, xmlSecBufferPtr  in, xmlSecBufferPtr out,
+                               int encrypt, xmlSecTransformCtxPtr transformCtx) {
+    xmlSecAssert2(ctx != NULL, -1);
+    xmlSecAssert2(ctx->cipher != CKM_INVALID_MECHANISM, -1);
+    xmlSecAssert2((ctx->pubkey != NULL && encrypt) || (ctx->prikey != NULL && !encrypt), -1);
+    xmlSecAssert2(ctx->keyId != NULL, -1);
+    xmlSecAssert2(ctx->material != NULL, -1);
+    xmlSecAssert2(in != NULL, -1);
+    xmlSecAssert2(out != NULL, -1);
+    xmlSecAssert2(transformCtx != NULL, -1);
+
+    /* read raw key material and append into context */
+    if(xmlSecBufferAppend(ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferAppend", NULL,
+                             "size=%lu", (long unsigned)xmlSecBufferGetSize(in));
+        return(-1);
+    }
 
-        return(0);
+    if(xmlSecBufferRemoveHead(in, xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferRemoveHead", NULL,
+                             "size=%lu", (long unsigned)xmlSecBufferGetSize(in));
+        return(-1);
+    }
+    return(0);
 }
 
 static int
-xmlSecNssKeyTransportCtxFinal(xmlSecNssKeyTransportCtxPtr ctx,  xmlSecBufferPtr in,  xmlSecBufferPtr out,
+xmlSecNssKeyTransportCtxFinal(xmlSecNssKeyTransportCtxPtr ctx, xmlSecBufferPtr in, xmlSecBufferPtr out,
                               int encrypt, xmlSecTransformCtxPtr transformCtx) {
-        PK11SymKey*                     symKey ;
-        PK11SlotInfo*           slot ;
-        SECItem                         oriskv ;
-        int                     blockSize ;
-        xmlSecBufferPtr         result ;
-
-        xmlSecAssert2( ctx != NULL , -1 ) ;
-        xmlSecAssert2( ctx->cipher != CKM_INVALID_MECHANISM , -1 ) ;
-        xmlSecAssert2( ( ctx->pubkey != NULL && encrypt ) || ( ctx->prikey != NULL && !encrypt ), -1 ) ;
-        xmlSecAssert2( ctx->keyId != NULL , -1 ) ;
-        xmlSecAssert2( ctx->material != NULL , -1 ) ;
-        xmlSecAssert2( in != NULL , -1 ) ;
-        xmlSecAssert2( out != NULL , -1 ) ;
-        xmlSecAssert2( transformCtx != NULL , -1 ) ;
-
-        /* read raw key material and append into context */
-        if( xmlSecBufferAppend( ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferAppend" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
+    PK11SymKey*  symKey;
+    PK11SlotInfo* slot;
+    SECItem oriskv;
+    int blockSize;
+    xmlSecBufferPtr result;
+
+    xmlSecAssert2(ctx != NULL, -1);
+    xmlSecAssert2(ctx->cipher != CKM_INVALID_MECHANISM, -1);
+    xmlSecAssert2((ctx->pubkey != NULL && encrypt) || (ctx->prikey != NULL && !encrypt), -1);
+    xmlSecAssert2(ctx->keyId != NULL, -1);
+    xmlSecAssert2(ctx->material != NULL, -1);
+    xmlSecAssert2(in != NULL, -1);
+    xmlSecAssert2(out != NULL, -1);
+    xmlSecAssert2(transformCtx != NULL, -1);
+
+    /* read raw key material and append into context */
+    if(xmlSecBufferAppend(ctx->material, xmlSecBufferGetData(in), xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferAppend", NULL,
+                             "size=%lu", (unsigned long)xmlSecBufferGetSize(in));
+        return(-1);
+    }
+
+    if(xmlSecBufferRemoveHead(in, xmlSecBufferGetSize(in)) < 0) {
+        xmlSecInternalError2("xmlSecBufferRemoveHead", NULL,
+                             "size=%lu", (unsigned long)xmlSecBufferGetSize(in));
+        return(-1);
+    }
+
+    /* Now we get all of the key materail */
+    /* from now on we will wrap or unwrap the key */
+    if(ctx->pubkey != NULL) {
+        blockSize = SECKEY_PublicKeyStrength(ctx->pubkey);
+        if(blockSize <= 0) {
+            xmlSecNssError("SECKEY_PublicKeyStrength", NULL);
+            return(-1);
         }
+    } else if(ctx->prikey != NULL) {
+        blockSize = PK11_SignatureLen(ctx->prikey);
+        if(blockSize <= 0) {
+            xmlSecNssError("PK11_SignatureLen", NULL);
+            return(-1);
+        }
+    } else {
+        xmlSecOtherError(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL,
+                         "neither public or private keys are set");
+        return(-1);
+    }
+
+    result = xmlSecBufferCreate(blockSize * 2);
+    if(result == NULL) {
+        xmlSecInternalError("xmlSecBufferCreate", NULL);
+        return(-1);
+    }
+
+    oriskv.type = siBuffer;
+    oriskv.data = xmlSecBufferGetData(ctx->material);
+    oriskv.len = xmlSecBufferGetSize(ctx->material);
+
+    if(encrypt != 0) {
+        CK_OBJECT_HANDLE id;
+        SECItem wrpskv;
 
-        if( xmlSecBufferRemoveHead( in , xmlSecBufferGetSize(in) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferRemoveHead" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
+        /* Create template symmetric key from material */
+        slot = ctx->pubkey->pkcs11Slot;
+        if(slot == NULL) {
+            slot = PK11_GetBestSlot(ctx->cipher, NULL);
+            if(slot == NULL) {
+                xmlSecNssError("PK11_GetBestSlot", NULL);
+                xmlSecBufferDestroy(result);
                 return(-1);
+            }
+
+            id = PK11_ImportPublicKey(slot, ctx->pubkey, PR_FALSE);
+            if(id == CK_INVALID_HANDLE) {
+                xmlSecNssError("PK11_ImportPublicKey", NULL);
+                xmlSecBufferDestroy(result);
+                PK11_FreeSlot(slot);
+                return(-1);
+            }
         }
 
-        /* Now we get all of the key materail */
-        /* from now on we will wrap or unwrap the key */
-        if( ctx->pubkey != NULL ) {
-                blockSize = SECKEY_PublicKeyStrength( ctx->pubkey ) ;
-        } else if( ctx->prikey != NULL ) {
-                blockSize = PK11_SignatureLen( ctx->prikey ) ;
-        } else {
-                blockSize = -1 ;
+        /* pay attention to mechanism */
+        symKey = PK11_ImportSymKey(slot, ctx->cipher, PK11_OriginUnwrap, CKA_WRAP, &oriskv, NULL);
+        if(symKey == NULL) {
+            xmlSecNssError("PK11_ImportSymKey", NULL);
+            xmlSecBufferDestroy(result);
+            PK11_FreeSlot(slot);
+            return(-1);
         }
 
-        if( blockSize < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "PK11_GetBlockSize" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                return(-1);
+        wrpskv.type = siBuffer;
+        wrpskv.data = xmlSecBufferGetData(result);
+        wrpskv.len = xmlSecBufferGetMaxSize(result);
+
+        if(PK11_PubWrapSymKey(ctx->cipher, ctx->pubkey, symKey, &wrpskv) != SECSuccess) {
+            xmlSecNssError("PK11_PubWrapSymKey", NULL);
+            PK11_FreeSymKey(symKey);
+            xmlSecBufferDestroy(result);
+            PK11_FreeSlot(slot);
+            return(-1);
         }
 
-        result = xmlSecBufferCreate( blockSize * 2 ) ;
-        if( result == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL,
-                        "xmlSecBufferCreate" ,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE) ;
-                return(-1);
+        if(xmlSecBufferSetSize(result, wrpskv.len) < 0) {
+            xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                                 "size=%lu", (unsigned long)wrpskv.len);
+            PK11_FreeSymKey(symKey);
+            xmlSecBufferDestroy(result);
+            PK11_FreeSlot(slot);
+            return(-1);
+        }
+        PK11_FreeSymKey(symKey);
+        PK11_FreeSlot(slot);
+    } else {
+        SECItem*                        keyItem;
+
+        /* pay attention to mechanism */
+        symKey = PK11_PubUnwrapSymKey(ctx->prikey, &oriskv, ctx->cipher, CKA_UNWRAP, 0);
+        if(symKey == NULL) {
+            xmlSecNssError("PK11_PubUnwrapSymKey", NULL);
+            xmlSecBufferDestroy(result);
+            return(-1);
         }
 
-        oriskv.type = siBuffer ;
-        oriskv.data = xmlSecBufferGetData( ctx->material ) ;
-        oriskv.len = xmlSecBufferGetSize( ctx->material ) ;
-
-        if( encrypt != 0 ) {
-                CK_OBJECT_HANDLE        id ;
-                SECItem                         wrpskv ;
-
-                /* Create template symmetric key from material */
-                slot = ctx->pubkey->pkcs11Slot;
-                if( slot == NULL ) {
-                        slot = PK11_GetBestSlot( ctx->cipher, NULL ) ;
-                        if( slot == NULL ) {
-                                xmlSecError( XMLSEC_ERRORS_HERE ,
-                                        NULL ,
-                                        "xmlSecNssSlotGet" ,
-                                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                                xmlSecBufferDestroy(result);
-                                return(-1);
-                        }
-
-                        id = PK11_ImportPublicKey( slot, ctx->pubkey, PR_FALSE ) ;
-                        if( id == CK_INVALID_HANDLE ) {
-                                xmlSecError( XMLSEC_ERRORS_HERE ,
-                                        NULL ,
-                                        "PK11_ImportPublicKey" ,
-                                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                                xmlSecBufferDestroy(result);
-                                PK11_FreeSlot( slot ) ;
-                                return(-1);
-                        }
-                }
-
-                /* pay attention to mechanism */
-                symKey = PK11_ImportSymKey( slot, ctx->cipher, PK11_OriginUnwrap, CKA_WRAP, &oriskv, NULL ) ;
-                if( symKey == NULL ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_ImportSymKey" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        xmlSecBufferDestroy(result);
-                        PK11_FreeSlot( slot ) ;
-                        return(-1);
-                }
-
-                wrpskv.type = siBuffer ;
-                wrpskv.data = xmlSecBufferGetData( result ) ;
-                wrpskv.len = xmlSecBufferGetMaxSize( result ) ;
-
-                if( PK11_PubWrapSymKey( ctx->cipher, ctx->pubkey, symKey, &wrpskv ) != SECSuccess ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_PubWrapSymKey" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        PK11_FreeSymKey( symKey ) ;
-                        xmlSecBufferDestroy(result);
-                        PK11_FreeSlot( slot ) ;
-                        return(-1);
-                }
-
-                if( xmlSecBufferSetSize( result , wrpskv.len ) < 0 ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "xmlSecBufferSetSize" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        PK11_FreeSymKey( symKey ) ;
-                        xmlSecBufferDestroy(result);
-                        PK11_FreeSlot( slot ) ;
-                        return(-1);
-                }
-                PK11_FreeSymKey( symKey ) ;
-                PK11_FreeSlot( slot ) ;
-        } else {
-                SECItem*                        keyItem ;
-
-                /* pay attention to mechanism */
-                symKey = PK11_PubUnwrapSymKey( ctx->prikey, &oriskv, ctx->cipher, CKA_UNWRAP, 0 );
-                if( symKey == NULL ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_PubUnwrapSymKey" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        xmlSecBufferDestroy(result);
-                        return(-1);
-                }
-
-                /* Extract raw data from symmetric key */
-                if( PK11_ExtractKeyValue( symKey ) != SECSuccess ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_ExtractKeyValue" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        PK11_FreeSymKey( symKey ) ;
-                        xmlSecBufferDestroy(result);
-                        return(-1);
-                }
-
-                keyItem = PK11_GetKeyData( symKey );
-                if( keyItem == NULL ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_GetKeyData" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        PK11_FreeSymKey( symKey ) ;
-                        xmlSecBufferDestroy(result);
-                        return(-1);
-                }
-
-                if( xmlSecBufferSetData( result, keyItem->data, keyItem->len ) < 0 ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                "PK11_PubUnwrapSymKey" ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                XMLSEC_ERRORS_NO_MESSAGE ) ;
-                        PK11_FreeSymKey( symKey ) ;
-                        xmlSecBufferDestroy(result);
-                        return(-1);
-                }
-                PK11_FreeSymKey( symKey ) ;
+        /* Extract raw data from symmetric key */
+        if(PK11_ExtractKeyValue(symKey) != SECSuccess) {
+            xmlSecNssError("PK11_ExtractKeyValue", NULL);
+            PK11_FreeSymKey(symKey);
+            xmlSecBufferDestroy(result);
+            return(-1);
         }
 
-        /* Write output */
-        if( xmlSecBufferAppend( out, xmlSecBufferGetData(result), xmlSecBufferGetSize(result) ) < 0 ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        NULL ,
-                        "xmlSecBufferAppend" ,
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                xmlSecBufferDestroy(result);
-                return(-1);
+        keyItem = PK11_GetKeyData(symKey);
+        if(keyItem == NULL) {
+            xmlSecNssError("PK11_GetKeyData", NULL);
+            PK11_FreeSymKey(symKey);
+            xmlSecBufferDestroy(result);
+            return(-1);
         }
+
+        if(xmlSecBufferSetData(result, keyItem->data, keyItem->len) < 0) {
+            xmlSecInternalError2("xmlSecBufferSetData", NULL,
+                                 "size=%lu", (unsigned long)keyItem->len);
+            PK11_FreeSymKey(symKey);
+            xmlSecBufferDestroy(result);
+            return(-1);
+        }
+        PK11_FreeSymKey(symKey);
+    }
+
+    /* Write output */
+    if(xmlSecBufferAppend(out, xmlSecBufferGetData(result), xmlSecBufferGetSize(result)) < 0) {
+        xmlSecInternalError2("xmlSecBufferAppend", NULL,
+                             "size=%lu", (unsigned long)xmlSecBufferGetSize(result));
         xmlSecBufferDestroy(result);
+        return(-1);
+    }
 
-        return(0);
+    /* done */
+    xmlSecBufferDestroy(result);
+    return(0);
 }
 
 static int
 xmlSecNssKeyTransportExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr transformCtx) {
-        xmlSecNssKeyTransportCtxPtr     context = NULL ;
-        xmlSecBufferPtr                 inBuf, outBuf ;
-        int                                             operation ;
-        int                                             rtv ;
-
-        xmlSecAssert2( xmlSecNssKeyTransportCheckId( transform ), -1 ) ;
-        xmlSecAssert2( xmlSecTransformCheckSize( transform, xmlSecNssKeyTransportSize ), -1 ) ;
-        xmlSecAssert2( ( transform->operation == xmlSecTransformOperationEncrypt ) || ( transform->operation == xmlSecTransformOperationDecrypt ), -1 ) ;
-        xmlSecAssert2( transformCtx != NULL , -1 ) ;
-
-        context = xmlSecNssKeyTransportGetCtx( transform ) ;
-        if( context == NULL ) {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                    xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                    "xmlSecNssKeyTransportGetCtx" ,
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                    XMLSEC_ERRORS_NO_MESSAGE ) ;
+    xmlSecNssKeyTransportCtxPtr context = NULL;
+    xmlSecBufferPtr  inBuf, outBuf;
+    int operation;
+    int rtv;
+
+    xmlSecAssert2(xmlSecNssKeyTransportCheckId(transform), -1);
+    xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecNssKeyTransportSize), -1);
+    xmlSecAssert2((transform->operation == xmlSecTransformOperationEncrypt) || (transform->operation == xmlSecTransformOperationDecrypt), -1);
+    xmlSecAssert2(transformCtx != NULL, -1);
+
+    context = xmlSecNssKeyTransportGetCtx(transform);
+    if(context == NULL) {
+        xmlSecInternalError("xmlSecNssKeyTransportGetCtx",
+                            xmlSecTransformGetName(transform));
+        return(-1);
+    }
+
+    inBuf = &(transform->inBuf);
+    outBuf = &(transform->outBuf);
+
+    if(transform->status == xmlSecTransformStatusNone) {
+        transform->status = xmlSecTransformStatusWorking;
+    }
+
+    operation = (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0;
+    if(transform->status == xmlSecTransformStatusWorking) {
+        if(context->material == NULL) {
+            rtv = xmlSecNssKeyTransportCtxInit(context, inBuf, outBuf, operation, transformCtx);
+            if(rtv < 0) {
+                xmlSecInternalError("xmlSecNssKeyTransportCtxInit",
+                        xmlSecTransformGetName(transform));
                 return(-1);
+            }
         }
 
-        inBuf = &( transform->inBuf ) ;
-        outBuf = &( transform->outBuf ) ;
+        if((context->material == NULL) && (last != 0)) {
+            xmlSecInvalidTransfromStatusError2(transform,
+                    "No enough data to intialize transform");
+            return(-1);
+        }
 
-        if( transform->status == xmlSecTransformStatusNone ) {
-                transform->status = xmlSecTransformStatusWorking ;
+        if(context->material != NULL) {
+            rtv = xmlSecNssKeyTransportCtxUpdate(context, inBuf, outBuf, operation, transformCtx);
+            if(rtv < 0) {
+                xmlSecInternalError("xmlSecNssKeyTransportCtxUpdate",
+                        xmlSecTransformGetName(transform));
+                return(-1);
+            }
         }
 
-        operation = ( transform->operation == xmlSecTransformOperationEncrypt ) ? 1 : 0 ;
-        if( transform->status == xmlSecTransformStatusWorking ) {
-                if( context->material == NULL ) {
-                        rtv = xmlSecNssKeyTransportCtxInit( context, inBuf , outBuf , operation , transformCtx ) ;
-                        if( rtv < 0 ) {
-                                xmlSecError( XMLSEC_ERRORS_HERE ,
-                                        xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                                        "xmlSecNssKeyTransportCtxInit" ,
-                                        XMLSEC_ERRORS_R_INVALID_STATUS ,
-                                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                                return(-1);
-                        }
-                }
-
-                if( (context->material == NULL) && (last != 0) ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                                NULL ,
-                                XMLSEC_ERRORS_R_INVALID_STATUS ,
-                                "No enough data to intialize transform" ) ;
-                        return(-1);
-                }
-
-                if( context->material != NULL ) {
-                        rtv = xmlSecNssKeyTransportCtxUpdate( context, inBuf , outBuf , operation , transformCtx ) ;
-                        if( rtv < 0 ) {
-                                xmlSecError( XMLSEC_ERRORS_HERE ,
-                                        xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                                        "xmlSecNssKeyTransportCtxUpdate" ,
-                                        XMLSEC_ERRORS_R_INVALID_STATUS ,
-                                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                                return(-1);
-                        }
-                }
-
-                if( last ) {
-                        rtv = xmlSecNssKeyTransportCtxFinal( context, inBuf , outBuf , operation , transformCtx ) ;
-                        if( rtv < 0 ) {
-                                xmlSecError( XMLSEC_ERRORS_HERE ,
-                                        xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                                        "xmlSecNssKeyTransportCtxFinal" ,
-                                        XMLSEC_ERRORS_R_INVALID_STATUS ,
-                                        XMLSEC_ERRORS_NO_MESSAGE ) ;
-                                return(-1);
-                        }
-                        transform->status = xmlSecTransformStatusFinished ;
-                }
-        } else if( transform->status == xmlSecTransformStatusFinished ) {
-                if( xmlSecBufferGetSize( inBuf ) != 0 ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                                NULL ,
-                                XMLSEC_ERRORS_R_INVALID_STATUS ,
-                                "status=%d", transform->status ) ;
-                        return(-1);
-                }
-        } else {
-                xmlSecError( XMLSEC_ERRORS_HERE ,
-                        xmlSecErrorsSafeString( xmlSecTransformGetName( transform ) ) ,
-                        NULL ,
-                        XMLSEC_ERRORS_R_INVALID_STATUS ,
-                        "status=%d", transform->status ) ;
+        if(last) {
+            rtv = xmlSecNssKeyTransportCtxFinal(context, inBuf, outBuf, operation, transformCtx);
+            if(rtv < 0) {
+                xmlSecInternalError("xmlSecNssKeyTransportCtxFinal",
+                        xmlSecTransformGetName(transform));
                 return(-1);
+            }
+            transform->status = xmlSecTransformStatusFinished;
         }
+    } else if(transform->status == xmlSecTransformStatusFinished) {
+        if(xmlSecBufferGetSize(inBuf) != 0) {
+            xmlSecInvalidTransfromStatusError2(transform,
+                    "More data available in the input buffer");
+            return(-1);
+        }
+    } else {
+        xmlSecInvalidTransfromStatusError(transform);
+        return(-1);
+    }
 
-        return(0);
+    return(0);
 }
 
 
diff --git a/src/nss/kw_aes.c b/src/nss/kw_aes.c
index cea884e..7f1f849 100644
--- a/src/nss/kw_aes.c
+++ b/src/nss/kw_aes.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * AES Algorithm support
  *
@@ -242,21 +241,14 @@ xmlSecNssKWAesInitialize(xmlSecTransformPtr transform) {
     } else if(xmlSecTransformCheckId(transform, xmlSecNssTransformKWAes256Id)) {
         ctx->keyExpectedSize = XMLSEC_KW_AES256_KEY_SIZE;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -321,12 +313,8 @@ xmlSecNssKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < ctx->keyExpectedSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key=%d;expected=%d",
-                    keySize, ctx->keyExpectedSize);
+        xmlSecInvalidKeyDataSizeError(keySize, ctx->keyExpectedSize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -334,12 +322,9 @@ xmlSecNssKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
                               xmlSecBufferGetData(buffer),
                               ctx->keyExpectedSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "expected-size=%d",
-                    ctx->keyExpectedSize);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "expected-size=%d", ctx->keyExpectedSize);
         return(-1);
     }
 
@@ -378,11 +363,9 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % 8) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "size=%d(not 8 bytes aligned)", inSize);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                                inSize, 8,
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -396,11 +379,9 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "outSize=%d", outSize);
             return(-1);
         }
 
@@ -410,11 +391,9 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
             /* create key */
             aeskey = xmlSecNssMakeAesKey(xmlSecBufferGetData(&(ctx->keyBuffer)), keySize, 1); /* encrypt */
             if(aeskey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssMakeAesKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError2("xmlSecNssMakeAesKey",
+                                     xmlSecTransformGetName(transform),
+                                     "keySize=%lu", (unsigned long)keySize);
                 return(-1);
             }
 
@@ -424,11 +403,11 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError3("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform),
+                                    "inSize=%lu; outSize=%lu",
+                                    (unsigned long)inSize,
+                                    (unsigned long)outSize);
                 PK11_FreeSymKey(aeskey);
                 return(-1);
             }
@@ -441,11 +420,9 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
             /* create key */
             aeskey = xmlSecNssMakeAesKey(xmlSecBufferGetData(&(ctx->keyBuffer)), keySize, 0); /* decrypt */
             if(aeskey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssMakeAesKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError2("xmlSecNssMakeAesKey",
+                                     xmlSecTransformGetName(transform),
+                                     "keySize=%lu", (unsigned long)keySize);
                 return(-1);
             }
 
@@ -454,11 +431,11 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesDecode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError3("xmlSecKWAesDecode",
+                                     xmlSecTransformGetName(transform),
+                                     "inSize=%lu; outSize=%lu",
+                                     (unsigned long)inSize,
+                                     (unsigned long)outSize);
                 PK11_FreeSymKey(aeskey);
                 return(-1);
             }
@@ -469,21 +446,17 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "outSize=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "inSize%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "inSize%d", inSize);
             return(-1);
         }
 
@@ -492,11 +465,7 @@ xmlSecNssKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtx
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -523,11 +492,7 @@ xmlSecNSSKWAesBlockEncrypt(const xmlSecByte * in, xmlSecSize inSize,
     /* one block */
     ret = xmlSecNssAesOp(aeskey, in, out, 1); /* encrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAesOp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAesOp", NULL);
         return(-1);
     }
     return(XMLSEC_KW_AES_BLOCK_SIZE);
@@ -549,11 +514,7 @@ xmlSecNSSKWAesBlockDecrypt(const xmlSecByte * in, xmlSecSize inSize,
     /* one block */
     ret = xmlSecNssAesOp(aeskey, in, out, 0); /* decrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssAesOp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssAesOp", NULL);
         return(-1);
     }
     return(XMLSEC_KW_AES_BLOCK_SIZE);
@@ -572,11 +533,7 @@ xmlSecNssMakeAesKey(const xmlSecByte *key, xmlSecSize keySize, int enc) {
     cipherMech = CKM_AES_ECB;
     slot = PK11_GetBestSlot(cipherMech, NULL);
     if (slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", NULL);
         goto done;
     }
 
@@ -585,11 +542,7 @@ xmlSecNssMakeAesKey(const xmlSecByte *key, xmlSecSize keySize, int enc) {
     aeskey = PK11_ImportSymKey(slot, cipherMech, PK11_OriginUnwrap,
                                enc ? CKA_ENCRYPT : CKA_DECRYPT, &keyItem, NULL);
     if (aeskey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_ImportSymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ImportSymKey", NULL);
         goto done;
     }
 
@@ -619,11 +572,7 @@ xmlSecNssAesOp(PK11SymKey *aeskey, const xmlSecByte *in, xmlSecByte *out, int en
     cipherMech = CKM_AES_ECB;
     SecParam = PK11_ParamFromIV(cipherMech, NULL);
     if (SecParam == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_ParamFromIV",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ParamFromIV", NULL);
         goto done;
     }
 
@@ -631,11 +580,7 @@ xmlSecNssAesOp(PK11SymKey *aeskey, const xmlSecByte *in, xmlSecByte *out, int en
                                             enc ? CKA_ENCRYPT : CKA_DECRYPT,
                                             aeskey, SecParam);
     if (EncContext == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_CreateContextBySymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CreateContextBySymKey", NULL);
         goto done;
     }
 
@@ -644,22 +589,14 @@ xmlSecNssAesOp(PK11SymKey *aeskey, const xmlSecByte *in, xmlSecByte *out, int en
                        XMLSEC_KW_AES_BLOCK_SIZE, (unsigned char *)in,
                        XMLSEC_KW_AES_BLOCK_SIZE);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_CipherOp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CipherOp", NULL);
         goto done;
     }
 
     rv = PK11_DigestFinal(EncContext, out+tmp1_outlen,
                           &tmp2_outlen, XMLSEC_KW_AES_BLOCK_SIZE-tmp1_outlen);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_DigestFinal",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_DigestFinal", NULL);
         goto done;
     }
 
diff --git a/src/nss/kw_des.c b/src/nss/kw_des.c
index 4025d35..c6e275f 100644
--- a/src/nss/kw_des.c
+++ b/src/nss/kw_des.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES KW Algorithm support
  *
@@ -160,11 +159,8 @@ xmlSecNssKWDes3Initialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -228,22 +224,16 @@ xmlSecNssKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < XMLSEC_KW_DES3_KEY_LENGTH) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key length %d is not enough (%d expected)",
-                    keySize, XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInvalidKeyDataSizeError(keySize, XMLSEC_KW_DES3_KEY_LENGTH,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecBufferSetData(&(ctx->keyBuffer), xmlSecBufferGetData(buffer), XMLSEC_KW_DES3_KEY_LENGTH);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
         return(-1);
     }
 
@@ -282,12 +272,9 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % XMLSEC_KW_DES3_BLOCK_LENGTH) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "%d bytes - not %d bytes aligned",
-                        inSize, XMLSEC_KW_DES3_BLOCK_LENGTH);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                                inSize, XMLSEC_KW_DES3_BLOCK_LENGTH,
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -303,11 +290,9 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -316,12 +301,9 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Encode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Encode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d",
+                                     keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -330,12 +312,9 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Decode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Decode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d",
+                                     keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -343,21 +322,17 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -366,11 +341,7 @@ xmlSecNssKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransformCt
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -399,43 +370,27 @@ xmlSecNssKWDes3Sha1(void * context,
     /* Create a pk11ctx for hashing (digesting) */
     pk11ctx = PK11_CreateDigestContext(SEC_OID_SHA1);
     if (pk11ctx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_CreateDigestContext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CreateDigestContext", NULL);
         return(-1);
     }
 
     status = PK11_DigestBegin(pk11ctx);
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_DigestBegin",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_DigestBegin", NULL);
         PK11_DestroyContext(pk11ctx, PR_TRUE);
         return(-1);
     }
 
     status = PK11_DigestOp(pk11ctx, in, inSize);
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_DigestOp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_DigestOp", NULL);
         PK11_DestroyContext(pk11ctx, PR_TRUE);
         return(-1);
     }
 
     status = PK11_DigestFinal(pk11ctx, out, &outLen, outSize);
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_DigestFinal",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_DigestFinal", NULL);
         PK11_DestroyContext(pk11ctx, PR_TRUE);
         return(-1);
     }
@@ -458,11 +413,7 @@ xmlSecNssKWDes3GenerateRandom(void * context,
 
     status = PK11_GenerateRandom(out, outSize);
     if(status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_GenerateRandom",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GenerateRandom", NULL);
         return(-1);
     }
 
@@ -493,11 +444,7 @@ xmlSecNssKWDes3BlockEncrypt(void * context,
                                  out, outSize, 
                                  1); /* encrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKWDes3Encrypt", NULL);
         return(-1);
     }
 
@@ -528,11 +475,7 @@ xmlSecNssKWDes3BlockDecrypt(void * context,
                                  out, outSize, 
                                  0); /* decrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKWDes3Encrypt", NULL);
         return(-1);
     }
 
@@ -570,11 +513,7 @@ xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
     cipherMech = CKM_DES3_CBC;
     slot = PK11_GetBestSlot(cipherMech, NULL);
     if (slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", NULL);
         goto done;
     }
 
@@ -583,11 +522,7 @@ xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
     symKey = PK11_ImportSymKey(slot, cipherMech, PK11_OriginUnwrap,
                                enc ? CKA_ENCRYPT : CKA_DECRYPT, &keyItem, NULL);
     if (symKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_ImportSymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ImportSymKey", NULL);
         goto done;
     }
 
@@ -596,11 +531,7 @@ xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
 
     param = PK11_ParamFromIV(cipherMech, &ivItem);
     if (param == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_ParamFromIV",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ParamFromIV", NULL);
         goto done;
     }
 
@@ -608,11 +539,7 @@ xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
                                             enc ? CKA_ENCRYPT : CKA_DECRYPT,
                                             symKey, param);
     if (pk11ctx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_CreateContextBySymKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CreateContextBySymKey", NULL);
         goto done;
     }
 
@@ -620,22 +547,14 @@ xmlSecNssKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
     status = PK11_CipherOp(pk11ctx, out, &tmp1_outlen, outSize,
                        (unsigned char *)in, inSize);
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_CipherOp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_CipherOp", NULL);
         goto done;
     }
 
     status = PK11_DigestFinal(pk11ctx, out+tmp1_outlen,
                           &tmp2_outlen, outSize-tmp1_outlen);
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_DigestFinal",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_DigestFinal", NULL);
         goto done;
     }
 
diff --git a/src/nss/pkikeys.c b/src/nss/pkikeys.c
index 5ede4cc..25828ae 100644
--- a/src/nss/pkikeys.c
+++ b/src/nss/pkikeys.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -118,11 +118,7 @@ xmlSecNSSPKIKeyDataCtxDup(xmlSecNssPKIKeyDataCtxPtr ctxDst,
     if (ctxSrc->privkey != NULL) {
         ctxDst->privkey = SECKEY_CopyPrivateKey(ctxSrc->privkey);
         if(ctxDst->privkey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SECKEY_CopyPrivateKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                "error code=%d", PORT_GetError());
+            xmlSecNssError("SECKEY_CopyPrivateKey", NULL);
             return(-1);
         }
     }
@@ -130,11 +126,7 @@ xmlSecNSSPKIKeyDataCtxDup(xmlSecNssPKIKeyDataCtxPtr ctxDst,
     if (ctxSrc->pubkey != NULL) {
         ctxDst->pubkey = SECKEY_CopyPublicKey(ctxSrc->pubkey);
         if(ctxDst->pubkey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SECKEY_CopyPublicKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                "error code=%d", PORT_GetError());
+            xmlSecNssError("SECKEY_CopyPublicKey", NULL);
             return(-1);
         }
     }
@@ -147,30 +139,27 @@ xmlSecNssPKIKeyDataAdoptKey(xmlSecKeyDataPtr data,
                             SECKEYPublicKey  *pubkey)
 {
     xmlSecNssPKIKeyDataCtxPtr ctx;
-        KeyType                                 pubType = nullKey ;
-        KeyType                                 priType = nullKey ;
+    KeyType pubType = nullKey;
+    KeyType priType = nullKey;
 
     xmlSecAssert2(xmlSecKeyDataIsValid(data), -1);
     xmlSecAssert2(xmlSecKeyDataCheckSize(data, xmlSecNssPKIKeyDataSize), -1);
 
-        if( privkey != NULL ) {
-                priType = SECKEY_GetPrivateKeyType( privkey ) ;
-        }
+    if(privkey != NULL) {
+        priType = SECKEY_GetPrivateKeyType(privkey);
+    }
 
-        if( pubkey != NULL ) {
-                pubType = SECKEY_GetPublicKeyType( pubkey ) ;
-        }
+    if(pubkey != NULL) {
+        pubType = SECKEY_GetPublicKeyType(pubkey);
+    }
 
-        if( priType != nullKey && pubType != nullKey ) {
-                if( pubType != priType ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                NULL ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                "different type of private and public key" ) ;
-                        return -1 ;
-                }
+    if(priType != nullKey && pubType != nullKey) {
+        if(pubType != priType) {
+            xmlSecInvalidIntegerTypeError2("pubType", pubType, "priType", priType,
+                    "pubType == priType", NULL);
+            return -1;
         }
+    }
 
     ctx = xmlSecNssPKIKeyDataGetCtx(data);
     xmlSecAssert2(ctx != NULL, -1);
@@ -204,39 +193,32 @@ xmlSecNssPKIAdoptKey(SECKEYPrivateKey *privkey,
 {
     xmlSecKeyDataPtr data = NULL;
     int ret;
-        KeyType                                 pubType = nullKey ;
-        KeyType                                 priType = nullKey ;
+    KeyType pubType = nullKey;
+    KeyType priType = nullKey;
 
-        if( privkey != NULL ) {
-                priType = SECKEY_GetPrivateKeyType( privkey ) ;
-        }
+    if(privkey != NULL) {
+        priType = SECKEY_GetPrivateKeyType(privkey);
+    }
 
-        if( pubkey != NULL ) {
-                pubType = SECKEY_GetPublicKeyType( pubkey ) ;
-        }
+    if(pubkey != NULL) {
+        pubType = SECKEY_GetPublicKeyType(pubkey);
+    }
 
-        if( priType != nullKey && pubType != nullKey ) {
-                if( pubType != priType ) {
-                        xmlSecError( XMLSEC_ERRORS_HERE ,
-                                NULL ,
-                                NULL ,
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED ,
-                                "different type of private and public key" ) ;
-                        return( NULL ) ;
-                }
+    if(priType != nullKey && pubType != nullKey) {
+        if(pubType != priType) {
+            xmlSecInvalidIntegerTypeError2("pubType", pubType, "priType", priType,
+                    "pubType == priType", NULL);
+            return(NULL);
         }
+    }
 
-        pubType = priType != nullKey ? priType : pubType ;
+    pubType = (priType != nullKey) ? priType : pubType;
     switch(pubType) {
 #ifndef XMLSEC_NO_RSA
     case rsaKey:
         data = xmlSecKeyDataCreate(xmlSecNssKeyDataRsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecNssKeyDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(KeyDataRsaId)", NULL);
             return(NULL);
         }
         break;
@@ -245,32 +227,30 @@ xmlSecNssPKIAdoptKey(SECKEYPrivateKey *privkey,
     case dsaKey:
         data = xmlSecKeyDataCreate(xmlSecNssKeyDataDsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecNssKeyDataDsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate", NULL);
             return(NULL);
         }
         break;
 #endif /* XMLSEC_NO_DSA */
+#ifndef XMLSEC_NO_ECDSA
+    case ecKey:
+        data = xmlSecKeyDataCreate(xmlSecNssKeyDataEcdsaId);
+        if(data == NULL) {
+            xmlSecInternalError("xmlSecKeyDataCreate", NULL);
+            return(NULL);
+        }
+        break;
+#endif /* XMLSEC_NO_ECDSA */
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "PKI key type %d not supported", pubType);
+        xmlSecInvalidIntegerTypeError("pubType", pubType,
+                "supported PKI key type", NULL);
         return(NULL);
     }
 
     xmlSecAssert2(data != NULL, NULL);
     ret = xmlSecNssPKIKeyDataAdoptKey(data, privkey, pubkey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssPKIKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeyDataAdoptKey", NULL);
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
@@ -380,11 +360,8 @@ xmlSecNssPKIKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     xmlSecAssert2(ctxSrc != NULL, -1);
 
     if (xmlSecNSSPKIKeyDataCtxDup(ctxDst, ctxSrc) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                "xmlSecNssPKIKeydataCtxDup",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeydataCtxDup",
+                            xmlSecKeyDataGetName(dst));
         return(-1);
     }
 
@@ -579,45 +556,31 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         ret = -1;
         goto done;
     }
 
     slot = PK11_GetBestSlot(CKM_DSA, NULL);
     if(slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     arena = PORT_NewArena(DER_DEFAULT_CHUNKSIZE);
     if(arena == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PORT_NewArena",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PORT_NewArena", xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
-    pubkey = (SECKEYPublicKey *)PORT_ArenaZAlloc(arena,
-                                                 sizeof(SECKEYPublicKey));
-    if(pubkey == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PORT_ArenaZAlloc",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+    pubkey = (SECKEYPublicKey *)PORT_ArenaZAlloc(arena, sizeof(SECKEYPublicKey));
+    if(pubkey == NULL) {
+        xmlSecNssError2("PORT_ArenaZAlloc", xmlSecKeyDataKlassGetName(id),
+                        "size=%lu", (unsigned long)sizeof(SECKEYPublicKey));
         PORT_FreeArena(arena, PR_FALSE);
         ret = -1;
         goto done;
@@ -630,22 +593,13 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is P node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeDSAP, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAP, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.dsa.params.prime)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -653,22 +607,13 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is Q node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAQ, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAQ, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.dsa.params.subPrime)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -676,22 +621,13 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is G node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAG, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAG, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.dsa.params.base)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -706,21 +642,13 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is Y node. */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAY, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAY, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.dsa.publicValue)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -742,55 +670,39 @@ xmlSecNssKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id))
         ret = -1;
         goto done;
     }
 
     handle = PK11_ImportPublicKey(slot, pubkey, PR_FALSE);
     if(handle == CK_INVALID_HANDLE) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PK11_ImportPublicKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_ImportPublicKey",
+                       xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     data = xmlSecKeyDataCreate(id);
-    if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+    if(data == NULL) {
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     ret = xmlSecNssPKIKeyDataAdoptKey(data, NULL, pubkey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssPKIKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeyDataAdoptKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     pubkey = NULL;
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
     data = NULL;
@@ -837,66 +749,42 @@ xmlSecNssKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* first is P node */
     cur = xmlSecAddChild(node, xmlSecNodeDSAP, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.dsa.params.prime), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeDSAP)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     /* next is Q node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAQ, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.dsa.params.subPrime), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeDSAQ)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     /* next is G node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAG, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.dsa.params.base), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeDSAG)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
@@ -905,25 +793,18 @@ xmlSecNssKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* next is Y node. */
     cur = xmlSecAddChild(node, xmlSecNodeDSAY, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecAddChild(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.dsa.publicValue), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeDSAY)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
+    /* done */
     return(0);
 }
 
@@ -945,46 +826,43 @@ xmlSecNssKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlSecKe
     j = PQG_PBITS_TO_INDEX(sizeBits);
     rv = PK11_PQG_ParamGen(j, &pqgParams, &pqgVerify);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "PK11_PQG_ParamGen",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", sizeBits);
+        xmlSecNssError2("PK11_PQG_ParamGen", xmlSecKeyDataGetName(data),
+                        "size=%lu", (unsigned long)sizeBits);
         goto done;
     }
 
     rv = PK11_PQG_VerifyParams(pqgParams, pqgVerify, &res);
     if (rv != SECSuccess || res != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "PK11_PQG_VerifyParams",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", sizeBits);
+        xmlSecNssError2("PK11_PQG_VerifyParams", xmlSecKeyDataGetName(data),
+                        "size=%lu", (unsigned long)sizeBits);
         goto done;
     }
 
     slot = PK11_GetBestSlot(CKM_DSA_KEY_PAIR_GEN, NULL);
-    PK11_Authenticate(slot, PR_TRUE, NULL /* default pwd callback */);
+    if(slot == NULL) {
+        xmlSecNssError("PK11_GetBestSlot", xmlSecKeyDataGetName(data));
+        goto done;
+    }
+
+    rv = PK11_Authenticate(slot, PR_TRUE, NULL /* default pwd callback */);
+    if (rv != SECSuccess) {
+        xmlSecNssError2("PK11_Authenticate", xmlSecKeyDataGetName(data),
+                        "token=%s", xmlSecErrorsSafeString(PK11_GetTokenName(slot)));
+        goto done;
+    }
+
     privkey = PK11_GenerateKeyPair(slot, CKM_DSA_KEY_PAIR_GEN, pqgParams,
                                    &pubkey, PR_FALSE, PR_TRUE, NULL);
 
     if((privkey == NULL) || (pubkey == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "PK11_GenerateKeyPair",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecNssError("PK11_GenerateKeyPair", xmlSecKeyDataGetName(data));
         goto done;
     }
 
     ret = xmlSecNssPKIKeyDataAdoptKey(data, privkey, pubkey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssPKIKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeyDataAdoptKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
 
@@ -1216,45 +1094,31 @@ xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    "key already has a value");
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                         xmlSecKeyDataKlassGetName(id),
+                         "key already has a value");
         ret = -1;
         goto done;
     }
 
     slot = PK11_GetBestSlot(CKM_RSA_PKCS, NULL);
     if(slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PK11_GetBestSlot",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PK11_GetBestSlot", xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     arena = PORT_NewArena(DER_DEFAULT_CHUNKSIZE);
     if(arena == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PORT_NewArena",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PORT_NewArena", xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     pubkey = (SECKEYPublicKey *)PORT_ArenaZAlloc(arena,
                                                  sizeof(SECKEYPublicKey));
-    if(pubkey == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "PORT_ArenaZAlloc",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+    if(pubkey == NULL) {
+        xmlSecNssError("PORT_ArenaZAlloc", xmlSecKeyDataKlassGetName(id));
         PORT_FreeArena(arena, PR_FALSE);
         ret = -1;
         goto done;
@@ -1266,22 +1130,13 @@ xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is Modulus node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeRSAModulus, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAModulus, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.rsa.modulus)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -1289,22 +1144,13 @@ xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is Exponent node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeRSAExponent, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAExponent, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
     if(xmlSecNssNodeGetBigNumValue(arena, cur, &(pubkey->u.rsa.publicExponent)) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeGetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecNssNodeGetBigNumValue(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
@@ -1317,33 +1163,23 @@ xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     data = xmlSecKeyDataCreate(id);
-    if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+    if(data == NULL) {
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         ret = -1;
         goto done;
     }
 
     ret = xmlSecNssPKIKeyDataAdoptKey(data, NULL, pubkey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssPKIKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeyDataAdoptKey",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         goto done;
     }
@@ -1351,11 +1187,8 @@ xmlSecNssKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(id));
         xmlSecKeyDataDestroy(data);
         goto done;
     }
@@ -1404,44 +1237,28 @@ xmlSecNssKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* first is Modulus node */
     cur = xmlSecAddChild(node, xmlSecNodeRSAModulus, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.rsa.modulus), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeRSAModulus)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     /* next is Exponent node. */
     cur = xmlSecAddChild(node, xmlSecNodeRSAExponent, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecAddChild(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     ret = xmlSecNssNodeSetBigNumValue(cur, &(ctx->pubkey->u.rsa.publicExponent), 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssNodeSetBigNumValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError("xmlSecNssNodeSetBigNumValue(NodeRSAExponent)",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
@@ -1456,7 +1273,8 @@ xmlSecNssKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlSecKe
     PK11SlotInfo *slot = NULL;
     SECKEYPrivateKey *privkey = NULL;
     SECKEYPublicKey  *pubkey = NULL;
-    int               ret = -1;
+    SECStatus rv;
+    int  ret = -1;
 
     xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataRsaId), -1);
     xmlSecAssert2(sizeBits > 0, -1);
@@ -1465,27 +1283,29 @@ xmlSecNssKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlSecKe
     params.pe = 65537;
 
     slot = PK11_GetBestSlot(CKM_RSA_PKCS_KEY_PAIR_GEN, NULL);
-    PK11_Authenticate(slot, PR_TRUE, NULL /* default pwd callback */);
+    if(slot == NULL) {
+        xmlSecNssError("PK11_GetBestSlot", xmlSecKeyDataGetName(data));
+        goto done;
+    }
+
+    rv = PK11_Authenticate(slot, PR_TRUE, NULL /* default pwd callback */);
+    if (rv != SECSuccess) {
+        xmlSecNssError2("PK11_Authenticate", xmlSecKeyDataGetName(data),
+                        "token=%s", xmlSecErrorsSafeString(PK11_GetTokenName(slot)));
+        goto done;
+    }
+
     privkey = PK11_GenerateKeyPair(slot, CKM_RSA_PKCS_KEY_PAIR_GEN, &params,
                                    &pubkey, PR_FALSE, PR_TRUE, NULL);
-
     if(privkey == NULL || pubkey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "PK11_GenerateKeyPair",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
-
+        xmlSecNssError("PK11_GenerateKeyPair", xmlSecKeyDataGetName(data));
         goto done;
     }
 
     ret = xmlSecNssPKIKeyDataAdoptKey(data, privkey, pubkey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssPKIKeyDataAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIKeyDataAdoptKey",
+                            xmlSecKeyDataGetName(data));
         goto done;
     }
 
@@ -1559,5 +1379,133 @@ xmlSecNssKeyDataRsaDebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
 
 #endif /* XMLSEC_NO_RSA */
 
+#ifndef XMLSEC_NO_ECDSA
+static int xmlSecNssKeyDataEcdsaInitialize(xmlSecKeyDataPtr data);
+static int xmlSecNssKeyDataEcdsaDuplicate(xmlSecKeyDataPtr dst,
+                                          xmlSecKeyDataPtr src);
+static void xmlSecNssKeyDataEcdsaFinalize(xmlSecKeyDataPtr data);
+
+static xmlSecKeyDataType xmlSecNssKeyDataEcdsaGetType(xmlSecKeyDataPtr data);
+static xmlSecSize xmlSecNssKeyDataEcdsaGetSize(xmlSecKeyDataPtr data);
+static void xmlSecNssKeyDataEcdsaDebugDump(xmlSecKeyDataPtr data,
+                                           FILE* output);
+static void xmlSecNssKeyDataEcdsaDebugXmlDump(xmlSecKeyDataPtr data,
+                                              FILE* output);
+
+static xmlSecKeyDataKlass xmlSecNssKeyDataEcdsaKlass = {
+    sizeof(xmlSecKeyDataKlass),
+    xmlSecNssPKIKeyDataSize,
+
+    /* data */
+    xmlSecNameECDSAKeyValue,
+    xmlSecKeyDataUsageKeyValueNode | xmlSecKeyDataUsageRetrievalMethodNodeXml,
+                                                /* xmlSecKeyDataUsage usage; */
+    xmlSecHrefECDSAKeyValue,                    /* const xmlChar* href; */
+    xmlSecNodeECDSAKeyValue,                    /* const xmlChar* dataNodeName; */
+    xmlSecDSigNs,                               /* const xmlChar* dataNodeNs; */
+
+    /* constructors/destructor */
+    xmlSecNssKeyDataEcdsaInitialize,            /* xmlSecKeyDataInitializeMethod initialize; */
+    xmlSecNssKeyDataEcdsaDuplicate,             /* xmlSecKeyDataDuplicateMethod duplicate; */
+    xmlSecNssKeyDataEcdsaFinalize,              /* xmlSecKeyDataFinalizeMethod finalize; */
+    NULL,                                       /* xmlSecKeyDataGenerateMethod generate; */
+
+    /* get info */
+    xmlSecNssKeyDataEcdsaGetType,               /* xmlSecKeyDataGetTypeMethod getType; */
+    xmlSecNssKeyDataEcdsaGetSize,               /* xmlSecKeyDataGetSizeMethod getSize; */
+    NULL,                                       /* xmlSecKeyDataGetIdentifier getIdentifier; */
+
+    /* read/write */
+    NULL,                                       /* xmlSecKeyDataXmlReadMethod xmlRead; */
+    NULL,                                       /* xmlSecKeyDataXmlWriteMethod xmlWrite; */
+    NULL,                                       /* xmlSecKeyDataBinReadMethod binRead; */
+    NULL,                                       /* xmlSecKeyDataBinWriteMethod binWrite; */
+
+    /* debug */
+    xmlSecNssKeyDataEcdsaDebugDump,             /* xmlSecKeyDataDebugDumpMethod debugDump; */
+    xmlSecNssKeyDataEcdsaDebugXmlDump,          /* xmlSecKeyDataDebugDumpMethod debugXmlDump; */
+
+    /* reserved for the future */
+    NULL,                                       /* void* reserved0; */
+    NULL,                                       /* void* reserved1; */
+};
+
+/**
+ * xmlSecNssKeyDataEcdsaGetKlass:
+ *
+ * The ECDSA key data klass.
+ *
+ * Returns: pointer to ECDSA key data klass.
+ */
+xmlSecKeyDataId
+xmlSecNssKeyDataEcdsaGetKlass(void) {
+    return(&xmlSecNssKeyDataEcdsaKlass);
+}
+
+static int
+xmlSecNssKeyDataEcdsaInitialize(xmlSecKeyDataPtr data) {
+    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId), -1);
 
+    return(xmlSecNssPKIKeyDataInitialize(data));
+}
+
+static int
+xmlSecNssKeyDataEcdsaDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
+    xmlSecAssert2(xmlSecKeyDataCheckId(dst, xmlSecNssKeyDataEcdsaId), -1);
+    xmlSecAssert2(xmlSecKeyDataCheckId(src, xmlSecNssKeyDataEcdsaId), -1);
+
+    return(xmlSecNssPKIKeyDataDuplicate(dst, src));
+}
+
+static void
+xmlSecNssKeyDataEcdsaFinalize(xmlSecKeyDataPtr data) {
+    xmlSecAssert(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId));
+
+    xmlSecNssPKIKeyDataFinalize(data);
+}
+
+static xmlSecKeyDataType
+xmlSecNssKeyDataEcdsaGetType(xmlSecKeyDataPtr data) {
+    xmlSecNssPKIKeyDataCtxPtr ctx;
 
+    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId), xmlSecKeyDataTypeUnknown);
+    ctx = xmlSecNssPKIKeyDataGetCtx(data);
+    xmlSecAssert2(ctx != NULL, -1);
+    xmlSecAssert2(SECKEY_GetPublicKeyType(ctx->pubkey) == ecKey, -1);
+    if (ctx->privkey != NULL) {
+        return(xmlSecKeyDataTypePrivate | xmlSecKeyDataTypePublic);
+    } else {
+        return(xmlSecKeyDataTypePublic);
+    }
+}
+
+static xmlSecSize
+xmlSecNssKeyDataEcdsaGetSize(xmlSecKeyDataPtr data) {
+    xmlSecNssPKIKeyDataCtxPtr ctx;
+
+    xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId), 0);
+    ctx = xmlSecNssPKIKeyDataGetCtx(data);
+    xmlSecAssert2(ctx != NULL, -1);
+    xmlSecAssert2(SECKEY_GetPublicKeyType(ctx->pubkey) == ecKey, -1);
+
+    return(SECKEY_SignatureLen(ctx->pubkey));
+}
+
+static void
+xmlSecNssKeyDataEcdsaDebugDump(xmlSecKeyDataPtr data, FILE* output) {
+    xmlSecAssert(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId));
+    xmlSecAssert(output != NULL);
+
+    fprintf(output, "=== ecdsa key: size = %d\n",
+            xmlSecNssKeyDataEcdsaGetSize(data));
+}
+
+static void
+xmlSecNssKeyDataEcdsaDebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
+    xmlSecAssert(xmlSecKeyDataCheckId(data, xmlSecNssKeyDataEcdsaId));
+    xmlSecAssert(output != NULL);
+
+    fprintf(output, "<ECDSAKeyValue size=\"%d\" />\n",
+            xmlSecNssKeyDataEcdsaGetSize(data));
+}
+#endif /* XMLSEC_NO_ECDSA */
diff --git a/src/nss/signatures.c b/src/nss/signatures.c
index 4f54170..57df745 100644
--- a/src/nss/signatures.c
+++ b/src/nss/signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -83,6 +83,24 @@ xmlSecNssSignatureCheckId(xmlSecTransformPtr transform) {
     }
 #endif /* XMLSEC_NO_DSA */
 
+#ifndef XMLSEC_NO_ECDSA
+#ifndef XMLSEC_NO_SHA1
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha1Id)) {
+        return(1);
+    }
+#endif /* XMLSEC_NO_SHA1 */
+#ifndef XMLSEC_NO_SHA256
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha256Id)) {
+        return(1);
+    }
+#endif /* XMLSEC_NO_SHA256 */
+#ifndef XMLSEC_NO_SHA512
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha512Id)) {
+        return(1);
+    }
+#endif /* XMLSEC_NO_SHA512 */
+#endif /* XMLSEC_NO_ECDSA */
+
 #ifndef XMLSEC_NO_RSA
 
 #ifndef XMLSEC_NO_MD5
@@ -139,6 +157,30 @@ xmlSecNssSignatureInitialize(xmlSecTransformPtr transform) {
     } else
 #endif /* XMLSEC_NO_DSA */
 
+#ifndef XMLSEC_NO_ECDSA
+#ifndef XMLSEC_NO_SHA1
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha1Id)) {
+        ctx->keyId = xmlSecNssKeyDataEcdsaId;
+        /* This creates a signature which is ASN1 encoded */
+        ctx->alg = SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE;
+    } else
+#endif /* XMLSEC_NO_SHA1 */
+#ifndef XMLSEC_NO_SHA256
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha256Id)) {
+        ctx->keyId = xmlSecNssKeyDataEcdsaId;
+        /* This creates a signature which is ASN1 encoded */
+        ctx->alg = SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE;
+    } else
+#endif /* XMLSEC_NO_SHA256 */
+#ifndef XMLSEC_NO_SHA512
+    if(xmlSecTransformCheckId(transform, xmlSecNssTransformEcdsaSha512Id)) {
+        ctx->keyId = xmlSecNssKeyDataEcdsaId;
+        /* This creates a signature which is ASN1 encoded */
+        ctx->alg = SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE;
+    } else
+#endif /* XMLSEC_NO_SHA512 */
+#endif /* XMLSEC_NO_ECDSA */
+
 #ifndef XMLSEC_NO_RSA
 
 #ifndef XMLSEC_NO_MD5
@@ -180,11 +222,7 @@ xmlSecNssSignatureInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_RSA */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
@@ -240,21 +278,15 @@ xmlSecNssSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
             SECKEY_DestroyPrivateKey(ctx->u.sig.privkey);
         ctx->u.sig.privkey = xmlSecNssPKIKeyDataGetPrivKey(value);
         if(ctx->u.sig.privkey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecNssPKIKeyDataGetPrivKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssPKIKeyDataGetPrivKey",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ctx->u.sig.sigctx = SGN_NewContext(ctx->alg, ctx->u.sig.privkey);
         if (ctx->u.sig.sigctx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "SGN_NewContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("SGN_NewContext",
+                           xmlSecTransformGetName(transform));
             return(-1);
         }
     } else {
@@ -262,22 +294,16 @@ xmlSecNssSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
             SECKEY_DestroyPublicKey(ctx->u.vfy.pubkey);
         ctx->u.vfy.pubkey = xmlSecNssPKIKeyDataGetPubKey(value);
         if(ctx->u.vfy.pubkey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecNssPKIKeyDataGetPubKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssPKIKeyDataGetPubKey",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ctx->u.vfy.vfyctx = VFY_CreateContext(ctx->u.vfy.pubkey, NULL,
                                               ctx->alg, NULL);
         if (ctx->u.vfy.vfyctx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "VFY_CreateContext",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("VFY_CreateContext",
+                           xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -309,6 +335,23 @@ xmlSecNssSignatureSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr keyRe
     return(0);
 }
 
+/**
+ * xmlSecNssSignatureAlgorithmEncoded:
+ *
+ * Determines if the given algorithm requires a signature which is ASN1 encoded.
+ */
+static int
+xmlSecNssSignatureAlgorithmEncoded(SECOidTag alg) {
+    switch(alg) {
+    case SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST:
+    case SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE:
+    case SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE:
+    case SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE:
+        return(1);
+    default:
+        return(0);
+    }
+}
 
 static int
 xmlSecNssSignatureVerify(xmlSecTransformPtr transform,
@@ -331,19 +374,16 @@ xmlSecNssSignatureVerify(xmlSecTransformPtr transform,
     signature.data = (unsigned char *)data;
     signature.len = dataSize;
 
-    if(ctx->alg == SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST) {
+    if(xmlSecNssSignatureAlgorithmEncoded(ctx->alg)) {
         /* This creates a signature which is ASN1 encoded */
         SECItem   signatureDer;
         SECStatus statusDer;
 
-        statusDer = DSAU_EncodeDerSig(&signatureDer, &signature);
+        memset(&signatureDer, 0, sizeof(signatureDer));
+        statusDer = DSAU_EncodeDerSigWithLen(&signatureDer, &signature, signature.len);
         if(statusDer != SECSuccess) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "DSAU_EncodeDerSig",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", 
-                    PORT_GetError());
+            xmlSecNssError("DSAU_EncodeDerSigWithLen",
+                           xmlSecTransformGetName(transform));
             return(-1);
         }
         status = VFY_EndWithSignature(ctx->u.vfy.vfyctx, &signatureDer);
@@ -353,20 +393,14 @@ xmlSecNssSignatureVerify(xmlSecTransformPtr transform,
     }
 
     if (status != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "VFY_EndWithSignature",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", 
-                    PORT_GetError());
-
         if (PORT_GetError() == SEC_ERROR_PKCS7_BAD_SIGNATURE) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "VFY_EndWithSignature",
-                        XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                        "signature does not verify");
+            xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                             xmlSecTransformGetName(transform),
+                             "VFY_EndWithSignature: signature does not verify");
             transform->status = xmlSecTransformStatusFail;
+        } else {
+            xmlSecNssError("VFY_EndWithSignature",
+                           xmlSecTransformGetName(transform));
         }
         return(-1);
     }
@@ -413,21 +447,15 @@ xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         if(transform->operation == xmlSecTransformOperationSign) {
             status = SGN_Begin(ctx->u.sig.sigctx);
             if(status != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "SGN_Begin",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("SGN_Begin",
+                               xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else {
             status = VFY_Begin(ctx->u.vfy.vfyctx);
             if(status != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "VFY_Begin",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("VFY_Begin",
+                               xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -440,32 +468,23 @@ xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         if(transform->operation == xmlSecTransformOperationSign) {
             status = SGN_Update(ctx->u.sig.sigctx, xmlSecBufferGetData(in), inSize);
             if(status != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "SGN_Update",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("SGN_Update",
+                               xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else {
             status = VFY_Update(ctx->u.vfy.vfyctx, xmlSecBufferGetData(in), inSize);
             if(status != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "VFY_Update",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("VFY_Update",
+                               xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferRemoveHead",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -476,38 +495,48 @@ xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             memset(&signature, 0, sizeof(signature));
             status = SGN_End(ctx->u.sig.sigctx, &signature);
             if(status != SECSuccess) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "SGN_End",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "error code=%d", PORT_GetError());
+                xmlSecNssError("SGN_End",
+                               xmlSecTransformGetName(transform));
                 return(-1);
             }
 
-            if(ctx->alg == SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST) {
+            if(xmlSecNssSignatureAlgorithmEncoded(ctx->alg)) {
                 /* This creates a signature which is ASN1 encoded */
                 SECItem * signatureClr;
 
-                signatureClr = DSAU_DecodeDerSig(&signature);
-                if(signatureClr == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "DSAU_EncodeDerSig",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", 
-                        PORT_GetError());
-                    SECITEM_FreeItem(&signature, PR_FALSE);
-                    return(-1);
+                if(ctx->alg == SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST) {
+                    signatureClr = DSAU_DecodeDerSig(&signature);
+                    if(signatureClr == NULL) {
+                        xmlSecNssError("DSAU_DecodeDerSig",
+                                       xmlSecTransformGetName(transform));
+                        SECITEM_FreeItem(&signature, PR_FALSE);
+                        return(-1);
+                    }
+                } else {
+                    /* In the ECDSA case the signature length depends on the
+                     * key parameters. */
+                    int signatureSize = PK11_SignatureLen(ctx->u.sig.privkey);
+                    if(signatureSize < 1) {
+                        xmlSecNssError("PK11_SignatureLen",
+                                       xmlSecTransformGetName(transform));
+                        SECITEM_FreeItem(&signature, PR_FALSE);
+                        return(-1);
+                    }
+
+                    signatureClr = DSAU_DecodeDerSigToLen(&signature, signatureSize);
+                    if(signatureClr == NULL) {
+                        xmlSecNssError("DSAU_DecodeDerSigToLen",
+                                       xmlSecTransformGetName(transform));
+                        SECITEM_FreeItem(&signature, PR_FALSE);
+                        return(-1);
+                    }
                 }
 
                 ret = xmlSecBufferSetData(out, signatureClr->data, signatureClr->len);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetData",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d",
-                            signatureClr->len);
+                    xmlSecInternalError2("xmlSecBufferSetData",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", signatureClr->len);
                     SECITEM_FreeItem(&signature, PR_FALSE);
                     return(-1);
                 }
@@ -517,12 +546,9 @@ xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                 /* This signature is used as-is */
                 ret = xmlSecBufferSetData(out, signature.data, signature.len);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetData",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d",
-                            signature.len);
+                    xmlSecInternalError2("xmlSecBufferSetData",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", signature.len);
                     SECITEM_FreeItem(&signature, PR_FALSE);
                     return(-1);
                 }
@@ -539,11 +565,7 @@ xmlSecNssSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
             /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
@@ -598,6 +620,150 @@ xmlSecNssTransformDsaSha1GetKlass(void) {
 
 #endif /* XMLSEC_NO_DSA */
 
+#ifndef XMLSEC_NO_ECDSA
+#ifndef XMLSEC_NO_SHA1
+/****************************************************************************
+ *
+ * ECDSA-SHA1 signature transform
+ *
+ ***************************************************************************/
+
+static xmlSecTransformKlass xmlSecNssEcdsaSha1Klass = {
+    /* klass/object sizes */
+    sizeof(xmlSecTransformKlass),               /* xmlSecSize klassSize */
+    xmlSecNssSignatureSize,                     /* xmlSecSize objSize */
+
+    xmlSecNameEcdsaSha1,                        /* const xmlChar* name; */
+    xmlSecHrefEcdsaSha1,                        /* const xmlChar* href; */
+    xmlSecTransformUsageSignatureMethod,        /* xmlSecTransformUsage usage; */
+
+    xmlSecNssSignatureInitialize,               /* xmlSecTransformInitializeMethod initialize; */
+    xmlSecNssSignatureFinalize,                 /* xmlSecTransformFinalizeMethod finalize; */
+    NULL,                                       /* xmlSecTransformNodeReadMethod readNode; */
+    NULL,                                       /* xmlSecTransformNodeWriteMethod writeNode; */
+    xmlSecNssSignatureSetKeyReq,                /* xmlSecTransformSetKeyReqMethod setKeyReq; */
+    xmlSecNssSignatureSetKey,                   /* xmlSecTransformSetKeyMethod setKey; */
+    xmlSecNssSignatureVerify,                   /* xmlSecTransformVerifyMethod verify; */
+    xmlSecTransformDefaultGetDataType,          /* xmlSecTransformGetDataTypeMethod getDataType; */
+    xmlSecTransformDefaultPushBin,              /* xmlSecTransformPushBinMethod pushBin; */
+    xmlSecTransformDefaultPopBin,               /* xmlSecTransformPopBinMethod popBin; */
+    NULL,                                       /* xmlSecTransformPushXmlMethod pushXml; */
+    NULL,                                       /* xmlSecTransformPopXmlMethod popXml; */
+    xmlSecNssSignatureExecute,                  /* xmlSecTransformExecuteMethod execute; */
+
+    NULL,                                       /* void* reserved0; */
+    NULL,                                       /* void* reserved1; */
+};
+
+/**
+ * xmlSecNssTransformEcdsaSha1GetKlass:
+ *
+ * The ECDSA-SHA1 signature transform klass.
+ *
+ * Returns: ECDSA-SHA1 signature transform klass.
+ */
+xmlSecTransformId
+xmlSecNssTransformEcdsaSha1GetKlass(void) {
+    return(&xmlSecNssEcdsaSha1Klass);
+}
+
+#endif /* XMLSEC_NO_SHA1 */
+#ifndef XMLSEC_NO_SHA256
+/****************************************************************************
+ *
+ * ECDSA-SHA256 signature transform
+ *
+ ***************************************************************************/
+
+static xmlSecTransformKlass xmlSecNssEcdsaSha256Klass = {
+    /* klass/object sizes */
+    sizeof(xmlSecTransformKlass),               /* xmlSecSize klassSize */
+    xmlSecNssSignatureSize,                     /* xmlSecSize objSize */
+
+    xmlSecNameEcdsaSha256,                      /* const xmlChar* name; */
+    xmlSecHrefEcdsaSha256,                      /* const xmlChar* href; */
+    xmlSecTransformUsageSignatureMethod,        /* xmlSecTransformUsage usage; */
+
+    xmlSecNssSignatureInitialize,               /* xmlSecTransformInitializeMethod initialize; */
+    xmlSecNssSignatureFinalize,                 /* xmlSecTransformFinalizeMethod finalize; */
+    NULL,                                       /* xmlSecTransformNodeReadMethod readNode; */
+    NULL,                                       /* xmlSecTransformNodeWriteMethod writeNode; */
+    xmlSecNssSignatureSetKeyReq,                /* xmlSecTransformSetKeyReqMethod setKeyReq; */
+    xmlSecNssSignatureSetKey,                   /* xmlSecTransformSetKeyMethod setKey; */
+    xmlSecNssSignatureVerify,                   /* xmlSecTransformVerifyMethod verify; */
+    xmlSecTransformDefaultGetDataType,          /* xmlSecTransformGetDataTypeMethod getDataType; */
+    xmlSecTransformDefaultPushBin,              /* xmlSecTransformPushBinMethod pushBin; */
+    xmlSecTransformDefaultPopBin,               /* xmlSecTransformPopBinMethod popBin; */
+    NULL,                                       /* xmlSecTransformPushXmlMethod pushXml; */
+    NULL,                                       /* xmlSecTransformPopXmlMethod popXml; */
+    xmlSecNssSignatureExecute,                  /* xmlSecTransformExecuteMethod execute; */
+
+    NULL,                                       /* void* reserved0; */
+    NULL,                                       /* void* reserved1; */
+};
+
+/**
+ * xmlSecNssTransformEcdsaSha256GetKlass:
+ *
+ * The ECDSA-SHA256 signature transform klass.
+ *
+ * Returns: ECDSA-SHA256 signature transform klass.
+ */
+xmlSecTransformId
+xmlSecNssTransformEcdsaSha256GetKlass(void) {
+    return(&xmlSecNssEcdsaSha256Klass);
+}
+
+#endif /* XMLSEC_NO_SHA256 */
+#ifndef XMLSEC_NO_SHA512
+/****************************************************************************
+ *
+ * ECDSA-SHA512 signature transform
+ *
+ ***************************************************************************/
+
+static xmlSecTransformKlass xmlSecNssEcdsaSha512Klass = {
+    /* klass/object sizes */
+    sizeof(xmlSecTransformKlass),               /* xmlSecSize klassSize */
+    xmlSecNssSignatureSize,                     /* xmlSecSize objSize */
+
+    xmlSecNameEcdsaSha512,                      /* const xmlChar* name; */
+    xmlSecHrefEcdsaSha512,                      /* const xmlChar* href; */
+    xmlSecTransformUsageSignatureMethod,        /* xmlSecTransformUsage usage; */
+
+    xmlSecNssSignatureInitialize,               /* xmlSecTransformInitializeMethod initialize; */
+    xmlSecNssSignatureFinalize,                 /* xmlSecTransformFinalizeMethod finalize; */
+    NULL,                                       /* xmlSecTransformNodeReadMethod readNode; */
+    NULL,                                       /* xmlSecTransformNodeWriteMethod writeNode; */
+    xmlSecNssSignatureSetKeyReq,                /* xmlSecTransformSetKeyReqMethod setKeyReq; */
+    xmlSecNssSignatureSetKey,                   /* xmlSecTransformSetKeyMethod setKey; */
+    xmlSecNssSignatureVerify,                   /* xmlSecTransformVerifyMethod verify; */
+    xmlSecTransformDefaultGetDataType,          /* xmlSecTransformGetDataTypeMethod getDataType; */
+    xmlSecTransformDefaultPushBin,              /* xmlSecTransformPushBinMethod pushBin; */
+    xmlSecTransformDefaultPopBin,               /* xmlSecTransformPopBinMethod popBin; */
+    NULL,                                       /* xmlSecTransformPushXmlMethod pushXml; */
+    NULL,                                       /* xmlSecTransformPopXmlMethod popXml; */
+    xmlSecNssSignatureExecute,                  /* xmlSecTransformExecuteMethod execute; */
+
+    NULL,                                       /* void* reserved0; */
+    NULL,                                       /* void* reserved1; */
+};
+
+/**
+ * xmlSecNssTransformEcdsaSha512GetKlass:
+ *
+ * The ECDSA-SHA512 signature transform klass.
+ *
+ * Returns: ECDSA-SHA512 signature transform klass.
+ */
+xmlSecTransformId
+xmlSecNssTransformEcdsaSha512GetKlass(void) {
+    return(&xmlSecNssEcdsaSha512Klass);
+}
+
+#endif /* XMLSEC_NO_SHA512 */
+#endif /* XMLSEC_NO_ECDSA */
+
 #ifndef XMLSEC_NO_RSA
 
 #ifndef XMLSEC_NO_MD5
diff --git a/src/nss/symkeys.c b/src/nss/symkeys.c
index b98dd49..c88be8b 100644
--- a/src/nss/symkeys.c
+++ b/src/nss/symkeys.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
diff --git a/src/nss/x509.c b/src/nss/x509.c
index 1bb0fed..ef61d6b 100644
--- a/src/nss/x509.c
+++ b/src/nss/x509.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -374,22 +374,14 @@ xmlSecNssKeyDataX509AdoptCert(xmlSecKeyDataPtr data, CERTCertificate* cert) {
     if(ctx->certsList == NULL) {
         ctx->certsList = CERT_NewCertList();
         if(ctx->certsList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "CERT_NewCertList",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("CERT_NewCertList", xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
 
     ret = CERT_AddCertToListTail(ctx->certsList, cert);
     if(ret != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "CERT_AddCertToListTail",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("CERT_AddCertToListTail", xmlSecKeyDataGetName(data));
         return(-1);
     }
     ctx->numCerts++;
@@ -470,13 +462,8 @@ xmlSecNssKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, CERTSignedCrl* crl) {
     xmlSecAssert2(ctx != NULL, -1);
 
     crlnode = (xmlSecNssX509CrlNodePtr)PR_Malloc(sizeof(xmlSecNssX509CrlNode));
-
     if(crlnode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "PR_Malloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("PR_Malloc", xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -574,31 +561,22 @@ xmlSecNssKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
          */
         certSrc = xmlSecNssKeyDataX509GetCert(src, pos);
         if(certSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecNssKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecNssKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(src),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         certDst = CERT_DupCertificate(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "CERT_DupCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("CERT_DupCertificate", xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecNssKeyDataX509AdoptCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecNssKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(dst));
             CERT_DestroyCertificate(certDst);
             return(-1);
         }
@@ -609,31 +587,22 @@ xmlSecNssKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     for(pos = 0; pos < size; ++pos) {
         crlSrc = xmlSecNssKeyDataX509GetCrl(src, pos);
         if(crlSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecNssKeyDataX509GetCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecNssKeyDataX509GetCrl",
+                                 xmlSecKeyDataGetName(src),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         crlDst = SEC_DupCrl(crlSrc);
         if(crlDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "SEC_DupCrl",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("SEC_DupCrl", xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecNssKeyDataX509AdoptCrl(dst, crlDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecNssKeyDataX509AdoptCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptCrl",
+                                xmlSecKeyDataGetName(dst));
             SEC_DestroyCrl(crlDst);
             return(-1);
         }
@@ -644,20 +613,14 @@ xmlSecNssKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(certSrc != NULL) {
         certDst = CERT_DupCertificate(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "CERT_DupCertificate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("CERT_DupCertificate",
+                           xmlSecKeyDataGetName(dst));
             return(-1);
         }
         ret = xmlSecNssKeyDataX509AdoptKeyCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecNssKeyDataX509AdoptKeyCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssKeyDataX509AdoptKeyCert",
+                                xmlSecKeyDataGetName(dst));
             CERT_DestroyCertificate(certDst);
             return(-1);
         }
@@ -701,7 +664,7 @@ xmlSecNssKeyDataX509Finalize(xmlSecKeyDataPtr data) {
 
 static int
 xmlSecNssKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
-                                xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx) {
+                            xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx) {
     xmlSecKeyDataPtr data;
     int ret;
 
@@ -712,34 +675,23 @@ xmlSecNssKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyEnsureData(key, id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecNssX509DataNodeRead(data, node, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssX509DataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509DataNodeRead",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
-    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
-        ret = xmlSecNssKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecNssKeyDataX509VerifyAndExtractKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
+    ret = xmlSecNssKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNssKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
+        return(-1);
     }
     return(0);
 }
@@ -761,11 +713,9 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     content = xmlSecX509DataGetNodeContent (node, keyInfoCtx);
     if (content < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecX509DataGetNodeContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "content=%d", content);
+        xmlSecInternalError2("xmlSecX509DataGetNodeContent",
+                             xmlSecKeyDataKlassGetName(id),
+                             "content=%d", content);
         return(-1);
     } else if(content == 0) {
         /* by default we are writing certificates and crls */
@@ -784,22 +734,18 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecNssKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecNssKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecNssKeyDataX509GetCert",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         if((content & XMLSEC_X509DATA_CERTIFICATE_NODE) != 0) {
             ret = xmlSecNssX509CertificateNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssX509CertificateNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssX509CertificateNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -807,11 +753,9 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SUBJECTNAME_NODE) != 0) {
             ret = xmlSecNssX509SubjectNameNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssX509SubjectNameNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssX509SubjectNameNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -819,11 +763,9 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_ISSUERSERIAL_NODE) != 0) {
             ret = xmlSecNssX509IssuerSerialNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssX509IssuerSerialNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssX509IssuerSerialNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -831,11 +773,9 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SKI_NODE) != 0) {
             ret = xmlSecNssX509SKINodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssX509SKINodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssX509SKINodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -847,21 +787,17 @@ xmlSecNssKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         for(pos = 0; pos < size; ++pos) {
             crl = xmlSecNssKeyDataX509GetCrl(data, pos);
             if(crl == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssKeyDataX509GetCrl",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssKeyDataX509GetCrl",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
 
             ret = xmlSecNssX509CRLNodeWrite(crl, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecNssX509CRLNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecNssX509CRLNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -905,11 +841,9 @@ xmlSecNssKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecNssKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecNssKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecNssKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "==== Certificate:\n");
@@ -939,11 +873,9 @@ xmlSecNssKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecNssKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecNssKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecNssKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "<Certificate>\n");
@@ -968,32 +900,44 @@ xmlSecNssX509DataNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoC
         cur != NULL;
         cur = xmlSecGetNextElementNode(cur->next)) {
 
-        ret = 0;
         if(xmlSecCheckNodeName(cur, xmlSecNodeX509Certificate, xmlSecDSigNs)) {
             ret = xmlSecNssX509CertificateNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecNssX509CertificateNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SubjectName, xmlSecDSigNs)) {
             ret = xmlSecNssX509SubjectNameNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecNssX509SubjectNameNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerSerial, xmlSecDSigNs)) {
             ret = xmlSecNssX509IssuerSerialNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecNssX509IssuerSerialNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SKI, xmlSecDSigNs)) {
             ret = xmlSecNssX509SKINodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecNssX509SKINodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509CRL, xmlSecDSigNs)) {
             ret = xmlSecNssX509CRLNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError("xmlSecNssX509CRLNodeRead",
+                                    xmlSecKeyDataGetName(data));
+                return(-1);
+            }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* laxi schema validation: ignore unknown nodes */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "read node failed");
+            xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
@@ -1016,11 +960,7 @@ xmlSecNssX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1028,22 +968,16 @@ xmlSecNssX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
 
     cert = xmlSecNssX509CertBase64DerRead(content);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssX509CertBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CertBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CERT_DestroyCertificate(cert);
         xmlFree(content);
         return(-1);
@@ -1065,22 +999,13 @@ xmlSecNssX509CertificateNodeWrite(CERTCertificate* cert, xmlNodePtr node, xmlSec
     /* set base64 lines size from context */
     buf = xmlSecNssX509CertBase64DerWrite(cert, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509CertBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CertBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509Certificate)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1107,11 +1032,8 @@ xmlSecNssX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecNssX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1121,11 +1043,7 @@ xmlSecNssX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
             xmlFree(subject);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1135,12 +1053,8 @@ xmlSecNssX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
     if(cert == NULL){
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subject));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "subject=%s", xmlSecErrorsSafeString(subject));
             xmlFree(subject);
             return(-1);
         }
@@ -1151,11 +1065,8 @@ xmlSecNssX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecK
 
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CERT_DestroyCertificate(cert);
         xmlFree(subject);
         return(-1);
@@ -1169,32 +1080,32 @@ static int
 xmlSecNssX509SubjectNameNodeWrite(CERTCertificate* cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar* buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecNssX509NameWrite(&(cert->subject));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecNssX509NameWrite(&(cert->subject))",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509NameWrite(&(cert->subject))", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecEnsureEmptyChild",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            "node=%s",
-            xmlSecErrorsSafeString(xmlSecNodeX509SubjectName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SubjectName)", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
+
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    /* done */
     xmlFree(buf);
     return(0);
 }
@@ -1215,23 +1126,16 @@ xmlSecNssX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSec
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecNssX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     cur = xmlSecGetNextElementNode(node->children);
     if(cur == NULL) {
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecNodeNotFoundError("xmlSecGetNextElementNode", node, NULL,
+                                    xmlSecKeyDataGetName(data));
             return(-1);
         }
         return(0);
@@ -1239,56 +1143,32 @@ xmlSecNssX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSec
 
     /* the first is required node X509IssuerName */
     if(!xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509IssuerName, xmlSecKeyDataGetName(data));
         return(-1);
     }
     issuerName = xmlNodeGetContent(cur);
     if(issuerName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is required node X509SerialNumber */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509SerialNumber, xmlSecKeyDataGetName(data));
         xmlFree(issuerName);
         return(-1);
     }
     issuerSerial = xmlNodeGetContent(cur);
     if(issuerSerial == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         xmlFree(issuerName);
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1297,13 +1177,10 @@ xmlSecNssX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSec
     cert = xmlSecNssX509StoreFindCert(x509Store, NULL, issuerName, issuerSerial, NULL, keyInfoCtx);
     if(cert == NULL){
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "issuerName=%s;issuerSerial=%s",
-                        xmlSecErrorsSafeString(issuerName),
-                        xmlSecErrorsSafeString(issuerSerial));
+            xmlSecOtherError3(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "issuerName=%s;issuerSerial=%s",
+                              xmlSecErrorsSafeString(issuerName),
+                              xmlSecErrorsSafeString(issuerSerial));
             xmlFree(issuerSerial);
             xmlFree(issuerName);
             return(-1);
@@ -1316,11 +1193,8 @@ xmlSecNssX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSec
 
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CERT_DestroyCertificate(cert);
         xmlFree(issuerSerial);
         xmlFree(issuerName);
@@ -1338,6 +1212,7 @@ xmlSecNssX509IssuerSerialNodeWrite(CERTCertificate* cert, xmlNodePtr node, xmlSe
     xmlNodePtr issuerNameNode;
     xmlNodePtr issuerNumberNode;
     xmlChar* buf;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
@@ -1345,57 +1220,40 @@ xmlSecNssX509IssuerSerialNodeWrite(CERTCertificate* cert, xmlNodePtr node, xmlSe
     /* create xml nodes */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerSerial)", NULL);
         return(-1);
     }
 
     issuerNameNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs);
     if(issuerNameNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509IssuerName)", NULL);
         return(-1);
     }
 
     issuerNumberNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
     if(issuerNumberNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SerialNumber)", NULL);
         return(-1);
     }
 
     /* write data */
     buf = xmlSecNssX509NameWrite(&(cert->issuer));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509NameWrite(&(cert->issuer))",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509NameWrite(&(cert->issuer))", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNameNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
     xmlFree(buf);
 
     buf = xmlSecNssASN1IntegerWrite(&(cert->serialNumber));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssASN1IntegerWrite(&(cert->serialNumber))",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssASN1IntegerWrite(&(cert->serialNumber))", NULL);
         return(-1);
     }
     xmlNodeSetContent(issuerNumberNode, buf);
@@ -1418,11 +1276,8 @@ xmlSecNssX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecNssX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1432,12 +1287,7 @@ xmlSecNssX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
             xmlFree(ski);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1448,12 +1298,8 @@ xmlSecNssX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
         xmlFree(ski);
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "ski=%s", xmlSecErrorsSafeString(ski));
             return(-1);
         }
         return(0);
@@ -1461,11 +1307,8 @@ xmlSecNssX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
 
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         CERT_DestroyCertificate(cert);
         xmlFree(ski);
         return(-1);
@@ -1479,34 +1322,33 @@ static int
 xmlSecNssX509SKINodeWrite(CERTCertificate* cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar *buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecNssX509SKIWrite(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509SKIWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509SKIWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509SKI)", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
-    xmlFree(buf);
 
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1525,11 +1367,7 @@ xmlSecNssX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1537,11 +1375,8 @@ xmlSecNssX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyInfoCt
 
     crl = xmlSecNssX509CrlBase64DerRead(content, keyInfoCtx);
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecNssX509CrlBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CrlBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
@@ -1563,22 +1398,13 @@ xmlSecNssX509CRLNodeWrite(CERTSignedCrl* crl, xmlNodePtr node, xmlSecKeyInfoCtxP
     /* set base64 lines size from context */
     buf = xmlSecNssX509CrlBase64DerWrite(crl, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509CrlBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CrlBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(NodeX509CRL)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1611,11 +1437,8 @@ xmlSecNssKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr key,
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecNssX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1628,42 +1451,30 @@ xmlSecNssKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr key,
 
             ctx->keyCert = CERT_DupCertificate(cert);
             if(ctx->keyCert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "CERT_DupCertificate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecNssError("CERT_DupCertificate",
+                               xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             keyValue = xmlSecNssX509CertGetKey(ctx->keyCert);
             if(keyValue == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecNssX509CertGetKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNssX509CertGetKey",
+                                    xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             /* verify that the key matches our expectations */
             if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), keyValue) != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeyReqMatchKeyValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
 
             ret = xmlSecKeySetValue(key, keyValue);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeySetValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeySetValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
@@ -1672,31 +1483,21 @@ xmlSecNssKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr key,
             if (status == SECSuccess) {
                 ret = xmlSecNssX509CertGetTime(&notBefore, &(key->notValidBefore));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecNssX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidBefore");
+                    xmlSecInternalError("xmlSecNssX509CertGetTime(notValidBefore)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
                 }
                 ret = xmlSecNssX509CertGetTime(&notAfter, &(key->notValidAfter));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecNssX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidAfter");
+                    xmlSecInternalError("xmlSecNssX509CertGetTime(notValidAfter)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
                 }
             } else {
                 key->notValidBefore = key->notValidAfter = 0;
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data), NULL);
             return(-1);
         }
     }
@@ -1742,21 +1543,13 @@ xmlSecNssX509CertGetKey(CERTCertificate* cert) {
 
     pubkey = CERT_ExtractPublicKey(cert);
     if(pubkey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CERT_ExtractPublicKey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("CERT_ExtractPublicKey", NULL);
         return(NULL);
     }
 
     data = xmlSecNssPKIAdoptKey(NULL, pubkey);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssPKIAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssPKIAdoptKey", NULL);
         SECKEY_DestroyPublicKey(pubkey);
         return(NULL);
     }
@@ -1773,11 +1566,7 @@ xmlSecNssX509CertBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1800,11 +1589,7 @@ xmlSecNssX509CertDerRead(const xmlSecByte* buf, xmlSecSize size) {
     cert = __CERT_NewTempCertificate(CERT_GetDefaultCertDB(), &derCert,
                                      NULL, PR_FALSE, PR_TRUE);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "__CERT_NewTempCertificate",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("__CERT_NewTempCertificate", NULL);
         return(NULL);
     }
 
@@ -1821,23 +1606,14 @@ xmlSecNssX509CertBase64DerWrite(CERTCertificate* cert, int base64LineWrap) {
     xmlSecAssert2(cert != NULL, NULL);
 
     p = cert->derCert.data;
+    xmlSecAssert2(p != NULL, NULL);
+
     size = cert->derCert.len;
-    if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "cert->derCert",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
-        return(NULL);
-    }
+    xmlSecAssert2(size > 0, NULL);
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         return(NULL);
     }
 
@@ -1854,11 +1630,7 @@ xmlSecNssX509CrlBase64DerRead(xmlChar* buf,
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1886,26 +1658,19 @@ xmlSecNssX509CrlDerRead(xmlSecByte* buf, xmlSecSize size,
      */
     slot = xmlSecNssGetInternalKeySlot();
     if (slot == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssGetInternalKeySlot",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssGetInternalKeySlot", NULL);
         return NULL;
     }
 
-    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS) != 0)
+    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_SKIP_STRICT_CHECKS) != 0) {
         importOptions |= CRL_IMPORT_BYPASS_CHECKS;
+    }
 
     crl = PK11_ImportCRL(slot, &derCrl, NULL, SEC_CRL_TYPE, NULL,
                          importOptions, NULL, CRL_DECODE_DEFAULT_OPTIONS);
 
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PK11_ImportCRL",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
+        xmlSecNssError("PK11_ImportCRL", NULL);
         PK11_FreeSlot(slot);
         return(NULL);
     }
@@ -1923,23 +1688,14 @@ xmlSecNssX509CrlBase64DerWrite(CERTSignedCrl* crl, int base64LineWrap) {
     xmlSecAssert2(crl != NULL && crl->derCrl != NULL, NULL);
 
     p = crl->derCrl->data;
+    xmlSecAssert2(p != NULL, NULL);
+
     size = crl->derCrl->len;
-    if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "crl->derCrl",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "error code=%d", PORT_GetError());
-        return(NULL);
-    }
+    xmlSecAssert2(size > 0, NULL);
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         return(NULL);
     }
 
@@ -1955,21 +1711,13 @@ xmlSecNssX509NameWrite(CERTName* nm) {
 
     str = CERT_NameToAscii(nm);
     if (str == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CERT_NameToAscii",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("CERT_NameToAscii", NULL);
         return(NULL);
     }
 
     res = xmlStrdup(BAD_CAST str);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlStrdup",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecStrdupError(BAD_CAST str, NULL);
         PORT_Free(str);
         return(NULL);
     }
@@ -1999,11 +1747,7 @@ xmlSecNssASN1IntegerWrite(SECItem *num) {
 
     res = (xmlChar*)xmlMalloc(resLen + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlStrdup",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(resLen + 1, NULL);
         return (NULL);
     }
 
@@ -2023,22 +1767,14 @@ xmlSecNssX509SKIWrite(CERTCertificate* cert) {
 
     rv = CERT_FindSubjectKeyIDExtension(cert, &ski);
     if (rv != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CERT_FindSubjectKeyIDExtension",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError("CERT_FindSubjectKeyIDExtension", NULL);
         SECITEM_FreeItem(&ski, PR_FALSE);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(ski.data, ski.len, 0);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         SECITEM_FreeItem(&ski, PR_FALSE);
         return(NULL);
     }
@@ -2178,43 +1914,30 @@ xmlSecNssKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     cert = xmlSecNssX509CertDerRead(buf, bufSize);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509CertDerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssX509CertDerRead", NULL);
         return(-1);
     }
 
     data = xmlSecKeyEnsureData(key, xmlSecNssKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         CERT_DestroyCertificate(cert);
         return(-1);
     }
 
     ret = xmlSecNssKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509AdoptCert",
+                            xmlSecKeyDataKlassGetName(id));
         CERT_DestroyCertificate(cert);
         return(-1);
     }
 
     ret = xmlSecNssKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecNssKeyDataX509VerifyAndExtractKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNssKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     return(0);
diff --git a/src/nss/x509vfy.c b/src/nss/x509vfy.c
index 9e957fe..cd328fe 100644
--- a/src/nss/x509vfy.c
+++ b/src/nss/x509vfy.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -168,6 +168,7 @@ xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs,
     SECStatus status = SECFailure;
     int64 timeboundary;
     int64 tmp1, tmp2;
+    PRErrorCode err;
 
     xmlSecAssert2(xmlSecKeyDataStoreCheckId(store, xmlSecNssX509StoreId), NULL);
     xmlSecAssert2(certs != NULL, NULL);
@@ -176,19 +177,20 @@ xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs,
     ctx = xmlSecNssX509StoreGetCtx(store);
     xmlSecAssert2(ctx != NULL, NULL);
 
+    if(keyInfoCtx->certsVerificationTime > 0) {
+	    /* convert the time since epoch in seconds to microseconds */
+        LL_UI2L(timeboundary, keyInfoCtx->certsVerificationTime);
+        tmp1 = (int64)PR_USEC_PER_SEC;
+        tmp2 = timeboundary;
+        LL_MUL(timeboundary, tmp1, tmp2);
+    } else {
+        timeboundary = PR_Now();
+    }
+
     for (head = CERT_LIST_HEAD(certs);
          !CERT_LIST_END(head, certs);
          head = CERT_LIST_NEXT(head)) {
         cert = head->cert;
-        if(keyInfoCtx->certsVerificationTime > 0) {
-            /* convert the time since epoch in seconds to microseconds */
-            LL_UI2L(timeboundary, keyInfoCtx->certsVerificationTime);
-            tmp1 = (int64)PR_USEC_PER_SEC;
-            tmp2 = timeboundary;
-            LL_MUL(timeboundary, tmp1, tmp2);
-        } else {
-            timeboundary = PR_Now();
-        }
 
         /* if cert is the issuer of any other cert in the list, then it is
          * to be skipped */
@@ -211,11 +213,18 @@ xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs,
             continue;
         }
 
-        status = CERT_VerifyCertificate(CERT_GetDefaultCertDB(),
-                                        cert, PR_FALSE,
-                                        (SECCertificateUsage)0,
-                                        timeboundary , NULL, NULL, NULL);
-        if (status == SECSuccess) {
+        if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
+            /* it's important to set the usage here, otherwise no real verification
+             * is performed. */
+            status = CERT_VerifyCertificate(CERT_GetDefaultCertDB(),
+                                            cert, PR_FALSE,
+                                            certificateUsageEmailSigner,
+                                            timeboundary , NULL, NULL, NULL);
+            if(status == SECSuccess) {
+                break;
+            }
+        } else {
+            status = SECSuccess;
             break;
         }
     }
@@ -224,44 +233,34 @@ xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs,
         return (cert);
     }
 
-    switch(PORT_GetError()) {
+    err = PORT_GetError();
+    switch(err) {
         case SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE:
         case SEC_ERROR_CA_CERT_INVALID:
         case SEC_ERROR_UNKNOWN_SIGNER:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_ISSUER_FAILED,
-                        "cert with subject name %s could not be verified because the issuer's cert is expired/invalid or not found",
-                        (cert != NULL) ? cert->subjectName : "(NULL)"
-            );
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_ISSUER_FAILED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=\"%s\"; reason=the issuer's cert is expired/invalid or not found",
+                              xmlSecErrorsSafeString(cert->subjectName));
             break;
         case SEC_ERROR_EXPIRED_CERTIFICATE:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
-                        "cert with subject name %s has expired",
-                        (cert != NULL) ? cert->subjectName : "(NULL)"
-            );
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=\"%s\"; reason=expired",
+                              xmlSecErrorsSafeString(cert->subjectName));
             break;
         case SEC_ERROR_REVOKED_CERTIFICATE:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_REVOKED,
-                        "cert with subject name %s has been revoked",
-                        (cert != NULL) ? cert->subjectName : "(NULL)"
-            );
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_REVOKED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=\"%s\"; reason=revoked",
+                              xmlSecErrorsSafeString(cert->subjectName));
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
-                        "cert with subject name %s could not be verified, errcode %d",
-                        (cert != NULL) ? cert->subjectName : "(NULL)",
-                        PORT_GetError());
+            xmlSecOtherError3(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=\"%s\"; reason=%d",
+                              xmlSecErrorsSafeString(cert->subjectName),
+                              (int)err);
             break;
     }
 
@@ -279,7 +278,7 @@ xmlSecNssX509StoreVerify(xmlSecKeyDataStorePtr store, CERTCertList* certs,
  * Returns: 0 on success or a negative value if an error occurs.
  */
 int
-xmlSecNssX509StoreAdoptCert(xmlSecKeyDataStorePtr store, CERTCertificate* cert, xmlSecKeyDataType type ATTRIBUTE_UNUSED) {
+xmlSecNssX509StoreAdoptCert(xmlSecKeyDataStorePtr store, CERTCertificate* cert, xmlSecKeyDataType type) {
     xmlSecNssX509StoreCtxPtr ctx;
     int ret;
 
@@ -292,25 +291,34 @@ xmlSecNssX509StoreAdoptCert(xmlSecKeyDataStorePtr store, CERTCertificate* cert,
     if(ctx->certsList == NULL) {
         ctx->certsList = CERT_NewCertList();
         if(ctx->certsList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "CERT_NewCertList",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                                "error code=%d", PORT_GetError());
+            xmlSecNssError("CERT_NewCertList", xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
     }
 
     ret = CERT_AddCertToListTail(ctx->certsList, cert);
     if(ret != SECSuccess) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "CERT_AddCertToListTail",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                        "error code=%d", PORT_GetError());
+        xmlSecNssError("CERT_AddCertToListTail", xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
+    if(type == xmlSecKeyDataTypeTrusted) {
+        SECStatus status;
+
+        /* if requested, mark the certificate as trusted */
+        CERTCertTrust trust;
+        status = CERT_DecodeTrustString(&trust, "TCu,Cu,Tu");
+        if(status != SECSuccess) {
+            xmlSecNssError("CERT_DecodeTrustString", xmlSecKeyDataStoreGetName(store));
+            return(-1);
+        }
+        CERT_ChangeCertTrust(CERT_GetDefaultCertDB(), cert, &trust);
+        if(status != SECSuccess) {
+            xmlSecNssError("CERT_ChangeCertTrust", xmlSecKeyDataStoreGetName(store));
+            return(-1);
+        }
+    }
+
     return(0);
 }
 
@@ -364,12 +372,7 @@ xmlSecNssGetCertName(const xmlChar * name) {
      */
     name2 = xmlStrdup(name);
     if(name2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "xmlStrlen(name)=%d",
-                    xmlStrlen(name));
+        xmlSecStrdupError(name, NULL);
         return(NULL);
     }
     while( (p = (xmlChar*)xmlStrstr(name2, BAD_CAST "emailAddress=")) != NULL) {
@@ -378,25 +381,16 @@ xmlSecNssGetCertName(const xmlChar * name) {
 
     tmp = xmlSecNssX509NameRead(name2, xmlStrlen(name2));
     if(tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNssX509NameRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name2=\"%s\"",
-                    xmlSecErrorsSafeString(name2));
+        xmlSecInternalError2("xmlSecNssX509NameRead", NULL,
+                             "name2=\"%s\"", xmlSecErrorsSafeString(name2));
         xmlFree(name2);
         return(NULL);
     }
 
     res = CERT_AsciiToName((char*)tmp);
-    if (name == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CERT_AsciiToName",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "ascii=\"%s\", error code=%d",
-                    xmlSecErrorsSafeString((char*)tmp),
-                    PORT_GetError());
+    if (res == NULL) {
+        xmlSecNssError2("CERT_AsciiToName", NULL,
+                        "ascii=\"%s\"", xmlSecErrorsSafeString((char*)tmp));
         PORT_Free(tmp);
         xmlFree(name2);
         return(NULL);
@@ -422,23 +416,16 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
     if ((cert == NULL) && (subjectName != NULL)) {
         name = xmlSecNssGetCertName(subjectName);
         if (name == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssGetCertName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subjectName));
+            xmlSecInternalError2("xmlSecNssGetCertName", NULL,
+                                 "subject=%s",
+                                 xmlSecErrorsSafeString(subjectName));
             goto done;
         }
 
         if(arena == NULL) {
             arena = PORT_NewArena(DER_DEFAULT_CHUNKSIZE);
             if (arena == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PORT_NewArena",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecNssError("PORT_NewArena", NULL);
                 goto done;
             }
         }
@@ -446,11 +433,7 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
         nameitem = SEC_ASN1EncodeItem(arena, NULL, (void *)name,
                                       SEC_ASN1_GET(CERT_NameTemplate));
         if (nameitem == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SEC_ASN1EncodeItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("SEC_ASN1EncodeItem", NULL);
             goto done;
         }
 
@@ -463,23 +446,16 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
 
         name = xmlSecNssGetCertName(issuerName);
         if (name == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssGetCertName",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "issuer=%s",
-                        xmlSecErrorsSafeString(issuerName));
+            xmlSecInternalError2("xmlSecNssGetCertName", NULL,
+                                 "issuer=%s",
+                                 xmlSecErrorsSafeString(issuerName));
             goto done;
         }
 
         if(arena == NULL) {
             arena = PORT_NewArena(DER_DEFAULT_CHUNKSIZE);
             if (arena == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PORT_NewArena",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecNssError("PORT_NewArena", NULL);
                 goto done;
             }
         }
@@ -487,11 +463,7 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
         nameitem = SEC_ASN1EncodeItem(arena, NULL, (void *)name,
                                       SEC_ASN1_GET(CERT_NameTemplate));
         if (nameitem == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "SEC_ASN1EncodeItem",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "error code=%d", PORT_GetError());
+            xmlSecNssError("SEC_ASN1EncodeItem", NULL);
             goto done;
         }
 
@@ -502,22 +474,14 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
 
         /* TBD: serial num can be arbitrarily long */
         if(PR_sscanf((char *)issuerSerial, "%llu", &issuerSN) != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "PR_sscanf",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "error code=%d", PR_GetError());
+            xmlSecNssError("PR_sscanf(issuerSerial)", NULL);
             SECITEM_FreeItem(&issuerAndSN.serialNumber, PR_FALSE);
             goto done;
         }
 
         rv = xmlSecNssNumToItem(&issuerAndSN.serialNumber, issuerSN);
         if(rv <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssNumToItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "error code=%d", PR_GetError());
+            xmlSecInternalError("xmlSecNssNumToItem(serialNumber)", NULL);
             SECITEM_FreeItem(&issuerAndSN.serialNumber, PR_FALSE);
             goto done;
         }
@@ -532,12 +496,7 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
 
         len = xmlSecBase64Decode(ski, (xmlSecByte*)ski, xmlStrlen(ski));
         if(len < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64Decode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecInternalError("xmlSecBase64Decode", NULL);
             goto done;
         }
 
@@ -561,11 +520,7 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
                 memset(&tmpitem, 0, sizeof(tmpitem));
                 status = CERT_FindSubjectKeyIDExtension(head->cert, &tmpitem);
                 if (status != SECSuccess)  {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "CERT_FindSubjectKeyIDExtension",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                "ski");
+                    xmlSecNssError("CERT_FindSubjectKeyIDExtension(ski)", NULL);
                     SECITEM_FreeItem(&tmpitem, PR_FALSE);
                     goto done;
                 }
@@ -575,11 +530,7 @@ xmlSecNssX509FindCert(CERTCertList* certsList, const xmlChar *subjectName,
                 ) {
                     cert = CERT_DupCertificate(head->cert);
                     if(cert == NULL) {
-                        xmlSecError(XMLSEC_ERRORS_HERE,
-                                    NULL,
-                                    "CERT_DupCertificate",
-                                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                    "error code=%d", PORT_GetError());
+                        xmlSecNssError("CERT_DupCertificate", NULL);
                         SECITEM_FreeItem(&tmpitem, PR_FALSE);
                         goto done;
                     }
@@ -613,11 +564,8 @@ xmlSecNssX509NameRead(xmlSecByte *str, int len) {
     /* return string should be no longer than input string */
     retval = (xmlSecByte *)PORT_Alloc(len+1);
     if(retval == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PORT_Alloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNssError2("PORT_Alloc", NULL,
+                        "size=%d", (len+1));
         return(NULL);
     }
     p = retval;
@@ -630,11 +578,7 @@ xmlSecNssX509NameRead(xmlSecByte *str, int len) {
 
         nameLen = xmlSecNssX509NameStringRead(&str, &len, name, sizeof(name), '=', 0);
         if(nameLen < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNssX509NameStringRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNssX509NameStringRead", NULL);
             goto done;
         }
         memcpy(p, name, nameLen);
@@ -646,11 +590,7 @@ xmlSecNssX509NameRead(xmlSecByte *str, int len) {
                 valueLen = xmlSecNssX509NameStringRead(&str, &len,
                                         value, sizeof(value), '"', 1);
                 if(valueLen < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecNssX509NameStringRead",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecNssX509NameStringRead", NULL);
                     goto done;
                 }
                 /* skip spaces before comma or semicolon */
@@ -658,11 +598,7 @@ xmlSecNssX509NameRead(xmlSecByte *str, int len) {
                     ++str; --len;
                 }
                 if((len > 0) && ((*str) != ',')) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "comma is expected");
+                    xmlSecInvalidIntegerDataError("char", (*str), "comma ','", NULL);
                     goto done;
                 }
                 if(len > 0) {
@@ -674,21 +610,13 @@ xmlSecNssX509NameRead(xmlSecByte *str, int len) {
                 *p++='\"';
             } else if((*str) == '#') {
                 /* TODO: read octect values */
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_DATA,
-                            "reading octect values is not implemented yet");
+                xmlSecNotImplementedError("reading octect values is not implemented yet");
                 goto done;
             } else {
                 valueLen = xmlSecNssX509NameStringRead(&str, &len,
                                         value, sizeof(value), ',', 1);
                 if(valueLen < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecNssX509NameStringRead",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecNssX509NameStringRead", NULL);
                     goto done;
                 }
                 memcpy(p, value, valueLen);
@@ -734,22 +662,14 @@ xmlSecNssX509NameStringRead(xmlSecByte **str, int *strLen,
             nonSpace = q;
             if(xmlSecIsHex((*p))) {
                 if((p - (*str) + 1) >= (*strLen)) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "two hex digits expected");
+                    xmlSecInvalidDataError("two hex digits expected", NULL);
                     return(-1);
                 }
                 *(q++) = xmlSecGetHex(p[0]) * 16 + xmlSecGetHex(p[1]);
                 p += 2;
             } else {
                 if(((++p) - (*str)) >= (*strLen)) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "escaped symbol missed");
+                    xmlSecInvalidDataError("escaped symbol missed", NULL);
                     return(-1);
                 }
                 *(q++) = *(p++);
@@ -757,11 +677,7 @@ xmlSecNssX509NameStringRead(xmlSecByte **str, int *strLen,
         }
     }
     if(((p - (*str)) < (*strLen)) && ((*p) != delim)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "buffer is too small");
+        xmlSecInvalidSizeOtherError("buffer is too small", NULL);
         return(-1);
     }
     (*strLen) -= (p - (*str));
diff --git a/src/openssl/Makefile.am b/src/openssl/Makefile.am
index edd82b9..df014c8 100644
--- a/src/openssl/Makefile.am
+++ b/src/openssl/Makefile.am
@@ -35,13 +35,9 @@ libxmlsec1_openssl_la_SOURCES =\
 	x509.c \
 	x509vfy.c \
 	globals.h \
-	openssl11_wrapper.h \
+	openssl_compat.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_openssl_la_SOURCES += ../strings.c
-endif
-
 libxmlsec1_openssl_la_LIBADD = \
 	$(OPENSSL_LIBS) \
 	$(LIBXSLT_LIBS) \
diff --git a/src/openssl/Makefile.in b/src/openssl/Makefile.in
index 8f2fa4f..1868786 100644
--- a/src/openssl/Makefile.in
+++ b/src/openssl/Makefile.in
@@ -88,7 +88,6 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
- at SHAREDLIB_HACK_TRUE@am__append_1 = ../strings.c
 subdir = src/openssl
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
@@ -132,14 +131,7 @@ am__uninstall_files_from_dir = { \
 am__installdirs = "$(DESTDIR)$(libdir)"
 LTLIBRARIES = $(lib_LTLIBRARIES)
 am__DEPENDENCIES_1 =
-am__libxmlsec1_openssl_la_SOURCES_DIST = app.c bn.c ciphers.c crypto.c \
-	digests.c evp.c evp_signatures.c hmac.c kw_aes.c kw_des.c \
-	kt_rsa.c signatures.c symkeys.c x509.c x509vfy.c globals.h \
-	openssl11_wrapper.h ../strings.c
 am__objects_1 =
-am__dirstamp = $(am__leading_dot)dirstamp
- at SHAREDLIB_HACK_TRUE@am__objects_2 =  \
- at SHAREDLIB_HACK_TRUE@	../libxmlsec1_openssl_la-strings.lo
 am_libxmlsec1_openssl_la_OBJECTS = libxmlsec1_openssl_la-app.lo \
 	libxmlsec1_openssl_la-bn.lo libxmlsec1_openssl_la-ciphers.lo \
 	libxmlsec1_openssl_la-crypto.lo \
@@ -150,8 +142,7 @@ am_libxmlsec1_openssl_la_OBJECTS = libxmlsec1_openssl_la-app.lo \
 	libxmlsec1_openssl_la-kt_rsa.lo \
 	libxmlsec1_openssl_la-signatures.lo \
 	libxmlsec1_openssl_la-symkeys.lo libxmlsec1_openssl_la-x509.lo \
-	libxmlsec1_openssl_la-x509vfy.lo $(am__objects_1) \
-	$(am__objects_2)
+	libxmlsec1_openssl_la-x509vfy.lo $(am__objects_1)
 libxmlsec1_openssl_la_OBJECTS = $(am_libxmlsec1_openssl_la_OBJECTS)
 AM_V_lt = $(am__v_lt_ at AM_V@)
 am__v_lt_ = $(am__v_lt_ at AM_DEFAULT_V@)
@@ -196,7 +187,7 @@ am__v_CCLD_ = $(am__v_CCLD_ at AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD    " $@;
 am__v_CCLD_1 = 
 SOURCES = $(libxmlsec1_openssl_la_SOURCES)
-DIST_SOURCES = $(am__libxmlsec1_openssl_la_SOURCES_DIST)
+DIST_SOURCES = $(libxmlsec1_openssl_la_SOURCES)
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -285,6 +276,7 @@ LIBXSLT_PC_FILE_COND = @LIBXSLT_PC_FILE_COND@
 LIPO = @LIPO@
 LN_S = @LN_S@
 LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
 MAINT = @MAINT@
 MAKEINFO = @MAKEINFO@
 MAN2HTML = @MAN2HTML@
@@ -332,6 +324,7 @@ SHELL = @SHELL@
 STRIP = @STRIP@
 TAR = @TAR@
 VERSION = @VERSION@
+XMLSEC_APPS = @XMLSEC_APPS@
 XMLSEC_APP_DEFINES = @XMLSEC_APP_DEFINES@
 XMLSEC_CFLAGS = @XMLSEC_CFLAGS@
 XMLSEC_CORE_CFLAGS = @XMLSEC_CORE_CFLAGS@
@@ -348,6 +341,7 @@ XMLSEC_DEFINES = @XMLSEC_DEFINES@
 XMLSEC_DL_INCLUDES = @XMLSEC_DL_INCLUDES@
 XMLSEC_DL_LIBS = @XMLSEC_DL_LIBS@
 XMLSEC_DOCDIR = @XMLSEC_DOCDIR@
+XMLSEC_DOCS = @XMLSEC_DOCS@
 XMLSEC_EXTRA_LDFLAGS = @XMLSEC_EXTRA_LDFLAGS@
 XMLSEC_GCRYPT_CFLAGS = @XMLSEC_GCRYPT_CFLAGS@
 XMLSEC_GCRYPT_LIBS = @XMLSEC_GCRYPT_LIBS@
@@ -437,6 +431,7 @@ pdfdir = @pdfdir@
 prefix = @prefix@
 program_transform_name = @program_transform_name@
 psdir = @psdir@
+runstatedir = @runstatedir@
 sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
@@ -464,10 +459,26 @@ libxmlsec1_openssl_la_CPPFLAGS = \
 	$(LIBXML_CFLAGS) \
 	$(NULL)
 
-libxmlsec1_openssl_la_SOURCES = app.c bn.c ciphers.c crypto.c \
-	digests.c evp.c evp_signatures.c hmac.c kw_aes.c kw_des.c \
-	kt_rsa.c signatures.c symkeys.c x509.c x509vfy.c globals.h \
-	openssl11_wrapper.h $(NULL) $(am__append_1)
+libxmlsec1_openssl_la_SOURCES = \
+	app.c \
+	bn.c \
+	ciphers.c \
+	crypto.c \
+	digests.c \
+	evp.c \
+	evp_signatures.c \
+	hmac.c \
+	kw_aes.c \
+	kw_des.c \
+	kt_rsa.c \
+	signatures.c \
+	symkeys.c \
+	x509.c \
+	x509vfy.c \
+	globals.h \
+	openssl_compat.h \
+	$(NULL)
+
 libxmlsec1_openssl_la_LIBADD = \
 	$(OPENSSL_LIBS) \
 	$(LIBXSLT_LIBS) \
@@ -551,27 +562,16 @@ clean-libLTLIBRARIES:
 	  echo rm -f $${locs}; \
 	  rm -f $${locs}; \
 	}
-../$(am__dirstamp):
-	@$(MKDIR_P) ..
-	@: > ../$(am__dirstamp)
-../$(DEPDIR)/$(am__dirstamp):
-	@$(MKDIR_P) ../$(DEPDIR)
-	@: > ../$(DEPDIR)/$(am__dirstamp)
-../libxmlsec1_openssl_la-strings.lo: ../$(am__dirstamp) \
-	../$(DEPDIR)/$(am__dirstamp)
 
 libxmlsec1-openssl.la: $(libxmlsec1_openssl_la_OBJECTS) $(libxmlsec1_openssl_la_DEPENDENCIES) $(EXTRA_libxmlsec1_openssl_la_DEPENDENCIES) 
 	$(AM_V_CCLD)$(libxmlsec1_openssl_la_LINK) -rpath $(libdir) $(libxmlsec1_openssl_la_OBJECTS) $(libxmlsec1_openssl_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
 	-rm -f *.$(OBJEXT)
-	-rm -f ../*.$(OBJEXT)
-	-rm -f ../*.lo
 
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ../$(DEPDIR)/libxmlsec1_openssl_la-strings.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_openssl_la-app.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_openssl_la-bn.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libxmlsec1_openssl_la-ciphers.Plo at am__quote@
@@ -717,19 +717,11 @@ libxmlsec1_openssl_la-x509vfy.lo: x509vfy.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_openssl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libxmlsec1_openssl_la-x509vfy.lo `test -f 'x509vfy.c' || echo '$(srcdir)/'`x509vfy.c
 
-../libxmlsec1_openssl_la-strings.lo: ../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_openssl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libxmlsec1_openssl_la-strings.lo -MD -MP -MF ../$(DEPDIR)/libxmlsec1_openssl_la-strings.Tpo -c -o ../libxmlsec1_openssl_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
- at am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) ../$(DEPDIR)/libxmlsec1_openssl_la-strings.Tpo ../$(DEPDIR)/libxmlsec1_openssl_la-strings.Plo
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='../strings.c' object='../libxmlsec1_openssl_la-strings.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(AM_V_CC at am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libxmlsec1_openssl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libxmlsec1_openssl_la-strings.lo `test -f '../strings.c' || echo '$(srcdir)/'`../strings.c
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
 clean-libtool:
 	-rm -rf .libs _libs
-	-rm -rf ../.libs ../_libs
 
 ID: $(am__tagged_files)
 	$(am__define_uniq_tagged_files); mkid -fID $$unique
@@ -846,8 +838,6 @@ clean-generic:
 distclean-generic:
 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
-	-rm -f ../$(DEPDIR)/$(am__dirstamp)
-	-rm -f ../$(am__dirstamp)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -858,7 +848,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -904,7 +894,7 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ../$(DEPDIR) ./$(DEPDIR)
+	-rm -rf ./$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
diff --git a/src/openssl/app.c b/src/openssl/app.c
index 67566e9..855ce19 100644
--- a/src/openssl/app.c
+++ b/src/openssl/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -33,8 +33,8 @@
 #include <xmlsec/openssl/evp.h>
 #include <xmlsec/openssl/x509.h>
 
-static int      xmlSecOpenSSLAppLoadRANDFile            (const char *file);
-static int      xmlSecOpenSSLAppSaveRANDFile            (const char *file);
+static int      xmlSecOpenSSLAppLoadRANDFile            (const char *filename);
+static int      xmlSecOpenSSLAppSaveRANDFile            (const char *filename);
 static int      xmlSecOpenSSLDefaultPasswordCallback    (char *buf,
                                                          int bufsiz,
                                                          int verify,
@@ -46,6 +46,7 @@ static int      xmlSecOpenSSLDummyPasswordCallback      (char *buf,
 
 /* conversion from ptr to func "the right way" */
 XMLSEC_PTR_TO_FUNC_IMPL(pem_password_cb)
+XMLSEC_FUNC_TO_PTR_IMPL(pem_password_cb)
 
 
 /**
@@ -61,11 +62,7 @@ XMLSEC_PTR_TO_FUNC_IMPL(pem_password_cb)
 int
 xmlSecOpenSSLAppInit(const char* config) {
     
-#if (OPENSSL_VERSION_NUMBER < 0x10100000)
-    ERR_load_crypto_strings();
-    OPENSSL_config(NULL);
-    OpenSSL_add_all_algorithms();
-#else /* OPENSSL_VERSION_NUMBER < 0x10100000 */
+#if defined(XMLSEC_OPENSSL_API_110)
     int ret;
     
     ret = OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS | 
@@ -76,30 +73,22 @@ xmlSecOpenSSLAppInit(const char* config) {
                               OPENSSL_INIT_ENGINE_ALL_BUILTIN,
                               NULL);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "OPENSSL_init_crypto",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("OPENSSL_init_crypto", NULL);
         return(-1);
     }
-#endif /* OPENSSL_VERSION_NUMBER < 0x10100000 */
+#else /* defined(XMLSEC_OPENSSL_API_110) */
+    ERR_load_crypto_strings();
+    OPENSSL_config(NULL);
+    OpenSSL_add_all_algorithms();
+#endif /* defined(XMLSEC_OPENSSL_API_110) */
 
     if((RAND_status() != 1) && (xmlSecOpenSSLAppLoadRANDFile(NULL) != 1)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppLoadRANDFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppLoadRANDFile", NULL);
         return(-1);
     }
 
     if((config != NULL) && (xmlSecOpenSSLSetDefaultTrustedCertsFolder(BAD_CAST config) < 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLSetDefaultTrustedCertsFolder",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLSetDefaultTrustedCertsFolder", NULL);
         return(-1);
     }
 
@@ -119,28 +108,28 @@ int
 xmlSecOpenSSLAppShutdown(void) {
     xmlSecOpenSSLAppSaveRANDFile(NULL);
 
-#if (OPENSSL_VERSION_NUMBER < 0x10100000)
-    RAND_cleanup();
-    EVP_cleanup();
+    /* OpenSSL 1.1.0+ does not require explicit cleanup */
+#if !defined(XMLSEC_OPENSSL_API_110)
 
 #ifndef XMLSEC_NO_X509
     X509_TRUST_cleanup();
 #endif /* XMLSEC_NO_X509 */
 
+    RAND_cleanup();
+    EVP_cleanup();
+
     ENGINE_cleanup();
     CONF_modules_unload(1);
-
     CRYPTO_cleanup_all_ex_data();
 
-    /* finally cleanup errors */
-#if (defined(XMLSEC_OPENSSL_100) || defined(XMLSEC_OPENSSL_110))
+#if defined(XMLSEC_OPENSSL_API_100)
     ERR_remove_thread_state(NULL);
-#else
+#else /* defined(XMLSEC_OPENSSL_API_100) */
     ERR_remove_state(0);
-#endif /* defined(XMLSEC_OPENSSL_100) || defined(XMLSEC_OPENSSL_110) */
+#endif /* defined(XMLSEC_OPENSSL_API_100) */
 
     ERR_free_strings();
-#endif /* (OPENSSL_VERSION_NUMBER < 0x10100000) */
+#endif /* !defined(XMLSEC_OPENSSL_API_110) */
 
     /* done */
     return(0);
@@ -170,25 +159,15 @@ xmlSecOpenSSLAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
 
     bio = BIO_new_file(filename, "rb");
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_file", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return(NULL);
     }
 
     key = xmlSecOpenSSLAppKeyLoadBIO (bio, format, pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeyLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecInternalError2("xmlSecOpenSSLAppKeyLoadBIO", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         BIO_free(bio);
         return(NULL);
     }
@@ -223,22 +202,14 @@ xmlSecOpenSSLAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     /* this would be a read only BIO, cast from const is ok */
     bio = BIO_new_mem_buf((void*)data, dataSize);
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_mem_buf",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "errno=%d",
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_mem_buf", NULL,
+                            "dataSize=%lu", (unsigned long)dataSize);
         return(NULL);
     }
 
     key = xmlSecOpenSSLAppKeyLoadBIO (bio, format, pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeyLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppKeyLoadBIO", NULL);
         BIO_free(bio);
         return(NULL);
     }
@@ -292,11 +263,7 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
                             XMLSEC_PTR_TO_FUNC(pem_password_cb, pwdCallback),
                             pwdCallbackCtx);
             if(pKey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "PEM_read_bio_PrivateKey and PEM_read_bio_PUBKEY",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("PEM_read_bio_PrivateKey and PEM_read_bio_PUBKEY", NULL);
                 return(NULL);
             }
         }
@@ -309,11 +276,7 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
             (void)BIO_reset(bio);
             pKey = d2i_PUBKEY_bio(bio, NULL);
             if(pKey == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "d2i_PrivateKey_bio and d2i_PUBKEY_bio",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("d2i_PrivateKey_bio and d2i_PUBKEY_bio", NULL);
                 return(NULL);
             }
         }
@@ -324,11 +287,7 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
                             XMLSEC_PTR_TO_FUNC(pem_password_cb, pwdCallback),
                             pwdCallbackCtx);
         if(pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "PEM_read_bio_PrivateKey",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("PEM_read_bio_PrivateKey", NULL);
             return(NULL);
         }
         break;
@@ -338,11 +297,7 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
                             XMLSEC_PTR_TO_FUNC(pem_password_cb, pwdCallback),
                             pwdCallbackCtx);
         if(pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "d2i_PrivateKey_bio and d2i_PUBKEY_bio",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("d2i_PrivateKey_bio and d2i_PUBKEY_bio", NULL);
             return(NULL);
         }
         break;
@@ -350,11 +305,7 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
     case xmlSecKeyDataFormatPkcs12:
         key = xmlSecOpenSSLAppPkcs12LoadBIO(bio, pwd, pwdCallback, pwdCallbackCtx);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLAppPkcs12LoadBIO",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLAppPkcs12LoadBIO", NULL);
             return(NULL);
         }
         return(key);
@@ -363,55 +314,37 @@ xmlSecOpenSSLAppKeyLoadBIO(BIO* bio, xmlSecKeyDataFormat format,
     case xmlSecKeyDataFormatCertDer:
         key = xmlSecOpenSSLAppKeyFromCertLoadBIO(bio, format);
         if(key == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLAppKeyFromCertLoadBIO",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLAppKeyFromCertLoadBIO", NULL);
             return(NULL);
         }
         return(key);
 #endif /* XMLSEC_NO_X509 */
 
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
     data = xmlSecOpenSSLEvpKeyAdopt(pKey);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLEvpKeyAdopt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyAdopt", NULL);
         EVP_PKEY_free(pKey);
         return(NULL);
     }
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate",
+                            xmlSecKeyDataGetName(data));
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         xmlSecKeyDestroy(key);
         xmlSecKeyDataDestroy(data);
         return(NULL);
@@ -445,25 +378,15 @@ xmlSecOpenSSLAppKeyCertLoad(xmlSecKeyPtr key, const char* filename, xmlSecKeyDat
 
     bio = BIO_new_file(filename, "rb");
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_file", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
     ret = xmlSecOpenSSLAppKeyCertLoadBIO (key, bio, format);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeyCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecInternalError2("xmlSecOpenSSLAppKeyCertLoadBIO", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         BIO_free(bio);
         return(-1);
     }
@@ -496,22 +419,14 @@ xmlSecOpenSSLAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xmlS
     /* this would be a read only BIO, cast from const is ok */
     bio = BIO_new_mem_buf((void*)data, dataSize);
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_mem_buf",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "errno=%d",
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_mem_buf", NULL,
+                            "dataSize=%lu", (unsigned long)dataSize);
         return(-1);
     }
 
     ret = xmlSecOpenSSLAppKeyCertLoadBIO (key, bio, format);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeyCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppKeyCertLoadBIO", NULL);
         BIO_free(bio);
         return(-1);
     }
@@ -544,12 +459,8 @@ xmlSecOpenSSLAppKeyCertLoadBIO(xmlSecKeyPtr key, BIO* bio, xmlSecKeyDataFormat f
 
     data = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecOpenSSLKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecTransformKlassGetName(xmlSecOpenSSLKeyDataX509Id));
         return(-1);
     }
 
@@ -567,22 +478,15 @@ xmlSecOpenSSLAppKeyCertLoadBIO(xmlSecKeyPtr key, BIO* bio, xmlSecKeyDataFormat f
 
     cert = xmlSecOpenSSLAppCertLoadBIO(bio, certFormat);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppCertLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppCertLoad",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)));
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         X509_free(cert);
         return(-1);
     }
@@ -613,25 +517,15 @@ xmlSecOpenSSLAppPkcs12Load(const char *filename, const char *pwd,
 
     bio = BIO_new_file(filename, "rb");
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_file", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return(NULL);
     }
 
     key = xmlSecOpenSSLAppPkcs12LoadBIO (bio, pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppPkcs12LoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecInternalError2("xmlSecOpenSSLAppPkcs12LoadBIO", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         BIO_free(bio);
         return(NULL);
     }
@@ -666,22 +560,14 @@ xmlSecOpenSSLAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize,
     /* this would be a read only BIO, cast from const is ok */
     bio = BIO_new_mem_buf((void*)data, dataSize);
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_mem_buf",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "errno=%d",
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_mem_buf", NULL,
+                            "dataSize=%lu", (unsigned long)dataSize);
         return(NULL);
     }
 
     key = xmlSecOpenSSLAppPkcs12LoadBIO (bio, pwd, pwdCallback, pwdCallbackCtx);
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppPkcs12LoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppPkcs12LoadBIO", NULL);
         BIO_free(bio);
         return(NULL);
     }
@@ -724,53 +610,33 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
 
     p12 = d2i_PKCS12_bio(bio, NULL);
     if(p12 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "d2i_PKCS12_fp",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("d2i_PKCS12_fp", NULL);
         goto done;
     }
 
     ret = PKCS12_verify_mac(p12, pwd, (pwd != NULL) ? strlen(pwd) : 0);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PKCS12_verify_mac",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("PKCS12_verify_mac", NULL);
         goto done;
     }
 
     ret = PKCS12_parse(p12, pwd, &pKey, &cert, &chain);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "PKCS12_parse",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("PKCS12_parse", NULL);
         goto done;
     }
 
     data = xmlSecOpenSSLEvpKeyAdopt(pKey);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLEvpKeyAdopt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyAdopt", NULL);
         EVP_PKEY_free(pKey);
         goto done;
     }
 
     x509Data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataX509Id);
     if(x509Data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecOpenSSLKeyDataX509Id)));
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecTransformKlassGetName(xmlSecOpenSSLKeyDataX509Id));
         goto done;
     }
 
@@ -780,11 +646,7 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
     if(chain == NULL) {
         chain = sk_X509_new_null();
         if(chain == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "sk_X509_new_null",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_new_null", NULL);
             goto done;
         }
     }
@@ -812,23 +674,15 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
     if(has_cert == 0) {
         tmpcert = X509_dup(cert);
         if(tmpcert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "X509_dup",
-                         XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecOpenSSLError("X509_dup",
+                               xmlSecKeyDataGetName(x509Data));
             goto done;
         }
 
         ret = sk_X509_push(chain, tmpcert);
         if(ret < 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "sk_X509_push",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecOpenSSLError("sk_X509_push",
+                               xmlSecKeyDataGetName(x509Data));
             X509_free(tmpcert);
             goto done;
         }
@@ -836,12 +690,8 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
 
     ret = xmlSecOpenSSLKeyDataX509AdoptKeyCert(x509Data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKeyDataX509AdoptKeyCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptKeyCert",
+                            xmlSecKeyDataGetName(x509Data));
         goto done;
     }
     cert = NULL;
@@ -851,46 +701,30 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
 
         tmpcert = X509_dup(sk_X509_value(chain, i));
         if(tmpcert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "X509_dup",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecOpenSSLError("X509_dup",
+                               xmlSecKeyDataGetName(x509Data));
             X509_free(tmpcert);
             goto done;
         }
 
         ret = xmlSecOpenSSLKeyDataX509AdoptCert(x509Data, tmpcert);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "data=%s",
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(x509Data));
             goto done;
         }
     }
 
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         goto done;
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -899,12 +733,8 @@ xmlSecOpenSSLAppPkcs12LoadBIO(BIO* bio, const char *pwd,
 
     ret = xmlSecKeyAdoptData(key, x509Data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyAdoptData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "data=%s",
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(x509Data)));
+        xmlSecInternalError("xmlSecKeyAdoptData",
+                            xmlSecKeyDataGetName(x509Data));
         xmlSecKeyDestroy(key);
         key = NULL;
         goto done;
@@ -953,22 +783,14 @@ xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     /* load cert */
     cert = xmlSecOpenSSLAppCertLoadBIO(bio, format);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppCertLoadBIO", NULL);
         return(NULL);
     }
 
     /* get key value */
     keyData = xmlSecOpenSSLX509CertGetKey(cert);
     if(keyData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509CertGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CertGetKey", NULL);
         X509_free(cert);
         return(NULL);
     }
@@ -976,11 +798,7 @@ xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     /* create key */
     key = xmlSecKeyCreate();
     if(key == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyCreate", NULL);
         xmlSecKeyDataDestroy(keyData);
         X509_free(cert);
         return(NULL);
@@ -989,11 +807,7 @@ xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     /* set key value */
     ret = xmlSecKeySetValue(key, keyData);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue", NULL);
         xmlSecKeyDestroy(key);
         xmlSecKeyDataDestroy(keyData);
         X509_free(cert);
@@ -1003,11 +817,7 @@ xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     /* create cert data */
     certData = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
     if(certData == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData", NULL);
         xmlSecKeyDestroy(key);
         X509_free(cert);
         return(NULL);
@@ -1016,11 +826,7 @@ xmlSecOpenSSLAppKeyFromCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     /* put cert in the cert data */
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(certData, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert", NULL);
         xmlSecKeyDestroy(key);
         X509_free(cert);
         return(NULL);
@@ -1055,25 +861,15 @@ xmlSecOpenSSLAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
 
     bio = BIO_new_file(filename, "rb");
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_file", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
     ret = xmlSecOpenSSLAppKeysMngrCertLoadBIO(mngr, bio, format, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeysMngrCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s;errno=%d",
-                    xmlSecErrorsSafeString(filename),
-                    errno);
+        xmlSecInternalError2("xmlSecOpenSSLAppKeysMngrCertLoadBIO", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         BIO_free(bio);
         return(-1);
     }
@@ -1109,22 +905,14 @@ xmlSecOpenSSLAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte*
     /* this would be a read only BIO, cast from const is ok */
     bio = BIO_new_mem_buf((void*)data, dataSize);
     if(bio == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new_mem_buf",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "errno=%d",
-                    errno);
+        xmlSecOpenSSLError2("BIO_new_mem_buf", NULL,
+                            "dataSize=%lu", (unsigned long)dataSize);
         return(-1);
     }
 
     ret = xmlSecOpenSSLAppKeysMngrCertLoadBIO(mngr, bio, format, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppKeysMngrCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppKeysMngrCertLoadBIO", NULL);
         BIO_free(bio);
         return(-1);
     }
@@ -1158,31 +946,19 @@ xmlSecOpenSSLAppKeysMngrCertLoadBIO(xmlSecKeysMngrPtr mngr, BIO* bio,
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecOpenSSLX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecOpenSSLX509StoreId)", NULL);
         return(-1);
     }
 
     cert = xmlSecOpenSSLAppCertLoadBIO(bio, format);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLAppCertLoadBIO",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLAppCertLoadBIO", NULL);
         return(-1);
     }
 
     ret = xmlSecOpenSSLX509StoreAdoptCert(x509Store, cert, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509StoreAdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509StoreAdoptCert", NULL);
         X509_free(cert);
         return(-1);
     }
@@ -1209,21 +985,14 @@ xmlSecOpenSSLAppKeysMngrAddCertsPath(xmlSecKeysMngrPtr mngr, const char *path) {
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecOpenSSLX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecOpenSSLX509StoreId)", NULL);
         return(-1);
     }
 
     ret = xmlSecOpenSSLX509StoreAddCertsPath(x509Store, path);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509StoreAddCertsPath",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "path=%s", xmlSecErrorsSafeString(path));
+        xmlSecInternalError2("xmlSecOpenSSLX509StoreAddCertsPath", NULL,
+                             "path=%s", xmlSecErrorsSafeString(path));
         return(-1);
     }
 
@@ -1233,7 +1002,7 @@ xmlSecOpenSSLAppKeysMngrAddCertsPath(xmlSecKeysMngrPtr mngr, const char *path) {
 /**
  * xmlSecOpenSSLAppKeysMngrAddCertsFile:
  * @mngr:               the keys manager.
- * @file:               the file containing trusted certificates.
+ * @filename:           the file containing trusted certificates.
  *
  * Reads certs from @file and adds to the list of trusted certificates.
  * It is possible for @file to contain multiple certs.
@@ -1241,30 +1010,23 @@ xmlSecOpenSSLAppKeysMngrAddCertsPath(xmlSecKeysMngrPtr mngr, const char *path) {
  * Returns: 0 on success or a negative value otherwise.
  */
 int
-xmlSecOpenSSLAppKeysMngrAddCertsFile(xmlSecKeysMngrPtr mngr, const char *file) {
+xmlSecOpenSSLAppKeysMngrAddCertsFile(xmlSecKeysMngrPtr mngr, const char *filename) {
     xmlSecKeyDataStorePtr x509Store;
     int ret;
 
     xmlSecAssert2(mngr != NULL, -1);
-    xmlSecAssert2(file != NULL, -1);
+    xmlSecAssert2(filename != NULL, -1);
 
     x509Store = xmlSecKeysMngrGetDataStore(mngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecOpenSSLX509StoreId");
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore(xmlSecOpenSSLX509StoreId)", NULL);
         return(-1);
     }
 
-    ret = xmlSecOpenSSLX509StoreAddCertsFile(x509Store, file);
+    ret = xmlSecOpenSSLX509StoreAddCertsFile(x509Store, filename);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509StoreAddCertsFile",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "file=%s", xmlSecErrorsSafeString(file));
+        xmlSecInternalError2("xmlSecOpenSSLX509StoreAddCertsFile", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
@@ -1283,11 +1045,7 @@ xmlSecOpenSSLAppCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     case xmlSecKeyDataFormatCertPem:
         cert = PEM_read_bio_X509_AUX(bio, NULL, NULL, NULL);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "PEM_read_bio_X509_AUX",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("PEM_read_bio_X509_AUX", NULL);
             return(NULL);
         }
         break;
@@ -1295,20 +1053,13 @@ xmlSecOpenSSLAppCertLoadBIO(BIO* bio, xmlSecKeyDataFormat format) {
     case xmlSecKeyDataFormatCertDer:
         cert = d2i_X509_bio(bio, NULL);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "d2i_X509_bio",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("d2i_X509_bio", NULL);
             return(NULL);
         }
         break;
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_FORMAT,
-                    "format=%d", format);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_FORMAT, NULL,
+                         "format=%d", (int)format);
         return(NULL);
     }
 
@@ -1338,21 +1089,13 @@ xmlSecOpenSSLAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecSimpleKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -1360,11 +1103,7 @@ xmlSecOpenSSLAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecOpenSSLKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKeysMngrInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -1393,21 +1132,13 @@ xmlSecOpenSSLAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr key
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSimpleKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -1434,21 +1165,14 @@ xmlSecOpenSSLAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -1476,21 +1200,14 @@ xmlSecOpenSSLAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filename
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreSave",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename%s", xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreSave", NULL,
+                             "filename=%s", xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
@@ -1505,13 +1222,13 @@ static int seeded = 0;
 static int egdsocket = 0;
 
 static int
-xmlSecOpenSSLAppLoadRANDFile(const char *file) {
+xmlSecOpenSSLAppLoadRANDFile(const char *filename) {
     char buffer[1024];
 
-    if(file == NULL) {
-        file = RAND_file_name(buffer, sizeof(buffer));
+    if(filename == NULL) {
+        filename = RAND_file_name(buffer, sizeof(buffer));
 #ifndef OPENSSL_NO_EGD
-    }else if(RAND_egd(file) > 0) {
+    }else if(RAND_egd(filename) > 0) {
         /* we try if the given filename is an EGD socket.
          * if it is, we don't write anything back to the file. */
         egdsocket = 1;
@@ -1519,13 +1236,11 @@ xmlSecOpenSSLAppLoadRANDFile(const char *file) {
 #endif
     }
 
-    if((file == NULL) || !RAND_load_file(file, -1)) {
+    if((filename == NULL) || !RAND_load_file(filename, -1)) {
         if(RAND_status() == 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "RAND_load_file",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "file=%s", xmlSecErrorsSafeString(file));
+            xmlSecOpenSSLError2("RAND_load_file", NULL,
+                                "filename=%s",
+                                xmlSecErrorsSafeString(filename));
             return 0;
         }
     }
@@ -1534,7 +1249,7 @@ xmlSecOpenSSLAppLoadRANDFile(const char *file) {
 }
 
 static int
-xmlSecOpenSSLAppSaveRANDFile(const char *file) {
+xmlSecOpenSSLAppSaveRANDFile(const char *filename) {
     char buffer[1024];
 
     if(egdsocket || !seeded) {
@@ -1545,16 +1260,12 @@ xmlSecOpenSSLAppSaveRANDFile(const char *file) {
         return 0;
     }
 
-    if(file == NULL) {
-        file = RAND_file_name(buffer, sizeof(buffer));
+    if(filename == NULL) {
+        filename = RAND_file_name(buffer, sizeof(buffer));
     }
-    if((file == NULL) || !RAND_write_file(file)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "RAND_write_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "file=%s",
-                    xmlSecErrorsSafeString(file));
+    if((filename == NULL) || !RAND_write_file(filename)) {
+        xmlSecOpenSSLError2("RAND_write_file", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
         return 0;
     }
 
@@ -1585,17 +1296,18 @@ xmlSecOpenSSLDefaultPasswordCallback(char *buf, int bufsize, int verify, void *u
     /* try 3 times */
     for(i = 0; i < 3; i++) {
         if(filename != NULL) {
-            xmlSecStrPrintf(prompt, sizeof(prompt), BAD_CAST "Enter password for \"%s\" file: ", filename);
+            ret = xmlStrPrintf(prompt, sizeof(prompt), "Enter password for \"%s\" file: ", filename);
         } else {
-            xmlSecStrPrintf(prompt, sizeof(prompt), BAD_CAST "Enter password: ");
+            ret = xmlStrPrintf(prompt, sizeof(prompt), "Enter password: ");
+        }
+        if(ret < 0) {
+            xmlSecXmlError("xmlStrPrintf", NULL);
+            return(-1);
         }
+
         ret = EVP_read_pw_string(buf, bufsize, (char*)prompt, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "EVP_read_pw_string",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_read_pw_string", NULL);
             return(-1);
         }
 
@@ -1605,27 +1317,23 @@ xmlSecOpenSSLDefaultPasswordCallback(char *buf, int bufsize, int verify, void *u
         }
 
         if(filename != NULL) {
-            xmlSecStrPrintf(prompt, sizeof(prompt), BAD_CAST "Enter password for \"%s\" file again: ", filename);
+            ret = xmlStrPrintf(prompt, sizeof(prompt), "Enter password for \"%s\" file again: ", filename);
         } else {
-            xmlSecStrPrintf(prompt, sizeof(prompt), BAD_CAST "Enter password again: ");
+            ret = xmlStrPrintf(prompt, sizeof(prompt), "Enter password again: ");
+        }
+        if(ret < 0) {
+            xmlSecXmlError("xmlStrPrintf", NULL);
+            return(-1);
         }
 
         buf2 = (char*)xmlMalloc(bufsize);
         if(buf2 == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "size=%d", bufsize);
+            xmlSecMallocError(bufsize, NULL);
             return(-1);
         }
         ret = EVP_read_pw_string(buf2, bufsize, (char*)prompt, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "EVP_read_pw_string",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_read_pw_string", NULL);
             memset(buf2, 0, bufsize);
             xmlFree(buf2);
             return(-1);
@@ -1634,7 +1342,7 @@ xmlSecOpenSSLDefaultPasswordCallback(char *buf, int bufsize, int verify, void *u
         /* check if passwords match */
         if(strcmp(buf, buf2) == 0) {
             memset(buf2, 0, bufsize);
-        xmlFree(buf2);
+            xmlFree(buf2);
             return(strlen(buf));
         }
 
diff --git a/src/openssl/bn.c b/src/openssl/bn.c
index db186d1..1616399 100644
--- a/src/openssl/bn.c
+++ b/src/openssl/bn.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Reading/writing BIGNUM values
  *
@@ -45,32 +45,21 @@ xmlSecOpenSSLNodeGetBNValue(const xmlNodePtr cur, BIGNUM **a) {
 
     ret = xmlSecBufferInitialize(&buf, 128);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
 
     ret = xmlSecBufferBase64NodeContentRead(&buf, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentRead", NULL);
         xmlSecBufferFinalize(&buf);
         return(NULL);
     }
 
     (*a) = BN_bin2bn(xmlSecBufferGetData(&buf), xmlSecBufferGetSize(&buf), (*a));
     if( (*a) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bin2bn",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError2("BN_bin2bn", NULL,
+                            "size=%lu", (unsigned long)(xmlSecBufferGetSize(&buf)));
         xmlSecBufferFinalize(&buf);
         return(NULL);
     }
@@ -105,21 +94,14 @@ xmlSecOpenSSLNodeSetBNValue(xmlNodePtr cur, const BIGNUM *a, int addLineBreaks)
 
     ret = xmlSecBufferInitialize(&buf, BN_num_bytes(a) + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", BN_num_bytes(a) + 1);
+        xmlSecInternalError2("xmlSecBufferInitialize", NULL,
+                             "size=%d", BN_num_bytes(a) + 1);
         return(-1);
     }
 
     ret = BN_bn2bin(a, xmlSecBufferGetData(&buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bn2bin",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bn2bin", NULL);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -127,11 +109,8 @@ xmlSecOpenSSLNodeSetBNValue(xmlNodePtr cur, const BIGNUM *a, int addLineBreaks)
 
     ret = xmlSecBufferSetSize(&buf, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", size);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
@@ -144,11 +123,7 @@ xmlSecOpenSSLNodeSetBNValue(xmlNodePtr cur, const BIGNUM *a, int addLineBreaks)
 
     ret = xmlSecBufferBase64NodeContentWrite(&buf, cur, xmlSecBase64GetDefaultLineSize());
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferBase64NodeContentWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentWrite", NULL);
         xmlSecBufferFinalize(&buf);
         return(-1);
     }
diff --git a/src/openssl/ciphers.c b/src/openssl/ciphers.c
index c93f06b..e8516e0 100644
--- a/src/openssl/ciphers.c
+++ b/src/openssl/ciphers.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -20,11 +20,7 @@
 
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
-
-/* new API from OpenSSL 1.1.0 */
-#if !defined(XMLSEC_OPENSSL_110)
-#define EVP_CIPHER_CTX_encrypting(x) ((x)->encrypt)
-#endif /* !defined(XMLSEC_OPENSSL_110) */
+#include "openssl_compat.h"
 
 
 /**************************************************************************
@@ -93,22 +89,15 @@ xmlSecOpenSSLEvpBlockCipherCtxInit(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         /* generate random iv */
         ret = RAND_bytes(ctx->iv, ivLen);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "RAND_bytes",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "size=%d", ivLen);
+            xmlSecOpenSSLError2("RAND_bytes", cipherName,
+                                "size=%lu", (unsigned long)ivLen);
             return(-1);
         }
 
         /* write iv to the output */
         ret = xmlSecBufferAppend(out, ctx->iv, ivLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", ivLen);
+            xmlSecInternalError2("xmlSecBufferAppend", cipherName, "size=%d", ivLen);
             return(-1);
         }
 
@@ -126,11 +115,7 @@ xmlSecOpenSSLEvpBlockCipherCtxInit(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         /* and remove from input */
         ret = xmlSecBufferRemoveHead(in, ivLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", ivLen);
+            xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName, "size=%d", ivLen);
             return(-1);
         }
     }
@@ -138,11 +123,7 @@ xmlSecOpenSSLEvpBlockCipherCtxInit(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     /* set iv */
     ret = EVP_CipherInit(ctx->cipherCtx, ctx->cipher, ctx->key, ctx->iv, encrypt);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "EVP_CipherInit",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CipherIn", cipherName);
         return(-1);
     }
 
@@ -192,11 +173,9 @@ xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     outSize = xmlSecBufferGetSize(out);
     ret = xmlSecBufferSetMaxSize(out, outSize + inSize + blockLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)(outSize + inSize + blockLen));
+        xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                             xmlSecErrorsSafeString(cipherName),
+                            "size=%d", (int)(outSize + inSize + blockLen));
         return(-1);
     }
     outBuf  = xmlSecBufferGetData(out) + outSize;
@@ -204,11 +183,7 @@ xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     /* encrypt/decrypt */
     ret = EVP_CipherUpdate(ctx->cipherCtx, outBuf, &outLen, in, inSize);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "EVP_CipherUpdate",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CipherUpdate", cipherName);
         return(-1);
     }
     xmlSecAssert2(outLen == inSize, -1);
@@ -219,11 +194,7 @@ xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
 
         ret = EVP_CipherFinal(ctx->cipherCtx, outBuf + outLen, &outLen2);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "EVP_CipherFinal",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_CipherFinal", cipherName);
             return(-1);
         }
 
@@ -233,11 +204,8 @@ xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     /* set correct output buffer size */
     ret = xmlSecBufferSetSize(out, outSize + outLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)(outSize + outLen));
+        xmlSecInternalError2("xmlSecBufferSetSize", cipherName,
+                             "size=%d", (int)(outSize + outLen));
         return(-1);
     }
 
@@ -287,22 +255,14 @@ xmlSecOpenSSLEvpBlockCipherCtxUpdate(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     inBuf  = xmlSecBufferGetData(in);
     ret = xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(ctx, inBuf, inBlocksLen, out, cipherName, 0); /* not final */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    NULL);
+        xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock", cipherName);
         return(-1);
     }
 
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inBlocksLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName, "size=%d", (int)inSize);
         return(-1);
     }
 
@@ -371,11 +331,7 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         if(padLen > 1) {
             ret = RAND_bytes(ctx->pad + inSize, padLen - 1);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(cipherName),
-                            "RAND_bytes",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "size=%d", (int)(padLen - 1));
+                xmlSecOpenSSLError("RAND_bytes", cipherName);
                 return(-1);
             }
         }
@@ -386,11 +342,7 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         /* update the last 1 or 2 blocks with padding */
         ret = xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(ctx, ctx->pad, inSize + padLen, out, cipherName, 1); /* final */
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        NULL);
+            xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock", cipherName);
             return(-1);
         }
     } else {
@@ -399,11 +351,7 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         /* update the last one block with padding */
         ret = xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock(ctx, inBuf, inSize, out, cipherName, 1); /* final */
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        NULL);
+            xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxUpdateBlock", cipherName);
             return(-1);
         }
 
@@ -411,24 +359,16 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         outBuf = xmlSecBufferGetData(out);
         outSize = xmlSecBufferGetSize(out);
         if(outSize < blockLen) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "outSize=%d;blockLen=%d",
-                    (int)outSize, (int)blockLen);
+            xmlSecInvalidIntegerDataError2("outSize", outSize, "blockLen", blockLen,
+                    "outSize >= blockLen", cipherName);
             return(-1);
         }
 
         /* get the pad length from the last byte */
         padLen = (xmlSecSize)(outBuf[outSize - 1]);
         if(padLen > blockLen) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "padLen=%d;blockLen=%d",
-                    (int)padLen, (int)blockLen);
+            xmlSecInvalidIntegerDataError2("padLen", padLen, "blockLen", blockLen,
+                    "padLen <= blockLen", cipherName);
             return(-1);
         }
         xmlSecAssert2(padLen <= outSize, -1);
@@ -436,11 +376,7 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
         /* remove the padding */
         ret = xmlSecBufferRemoveTail(out, padLen);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(cipherName),
-                        "xmlSecBufferRemoveTail",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", (int)padLen);
+            xmlSecInternalError2("xmlSecBufferRemoveTail", cipherName, "size=%d", (int)padLen);
             return(-1);
         }
     }
@@ -448,11 +384,7 @@ xmlSecOpenSSLEvpBlockCipherCtxFinal(xmlSecOpenSSLEvpBlockCipherCtxPtr ctx,
     /* remove the processed block from input */
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(cipherName),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead", cipherName, "size=%d", (int)inSize);
         return(-1);
     }
 
@@ -539,22 +471,15 @@ xmlSecOpenSSLEvpBlockCipherInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_AES */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create cipher ctx */
     ctx->cipherCtx = EVP_CIPHER_CTX_new();
     if(ctx->cipherCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_CIPHER_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CIPHER_CTX_new",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -635,12 +560,8 @@ xmlSecOpenSSLEvpBlockCipherSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) < (xmlSecSize)cipherKeyLen) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=%d;expected=%d",
-                    (int)xmlSecBufferGetSize(buffer), (int)cipherKeyLen);
+        xmlSecInvalidKeyDataSizeError(xmlSecBufferGetSize(buffer), cipherKeyLen,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -678,47 +599,35 @@ xmlSecOpenSSLEvpBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSe
                         (transform->operation == xmlSecTransformOperationEncrypt) ? 1 : 0,
                         xmlSecTransformGetName(transform), transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecOpenSSLEvpBlockCipherCtxInit",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxInit",
+                        xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
         if((ctx->ctxInitialized == 0) && (last != 0)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "not enough data to initialize transform");
+            xmlSecInvalidDataError("not enough data to initialize transform",
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
 
         if(ctx->ctxInitialized != 0) {
             ret = xmlSecOpenSSLEvpBlockCipherCtxUpdate(ctx, in, out,
-                                                xmlSecTransformGetName(transform),
-                                                transformCtx);
+                    xmlSecTransformGetName(transform),
+                    transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecOpenSSLEvpBlockCipherCtxUpdate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxUpdate",
+                        xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
 
         if(last != 0) {
             ret = xmlSecOpenSSLEvpBlockCipherCtxFinal(ctx, in, out,
-                                            xmlSecTransformGetName(transform),
-                                            transformCtx);
+                    xmlSecTransformGetName(transform),
+                    transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecOpenSSLEvpBlockCipherCtxFinal",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLEvpBlockCipherCtxFinal",
+                        xmlSecTransformGetName(transform));
                 return(-1);
             }
             transform->status = xmlSecTransformStatusFinished;
@@ -733,11 +642,7 @@ xmlSecOpenSSLEvpBlockCipherExecute(xmlSecTransformPtr transform, int last, xmlSe
         /* the only way we can get here is if there is no enough data in the input */
         xmlSecAssert2(last == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", (int)(transform->status));
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/openssl/crypto.c b/src/openssl/crypto.c
index b70eb73..adc1001 100644
--- a/src/openssl/crypto.c
+++ b/src/openssl/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -318,30 +318,18 @@ int
 xmlSecOpenSSLInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
     if(xmlSecOpenSSLErrorsInit() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLErrorsInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLErrorsInit", NULL);
         return(-1);
     }
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_openssl()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
 
@@ -382,21 +370,13 @@ xmlSecOpenSSLKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         x509Store = xmlSecKeyDataStoreCreate(xmlSecOpenSSLX509StoreId);
         if(x509Store == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLX509StoreId");
+            xmlSecInternalError("xmlSecKeyDataStoreCreate(xmlSecOpenSSLX509StoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptDataStore(mngr, x509Store);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptDataStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptDataStore", NULL);
             xmlSecKeyDataStoreDestroy(x509Store);
             return(-1);
         }
@@ -423,22 +403,15 @@ xmlSecOpenSSLGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
 
     ret = xmlSecBufferSetSize(buffer, size);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL, "size=%d", size);
         return(-1);
     }
 
     /* get random data */
     ret = RAND_bytes((xmlSecByte*)xmlSecBufferGetData(buffer), size);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "RAND_bytes",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", size);
+        xmlSecOpenSSLError2("RAND_bytes", NULL,
+                            "size=%lu", (unsigned long)size);
         return(-1);
     }
     return(0);
@@ -454,13 +427,12 @@ xmlSecOpenSSLGenerateRandom(xmlSecBufferPtr buffer, xmlSecSize size) {
  * @reason:             the error code.
  * @msg:                the additional error message.
  *
- * The default OpenSSL errors reporting callback function.
+ * The errors reporting callback function.
  */
 void
 xmlSecOpenSSLErrorsDefaultCallback(const char* file, int line, const char* func,
                                 const char* errorObject, const char* errorSubject,
                                 int reason, const char* msg) {
-
     ERR_put_error(XMLSEC_OPENSSL_ERRORS_LIB,
                 XMLSEC_OPENSSL_ERRORS_FUNCTION,
                 reason, file, line);
@@ -518,11 +490,7 @@ xmlSecOpenSSLSetDefaultTrustedCertsFolder(const xmlChar* path) {
     if(path != NULL) {
         gXmlSecOpenSSLTrustedCertsFolder = xmlStrdup(BAD_CAST path);
         if(gXmlSecOpenSSLTrustedCertsFolder == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlStrdup",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecStrdupError(BAD_CAST path, NULL);
             return(-1);
         }
     }
diff --git a/src/openssl/digests.c b/src/openssl/digests.c
index 1d00a1b..0a21772 100644
--- a/src/openssl/digests.c
+++ b/src/openssl/digests.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -19,16 +19,7 @@
 
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
-
-/* new API from OpenSSL 1.1.0 (https://www.openssl.org/docs/manmaster/crypto/EVP_DigestInit.html):
- *
- * EVP_MD_CTX_create() and EVP_MD_CTX_destroy() were renamed to EVP_MD_CTX_new() and EVP_MD_CTX_free() in OpenSSL 1.1.
- */
-#if !defined(XMLSEC_OPENSSL_110)
-#define EVP_MD_CTX_new()   EVP_MD_CTX_create()
-#define EVP_MD_CTX_free(x) EVP_MD_CTX_destroy((x))
-#endif /* !defined(XMLSEC_OPENSSL_110) */
-
+#include "openssl_compat.h"
 
 /**************************************************************************
  *
@@ -194,11 +185,7 @@ xmlSecOpenSSLEvpDigestInitialize(xmlSecTransformPtr transform) {
     if(xmlSecTransformCheckId(transform, xmlSecOpenSSLTransformGostR3411_94Id)) {
         ctx->digest = EVP_get_digestbyname("md_gost94");
 		if (!ctx->digest) {
-			xmlSecError(XMLSEC_ERRORS_HERE,
-					xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-					NULL,
-					XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-					XMLSEC_ERRORS_NO_MESSAGE);
+			xmlSecInvalidTransfromError(transform)
 			return(-1);
 		}
     } else
@@ -209,11 +196,7 @@ xmlSecOpenSSLEvpDigestInitialize(xmlSecTransformPtr transform) {
         ctx->digest = EVP_get_digestbyname("md_gost12_256");
 				if (!ctx->digest)
 				{
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
 				}
     } else
@@ -222,33 +205,22 @@ xmlSecOpenSSLEvpDigestInitialize(xmlSecTransformPtr transform) {
         ctx->digest = EVP_get_digestbyname("md_gost12_512");
 				if (!ctx->digest)
 				{
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
 				}
     } else
 #endif /* XMLSEC_NO_GOST2012 */
 
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create digest CTX */
     ctx->digestCtx = EVP_MD_CTX_new();
     if(ctx->digestCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_MD_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_MD_CTX_new",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -291,22 +263,15 @@ xmlSecOpenSSLEvpDigestVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(ctx->dgstSize > 0, -1);
 
     if(dataSize != ctx->dgstSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data_size=%d;dgst_size=%d",
-                    dataSize, ctx->dgstSize);
+        xmlSecInvalidSizeError("Digest", dataSize, ctx->dgstSize,
+                               xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     if(memcmp(ctx->dgst, data, ctx->dgstSize) != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "data and digest do not match");
+        xmlSecInvalidDataError("data and digest do not match",
+                xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -340,11 +305,8 @@ xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTran
     if(transform->status == xmlSecTransformStatusNone) {
         ret = EVP_DigestInit(ctx->digestCtx, ctx->digest);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "EVP_DigestInit",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_DigestInit",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusWorking;
@@ -357,21 +319,17 @@ xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTran
         if(inSize > 0) {
             ret = EVP_DigestUpdate(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_DigestUpdate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "size=%d", inSize);
+                xmlSecOpenSSLError2("EVP_DigestUpdate",
+                                    xmlSecTransformGetName(transform),
+                                    "size=%lu", (unsigned long)inSize);
                 return(-1);
             }
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
@@ -382,11 +340,8 @@ xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTran
 
             ret = EVP_DigestFinal(ctx->digestCtx, ctx->dgst, &dgstSize);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_DigestFinal",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_DigestFinal",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
             xmlSecAssert2(dgstSize > 0, -1);
@@ -396,11 +351,9 @@ xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTran
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, ctx->dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", ctx->dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", ctx->dgstSize);
                     return(-1);
                 }
             }
@@ -410,11 +363,7 @@ xmlSecOpenSSLEvpDigestExecute(xmlSecTransformPtr transform, int last, xmlSecTran
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(in) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/openssl/evp.c b/src/openssl/evp.c
index cee1493..feb7734 100644
--- a/src/openssl/evp.c
+++ b/src/openssl/evp.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -23,7 +23,133 @@
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/bn.h>
 #include <xmlsec/openssl/evp.h>
-#include "openssl11_wrapper.h"
+#include "openssl_compat.h"
+
+/******************************************************************************
+ *
+ * OpenSSL 1.1.0 compatibility
+ *
+ *****************************************************************************/
+#if !defined(XMLSEC_OPENSSL_API_110)
+
+#ifndef XMLSEC_NO_RSA
+
+static inline void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d) {
+    xmlSecAssert(r != NULL);
+
+    if(n != NULL) {
+        (*n) = r->n;
+    }
+    if(e != NULL) {
+        (*e) = r->e;
+    }
+    if(d != NULL) {
+        (*d) = r->d;
+    }
+}
+
+static inline int RSA_test_flags(const RSA *r, int flags) {
+    xmlSecAssert2(r != NULL, 0);
+    return(r->flags & flags);
+}
+
+static inline int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) {
+    xmlSecAssert2(r != NULL, 0);
+
+    if(((r->n == NULL) && (n == NULL)) || ((r->e == NULL) && (e == NULL))) {
+        return(0);
+    }
+    if(n != NULL) {
+        BN_free(r->n);
+        r->n = n;
+    }
+    if(e != NULL) {
+        BN_free(r->e);
+        r->e = e;
+    }
+    if(d != NULL) {
+        BN_free(r->d);
+        r->d = d;
+    }
+    return(1);
+}
+#endif /* XMLSEC_NO_RSA */
+
+
+#ifndef XMLSEC_NO_DSA
+
+static inline void DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g) {
+    xmlSecAssert(d != NULL);
+
+    if(p != NULL) {
+        (*p) = d->p;
+    }
+    if(q != NULL) {
+        (*q) = d->q;
+    }
+    if(g != NULL) {
+        (*g) = d->g;
+    }
+}
+
+static inline void DSA_get0_key(const DSA *d, const BIGNUM **pub_key, const BIGNUM **priv_key) {
+    xmlSecAssert(d != NULL);
+
+    if(pub_key != NULL) {
+        (*pub_key) = d->pub_key;
+    }
+    if(priv_key != NULL) {
+        (*priv_key) = d->priv_key;
+    }
+}
+
+static inline ENGINE *DSA_get0_engine(DSA *d) {
+    xmlSecAssert2(d != NULL, NULL);
+    return(d->engine);
+}
+
+static inline int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g) {
+    xmlSecAssert2(d != NULL, 0);
+
+    if(((d->p == NULL) && (p == NULL)) || ((d->q == NULL) && (q == NULL)) || ((d->g == NULL) && (g == NULL))) {
+        return(0);
+    }
+
+    if(p != NULL) {
+        BN_free(d->p);
+        d->p = p;
+    }
+    if(q != NULL) {
+        BN_free(d->q);
+        d->q = q;
+    }
+    if(g != NULL) {
+        BN_free(d->g);
+        d->g = g;
+    }
+    return(1);
+}
+
+static inline int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key) {
+    xmlSecAssert2(d != NULL, 0);
+
+    if((d->pub_key == NULL) && (pub_key == NULL)) {
+        return(0);
+    }
+
+    if(pub_key != NULL) {
+        BN_free(d->pub_key);
+        d->pub_key = pub_key;
+    }
+    if(priv_key != NULL) {
+        BN_free(d->priv_key);
+        d->priv_key = priv_key;
+    }
+    return(1);
+}
+#endif /* XMLSEC_NO_DSA */
+
+#endif /* !defined(XMLSEC_OPENSSL_API_110) */
 
 /**************************************************************************
  *
@@ -136,11 +262,8 @@ xmlSecOpenSSLEvpKeyDataDuplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(ctxSrc->pKey != NULL) {
         ctxDst->pKey = xmlSecOpenSSLEvpKeyDup(ctxSrc->pKey);
         if(ctxDst->pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecOpenSSLEvpKeyDup",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLEvpKeyDup",
+                                xmlSecKeyDataGetName(dst));
             return(-1);
         }
     }
@@ -185,11 +308,7 @@ xmlSecOpenSSLEvpKeyDup(EVP_PKEY* pKey) {
 
     ret = EVP_PKEY_up_ref(pKey);
     if(ret <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CRYPTO_add",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_PKEY_up_ref", NULL);
         return(NULL);
     }
 
@@ -216,11 +335,7 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case EVP_PKEY_RSA:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataRsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataRsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataRsaId)", NULL);
             return(NULL);
         }
         break;
@@ -229,11 +344,7 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case EVP_PKEY_DSA:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataDsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataDsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataDsaId)", NULL);
             return(NULL);
         }
         break;
@@ -242,11 +353,7 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case EVP_PKEY_EC:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataEcdsaId);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataEcdsaId");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataEcdsaId)", NULL);
             return(NULL);
         }
         break;
@@ -256,11 +363,7 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case NID_id_GostR3410_2001:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGost2001Id);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataGost2001Id");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGost2001Id)", NULL);
             return(NULL);
         }
         break;
@@ -270,11 +373,7 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case NID_id_GostR3410_2012_256:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGostR3410_2012_256Id);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataGostR3410_2012_256Id");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGostR3410_2012_256Id)", NULL);
             return(NULL);
         }
         break;
@@ -282,33 +381,22 @@ xmlSecOpenSSLEvpKeyAdopt(EVP_PKEY *pKey) {
     case NID_id_GostR3410_2012_512:
         data = xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGostR3410_2012_512Id);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecOpenSSLKeyDataGostR3410_2012_512Id");
+            xmlSecInternalError("xmlSecKeyDataCreate(xmlSecOpenSSLKeyDataGostR3410_2012_512Id)", NULL);
             return(NULL);
         }
         break;
 #endif /* XMLSEC_NO_GOST2012 */
 
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "evp key type %d not supported", EVP_PKEY_base_id(pKey));
+        xmlSecInvalidIntegerTypeError("evp key type", EVP_PKEY_base_id(pKey),
+                "supported evp key type", NULL);
         return(NULL);
     }
 
     xmlSecAssert2(data != NULL, NULL);
     ret = xmlSecOpenSSLEvpKeyDataAdoptEvp(data, pKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLEvpKeyDataAdoptEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDataAdoptEvp", NULL);
         xmlSecKeyDataDestroy(data);
         return(NULL);
     }
@@ -482,21 +570,15 @@ xmlSecOpenSSLKeyDataDsaAdoptDsa(xmlSecKeyDataPtr data, DSA* dsa) {
     if(dsa != NULL) {
         pKey = EVP_PKEY_new();
         if(pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_new",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_new",
+                               xmlSecKeyDataGetName(data));
             return(-1);
         }
 
         ret = EVP_PKEY_assign_DSA(pKey, dsa);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_assign_DSA",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_assign_DSA",
+                               xmlSecKeyDataGetName(data));
             EVP_PKEY_free(pKey);
             return(-1);
         }
@@ -504,11 +586,8 @@ xmlSecOpenSSLKeyDataDsaAdoptDsa(xmlSecKeyDataPtr data, DSA* dsa) {
 
     ret = xmlSecOpenSSLKeyDataDsaAdoptEvp(data, pKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataDsaAdoptEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataDsaAdoptEvp",
+                            xmlSecKeyDataGetName(data));
         if(pKey != NULL) {
             EVP_PKEY_free(pKey);
         }
@@ -608,21 +687,16 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                xmlSecKeyDataKlassGetName(id),
+                "Key data value is already set");
         return(-1);
     }
 
     dsa = DSA_new();
     if(dsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "DSA_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_new",
+                           xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
@@ -630,64 +704,40 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is P node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeDSAP, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAP, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     if(xmlSecOpenSSLNodeGetBNValue(cur, &p) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAP));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Q node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAQ, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAQ, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     if(xmlSecOpenSSLNodeGetBNValue(cur, &q) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                            "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAQ));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is G node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAG, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAG, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     if(xmlSecOpenSSLNodeGetBNValue(cur, &g) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                            "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAG));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -696,12 +746,9 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
         /* next is X node. It is REQUIRED for private key but
          * we are not sure exactly what do we read */
         if(xmlSecOpenSSLNodeGetBNValue(cur, &priv_key) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLNodeGetBNValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                                 xmlSecKeyDataKlassGetName(id),
+                                "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAX));
             goto err_cleanup;
         }
         cur = xmlSecGetNextElementNode(cur->next);
@@ -709,20 +756,13 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* next is Y node. */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeDSAY, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDSAY, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     if(xmlSecOpenSSLNodeGetBNValue(cur, &pub_key) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                            "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -743,31 +783,21 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     ret = DSA_set0_pqg(dsa, p, q, g);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "DSA_set0_pqg",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_set0_pqg",
+                           xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     p = NULL;
@@ -776,11 +806,8 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = DSA_set0_key(dsa, pub_key, priv_key);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "DSA_set0_key",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_set0_key",
+                           xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     pub_key = NULL;
@@ -788,22 +815,16 @@ xmlSecOpenSSLKeyDataDsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     ret = xmlSecOpenSSLKeyDataDsaAdoptDsa(data, dsa);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataDsaAdoptDsa",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataDsaAdoptDsa",
+                            xmlSecKeyDataGetName(data));
         goto err_cleanup;
     }
     dsa = NULL;
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataGetName(data));
         data = NULL;
         goto err_cleanup;
     }
@@ -852,22 +873,16 @@ xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(p != NULL, -1);
     cur = xmlSecAddChild(node, xmlSecNodeDSAP, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                            "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAP));
         return(-1);
     }
     ret = xmlSecOpenSSLNodeSetBNValue(cur, p, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAP));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAP));
         return(-1);
     }
 
@@ -875,22 +890,16 @@ xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(q != NULL, -1);
     cur = xmlSecAddChild(node, xmlSecNodeDSAQ, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAQ));
         return(-1);
     }
     ret = xmlSecOpenSSLNodeSetBNValue(cur, q, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAQ));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAQ));
         return(-1);
     }
 
@@ -898,22 +907,16 @@ xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(g != NULL, -1);
     cur = xmlSecAddChild(node, xmlSecNodeDSAG, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAG));
         return(-1);
     }
     ret = xmlSecOpenSSLNodeSetBNValue(cur, g, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAG));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAG));
         return(-1);
     }
 
@@ -923,22 +926,16 @@ xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(((keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePrivate) != 0) && (priv_key != NULL)) {
         cur = xmlSecAddChild(node, xmlSecNodeDSAX, xmlSecNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError2("xmlSecAddChild",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAX));
             return(-1);
         }
         ret = xmlSecOpenSSLNodeSetBNValue(cur, priv_key, 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLNodeSetBNValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDSAX));
+            xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                                 xmlSecKeyDataKlassGetName(id),
+                                  "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAX));
             return(-1);
         }
     }
@@ -947,22 +944,16 @@ xmlSecOpenSSLKeyDataDsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(pub_key != NULL, -1);
     cur = xmlSecAddChild(node, xmlSecNodeDSAY, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
         return(-1);
     }
     ret = xmlSecOpenSSLNodeSetBNValue(cur, pub_key, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDSAY));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeDSAY));
         return(-1);
     }
     return(0);
@@ -980,43 +971,32 @@ xmlSecOpenSSLKeyDataDsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlS
 
     dsa = DSA_new();
     if(dsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "DSA_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", sizeBits);
+        xmlSecOpenSSLError("DSA_new",
+                           xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     ret = DSA_generate_parameters_ex(dsa, sizeBits, NULL, 0, &counter_ret, &h_ret, NULL);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "DSA_generate_parameters_ex",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", sizeBits);
+        xmlSecOpenSSLError2("DSA_generate_parameters_ex",
+                            xmlSecKeyDataGetName(data),
+                            "sizeBits=%lu", (unsigned long)sizeBits);
         DSA_free(dsa);
         return(-1);
     }
 
     ret = DSA_generate_key(dsa);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "DSA_generate_key",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_generate_key",
+                           xmlSecKeyDataGetName(data));
         DSA_free(dsa);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataDsaAdoptDsa(data, dsa);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataDsaAdoptDsa",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataDsaAdoptDsa",
+                            xmlSecKeyDataGetName(data));
         DSA_free(dsa);
         return(-1);
     }
@@ -1196,21 +1176,15 @@ xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa(xmlSecKeyDataPtr data, EC_KEY* ecdsa) {
     if(ecdsa != NULL) {
         pKey = EVP_PKEY_new();
         if(pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_new",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_new",
+                               xmlSecKeyDataGetName(data));
             return(-1);
         }
 
         ret = EVP_PKEY_assign_EC_KEY(pKey, ecdsa);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_assign_EC_KEY",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_assign_EC_KEY",
+                               xmlSecKeyDataGetName(data));
             EVP_PKEY_free(pKey);
             return(-1);
         }
@@ -1218,11 +1192,8 @@ xmlSecOpenSSLKeyDataEcdsaAdoptEcdsa(xmlSecKeyDataPtr data, EC_KEY* ecdsa) {
 
     ret = xmlSecOpenSSLKeyDataEcdsaAdoptEvp(data, pKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataEcdsaAdoptEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataEcdsaAdoptEvp",
+                            xmlSecKeyDataGetName(data));
         if(pKey != NULL) {
             EVP_PKEY_free(pKey);
         }
@@ -1318,6 +1289,7 @@ xmlSecOpenSSLKeyDataEcdsaGetSize(xmlSecKeyDataPtr data) {
     const EC_KEY *ecdsa;
     BIGNUM * order;
     xmlSecSize res;
+    int ret;
 
     xmlSecAssert2(xmlSecKeyDataCheckId(data, xmlSecOpenSSLKeyDataEcdsaId), 0);
 
@@ -1328,30 +1300,19 @@ xmlSecOpenSSLKeyDataEcdsaGetSize(xmlSecKeyDataPtr data) {
 
     group = EC_KEY_get0_group(ecdsa);
     if(group == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EC_KEY_get0_group",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EC_KEY_get0_group", NULL);
         return(0);
     }
 
     order = BN_new();
     if(order == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_new", NULL);
         return(0);
     }
 
-    if(EC_GROUP_get_order(group, order, NULL) != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EC_GROUP_get_order",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+    ret = EC_GROUP_get_order(group, order, NULL);
+    if(ret != 1) {
+        xmlSecOpenSSLError("EC_GROUP_get_order", NULL);
         BN_free(order);
         return(0);
     }
@@ -1518,21 +1479,15 @@ xmlSecOpenSSLKeyDataRsaAdoptRsa(xmlSecKeyDataPtr data, RSA* rsa) {
     if(rsa != NULL) {
         pKey = EVP_PKEY_new();
         if(pKey == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_new",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_new",
+                               xmlSecKeyDataGetName(data));
             return(-1);
         }
 
         ret = EVP_PKEY_assign_RSA(pKey, rsa);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "EVP_PKEY_assign_RSA",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_PKEY_assign_RSA",
+                               xmlSecKeyDataGetName(data));
             EVP_PKEY_free(pKey);
             return(-1);
         }
@@ -1540,11 +1495,8 @@ xmlSecOpenSSLKeyDataRsaAdoptRsa(xmlSecKeyDataPtr data, RSA* rsa) {
 
     ret = xmlSecOpenSSLKeyDataRsaAdoptEvp(data, pKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataRsaAdoptEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataRsaAdoptEvp",
+                            xmlSecKeyDataGetName(data));
         if(pKey != NULL) {
             EVP_PKEY_free(pKey);
         }
@@ -1643,21 +1595,16 @@ xmlSecOpenSSLKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
     xmlSecAssert2(keyInfoCtx != NULL, -1);
 
     if(xmlSecKeyGetValue(key) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA,
-                    "key already has a value");
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_KEY_DATA,
+                xmlSecKeyDataKlassGetName(id),
+                "Key data value is already set");
         return(-1);
     }
 
     rsa = RSA_new();
     if(rsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "RSA_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("RSA_new",
+                           xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1665,42 +1612,26 @@ xmlSecOpenSSLKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     /* first is Modulus node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur,  xmlSecNodeRSAModulus, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAModulus, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     if(xmlSecOpenSSLNodeGetBNValue(cur, &n) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is Exponent node. It is REQUIRED because we do not support Seed and PgenCounter*/
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeRSAExponent, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInvalidNodeError(cur, xmlSecNodeRSAExponent, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
     if(xmlSecOpenSSLNodeGetBNValue(cur, &e) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeGetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                              "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
         goto err_cleanup;
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -1709,33 +1640,23 @@ xmlSecOpenSSLKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
         /* next is X node. It is REQUIRED for private key but
          * we are not sure exactly what do we read */
         if(xmlSecOpenSSLNodeGetBNValue(cur, &d) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLNodeGetBNValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError2("xmlSecOpenSSLNodeGetBNValue",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
             goto err_cleanup;
         }
         cur = xmlSecGetNextElementNode(cur->next);
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "no nodes expected");
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     ret = RSA_set0_key(rsa, n, e, d);
     if(ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "RSA_set0_key",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("RSA_set0_key",
+                           xmlSecKeyDataGetName(data));
         goto err_cleanup;
     }
     n = NULL;
@@ -1744,31 +1665,22 @@ xmlSecOpenSSLKeyDataRsaXmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyDataCreate(id);
     if(data == NULL ) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataCreate",
+                            xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     ret = xmlSecOpenSSLKeyDataRsaAdoptRsa(data, rsa);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLKeyDataRsaAdoptRsa",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataRsaAdoptRsa",
+                            xmlSecKeyDataKlassGetName(id));
         goto err_cleanup;
     }
 
     ret = xmlSecKeySetValue(key, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeySetValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeySetValue",
+                            xmlSecKeyDataKlassGetName(id));
         data = NULL;
         goto err_cleanup;
     }
@@ -1812,45 +1724,33 @@ xmlSecOpenSSLKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     /* first is Modulus node */
     cur = xmlSecAddChild(node, xmlSecNodeRSAModulus, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
         return(-1);
     }
 
     ret = xmlSecOpenSSLNodeSetBNValue(cur, n, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAModulus));
         return(-1);
     }
 
     /* next is Exponent node. */
     cur = xmlSecAddChild(node, xmlSecNodeRSAExponent, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError2("xmlSecAddChild",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
         return(-1);
     }
     ret = xmlSecOpenSSLNodeSetBNValue(cur, e, 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLNodeSetBNValue",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
+        xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                             xmlSecKeyDataKlassGetName(id),
+                             "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAExponent));
         return(-1);
     }
 
@@ -1858,22 +1758,16 @@ xmlSecOpenSSLKeyDataRsaXmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     if(((keyInfoCtx->keyReq.keyType & xmlSecKeyDataTypePrivate) != 0) && (d != NULL)) {
         cur = xmlSecAddChild(node, xmlSecNodeRSAPrivateExponent, xmlSecNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError2("xmlSecAddChild",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
             return(-1);
         }
         ret = xmlSecOpenSSLNodeSetBNValue(cur, d, 1);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLNodeSetBNValue",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
+            xmlSecInternalError2("xmlSecOpenSSLNodeSetBNValue",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "node=%s", xmlSecErrorsSafeString(xmlSecNodeRSAPrivateExponent));
             return(-1);
         }
     }
@@ -1893,43 +1787,32 @@ xmlSecOpenSSLKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlS
     /* create exponent */
     e = BN_new();
     if(e == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "BN_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "sizeBits=%d", sizeBits);
+        xmlSecOpenSSLError("BN_new",
+                           xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     ret = BN_set_word(e, RSA_F4);
     if(ret != 1){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "BN_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "sizeBits=%d", sizeBits);
+        xmlSecOpenSSLError("BN_set_word",
+                           xmlSecKeyDataGetName(data));
         BN_free(e);
         return(-1);
     }
 
     rsa = RSA_new();
     if(rsa == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "RSA_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "sizeBits=%d", sizeBits);
+        xmlSecOpenSSLError("RSA_new",
+                           xmlSecKeyDataGetName(data));
         BN_free(e);
         return(-1);
     }
 
     ret = RSA_generate_key_ex(rsa, sizeBits, e, NULL);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "RSA_generate_key",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "sizeBits=%d", sizeBits);
+        xmlSecOpenSSLError2("RSA_generate_key_ex",
+                            xmlSecKeyDataGetName(data),
+                            "sizeBits=%lu", (unsigned long)sizeBits);
         RSA_free(rsa);
         BN_free(e);
         return(-1);
@@ -1937,11 +1820,8 @@ xmlSecOpenSSLKeyDataRsaGenerate(xmlSecKeyDataPtr data, xmlSecSize sizeBits, xmlS
 
     ret = xmlSecOpenSSLKeyDataRsaAdoptRsa(data, rsa);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataRsaAdoptRsa",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataRsaAdoptRsa",
+                            xmlSecKeyDataGetName(data));
         RSA_free(rsa);
         BN_free(e);
         return(-1);
@@ -1970,7 +1850,7 @@ xmlSecOpenSSLKeyDataRsaGetType(xmlSecKeyDataPtr data) {
     if(n != NULL && e != NULL) {
         if(d != NULL) {
             return(xmlSecKeyDataTypePrivate | xmlSecKeyDataTypePublic);
-        } else if(RSA_test_flags(rsa, RSA_FLAG_EXT_PKEY)) {
+        } else if(RSA_test_flags(rsa, (RSA_FLAG_EXT_PKEY | RSA_FLAG_CACHE_PRIVATE)) != 0) {
             /*
              * !!! HACK !!! Also see DSA key
              * We assume here that engine *always* has private key.
diff --git a/src/openssl/evp_signatures.c b/src/openssl/evp_signatures.c
index 4dc493c..c20a028 100644
--- a/src/openssl/evp_signatures.c
+++ b/src/openssl/evp_signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -21,17 +21,7 @@
 
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
-
-/* new API from OpenSSL 1.1.0 (https://www.openssl.org/docs/manmaster/crypto/EVP_DigestInit.html):
- *
- * EVP_MD_CTX_create() and EVP_MD_CTX_destroy() were renamed to EVP_MD_CTX_new() and EVP_MD_CTX_free() in OpenSSL 1.1.
- */
-#if !defined(XMLSEC_OPENSSL_110)
-#define EVP_MD_CTX_new()       EVP_MD_CTX_create()
-#define EVP_MD_CTX_free(x)     EVP_MD_CTX_destroy((x))
-#define EVP_MD_CTX_md_data(x)  ((x)->md_data)
-#endif /* !defined(XMLSEC_OPENSSL_110) */
-
+#include "openssl_compat.h"
 
 /**************************************************************************
  *
@@ -215,11 +205,7 @@ xmlSecOpenSSLEvpSignatureInitialize(xmlSecTransformPtr transform) {
         ctx->keyId  = xmlSecOpenSSLKeyDataGost2001Id;
         ctx->digest = EVP_get_digestbyname("md_gost94");
         if (!ctx->digest) {
-        	xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        	xmlSecInvalidTransfromError(transform)
         	return(-1);
         }
     } else
@@ -230,11 +216,7 @@ xmlSecOpenSSLEvpSignatureInitialize(xmlSecTransformPtr transform) {
         ctx->keyId  = xmlSecOpenSSLKeyDataGostR3410_2012_256Id;
         ctx->digest = EVP_get_digestbyname("md_gost12_256");
 		if (!ctx->digest) {
-			xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+			xmlSecInvalidTransfromError(transform)
 			return(-1);
 		}
     } else
@@ -243,33 +225,22 @@ xmlSecOpenSSLEvpSignatureInitialize(xmlSecTransformPtr transform) {
         ctx->keyId  = xmlSecOpenSSLKeyDataGostR3410_2012_512Id;
         ctx->digest = EVP_get_digestbyname("md_gost12_512");
 		if (!ctx->digest) {
-			xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+			xmlSecInvalidTransfromError(transform)
 			return(-1);
 		}
     } else
 #endif /* XMLSEC_NO_GOST2012 */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create digest CTX */
     ctx->digestCtx = EVP_MD_CTX_new();
     if(ctx->digestCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_MD_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_MD_CTX_new",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -320,11 +291,8 @@ xmlSecOpenSSLEvpSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key)
 
     pKey = xmlSecOpenSSLEvpKeyDataGetEvp(value);
     if(pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDataGetEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDataGetEvp",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -334,11 +302,8 @@ xmlSecOpenSSLEvpSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key)
 
     ctx->pKey = xmlSecOpenSSLEvpKeyDup(pKey);
     if(ctx->pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDup",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -390,18 +355,13 @@ xmlSecOpenSSLEvpSignatureVerify(xmlSecTransformPtr transform,
 
     ret = EVP_VerifyFinal(ctx->digestCtx, (xmlSecByte*)data, dataSize, ctx->pKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_VerifyFinal",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_VerifyFinal",
+                           xmlSecTransformGetName(transform));
         return(-1);
     } else if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_VerifyFinal",
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "signature do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "EVP_VerifyFinal: signature does not verify");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -443,21 +403,15 @@ xmlSecOpenSSLEvpSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecT
         if(transform->operation == xmlSecTransformOperationSign) {
             ret = EVP_SignInit(ctx->digestCtx, ctx->digest);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_SignInit",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_SignInit",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else {
             ret = EVP_VerifyInit(ctx->digestCtx, ctx->digest);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_VerifyInit",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_VerifyInit",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -470,32 +424,23 @@ xmlSecOpenSSLEvpSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecT
         if(transform->operation == xmlSecTransformOperationSign) {
             ret = EVP_SignUpdate(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_SignUpdate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_SignUpdate",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else {
             ret = EVP_VerifyUpdate(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_VerifyUpdate",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_VerifyUpdate",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferRemoveHead",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -509,31 +454,24 @@ xmlSecOpenSSLEvpSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecT
             signSize = EVP_PKEY_size(ctx->pKey);
             ret = xmlSecBufferSetMaxSize(out, signSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetMaxSize",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%u", signSize);
+                xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%u", signSize);
                 return(-1);
             }
 
             ret = EVP_SignFinal(ctx->digestCtx, xmlSecBufferGetData(out), &signSize, ctx->pKey);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "EVP_SignFinal",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("EVP_SignFinal",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
 
             ret = xmlSecBufferSetSize(out, signSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetSize",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%u", signSize);
+                xmlSecInternalError2("xmlSecBufferSetSize",
+                                     xmlSecTransformGetName(transform),
+                                    "size=%u", signSize);
                 return(-1);
             }
         }
@@ -544,11 +482,7 @@ xmlSecOpenSSLEvpSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecT
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/openssl/globals.h b/src/openssl/globals.h
index 065c3e8..291a84e 100644
--- a/src/openssl/globals.h
+++ b/src/openssl/globals.h
@@ -21,4 +21,79 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
+
+/**************************************************************
+ *
+ * Error constants for OpenSSL
+ *
+ *************************************************************/
+/**
+ * XMLSEC_OPENSSL_ERRORS_LIB:
+ *
+ * Macro. The XMLSec library klass for OpenSSL errors reporting functions.
+ */
+#define XMLSEC_OPENSSL_ERRORS_LIB                       (ERR_LIB_USER + 57)
+
+/**
+ * XMLSEC_OPENSSL_ERRORS_FUNCTION:
+ *
+ * Macro. The XMLSec library functions OpenSSL errors reporting functions.
+ */
+#define XMLSEC_OPENSSL_ERRORS_FUNCTION                  0
+
+/**
+ * xmlSecOpenSSLError:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ *
+ * Macro. The XMLSec library macro for reporting OpenSSL crypro errors.
+ */
+#define xmlSecOpenSSLError(errorFunction, errorObject)      \
+    {                                                       \
+        unsigned long error_code = ERR_peek_error();        \
+        const char* lib = ERR_lib_error_string(error_code);       \
+        const char* func = ERR_func_error_string(error_code);     \
+        const char* reason = ERR_reason_error_string(error_code); \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    "openssl error: %lu: %s: %s %s",        \
+                    error_code,                             \
+                    xmlSecErrorsSafeString(lib),            \
+                    xmlSecErrorsSafeString(func),           \
+                    xmlSecErrorsSafeString(reason)          \
+        );                                                  \
+    }
+
+/**
+ * xmlSecOpenSSLError2:
+ * @errorFunction:      the failed function name.
+ * @errorObject:        the error specific error object (e.g. transform, key data, etc).
+ * @msg:                the extra message.
+ * @param:              the extra message param.
+ *
+ * Macro. The XMLSec library macro for reporting OpenSSL crypro errors.
+ */
+#define xmlSecOpenSSLError2(errorFunction, errorObject, msg, param) \
+    {                                                       \
+        unsigned long error_code = ERR_peek_error();        \
+        const char* lib = ERR_lib_error_string(error_code);       \
+        const char* func = ERR_func_error_string(error_code);     \
+        const char* reason = ERR_reason_error_string(error_code); \
+        xmlSecError(XMLSEC_ERRORS_HERE,                     \
+                    (const char*)(errorObject),             \
+                    (errorFunction),                        \
+                    XMLSEC_ERRORS_R_CRYPTO_FAILED,          \
+                    msg "; openssl error: %lu: %s: %s %s",  \
+                    (param),                                \
+                    error_code,                             \
+                    xmlSecErrorsSafeString(lib),            \
+                    xmlSecErrorsSafeString(func),           \
+                    xmlSecErrorsSafeString(reason)          \
+        );                                                  \
+    }
+
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/openssl/hmac.c b/src/openssl/hmac.c
index edfc3af..c2d86f8 100644
--- a/src/openssl/hmac.c
+++ b/src/openssl/hmac.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * HMAC Algorithm support (http://www.w3.org/TR/xmldsig-core/#sec-HMAC):
  * The HMAC algorithm (RFC2104 [HMAC]) takes the truncation length in bits
@@ -32,16 +31,7 @@
 #include <xmlsec/errors.h>
 
 #include <xmlsec/openssl/crypto.h>
-
-/* new API from OpenSSL 1.1.0 (https://www.openssl.org/docs/manmaster/crypto/hmac.html):
- *
- * HMAC_CTX_new() and HMAC_CTX_free() are new in OpenSSL version 1.1.
- */
-#if !defined(XMLSEC_OPENSSL_110)
-#define HMAC_CTX_new()   ((HMAC_CTX*)calloc(1, sizeof(HMAC_CTX)))
-#define HMAC_CTX_free(x) { HMAC_CTX_cleanup((x)); free((x)); }
-#endif /* !defined(XMLSEC_OPENSSL_110) */
-
+#include "openssl_compat.h"
 
 /* sizes in bits */
 #define XMLSEC_OPENSSL_MIN_HMAC_SIZE            80
@@ -234,22 +224,15 @@ xmlSecOpenSSLHmacInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_MD5 */
 
     {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create hmac CTX */
     ctx->hmacCtx = HMAC_CTX_new();
     if(ctx->hmacCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "HMAC_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("HMAC_CTX_new",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -302,11 +285,8 @@ xmlSecOpenSSLHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecT
            small value
         */
         if((int)ctx->dgstSize < xmlSecOpenSSLHmacGetMinOutputLength()) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                    "HMAC output length is too small");
+            xmlSecInvalidNodeContentError(cur, xmlSecTransformGetName(transform),
+                                          "HMAC output length is too small");
            return(-1);
         }
 
@@ -314,11 +294,7 @@ xmlSecOpenSSLHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecT
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -327,7 +303,8 @@ xmlSecOpenSSLHmacNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecT
 static int
 xmlSecOpenSSLHmacSetKeyReq(xmlSecTransformPtr transform,  xmlSecKeyReqPtr keyReq) {
     xmlSecAssert2(xmlSecOpenSSLHmacCheckId(transform), -1);
-    xmlSecAssert2((transform->operation == xmlSecTransformOperationSign) || (transform->operation == xmlSecTransformOperationVerify), -1);
+    xmlSecAssert2((transform->operation == xmlSecTransformOperationSign)
+               || (transform->operation == xmlSecTransformOperationVerify), -1);
     xmlSecAssert2(xmlSecTransformCheckSize(transform, xmlSecOpenSSLHmacSize), -1);
     xmlSecAssert2(keyReq != NULL, -1);
 
@@ -367,40 +344,31 @@ xmlSecOpenSSLHmacSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
     xmlSecAssert2(buffer != NULL, -1);
 
     if(xmlSecBufferGetSize(buffer) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "keySize=0");
+        xmlSecInvalidZeroKeyDataSizeError(xmlSecTransformGetName(transform));
         return(-1);
     }
 
     xmlSecAssert2(xmlSecBufferGetData(buffer) != NULL, -1);
 
-#if (defined(XMLSEC_OPENSSL_098))
-    /* no return value in 0.9.8 */
-    HMAC_Init_ex(ctx->hmacCtx,
-                    xmlSecBufferGetData(buffer),
-                    xmlSecBufferGetSize(buffer),
-                    ctx->hmacDgst,
-                    NULL);
-    ret = 1;
-#else  /* (defined(XMLSEC_OPENSSL_098)) */
+    /* No return values before 1.0.0 (https://www.openssl.org/docs/man1.1.0/crypto/HMAC_Update.html) */
+#if !defined(XMLSEC_OPENSSL_API_098)
     ret = HMAC_Init_ex(ctx->hmacCtx,
                 xmlSecBufferGetData(buffer),
                 xmlSecBufferGetSize(buffer),
                 ctx->hmacDgst,
                 NULL);
-#endif /* (defined(XMLSEC_OPENSSL_098)) */
-
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "HMAC_Init_ex",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    NULL);
+        xmlSecOpenSSLError("HMAC_Init_ex",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
+#else  /* !defined(XMLSEC_OPENSSL_API_098) */
+    HMAC_Init_ex(ctx->hmacCtx,
+                    xmlSecBufferGetData(buffer),
+                    xmlSecBufferGetSize(buffer),
+                    ctx->hmacDgst,
+                    NULL);
+#endif /* !defined(XMLSEC_OPENSSL_API_098) */
 
     ctx->ctxInitialized = 1;
     return(0);
@@ -429,20 +397,9 @@ xmlSecOpenSSLHmacVerify(xmlSecTransformPtr transform,
 
     /* compare the digest size in bytes */
     if(dataSize != ((ctx->dgstSize + 7) / 8)){
-        /* NO COMMIT */
-        xmlChar* a;
-        mask = last_byte_masks[ctx->dgstSize % 8];
-        ctx->dgst[dataSize - 1] &= mask;
-        a = xmlSecBase64Encode(ctx->dgst, (ctx->dgstSize + 7) / 8, -1);
-        fprintf(stderr, "%s\n", a);
-        xmlFree(a);
-
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "data=%d;dgst=%d",
-                    dataSize, ((ctx->dgstSize + 7) / 8));
+        xmlSecInvalidSizeError("HMAC digest",
+                               dataSize, ((ctx->dgstSize + 7) / 8),
+                               xmlSecTransformGetName(transform));
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -451,22 +408,18 @@ xmlSecOpenSSLHmacVerify(xmlSecTransformPtr transform,
     xmlSecAssert2(dataSize > 0, -1);
     mask = last_byte_masks[ctx->dgstSize % 8];
     if((ctx->dgst[dataSize - 1] & mask) != (data[dataSize - 1]  & mask)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match (last byte)");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match (last byte)");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
 
     /* now check the rest of the digest */
     if((dataSize > 1) && (memcmp(ctx->dgst, data, dataSize - 1) != 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "data and digest do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "data and digest do not match");
         transform->status = xmlSecTransformStatusFail;
         return(0);
     }
@@ -504,23 +457,42 @@ xmlSecOpenSSLHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
 
         inSize = xmlSecBufferGetSize(in);
         if(inSize > 0) {
+            /* No return values before 1.0.0 (https://www.openssl.org/docs/man1.1.0/crypto/HMAC_Update.html) */
+#if !defined(XMLSEC_OPENSSL_API_098)
+            ret = HMAC_Update(ctx->hmacCtx, xmlSecBufferGetData(in), inSize);
+            if(ret != 1) {
+                xmlSecOpenSSLError("HMAC_Update",
+                                   xmlSecTransformGetName(transform));
+                return(-1);
+            }
+#else  /* !defined(XMLSEC_OPENSSL_API_098) */
             HMAC_Update(ctx->hmacCtx, xmlSecBufferGetData(in), inSize);
+#endif /* !defined(XMLSEC_OPENSSL_API_098) */
 
             ret = xmlSecBufferRemoveHead(in, inSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferRemoveHead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize);
+                xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize);
                 return(-1);
             }
         }
 
         if(last) {
-            unsigned int dgstSize;
-
+            unsigned int dgstSize = 0;
+
+            /* No return values before 1.0.0 (https://www.openssl.org/docs/man1.1.0/crypto/HMAC_Update.html) */
+#if !defined(XMLSEC_OPENSSL_API_098)
+            ret = HMAC_Final(ctx->hmacCtx, ctx->dgst, &dgstSize);
+            if(ret != 1) {
+                xmlSecOpenSSLError("HMAC_Final",
+                                   xmlSecTransformGetName(transform));
+                return(-1);
+            }
+#else  /* !defined(XMLSEC_OPENSSL_API_098) */
             HMAC_Final(ctx->hmacCtx, ctx->dgst, &dgstSize);
+#endif /* !defined(XMLSEC_OPENSSL_API_098) */
+
             xmlSecAssert2(dgstSize > 0, -1);
 
             /* check/set the result digest size */
@@ -529,12 +501,9 @@ xmlSecOpenSSLHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
             } else if(ctx->dgstSize <= XMLSEC_SIZE_BAD_CAST(8 * dgstSize)) {
                 dgstSize = ((ctx->dgstSize + 7) / 8); /* we need to truncate result digest */
             } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_SIZE,
-                            "result-bits=%d;required-bits=%d",
-                            8 * dgstSize, ctx->dgstSize);
+                xmlSecInvalidSizeLessThanError("HMAC digest (bits)",
+                                        8 * dgstSize, ctx->dgstSize,
+                                        xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -542,11 +511,9 @@ xmlSecOpenSSLHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
             if(transform->operation == xmlSecTransformOperationSign) {
                 ret = xmlSecBufferAppend(out, ctx->dgst, dgstSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferAppend",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", dgstSize);
+                    xmlSecInternalError2("xmlSecBufferAppend",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", dgstSize);
                     return(-1);
                 }
             }
@@ -556,11 +523,7 @@ xmlSecOpenSSLHmacExecute(xmlSecTransformPtr transform, int last, xmlSecTransform
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(in) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
diff --git a/src/openssl/kt_rsa.c b/src/openssl/kt_rsa.c
index 45cc788..a89deb1 100644
--- a/src/openssl/kt_rsa.c
+++ b/src/openssl/kt_rsa.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * RSA Algorithms support
  *
@@ -34,7 +33,7 @@
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
 #include <xmlsec/openssl/bn.h>
-#include "openssl11_wrapper.h"
+#include "openssl_compat.h"
 
 /**************************************************************************
  *
@@ -181,11 +180,8 @@ xmlSecOpenSSLRsaPkcs1SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     pKey = xmlSecOpenSSLKeyDataRsaGetEvp(xmlSecKeyGetValue(key));
     if(pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLKeyDataRsaGetEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataRsaGetEvp",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     xmlSecAssert2(EVP_PKEY_base_id(pKey) == EVP_PKEY_RSA, -1);
@@ -194,11 +190,8 @@ xmlSecOpenSSLRsaPkcs1SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     ctx->pKey = xmlSecOpenSSLEvpKeyDup(pKey);
     if(ctx->pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDup",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -228,11 +221,8 @@ xmlSecOpenSSLRsaPkcs1Execute(xmlSecTransformPtr transform, int last, xmlSecTrans
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         ret = xmlSecOpenSSLRsaPkcs1Process(transform, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecOpenSSLRsaPkcs1Process",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLRsaPkcs1Process",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusFinished;
@@ -240,11 +230,7 @@ xmlSecOpenSSLRsaPkcs1Execute(xmlSecTransformPtr transform, int last, xmlSecTrans
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -284,55 +270,43 @@ xmlSecOpenSSLRsaPkcs1Process(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
     /* the encoded size is equal to the keys size so we could not
      * process more than that */
     if((transform->operation == xmlSecTransformOperationEncrypt) && (inSize >= keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected less than %d", inSize, keySize);
+        xmlSecInvalidSizeLessThanError("Input data", inSize, keySize,
+                                       xmlSecTransformGetName(transform));
         return(-1);
     } else if((transform->operation == xmlSecTransformOperationDecrypt) && (inSize != keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected %d", inSize, keySize);
+        xmlSecInvalidSizeError("Input data", inSize, keySize,
+                               xmlSecTransformGetName(transform));
         return(-1);
     }
 
     outSize = keySize;
     ret = xmlSecBufferSetMaxSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", outSize);
         return(-1);
     }
 
     if(transform->operation == xmlSecTransformOperationEncrypt) {
         ret = RSA_public_encrypt(inSize, xmlSecBufferGetData(in),
-                                xmlSecBufferGetData(out),
-                                rsa, RSA_PKCS1_PADDING);
+                                 xmlSecBufferGetData(out),
+                                 rsa, RSA_PKCS1_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_public_encrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "size=%d", inSize);
+            xmlSecOpenSSLError2("RSA_public_encrypt",
+                                xmlSecTransformGetName(transform),
+                                "size=%lu", (unsigned long)inSize);
             return(-1);
         }
         outSize = ret;
     } else {
         ret = RSA_private_decrypt(inSize, xmlSecBufferGetData(in),
-                                xmlSecBufferGetData(out),
-                                rsa, RSA_PKCS1_PADDING);
+                                  xmlSecBufferGetData(out),
+                                  rsa, RSA_PKCS1_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_private_decrypt",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "size=%d", inSize);
+            xmlSecOpenSSLError2("RSA_private_decrypt",
+                                xmlSecTransformGetName(transform),
+                                "size=%lu", (unsigned long)inSize);
             return(-1);
         }
         outSize = ret;
@@ -340,21 +314,17 @@ xmlSecOpenSSLRsaPkcs1Process(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
 
     ret = xmlSecBufferSetSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetSize",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", outSize);
         return(-1);
     }
 
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", inSize);
         return(-1);
     }
 
@@ -454,11 +424,8 @@ xmlSecOpenSSLRsaOaepInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->oaepParams), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -501,11 +468,8 @@ xmlSecOpenSSLRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
         if(xmlSecCheckNodeName(cur,  xmlSecNodeRsaOAEPparams, xmlSecEncNs)) {
             ret = xmlSecBufferBase64NodeContentRead(&(ctx->oaepParams), cur);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferBase64NodeContentRead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecBufferBase64NodeContentRead",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else if(xmlSecCheckNodeName(cur,  xmlSecNodeDigestMethod, xmlSecDSigNs)) {
@@ -514,33 +478,24 @@ xmlSecOpenSSLRsaOaepNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
             /* Algorithm attribute is required */
             algorithm = xmlGetProp(cur, xmlSecAttrAlgorithm);
             if(algorithm == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                            XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+                xmlSecInvalidNodeAttributeError(cur, xmlSecAttrAlgorithm,
+                                                xmlSecTransformGetName(transform),
+                                                "empty");
                 return(-1);
             }
 
             /* for now we support only sha1 */
             if(xmlStrcmp(algorithm, xmlSecHrefSha1) != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            xmlSecErrorsSafeString(algorithm),
-                            XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                            "digest algorithm is not supported for rsa/oaep");
+                xmlSecInvalidTransfromError2(transform,
+                                "digest algorithm=\"%s\" is not supported for rsa/oaep",
+                                xmlSecErrorsSafeString(algorithm));
                 xmlFree(algorithm);
                 return(-1);
             }
             xmlFree(algorithm);
         } else {
             /* not found */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -593,11 +548,8 @@ xmlSecOpenSSLRsaOaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     pKey = xmlSecOpenSSLKeyDataRsaGetEvp(xmlSecKeyGetValue(key));
     if(pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLKeyDataRsaGetEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataRsaGetEvp",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     xmlSecAssert2(EVP_PKEY_base_id(pKey) == EVP_PKEY_RSA, -1);
@@ -606,11 +558,8 @@ xmlSecOpenSSLRsaOaepSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     ctx->pKey = xmlSecOpenSSLEvpKeyDup(pKey);
     if(ctx->pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDup",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -640,11 +589,8 @@ xmlSecOpenSSLRsaOaepExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         ret = xmlSecOpenSSLRsaOaepProcess(transform, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecOpenSSLRsaOaepProcess",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLRsaOaepProcess",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
         transform->status = xmlSecTransformStatusFinished;
@@ -652,11 +598,7 @@ xmlSecOpenSSLRsaOaepExecute(xmlSecTransformPtr transform, int last, xmlSecTransf
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -697,29 +639,21 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
     /* the encoded size is equal to the keys size so we could not
      * process more than that */
     if((transform->operation == xmlSecTransformOperationEncrypt) && (inSize >= keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected less than %d", inSize, keySize);
+        xmlSecInvalidSizeLessThanError("Input data", inSize, keySize,
+                                       xmlSecTransformGetName(transform));
         return(-1);
     } else if((transform->operation == xmlSecTransformOperationDecrypt) && (inSize != keySize)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "%d when expected %d", inSize, keySize);
+        xmlSecInvalidSizeError("Input data", inSize, keySize,
+                               xmlSecTransformGetName(transform));
         return(-1);
     }
 
     outSize = keySize;
     ret = xmlSecBufferSetMaxSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetMaxSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", outSize);
         return(-1);
     }
 
@@ -730,11 +664,8 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
                                 xmlSecBufferGetData(out),
                                 rsa, RSA_PKCS1_OAEP_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_public_encrypt(RSA_PKCS1_OAEP_PADDING)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_public_encrypt(RSA_PKCS1_OAEP_PADDING)",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         outSize = ret;
@@ -744,11 +675,9 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
         /* add space for padding */
         ret = xmlSecBufferSetMaxSize(in, keySize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", keySize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", keySize);
             return(-1);
         }
 
@@ -758,11 +687,8 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
                                          xmlSecBufferGetData(&(ctx->oaepParams)),
                                          paramsSize);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_padding_add_PKCS1_OAEP",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_padding_add_PKCS1_OAEP",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         inSize = keySize;
@@ -772,11 +698,8 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
                                 xmlSecBufferGetData(out),
                                 rsa, RSA_NO_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_public_encrypt(RSA_NO_PADDING)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_public_encrypt(RSA_NO_PADDING)",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         outSize = ret;
@@ -785,11 +708,8 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
                                 xmlSecBufferGetData(out),
                                 rsa, RSA_PKCS1_OAEP_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_private_decrypt(RSA_PKCS1_OAEP_PADDING)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_private_decrypt(RSA_PKCS1_OAEP_PADDING)",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         outSize = ret;
@@ -798,22 +718,16 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
 
         bn = BN_new();
         if(bn == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "BN_new()",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("BN_new()",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         ret = RSA_private_decrypt(inSize, xmlSecBufferGetData(in),
                                 xmlSecBufferGetData(out),
                                 rsa, RSA_NO_PADDING);
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_private_decrypt(RSA_NO_PADDING)",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_private_decrypt(RSA_NO_PADDING)",
+                               xmlSecTransformGetName(transform));
             BN_free(bn);
             return(-1);
         }
@@ -826,22 +740,17 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
          * buffer again
          */
         if(BN_bin2bn(xmlSecBufferGetData(out), outSize, bn) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "BN_bin2bn",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        "size=%d", outSize);
+            xmlSecOpenSSLError2("BN_bin2bn",
+                                xmlSecTransformGetName(transform),
+                                "size=%lu", (unsigned long)outSize);
             BN_free(bn);
             return(-1);
         }
 
         ret = BN_bn2bin(bn, xmlSecBufferGetData(out));
         if(ret <= 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "BN_bn2bin",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("BN_bn2bin",
+                               xmlSecTransformGetName(transform));
             BN_free(bn);
             return(-1);
         }
@@ -854,41 +763,32 @@ xmlSecOpenSSLRsaOaepProcess(xmlSecTransformPtr transform, xmlSecTransformCtxPtr
                                            xmlSecBufferGetData(&(ctx->oaepParams)),
                                            paramsSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "RSA_padding_check_PKCS1_OAEP",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("RSA_padding_check_PKCS1_OAEP",
+                    xmlSecTransformGetName(transform));
             return(-1);
         }
         outSize = ret;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "Unexpected trasnform operation: %d; paramsSize: %d",
-                    (int)transform->operation, (int)paramsSize);
+        xmlSecOtherError3(XMLSEC_ERRORS_R_INVALID_OPERATION,
+                xmlSecTransformGetName(transform),
+                "Unexpected transform operation: %ld; paramsSize: %ld",
+                (long int)transform->operation, (long int)paramsSize);
         return(-1);
     }
 
     ret = xmlSecBufferSetSize(out, outSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", outSize);
+        xmlSecInternalError2("xmlSecBufferSetSize",
+                xmlSecTransformGetName(transform),
+                "size=%d", outSize);
         return(-1);
     }
 
     ret = xmlSecBufferRemoveHead(in, inSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferRemoveHead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", inSize);
+        xmlSecInternalError2("xmlSecBufferRemoveHead",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", inSize);
         return(-1);
     }
 
diff --git a/src/openssl/kw_aes.c b/src/openssl/kw_aes.c
index 8e71148..54455b4 100644
--- a/src/openssl/kw_aes.c
+++ b/src/openssl/kw_aes.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * AES Algorithm support
  *
@@ -104,21 +103,14 @@ xmlSecOpenSSLKWAesInitialize(xmlSecTransformPtr transform) {
     } else if(xmlSecTransformCheckId(transform, xmlSecOpenSSLTransformKWAes256Id)) {
         ctx->keyExpectedSize = XMLSEC_KW_AES256_KEY_SIZE;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLKWAesGetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKWAesGetKey",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -183,12 +175,8 @@ xmlSecOpenSSLKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < ctx->keyExpectedSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key=%d;expected=%d",
-                    keySize, ctx->keyExpectedSize);
+        xmlSecInvalidKeyDataSizeError(keySize, ctx->keyExpectedSize,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -196,12 +184,9 @@ xmlSecOpenSSLKWAesSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
                             xmlSecBufferGetData(buffer),
                             ctx->keyExpectedSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "expected-size=%d", 
-                    ctx->keyExpectedSize);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", ctx->keyExpectedSize);
         return(-1);
     }
 
@@ -241,11 +226,8 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % 8) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "size=%d(not 8 bytes aligned)", inSize);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                                inSize, 8, xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -259,11 +241,9 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -273,11 +253,8 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                       8 * keySize,
                                       &aesKey);
             if(ret != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "AES_set_decrypt_key",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("AES_set_decrypt_key",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -285,11 +262,8 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -299,11 +273,8 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                       8 * keySize,
                                       &aesKey);
             if(ret != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "AES_set_decrypt_key",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("AES_set_decrypt_key",
+                                   xmlSecTransformGetName(transform));
                 return(-1);
             }
 
@@ -311,11 +282,8 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWAesEncode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKWAesEncode",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
             outSize = ret;
@@ -323,21 +291,17 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "outSize=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "inSize%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                  "size=%d", inSize);
             return(-1);
         }
 
@@ -346,11 +310,7 @@ xmlSecOpenSSLKWAesExecute(xmlSecTransformPtr transform, int last, xmlSecTransfor
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
diff --git a/src/openssl/kw_des.c b/src/openssl/kw_des.c
index c964257..ae644b1 100644
--- a/src/openssl/kw_des.c
+++ b/src/openssl/kw_des.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
@@ -159,11 +158,8 @@ xmlSecOpenSSLKWDes3Initialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecBufferInitialize(&(ctx->keyBuffer), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -227,22 +223,16 @@ xmlSecOpenSSLKWDes3SetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     keySize = xmlSecBufferGetSize(buffer);
     if(keySize < XMLSEC_KW_DES3_KEY_LENGTH) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_KEY_DATA_SIZE,
-                    "key length %d is not enough (%d expected)",
-                    keySize, XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInvalidKeyDataSizeError(keySize, XMLSEC_KW_DES3_KEY_LENGTH,
+                xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecBufferSetData(&(ctx->keyBuffer), xmlSecBufferGetData(buffer), XMLSEC_KW_DES3_KEY_LENGTH);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferSetData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
+        xmlSecInternalError2("xmlSecBufferSetData",
+                             xmlSecTransformGetName(transform),
+                             "size=%d", XMLSEC_KW_DES3_KEY_LENGTH);
         return(-1);
     }
 
@@ -281,12 +271,9 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
         /* just do nothing */
     } else  if((transform->status == xmlSecTransformStatusWorking) && (last != 0)) {
         if((inSize % XMLSEC_KW_DES3_BLOCK_LENGTH) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_SIZE,
-                        "%d bytes - not %d bytes aligned",
-                        inSize, XMLSEC_KW_DES3_BLOCK_LENGTH);
+            xmlSecInvalidSizeNotMultipleOfError("Input data",
+                                inSize, XMLSEC_KW_DES3_BLOCK_LENGTH,
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -302,11 +289,9 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
 
         ret = xmlSecBufferSetMaxSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetMaxSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
@@ -315,12 +300,8 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Encode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Encode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d", keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -329,12 +310,8 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
                                     xmlSecBufferGetData(in), inSize,
                                     xmlSecBufferGetData(out), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecKWDes3Decode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "key=%d,in=%d,out=%d",
-                            keySize, inSize, outSize);
+                xmlSecInternalError4("xmlSecKWDes3Decode", xmlSecTransformGetName(transform),
+                                     "key=%d,in=%d,out=%d", keySize, inSize, outSize);
                 return(-1);
             }
             outSize = ret;
@@ -342,21 +319,17 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
 
         ret = xmlSecBufferSetSize(out, outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferSetSize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferSetSize",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -365,11 +338,7 @@ xmlSecOpenSSLKWDes3Execute(xmlSecTransformPtr transform, int last, xmlSecTransfo
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
@@ -394,11 +363,7 @@ xmlSecOpenSSLKWDes3Sha1(void * context,
     xmlSecAssert2(outSize >= SHA_DIGEST_LENGTH, -1);
 
     if(SHA1(in, inSize, out) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "SHA1",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("SHA1", NULL);
         return(-1);
     }
     return(SHA_DIGEST_LENGTH);
@@ -416,11 +381,8 @@ xmlSecOpenSSLKWDes3GenerateRandom(void * context,
 
     ret = RAND_bytes(out, outSize);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "RAND_bytes",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "ret=%d", ret);
+        xmlSecOpenSSLError2("RAND_bytes", NULL,
+                            "size=%lu", (unsigned long)outSize);
         return(-1);
     }
 
@@ -451,11 +413,7 @@ xmlSecOpenSSLKWDes3BlockEncrypt(void * context,
                                     out, outSize, 
                                     1); /* encrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKWDes3Encrypt", NULL);
         return(-1);
     }
 
@@ -486,11 +444,7 @@ xmlSecOpenSSLKWDes3BlockDecrypt(void * context,
                                     out, outSize, 
                                     0); /* decrypt */
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLKWDes3Encrypt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKWDes3Encrypt", NULL);
         return(-1);
     }
 
@@ -521,21 +475,13 @@ xmlSecOpenSSLKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
 
     cipherCtx = EVP_CIPHER_CTX_new();
     if(cipherCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_CIPHER_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CIPHER_CTX_new", NULL);
         return(-1);
     }
 
     ret = EVP_CipherInit(cipherCtx, EVP_des_ede3_cbc(), key, iv, enc);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_CipherInit",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CipherInit", NULL);
         EVP_CIPHER_CTX_free(cipherCtx);
         return(-1);
     }
@@ -544,22 +490,14 @@ xmlSecOpenSSLKWDes3Encrypt(const xmlSecByte *key, xmlSecSize keySize,
 
     ret = EVP_CipherUpdate(cipherCtx, out, &updateLen, in, inSize);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_CipherUpdate",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CipherUpdate", NULL);
         EVP_CIPHER_CTX_free(cipherCtx);
         return(-1);
     }
 
     ret = EVP_CipherFinal(cipherCtx, out + updateLen, &finalLen);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_CipherFinal",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_CipherFinal", NULL);
         EVP_CIPHER_CTX_free(cipherCtx);
         return(-1);
     }
diff --git a/src/openssl/openssl11_wrapper.h b/src/openssl/openssl11_wrapper.h
deleted file mode 100644
index 7f900ff..0000000
--- a/src/openssl/openssl11_wrapper.h
+++ /dev/null
@@ -1,213 +0,0 @@
-#ifndef __XMLSEC_OPENSSL_OPENSSL11_WRAPPER_H__
-#define __XMLSEC_OPENSSL_OPENSSL11_WRAPPER_H__
-/**
- * XML Security Library (http://www.aleksey.com/xmlsec).
- *
- * This file provides a compatibility layer for pre-OpenSSL 1.1.0 versions.
- * The functions here provide accessors for structs which were made opaque in
- * 1.1.0 so they an be accessed in earlier versions of the library using the
- * same syntax. This file won't be required once OpenSSL 1.1.0 is the minimum
- * suported version.
- */
-#if (OPENSSL_VERSION_NUMBER < 0x10100000)
-
-#define EVP_PKEY_up_ref(pKey)  CRYPTO_add(&((pKey)->references), 1, CRYPTO_LOCK_EVP_PKEY)
-
-#ifndef XMLSEC_NO_X509
-#include <openssl/x509_vfy.h>
-
-#define ASN1_STRING_get0_data(data)        ASN1_STRING_data((data))
-#define X509_CRL_get0_nextUpdate(crl)      X509_CRL_get_nextUpdate((crl))
-#define X509_REVOKED_get0_serialNumber(r)  (((r) != NULL) ? ((r)->serialNumber) : (const ASN1_INTEGER *)NULL)
-#define X509_OBJECT_get0_X509(x)           (((x) != NULL) ? ((x)->data.x509) : (X509 *)NULL)
-
-static inline X509_OBJECT *X509_OBJECT_new() {
-    return(calloc(1, sizeof(X509_OBJECT)));
-}
-
-static inline void X509_OBJECT_free(X509_OBJECT *a) {
-    if(a == NULL) {
-        return;
-    }
-    X509_OBJECT_free_contents(a);
-    free(a);
-}
-
-#endif /* XMLSEC_NO_X509 */
-
-#ifndef XMLSEC_NO_RSA
-
-#define EVP_PKEY_get0_RSA(pKey)  (((pKey) != NULL) ? ((pKey)->pkey.rsa) : (RSA*)NULL)
-
-static inline void RSA_get0_key(const RSA *r, const BIGNUM **n, const BIGNUM **e, const BIGNUM **d) {
-    xmlSecAssert(r != NULL);
-
-    if(n != NULL) {
-        (*n) = r->n;
-    }
-    if(e != NULL) {
-        (*e) = r->e;
-    }
-    if(d != NULL) {
-        (*d) = r->d;
-    }
-}
-
-static inline int RSA_test_flags(const RSA *r, int flags) {
-    xmlSecAssert2(r != NULL, 0);
-    return(r->flags & flags);
-}
-
-static inline int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d) {
-    xmlSecAssert2(r != NULL, 0);
-
-    if(((r->n == NULL) && (n == NULL)) || ((r->e == NULL) && (e == NULL))) {
-        return(0);
-    }
-    if(n != NULL) {
-        BN_free(r->n);
-        r->n = n;
-    }
-    if(e != NULL) {
-        BN_free(r->e);
-        r->e = e;
-    }
-    if(d != NULL) {
-        BN_free(r->d);
-        r->d = d;
-    }
-    return(1);
-}
-#endif /* XMLSEC_NO_RSA */
-
-#ifndef XMLSEC_NO_ECDSA
-
-#define EVP_PKEY_get0_EC_KEY(pKey)  (((pKey) != NULL) ? ((pKey)->pkey.ec) : (EC_KEY*)NULL)
-
-static inline void ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) {
-    xmlSecAssert(sig != NULL);
-
-    if(pr != NULL) {
-        (*pr) = sig->r;
-    }
-    if(ps != NULL) {
-        (*ps) = sig->s;
-    }
-}
-
-static inline int ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s) {
-    xmlSecAssert2(sig != NULL, 0);
-
-    if((r == NULL) || (s == NULL)) {
-        return(0);
-    }
-    BN_clear_free(sig->r);
-    BN_clear_free(sig->s);
-    sig->r = r;
-    sig->s = s;
-    return(1);
-}
-#endif /* XMLSEC_NO_ECDSA */
-
-#ifndef XMLSEC_NO_DSA
-
-#define EVP_PKEY_get0_DSA(pKey)  (((pKey) != NULL) ? ((pKey)->pkey.dsa) : (DSA*)NULL)
-
-static inline void DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) {
-    xmlSecAssert(sig != NULL);
-    
-    if(pr != NULL) {
-        (*pr) = sig->r;
-    }
-    if(ps != NULL) {
-        (*ps) = sig->s;
-    }
-}
-
-static inline int DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s) {
-    xmlSecAssert2(sig != NULL, 0);
-    
-    if(r == NULL || s == NULL) {
-        return(0);
-    }
-    BN_clear_free(sig->r);
-    BN_clear_free(sig->s);
-    
-    sig->r = r;
-    sig->s = s;
-    return(1);
-}
-
-static inline void DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g) {
-    xmlSecAssert(d != NULL);
-
-    if(p != NULL) {
-        (*p) = d->p;
-    }
-    if(q != NULL) {
-        (*q) = d->q;
-    }
-    if(g != NULL) {
-        (*g) = d->g;
-    }
-}
-
-static inline void DSA_get0_key(const DSA *d, const BIGNUM **pub_key, const BIGNUM **priv_key) {
-    xmlSecAssert(d != NULL);
-
-    if(pub_key != NULL) {
-        (*pub_key) = d->pub_key;
-    }
-    if(priv_key != NULL) {
-        (*priv_key) = d->priv_key;
-    }
-}
-
-static inline ENGINE *DSA_get0_engine(DSA *d) {
-    xmlSecAssert2(d != NULL, NULL);
-    return(d->engine);
-}
-
-static inline int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g) {
-    xmlSecAssert2(d != NULL, 0);
-    
-    if(((d->p == NULL) && (p == NULL)) || ((d->q == NULL) && (q == NULL)) || ((d->g == NULL) && (g == NULL))) {
-        return(0);
-    }
-
-    if(p != NULL) {
-        BN_free(d->p);
-        d->p = p;
-    }
-    if(q != NULL) {
-        BN_free(d->q);
-        d->q = q;
-    }
-    if(g != NULL) {
-        BN_free(d->g);
-        d->g = g;
-    }
-    return(1);
-}
-
-static inline int DSA_set0_key(DSA *d, BIGNUM *pub_key, BIGNUM *priv_key) {
-    xmlSecAssert2(d != NULL, 0);
-
-    if((d->pub_key == NULL) && (pub_key == NULL)) {
-        return(0);
-    }
-
-    if(pub_key != NULL) {
-        BN_free(d->pub_key);
-        d->pub_key = pub_key;
-    }
-    if(priv_key != NULL) {
-        BN_free(d->priv_key);
-        d->priv_key = priv_key;
-    }
-    return(1);
-}
-#endif /* XMLSEC_NO_DSA */
-
-#endif /* (OPENSSL_VERSION_NUMBER < 0x10100000) */
-#endif /* __XMLSEC_OPENSSL_OPENSSL11_WRAPPER_H__ */
diff --git a/src/openssl/openssl_compat.h b/src/openssl/openssl_compat.h
new file mode 100644
index 0000000..3581244
--- /dev/null
+++ b/src/openssl/openssl_compat.h
@@ -0,0 +1,62 @@
+#ifndef __XMLSEC_OPENSSL_OPENSSL_COMPAT_H__
+#define __XMLSEC_OPENSSL_OPENSSL_COMPAT_H__
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
+ *
+ * This file provides a compatibility layer for pre-OpenSSL 1.0.0 and 1.1.0
+ * versions.
+ *
+ * The functions here provide accessors for structs which were made opaque in
+ * 1.0.0 and 1.1.0 so they an be accessed in earlier versions of the library
+ * using the same syntax. This file won't be required once OpenSSL 1.1.0 is
+ * the minimum supported version. Note that LibreSSL "forked" at OpenSSL 1.0.0.
+ */
+
+/******************************************************************************
+ *
+ * OpenSSL 1.0.0 compatibility
+ *
+ *****************************************************************************/
+#if defined(XMLSEC_OPENSSL_API_098)
+#define EVP_PKEY_base_id(pKey)            EVP_PKEY_type((pKey)->type)
+#endif /* defined(XMLSEC_OPENSSL_API_098) */
+
+/******************************************************************************
+ *
+ * OpenSSL 1.1.0 compatibility
+ *
+ *****************************************************************************/
+#if !defined(XMLSEC_OPENSSL_API_110)
+
+/* EVP_PKEY stuff */
+#define EVP_PKEY_up_ref(pKey)              CRYPTO_add(&((pKey)->references), 1, CRYPTO_LOCK_EVP_PKEY)
+#define EVP_PKEY_get0_DSA(pKey)            (((pKey) != NULL) ? ((pKey)->pkey.dsa) : (DSA*)NULL)
+#define EVP_PKEY_get0_RSA(pKey)            (((pKey) != NULL) ? ((pKey)->pkey.rsa) : (RSA*)NULL)
+#define EVP_PKEY_get0_EC_KEY(pKey)         (((pKey) != NULL) ? ((pKey)->pkey.ec)  : (EC_KEY*)NULL)
+
+/* EVP_MD stuff */
+#define EVP_MD_CTX_new()                   EVP_MD_CTX_create()
+#define EVP_MD_CTX_free(x)                 EVP_MD_CTX_destroy((x))
+#define EVP_MD_CTX_md_data(x)              ((x)->md_data)
+
+/* EVP_CIPHER_CTX stuff */
+#define EVP_CIPHER_CTX_encrypting(x)       ((x)->encrypt)
+
+/* HMAC_CTX stuff */
+#define HMAC_CTX_new()                     ((HMAC_CTX*)calloc(1, sizeof(HMAC_CTX)))
+#define HMAC_CTX_free(x)                   { HMAC_CTX_cleanup((x)); free((x)); }
+
+/* X509 stuff */
+#define ASN1_STRING_get0_data(data)        ASN1_STRING_data((data))
+#define X509_CRL_get0_nextUpdate(crl)      X509_CRL_get_nextUpdate((crl))
+#define X509_get0_notBefore(x509)          X509_get_notBefore((x509))
+#define X509_get0_notAfter(x509)           X509_get_notAfter((x509))
+#define X509_STORE_CTX_get_by_subject      X509_STORE_get_by_subject
+#define X509_REVOKED_get0_serialNumber(r)  (((r) != NULL) ? ((r)->serialNumber) : (ASN1_INTEGER *)NULL)
+#define X509_OBJECT_new()                  (calloc(1, sizeof(X509_OBJECT)))
+#define X509_OBJECT_free(x)                { X509_OBJECT_free_contents(x); free(x); }
+#define X509_OBJECT_get0_X509(x)           (((x) != NULL) ? ((x)->data.x509) : (X509 *)NULL)
+
+#endif /* !defined(XMLSEC_OPENSSL_API_110) */
+
+#endif /* __XMLSEC_OPENSSL_OPENSSL_COMPAT_H__ */
diff --git a/src/openssl/signatures.c b/src/openssl/signatures.c
index 5625f2f..da9fdf5 100644
--- a/src/openssl/signatures.c
+++ b/src/openssl/signatures.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -21,18 +21,73 @@
 
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
-#include "openssl11_wrapper.h"
+#include "openssl_compat.h"
 
-/* new API from OpenSSL 1.1.0 (https://www.openssl.org/docs/manmaster/crypto/EVP_DigestInit.html):
+/******************************************************************************
  *
- * EVP_MD_CTX_create() and EVP_MD_CTX_destroy() were renamed to EVP_MD_CTX_new() and EVP_MD_CTX_free() in OpenSSL 1.1.
- */
-#if !defined(XMLSEC_OPENSSL_110)
-#define EVP_MD_CTX_new()       EVP_MD_CTX_create()
-#define EVP_MD_CTX_free(x)     EVP_MD_CTX_destroy((x))
-#define EVP_MD_CTX_md_data(x)  ((x)->md_data)
+ * OpenSSL 1.1.0 compatibility
+ *
+ *****************************************************************************/
+#if !defined(XMLSEC_OPENSSL_API_110)
+
+#ifndef XMLSEC_NO_ECDSA
+
+static inline void ECDSA_SIG_get0(const ECDSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) {
+    xmlSecAssert(sig != NULL);
+
+    if(pr != NULL) {
+        (*pr) = sig->r;
+    }
+    if(ps != NULL) {
+        (*ps) = sig->s;
+    }
+}
+
+static inline int ECDSA_SIG_set0(ECDSA_SIG *sig, BIGNUM *r, BIGNUM *s) {
+    xmlSecAssert2(sig != NULL, 0);
+
+    if((r == NULL) || (s == NULL)) {
+        return(0);
+    }
+    BN_clear_free(sig->r);
+    BN_clear_free(sig->s);
+    sig->r = r;
+    sig->s = s;
+    return(1);
+}
+#endif /* XMLSEC_NO_ECDSA */
+
+#ifndef XMLSEC_NO_DSA
+
+static inline void DSA_SIG_get0(const DSA_SIG *sig, const BIGNUM **pr, const BIGNUM **ps) {
+    xmlSecAssert(sig != NULL);
+
+    if(pr != NULL) {
+        (*pr) = sig->r;
+    }
+    if(ps != NULL) {
+        (*ps) = sig->s;
+    }
+}
+
+static inline int DSA_SIG_set0(DSA_SIG *sig, BIGNUM *r, BIGNUM *s) {
+    xmlSecAssert2(sig != NULL, 0);
+
+    if(r == NULL || s == NULL) {
+        return(0);
+    }
+    BN_clear_free(sig->r);
+    BN_clear_free(sig->s);
+
+    sig->r = r;
+    sig->s = s;
+    return(1);
+}
+
+#endif /* XMLSEC_NO_DSA */
+
+#endif /* !defined(XMLSEC_OPENSSL_API_110) */
 
-#endif /* !defined(XMLSEC_OPENSSL_110) */
 
 /**************************************************************************
  *
@@ -265,32 +320,22 @@ xmlSecOpenSSLSignatureInitialize(xmlSecTransformPtr transform) {
 #endif /* XMLSEC_NO_ECDSA */
 
     if(1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidTransfromError(transform)
         return(-1);
     }
 
     /* create/init digest CTX */
     ctx->digestCtx = EVP_MD_CTX_new();
     if(ctx->digestCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_MD_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_MD_CTX_new",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = EVP_DigestInit(ctx->digestCtx, ctx->digest);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "EVP_DigestInit",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_DigestInit",
+                           xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -341,11 +386,8 @@ xmlSecOpenSSLSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     pKey = xmlSecOpenSSLEvpKeyDataGetEvp(value);
     if(pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDataGetEvp",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDataGetEvp",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -355,11 +397,8 @@ xmlSecOpenSSLSignatureSetKey(xmlSecTransformPtr transform, xmlSecKeyPtr key) {
 
     ctx->pKey = xmlSecOpenSSLEvpKeyDup(pKey);
     if(ctx->pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecOpenSSLEvpKeyDup",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyDup",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -412,11 +451,8 @@ xmlSecOpenSSLSignatureVerify(xmlSecTransformPtr transform,
 
     ret = (ctx->verifyCallback)(ctx, data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "verifyCallback",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("verifyCallback",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -424,11 +460,9 @@ xmlSecOpenSSLSignatureVerify(xmlSecTransformPtr transform,
     if(ret == 1) {
         transform->status = xmlSecTransformStatusOk;
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "verifyCallback",
-                    XMLSEC_ERRORS_R_DATA_NOT_MATCH,
-                    "signature do not match");
+        xmlSecOtherError(XMLSEC_ERRORS_R_DATA_NOT_MATCH,
+                         xmlSecTransformGetName(transform),
+                         "ctx->verifyCallback: signature does not verify");
         transform->status = xmlSecTransformStatusFail;
     }
 
@@ -475,21 +509,15 @@ xmlSecOpenSSLSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTran
 
         ret = EVP_DigestUpdate(ctx->digestCtx, xmlSecBufferGetData(in), inSize);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "EVP_DigestUpdate",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_DigestUpdate",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecBufferRemoveHead",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -499,11 +527,8 @@ xmlSecOpenSSLSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTran
 
         ret = EVP_DigestFinal(ctx->digestCtx, ctx->dgst, &ctx->dgstSize);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "EVP_DigestFinal",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("EVP_DigestFinal",
+                               xmlSecTransformGetName(transform));
             return(-1);
         }
         xmlSecAssert2(ctx->dgstSize > 0, -1);
@@ -512,11 +537,8 @@ xmlSecOpenSSLSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTran
         if(transform->operation == xmlSecTransformOperationSign) {
             ret = (ctx->signCallback)(ctx, out);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "signCallback",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("signCallback",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -529,11 +551,7 @@ xmlSecOpenSSLSignatureExecute(xmlSecTransformPtr transform, int last, xmlSecTran
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(xmlSecBufferGetSize(&(transform->inBuf)) == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
 
@@ -587,85 +605,54 @@ xmlSecOpenSSLSignatureDsaSign(xmlSecOpenSSLSignatureCtxPtr ctx, xmlSecBufferPtr
     /* get key */
     dsaKey = EVP_PKEY_get1_DSA(ctx->pKey);
     if(dsaKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_PKEY_get1_DSA",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_PKEY_get1_DSA", NULL);
         goto done;
     }
 
     /* signature size = r + s + 8 bytes, we just need r+s */
     dsaSignSize = DSA_size(dsaKey);
     if(dsaSignSize < 8) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_size",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "dsaSignSize=%d", (int)dsaSignSize);
+        xmlSecInvalidSizeLessThanError("DSA signature", dsaSignSize, 8, NULL);
         goto done;
     }
 
     signHalfSize = (dsaSignSize - 8) /  2;
     if(signHalfSize < 4) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "signHalfSize",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "signHalfSize=%d", (int)signHalfSize);
+        xmlSecInvalidSizeLessThanError("DSA signature (half)", signHalfSize, 4, NULL);
         goto done;
     }
 
     /* calculate signature */
     sig = DSA_do_sign(ctx->dgst, ctx->dgstSize, dsaKey);
     if(sig == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_do_sign",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_do_sign", NULL);
         goto done;
     }
 
     /* get signature components */
     DSA_SIG_get0(sig, &rr, &ss);
     if((rr == NULL) || (ss == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_SIG_get0",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_SIG_get0", NULL);
         goto done;
     }
     rSize = BN_num_bytes(rr);
     if(rSize > signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "rSize=%d > %d",
-                    rSize, signHalfSize);
+        xmlSecInvalidSizeMoreThanError("DSA signature r",
+                                       rSize, signHalfSize, NULL);
         goto done;
     }
     sSize = BN_num_bytes(ss);
     if(sSize > signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "sSize=%d > %d",
-                    sSize, signHalfSize);
+        xmlSecInvalidSizeMoreThanError("DSA signature s",
+                                       sSize, signHalfSize, NULL);
         goto done;
     }
 
     /* allocate buffer */
     ret = xmlSecBufferSetSize(out, 2 * signHalfSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)(2 * signHalfSize));
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", (int)(2 * signHalfSize));
         goto done;
     }
     outData = xmlSecBufferGetData(out);
@@ -710,83 +697,53 @@ xmlSecOpenSSLSignatureDsaVerify(xmlSecOpenSSLSignatureCtxPtr ctx, const xmlSecBy
     /* get key */
     dsaKey = EVP_PKEY_get1_DSA(ctx->pKey);
     if(dsaKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_PKEY_get1_DSA",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_PKEY_get1_DSA", NULL);
         goto done;
     }
 
     /* signature size = r + s + 8 bytes, we just need r+s */
     dsaSignSize = DSA_size(dsaKey);
     if(dsaSignSize < 8) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_size",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "dsaSignSize=%d", (int)dsaSignSize);
+        xmlSecInvalidSizeLessThanError("DSA signatue",
+                                       dsaSignSize, 8, NULL);
         goto done;
     }
 
     signHalfSize = (dsaSignSize - 8) /  2;
     if(signHalfSize < 4) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "signHalfSize",
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "signHalfSize=%d", (int)signHalfSize);
+        xmlSecInvalidSizeLessThanError("DSA signatue (half size)",
+                                       signHalfSize, 4, NULL);
         goto done;
     }
 
     /* check size */
     if(signSize != 2 * signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "invalid length %d (%d expected)",
-                    (int)signSize, (int)(2 * signHalfSize));
+        xmlSecInvalidSizeError("DSA signature", signSize, 2 * signHalfSize,
+                               NULL);
         goto done;
     }
 
     /* create/read signature */
     sig = DSA_SIG_new();
     if (sig == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_SIG_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_SIG_new", NULL);
         goto done;
     }
 
     rr = BN_bin2bn(signData, signHalfSize, NULL);
     if(rr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bin2bn(sig->r)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bin2bn(sig->r)", NULL);
         goto done;
     }
     ss = BN_bin2bn(signData + signHalfSize, signHalfSize, NULL);
     if(ss == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bin2bn(sig->s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bin2bn(sig->s)", NULL);
         goto done;
     }
 
     ret = DSA_SIG_set0(sig, rr, ss);
     if(ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_SIG_set0",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_SIG_set0", NULL);
         goto done;
     }
 
@@ -796,11 +753,7 @@ xmlSecOpenSSLSignatureDsaVerify(xmlSecOpenSSLSignatureCtxPtr ctx, const xmlSecBy
     /* verify signature */
     ret = DSA_do_verify(ctx->dgst, ctx->dgstSize, sig, dsaKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_do_verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_do_verify", NULL);
         goto done;
     }
 
@@ -949,30 +902,18 @@ xmlSecOpenSSLSignatureEcdsaSignatureHalfSize(EC_KEY * ecKey) {
 
     group = EC_KEY_get0_group(ecKey);
     if(group == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EC_KEY_get0_group",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EC_KEY_get0_group", NULL);
         goto done;
     }
 
     order = BN_new();
     if(order == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_new", NULL);
         goto done;
     }
 
     if(EC_GROUP_get_order(group, order, NULL) != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EC_GROUP_get_order",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EC_GROUP_get_order", NULL);
         goto done;
     }
 
@@ -1009,78 +950,51 @@ xmlSecOpenSSLSignatureEcdsaSign(xmlSecOpenSSLSignatureCtxPtr ctx, xmlSecBufferPt
     /* get key */
     ecKey = EVP_PKEY_get1_EC_KEY(ctx->pKey);
     if(ecKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_PKEY_get1_DSA",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_PKEY_get1_DSA", NULL);
         goto done;
     }
 
     /* calculate signature size */
     signHalfSize = xmlSecOpenSSLSignatureEcdsaSignatureHalfSize(ecKey);
     if(signHalfSize <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLSignatureEcdsaSignatureHalfSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLSignatureEcdsaSignatureHalfSize", NULL);
         goto done;
     }
 
     /* sign */
     sig = ECDSA_do_sign(ctx->dgst, ctx->dgstSize, ecKey);
     if(sig == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ECDSA_do_sign",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ECDSA_do_sign", NULL);
         goto done;
     }
 
     /* get signature components */
     ECDSA_SIG_get0(sig, &rr, &ss);
     if((rr == NULL) || (ss == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ECDSA_SIG_get0",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ECDSA_SIG_get0", NULL);
         goto done;
     }
 
     /* check sizes */
     rSize = BN_num_bytes(rr);
     if(rSize > signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "rSize=%d > %d",
-                    (int)rSize, (int)signHalfSize);
+        xmlSecInvalidSizeMoreThanError("ECDSA signatue r",
+                                       rSize, signHalfSize, NULL);
         goto done;
     }
 
     sSize = BN_num_bytes(ss);
     if(sSize > signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "sSize=%d > %d",
-                    (int)sSize, (int)signHalfSize);
+        xmlSecInvalidSizeMoreThanError("ECDSA signatue s",
+                                       sSize, signHalfSize, NULL);
         goto done;
     }
 
     /* allocate buffer */
     ret = xmlSecBufferSetSize(out, 2 * signHalfSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", (int)(2 * signHalfSize));
+        xmlSecInternalError2("xmlSecBufferSetSize", NULL,
+                             "size=%d", (int)(2 * signHalfSize));
         goto done;
     }
     outData = xmlSecBufferGetData(out);
@@ -1126,73 +1040,45 @@ xmlSecOpenSSLSignatureEcdsaVerify(xmlSecOpenSSLSignatureCtxPtr ctx, const xmlSec
     /* get key */
     ecKey = EVP_PKEY_get1_EC_KEY(ctx->pKey);
     if(ecKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "EVP_PKEY_get1_DSA",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("EVP_PKEY_get1_EC_KEY", NULL);
         goto done;
     }
 
     /* calculate signature size */
     signHalfSize = xmlSecOpenSSLSignatureEcdsaSignatureHalfSize(ecKey);
     if(signHalfSize <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLSignatureEcdsaSignatureHalfSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLSignatureEcdsaSignatureHalfSize", NULL);
         goto done;
     }
 
     /* check size */
     if(signSize != 2 * signHalfSize) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "invalid length %d (%d expected)",
-                    (int)signSize, (int)(2 * signHalfSize));
+        xmlSecInvalidSizeError("ECDSA signature", signSize, 2 * signHalfSize,
+                               NULL);
         goto done;
     }
 
     /* create/read signature */
     sig = ECDSA_SIG_new();
     if (sig == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "DSA_SIG_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("DSA_SIG_new", NULL);
         goto done;
     }
 
     rr = BN_bin2bn(signData, signHalfSize, NULL);
     if(rr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bin2bn(sig->r)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bin2bn(sig->r)", NULL);
         goto done;
     }
     ss = BN_bin2bn(signData + signHalfSize, signHalfSize, NULL);
     if(ss == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bin2bn(sig->s)",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bin2bn(sig->s)", NULL);
         goto done;
     }
 
     ret = ECDSA_SIG_set0(sig, rr, ss);
     if(ret == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ECDSA_SIG_set0()",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ECDSA_SIG_set0()", NULL);
         goto done;
     }
     rr = NULL;
@@ -1201,11 +1087,7 @@ xmlSecOpenSSLSignatureEcdsaVerify(xmlSecOpenSSLSignatureCtxPtr ctx, const xmlSec
     /* verify signature */
     ret = ECDSA_do_verify(ctx->dgst, ctx->dgstSize, sig, ecKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ECDSA_do_verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ECDSA_do_verify", NULL);
         goto done;
     }
 
diff --git a/src/openssl/symkeys.c b/src/openssl/symkeys.c
index 78d29e2..4c81c24 100644
--- a/src/openssl/symkeys.c
+++ b/src/openssl/symkeys.c
@@ -1,6 +1,5 @@
-/**
- *
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * DES Algorithm support
  *
diff --git a/src/openssl/x509.c b/src/openssl/x509.c
index 4b486cf..b876138 100644
--- a/src/openssl/x509.c
+++ b/src/openssl/x509.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -39,7 +39,16 @@
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
 #include <xmlsec/openssl/x509.h>
-#include "openssl11_wrapper.h"
+#include "openssl_compat.h"
+
+/* The ASN1_TIME_check() function was changed from ASN1_TIME * to
+ * const ASN1_TIME * in 1.1.0. To avoid compiler warnings, we use this hack.
+ */
+#if !defined(XMLSEC_OPENSSL_API_110)
+typedef ASN1_TIME XMLSEC_CONST_ASN1_TIME;
+#else  /* !defined(XMLSEC_OPENSSL_API_110) */
+typedef const ASN1_TIME XMLSEC_CONST_ASN1_TIME;
+#endif /* !defined(XMLSEC_OPENSSL_API_110) */
 
 /*************************************************************************
  *
@@ -99,7 +108,7 @@ static void             xmlSecOpenSSLX509CertDebugDump          (X509* cert,
                                                                  FILE* output);
 static void             xmlSecOpenSSLX509CertDebugXmlDump       (X509* cert,
                                                                  FILE* output);
-static int              xmlSecOpenSSLX509CertGetTime            (ASN1_TIME* t,
+static int              xmlSecOpenSSLX509CertGetTime            (XMLSEC_CONST_ASN1_TIME * t,
                                                                  time_t* res);
 
 /*************************************************************************
@@ -351,22 +360,16 @@ xmlSecOpenSSLKeyDataX509AdoptCert(xmlSecKeyDataPtr data, X509* cert) {
     if(ctx->certsList == NULL) {
         ctx->certsList = sk_X509_new_null();
         if(ctx->certsList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "sk_X509_new_null",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_new_null",
+                               xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
 
     ret = sk_X509_push(ctx->certsList, cert);
     if(ret < 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "sk_X509_push",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_push",
+                           xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -440,22 +443,16 @@ xmlSecOpenSSLKeyDataX509AdoptCrl(xmlSecKeyDataPtr data, X509_CRL* crl) {
     if(ctx->crlsList == NULL) {
         ctx->crlsList = sk_X509_CRL_new_null();
         if(ctx->crlsList == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "sk_X509_CRL_new_null",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_CRL_new_null",
+                               xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
 
     ret = sk_X509_CRL_push(ctx->crlsList, crl);
     if(ret < 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "sk_X509_CRL_push",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_CRL_push",
+                           xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -537,31 +534,23 @@ xmlSecOpenSSLKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     for(pos = 0; pos < size; ++pos) {
         certSrc = xmlSecOpenSSLKeyDataX509GetCert(src, pos);
         if(certSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecOpenSSLKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCert",
+                                 xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         certDst = X509_dup(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "X509_dup",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("X509_dup",
+                               xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecOpenSSLKeyDataX509AdoptCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecOpenSSLKeyDataX509AdoptCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                                xmlSecKeyDataGetName(dst));
             X509_free(certDst);
             return(-1);
         }
@@ -572,31 +561,23 @@ xmlSecOpenSSLKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     for(pos = 0; pos < size; ++pos) {
         crlSrc = xmlSecOpenSSLKeyDataX509GetCrl(src, pos);
         if(crlSrc == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(src)),
-                        "xmlSecOpenSSLKeyDataX509GetCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCrl",
+                                 xmlSecKeyDataGetName(src),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         crlDst = X509_CRL_dup(crlSrc);
         if(crlDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "X509_CRL_dup",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("X509_CRL_dup",
+                               xmlSecKeyDataGetName(dst));
             return(-1);
         }
 
         ret = xmlSecOpenSSLKeyDataX509AdoptCrl(dst, crlDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecOpenSSLKeyDataX509AdoptCrl",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCrl",
+                                xmlSecKeyDataGetName(dst));
             X509_CRL_free(crlDst);
             return(-1);
         }
@@ -607,20 +588,14 @@ xmlSecOpenSSLKeyDataX509Duplicate(xmlSecKeyDataPtr dst, xmlSecKeyDataPtr src) {
     if(certSrc != NULL) {
         certDst = X509_dup(certSrc);
         if(certDst == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "X509_dup",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("X509_dup",
+                               xmlSecKeyDataGetName(dst));
             return(-1);
         }
         ret = xmlSecOpenSSLKeyDataX509AdoptKeyCert(dst, certDst);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(dst)),
-                        "xmlSecOpenSSLKeyDataX509AdoptKeyCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptKeyCert",
+                                xmlSecKeyDataGetName(dst));
             X509_free(certDst);
             return(-1);
         }
@@ -662,34 +637,23 @@ xmlSecOpenSSLKeyDataX509XmlRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     data = xmlSecKeyEnsureData(key, id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
     ret = xmlSecOpenSSLX509DataNodeRead(data, node, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLX509DataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509DataNodeRead",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
 
-    if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
-        ret = xmlSecOpenSSLKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLKeyDataX509VerifyAndExtractKey",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
+    ret = xmlSecOpenSSLKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
+        return(-1);
     }
     return(0);
 }
@@ -711,11 +675,9 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     content = xmlSecX509DataGetNodeContent (node, keyInfoCtx);
     if (content < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecX509DataGetNodeContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "content=%d", content);
+        xmlSecInternalError2("xmlSecX509DataGetNodeContent",
+                             xmlSecKeyDataKlassGetName(id),
+                             "content=%d", content);
         return(-1);
     } else if(content == 0) {
         /* by default we are writing certificates and crls */
@@ -734,22 +696,18 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecOpenSSLKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                        "xmlSecOpenSSLKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCert",
+                                 xmlSecKeyDataKlassGetName(id),
+                                 "pos=%d", pos);
             return(-1);
         }
 
         if((content & XMLSEC_X509DATA_CERTIFICATE_NODE) != 0) {
             ret = xmlSecOpenSSLX509CertificateNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLX509CertificateNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLX509CertificateNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -757,11 +715,9 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SUBJECTNAME_NODE) != 0) {
             ret = xmlSecOpenSSLX509SubjectNameNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLX509SubjectNameNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLX509SubjectNameNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -769,11 +725,9 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_ISSUERSERIAL_NODE) != 0) {
             ret = xmlSecOpenSSLX509IssuerSerialNodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLX509IssuerSerialNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLX509IssuerSerialNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -781,11 +735,9 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         if((content & XMLSEC_X509DATA_SKI_NODE) != 0) {
             ret = xmlSecOpenSSLX509SKINodeWrite(cert, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLX509SKINodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLX509SKINodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -797,21 +749,17 @@ xmlSecOpenSSLKeyDataX509XmlWrite(xmlSecKeyDataId id, xmlSecKeyPtr key,
         for(pos = 0; pos < size; ++pos) {
             crl = xmlSecOpenSSLKeyDataX509GetCrl(data, pos);
             if(crl == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLKeyDataX509GetCrl",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCrl",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
 
             ret = xmlSecOpenSSLX509CRLNodeWrite(crl, node, keyInfoCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                            "xmlSecOpenSSLX509CRLNodeWrite",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "pos=%d", pos);
+                xmlSecInternalError2("xmlSecOpenSSLX509CRLNodeWrite",
+                                     xmlSecKeyDataKlassGetName(id),
+                                     "pos=%d", pos);
                 return(-1);
             }
         }
@@ -856,11 +804,9 @@ xmlSecOpenSSLKeyDataX509DebugDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecOpenSSLKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecOpenSSLKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "==== Certificate:\n");
@@ -890,11 +836,9 @@ xmlSecOpenSSLKeyDataX509DebugXmlDump(xmlSecKeyDataPtr data, FILE* output) {
     for(pos = 0; pos < size; ++pos) {
         cert = xmlSecOpenSSLKeyDataX509GetCert(data, pos);
         if(cert == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        "xmlSecOpenSSLKeyDataX509GetCert",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecOpenSSLKeyDataX509GetCert",
+                                 xmlSecKeyDataGetName(data),
+                                 "pos=%d", pos);
             return;
         }
         fprintf(output, "<Certificate>\n");
@@ -922,29 +866,42 @@ xmlSecOpenSSLX509DataNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyI
         ret = 0;
         if(xmlSecCheckNodeName(cur, xmlSecNodeX509Certificate, xmlSecDSigNs)) {
             ret = xmlSecOpenSSLX509CertificateNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError2("xmlSecOpenSSLX509CertificateNodeRead",
+                                     xmlSecKeyDataGetName(data),
+                                     "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SubjectName, xmlSecDSigNs)) {
             ret = xmlSecOpenSSLX509SubjectNameNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError2("xmlSecOpenSSLX509SubjectNameNodeRead",
+                                     xmlSecKeyDataGetName(data),
+                                     "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerSerial, xmlSecDSigNs)) {
             ret = xmlSecOpenSSLX509IssuerSerialNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError2("xmlSecOpenSSLX509IssuerSerialNodeRead",
+                                     xmlSecKeyDataGetName(data),
+                                     "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509SKI, xmlSecDSigNs)) {
             ret = xmlSecOpenSSLX509SKINodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError2("xmlSecOpenSSLX509SKINodeRead",
+                                     xmlSecKeyDataGetName(data),
+                                     "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            }
         } else if(xmlSecCheckNodeName(cur, xmlSecNodeX509CRL, xmlSecDSigNs)) {
             ret = xmlSecOpenSSLX509CRLNodeRead(data, cur, keyInfoCtx);
+            if(ret < 0) {
+                xmlSecInternalError2("xmlSecOpenSSLX509CRLNodeRead",
+                                     xmlSecKeyDataGetName(data),
+                                     "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CHILD) != 0) {
             /* laxi schema validation: ignore unknown nodes */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                        XMLSEC_ERRORS_NO_MESSAGE);
-            return(-1);
-        }
-        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "read node failed");
+            xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
             return(-1);
         }
     }
@@ -967,11 +924,7 @@ xmlSecOpenSSLX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -979,22 +932,16 @@ xmlSecOpenSSLX509CertificateNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     cert = xmlSecOpenSSLX509CertBase64DerRead(content);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLX509CertBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CertBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         X509_free(cert);
         xmlFree(content);
         return(-1);
@@ -1016,22 +963,13 @@ xmlSecOpenSSLX509CertificateNodeWrite(X509* cert, xmlNodePtr node, xmlSecKeyInfo
     /* set base64 lines size from context */
     buf = xmlSecOpenSSLX509CertBase64DerWrite(cert, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509CertBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CertBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509Certificate)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1059,11 +997,8 @@ xmlSecOpenSSLX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1073,11 +1008,7 @@ xmlSecOpenSSLX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
             xmlFree(subject);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1087,12 +1018,8 @@ xmlSecOpenSSLX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
     if(cert == NULL){
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subject));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "subject=%s", xmlSecErrorsSafeString(subject));
             xmlFree(subject);
             return(-1);
         }
@@ -1103,23 +1030,16 @@ xmlSecOpenSSLX509SubjectNameNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xml
 
     cert2 = X509_dup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "X509_dup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
-
+        xmlSecOpenSSLError("X509_dup",
+                           xmlSecKeyDataGetName(data));
         xmlFree(subject);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         X509_free(cert2);
         xmlFree(subject);
         return(-1);
@@ -1133,32 +1053,32 @@ static int
 xmlSecOpenSSLX509SubjectNameNodeWrite(X509* cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar* buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecOpenSSLX509NameWrite(X509_get_subject_name(cert));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecOpenSSLX509NameWrite(X509_get_subject_name)",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509NameWrite(X509_get_subject_name)", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-            NULL,
-            "xmlSecEnsureEmptyChild",
-            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-            "node=%s",
-            xmlSecErrorsSafeString(xmlSecNodeX509SubjectName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509SubjectName)", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
+
+    /* done */
     xmlFree(buf);
     return(0);
 }
@@ -1180,23 +1100,16 @@ xmlSecOpenSSLX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
     cur = xmlSecGetNextElementNode(node->children);
     if(cur == NULL) {
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecNodeNotFoundError("xmlSecGetNextElementNode", node, NULL,
+                                    xmlSecKeyDataGetName(data));
             return(-1);
         }
         return(0);
@@ -1204,56 +1117,32 @@ xmlSecOpenSSLX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     /* the first is required node X509IssuerName */
     if(!xmlSecCheckNodeName(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509IssuerName, xmlSecKeyDataGetName(data));
         return(-1);
     }
     issuerName = xmlNodeGetContent(cur);
     if(issuerName == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     /* next is required node X509SerialNumber */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInvalidNodeError(cur, xmlSecNodeX509SerialNumber, xmlSecKeyDataGetName(data));
         xmlFree(issuerName);
         return(-1);
     }
     issuerSerial = xmlNodeGetContent(cur);
     if(issuerSerial == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+        xmlSecInvalidNodeContentError(cur, xmlSecKeyDataGetName(data), "empty");
         xmlFree(issuerName);
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1263,13 +1152,10 @@ xmlSecOpenSSLX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
     if(cert == NULL){
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "issuerName=%s;issuerSerial=%s",
-                        xmlSecErrorsSafeString(issuerName),
-                        xmlSecErrorsSafeString(issuerSerial));
+            xmlSecOtherError3(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "issuerName=%s;issuerSerial=%s",
+                              xmlSecErrorsSafeString(issuerName),
+                              xmlSecErrorsSafeString(issuerSerial));
             xmlFree(issuerSerial);
             xmlFree(issuerName);
             return(-1);
@@ -1281,11 +1167,8 @@ xmlSecOpenSSLX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     cert2 = X509_dup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "X509_dup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_dup",
+                           xmlSecKeyDataGetName(data));
         xmlFree(issuerSerial);
         xmlFree(issuerName);
         return(-1);
@@ -1293,11 +1176,8 @@ xmlSecOpenSSLX509IssuerSerialNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xm
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         X509_free(cert2);
         xmlFree(issuerSerial);
         xmlFree(issuerName);
@@ -1315,6 +1195,7 @@ xmlSecOpenSSLX509IssuerSerialNodeWrite(X509* cert, xmlNodePtr node, xmlSecKeyInf
     xmlNodePtr issuerNameNode;
     xmlNodePtr issuerNumberNode;
     xmlChar* buf;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
@@ -1322,62 +1203,52 @@ xmlSecOpenSSLX509IssuerSerialNodeWrite(X509* cert, xmlNodePtr node, xmlSecKeyInf
     /* create xml nodes */
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509IssuerSerial)", NULL);
         return(-1);
     }
 
     issuerNameNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509IssuerName, xmlSecDSigNs);
     if(issuerNameNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509IssuerName)", NULL);
         return(-1);
     }
 
     issuerNumberNode = xmlSecEnsureEmptyChild(cur, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
     if(issuerNumberNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509SerialNumber)", NULL);
         return(-1);
     }
 
     /* write data */
     buf = xmlSecOpenSSLX509NameWrite(X509_get_issuer_name(cert));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509NameWrite(X509_get_issuer_name)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509NameWrite(X509_get_issuer_name)", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNameNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNameNode, buf);
     xmlFree(buf);
 
     buf = xmlSecOpenSSLASN1IntegerWrite(X509_get_serialNumber(cert));
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLASN1IntegerWrite(X509_get_serialNumber)",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLASN1IntegerWrite(X509_get_serialNumber)", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(issuerNumberNode, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent(issuerNumberNode)", NULL);
+        xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(issuerNumberNode, buf);
-    xmlFree(buf);
 
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1397,11 +1268,8 @@ xmlSecOpenSSLX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1411,12 +1279,7 @@ xmlSecOpenSSLX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
             xmlFree(ski);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1427,12 +1290,8 @@ xmlSecOpenSSLX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
         xmlFree(ski);
 
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_UNKNOWN_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecOtherError2(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data),
+                              "ski=%s", xmlSecErrorsSafeString(ski));
             return(-1);
         }
         return(0);
@@ -1440,22 +1299,16 @@ xmlSecOpenSSLX509SKINodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
 
     cert2 = X509_dup(cert);
     if(cert2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "X509_dup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_dup",
+                           xmlSecKeyDataGetName(data));
         xmlFree(ski);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert2);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataGetName(data));
         X509_free(cert2);
         xmlFree(ski);
         return(-1);
@@ -1469,34 +1322,33 @@ static int
 xmlSecOpenSSLX509SKINodeWrite(X509* cert, xmlNodePtr node, xmlSecKeyInfoCtxPtr keyInfoCtx ATTRIBUTE_UNUSED) {
     xmlChar *buf = NULL;
     xmlNodePtr cur = NULL;
+    int ret;
 
     xmlSecAssert2(cert != NULL, -1);
     xmlSecAssert2(node != NULL, -1);
 
     buf = xmlSecOpenSSLX509SKIWrite(cert);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509SKIWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509SKIWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509SKI)", NULL);
         xmlFree(buf);
         return(-1);
     }
-    xmlSecNodeEncodeAndSetContent(cur, buf);
-    xmlFree(buf);
 
+    ret = xmlSecNodeEncodeAndSetContent(cur, buf);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        xmlFree(buf);
+        return(-1);
+    }
+
+    /* done */
+    xmlFree(buf);
     return(0);
 }
 
@@ -1516,11 +1368,7 @@ xmlSecOpenSSLX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
             xmlFree(content);
         }
         if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_STOP_ON_EMPTY_NODE) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(node, xmlSecKeyDataGetName(data), "empty");
             return(-1);
         }
         return(0);
@@ -1528,22 +1376,16 @@ xmlSecOpenSSLX509CRLNodeRead(xmlSecKeyDataPtr data, xmlNodePtr node, xmlSecKeyIn
 
     crl = xmlSecOpenSSLX509CrlBase64DerRead(content);
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLX509CrlBase64DerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CrlBase64DerRead",
+                            xmlSecKeyDataGetName(data));
         xmlFree(content);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCrl(data, crl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCrl",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCrl",
+                            xmlSecKeyDataGetName(data));
         X509_CRL_free(crl);
         xmlFree(content);
         return(-1);
@@ -1565,22 +1407,13 @@ xmlSecOpenSSLX509CRLNodeWrite(X509_CRL* crl, xmlNodePtr node, xmlSecKeyInfoCtxPt
     /* set base64 lines size from context */
     buf = xmlSecOpenSSLX509CrlBase64DerWrite(crl, keyInfoCtx->base64LineSize);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509CrlBase64DerWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CrlBase64DerWrite", NULL);
         return(-1);
     }
 
     cur = xmlSecEnsureEmptyChild(node, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEnsureEmptyChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "new_node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL));
+        xmlSecInternalError("xmlSecEnsureEmptyChild(xmlSecNodeX509CRL)", NULL);
         xmlFree(buf);
         return(-1);
     }
@@ -1610,11 +1443,8 @@ xmlSecOpenSSLKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
 
     x509Store = xmlSecKeysMngrGetDataStore(keyInfoCtx->keysMngr, xmlSecOpenSSLX509StoreId);
     if(x509Store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                    "xmlSecKeysMngrGetDataStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetDataStore",
+                            xmlSecKeyDataGetName(data));
         return(-1);
     }
 
@@ -1627,74 +1457,52 @@ xmlSecOpenSSLKeyDataX509VerifyAndExtractKey(xmlSecKeyDataPtr data, xmlSecKeyPtr
 
             ctx->keyCert = X509_dup(cert);
             if(ctx->keyCert == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "X509_dup",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("X509_dup",
+                                   xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             keyValue = xmlSecOpenSSLX509CertGetKey(ctx->keyCert);
             if(keyValue == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecOpenSSLX509CertGetKey",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLX509CertGetKey",
+                                    xmlSecKeyDataGetName(data));
                 return(-1);
             }
 
             /* verify that the key matches our expectations */
             if(xmlSecKeyReqMatchKeyValue(&(keyInfoCtx->keyReq), keyValue) != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeyReqMatchKeyValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeyReqMatchKeyValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
 
             ret = xmlSecKeySetValue(key, keyValue);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                            "xmlSecKeySetValue",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecKeySetValue",
+                                    xmlSecKeyDataGetName(data));
                 xmlSecKeyDataDestroy(keyValue);
                 return(-1);
             }
 
-            if((X509_get_notBefore(ctx->keyCert) != NULL) && (X509_get_notAfter(ctx->keyCert) != NULL)) {
-                ret = xmlSecOpenSSLX509CertGetTime(X509_get_notBefore(ctx->keyCert), &(key->notValidBefore));
+            if((X509_get0_notBefore(ctx->keyCert) != NULL) && (X509_get0_notAfter(ctx->keyCert) != NULL)) {
+                ret = xmlSecOpenSSLX509CertGetTime(X509_get0_notBefore(ctx->keyCert), &(key->notValidBefore));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecOpenSSLX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidBefore");
+                    xmlSecInternalError("xmlSecOpenSSLX509CertGetTime(notAfter)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
                 }
-                ret = xmlSecOpenSSLX509CertGetTime(X509_get_notAfter(ctx->keyCert), &(key->notValidAfter));
+                ret = xmlSecOpenSSLX509CertGetTime(X509_get0_notAfter(ctx->keyCert), &(key->notValidAfter));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                                "xmlSecOpenSSLX509CertGetTime",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "notValidAfter");
+                    xmlSecInternalError("xmlSecOpenSSLX509CertGetTime(notBefore)",
+                                        xmlSecKeyDataGetName(data));
                     return(-1);
                 }
             } else {
                 key->notValidBefore = key->notValidAfter = 0;
             }
         } else if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_STOP_ON_INVALID_CERT) != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataGetName(data)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_NOT_FOUND, xmlSecKeyDataGetName(data), NULL);
             return(-1);
         }
     }
@@ -1744,7 +1552,7 @@ my_timegm(struct tm *t) {
 #endif /* HAVE_TIMEGM */
 
 static int
-xmlSecOpenSSLX509CertGetTime(ASN1_TIME* t, time_t* res) {
+xmlSecOpenSSLX509CertGetTime(XMLSEC_CONST_ASN1_TIME * t, time_t* res) {
     struct tm tm;
     int offset;
 
@@ -1753,11 +1561,7 @@ xmlSecOpenSSLX509CertGetTime(ASN1_TIME* t, time_t* res) {
 
     (*res) = 0;
     if(!ASN1_TIME_check(t)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ASN1_TIME_check",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ASN1_TIME_check", NULL);
         return(-1);
     }
 
@@ -1767,7 +1571,6 @@ xmlSecOpenSSLX509CertGetTime(ASN1_TIME* t, time_t* res) {
     if(t->type == V_ASN1_UTCTIME) {
         xmlSecAssert2(t->length > 12, -1);
 
-
         /* this code is copied from OpenSSL asn1/a_utctm.c file */
         tm.tm_year = g2(t->data);
         if(tm.tm_year < 50) {
@@ -1832,21 +1635,13 @@ xmlSecOpenSSLX509CertGetKey(X509* cert) {
 
     pKey = X509_get_pubkey(cert);
     if(pKey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_get_pubkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_get_pubkey", NULL);
         return(NULL);
     }
 
     data = xmlSecOpenSSLEvpKeyAdopt(pKey);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLEvpKeyAdopt",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLEvpKeyAdopt", NULL);
         EVP_PKEY_free(pKey);
         return(NULL);
     }
@@ -1863,11 +1658,7 @@ xmlSecOpenSSLX509CertBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1885,32 +1676,22 @@ xmlSecOpenSSLX509CertDerRead(const xmlSecByte* buf, xmlSecSize size) {
 
     mem = BIO_new(BIO_s_mem());
     if(mem == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "BIO_s_mem");
+        xmlSecOpenSSLError("BIO_new", NULL);
         return(NULL);
     }
 
     ret = BIO_write(mem, buf, size);
     if(ret <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_write",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", size);
+        xmlSecOpenSSLError2("BIO_write", NULL,
+                            "size=%lu", (unsigned long)size);
         BIO_free_all(mem);
         return(NULL);
     }
 
     cert = d2i_X509_bio(mem, NULL);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "d2i_X509_bio",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError2("d2i_X509_bio", NULL,
+                            "size=%lu", (unsigned long)size);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -1930,11 +1711,7 @@ xmlSecOpenSSLX509CertBase64DerWrite(X509* cert, int base64LineWrap) {
 
     mem = BIO_new(BIO_s_mem());
     if(mem == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "BIO_s_mem");
+        xmlSecOpenSSLError("BIO_new", NULL);
         return(NULL);
     }
 
@@ -1944,22 +1721,14 @@ xmlSecOpenSSLX509CertBase64DerWrite(X509* cert, int base64LineWrap) {
 
     size = BIO_get_mem_data(mem, &p);
     if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_get_mem_data",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BIO_get_mem_data", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -1977,11 +1746,7 @@ xmlSecOpenSSLX509CrlBase64DerRead(xmlChar* buf) {
     /* usual trick with base64 decoding "in-place" */
     ret = xmlSecBase64Decode(buf, (xmlSecByte*)buf, xmlStrlen(buf));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Decode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Decode", NULL);
         return(NULL);
     }
 
@@ -1999,32 +1764,21 @@ xmlSecOpenSSLX509CrlDerRead(xmlSecByte* buf, xmlSecSize size) {
 
     mem = BIO_new(BIO_s_mem());
     if(mem == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "BIO_s_mem");
+        xmlSecOpenSSLError("BIO_new", NULL);
         return(NULL);
     }
 
     ret = BIO_write(mem, buf, size);
     if(ret <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_write",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "size=%d", size);
+        xmlSecOpenSSLError2("BIO_write", NULL,
+                            "size=%lu", (unsigned long)size);
         BIO_free_all(mem);
         return(NULL);
     }
 
     crl = d2i_X509_CRL_bio(mem, NULL);
     if(crl == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "d2i_X509_CRL_bio",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("d2i_X509_CRL_bio", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -2044,11 +1798,7 @@ xmlSecOpenSSLX509CrlBase64DerWrite(X509_CRL* crl, int base64LineWrap) {
 
     mem = BIO_new(BIO_s_mem());
     if(mem == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "BIO_s_mem");
+        xmlSecOpenSSLError("BIO_new", NULL);
         return(NULL);
     }
 
@@ -2058,22 +1808,14 @@ xmlSecOpenSSLX509CrlBase64DerWrite(X509_CRL* crl, int base64LineWrap) {
 
     size = BIO_get_mem_data(mem, &p);
     if((size <= 0) || (p == NULL)){
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_get_mem_data",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BIO_get_mem_data", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(p, size, base64LineWrap);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -2092,20 +1834,12 @@ xmlSecOpenSSLX509NameWrite(X509_NAME* nm) {
 
     mem = BIO_new(BIO_s_mem());
     if(mem == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BIO_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "BIO_s_mem");
+        xmlSecOpenSSLError("BIO_new", NULL);
         return(NULL);
     }
 
     if (X509_NAME_print_ex(mem, nm, 0, XN_FLAG_RFC2253) <=0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_NAME_print_ex",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_NAME_print_ex", NULL);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -2115,11 +1849,7 @@ xmlSecOpenSSLX509NameWrite(X509_NAME* nm) {
     size = BIO_pending(mem);
     res = xmlMalloc(size + 1);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlMalloc",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecMallocError(size + 1, NULL);
         BIO_free_all(mem);
         return(NULL);
     }
@@ -2141,21 +1871,13 @@ xmlSecOpenSSLASN1IntegerWrite(ASN1_INTEGER *asni) {
 
     bn = ASN1_INTEGER_to_BN(asni, NULL);
     if(bn == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "ASN1_INTEGER_to_BN",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("ASN1_INTEGER_to_BN", NULL);
         return(NULL);
     }
 
     p = BN_bn2dec(bn);
     if (p == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "BN_bn2dec",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("BN_bn2dec", NULL);
         BN_free(bn);
         return(NULL);
     }
@@ -2168,11 +1890,7 @@ xmlSecOpenSSLASN1IntegerWrite(ASN1_INTEGER *asni) {
      */
     res = xmlCharStrdup(p);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlCharStrdup",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecStrdupError(BAD_CAST p, NULL);
         OPENSSL_free(p);
         return(NULL);
     }
@@ -2192,42 +1910,26 @@ xmlSecOpenSSLX509SKIWrite(X509* cert) {
 
     index = X509_get_ext_by_NID(cert, NID_subject_key_identifier, -1);
     if (index < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "Certificate without SubjectKeyIdentifier extension",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_get_ext_by_NID(): Certificate without SubjectKeyIdentifier extension", NULL);
         return(NULL);
     }
 
     ext = X509_get_ext(cert, index);
     if (ext == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_get_ext",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_get_ext", NULL);
         return(NULL);
     }
 
     keyId = X509V3_EXT_d2i(ext);
     if (keyId == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509V3_EXT_d2i",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509V3_EXT_d2i", NULL);
         ASN1_OCTET_STRING_free(keyId);
         return(NULL);
     }
 
     res = xmlSecBase64Encode(ASN1_STRING_get0_data(keyId), ASN1_STRING_length(keyId), 0);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         ASN1_OCTET_STRING_free(keyId);
         return(NULL);
     }
@@ -2368,43 +2070,30 @@ xmlSecOpenSSLKeyDataRawX509CertBinRead(xmlSecKeyDataId id, xmlSecKeyPtr key,
 
     cert = xmlSecOpenSSLX509CertDerRead(buf, bufSize);
     if(cert == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509CertDerRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509CertDerRead", NULL);
         return(-1);
     }
 
     data = xmlSecKeyEnsureData(key, xmlSecOpenSSLKeyDataX509Id);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecKeyEnsureData",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyEnsureData",
+                            xmlSecKeyDataKlassGetName(id));
         X509_free(cert);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509AdoptCert(data, cert);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLKeyDataX509AdoptCert",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509AdoptCert",
+                            xmlSecKeyDataKlassGetName(id));
         X509_free(cert);
         return(-1);
     }
 
     ret = xmlSecOpenSSLKeyDataX509VerifyAndExtractKey(data, key, keyInfoCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataKlassGetName(id)),
-                    "xmlSecOpenSSLKeyDataX509VerifyAndExtractKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLKeyDataX509VerifyAndExtractKey",
+                            xmlSecKeyDataKlassGetName(id));
         return(-1);
     }
     return(0);
diff --git a/src/openssl/x509vfy.c b/src/openssl/x509vfy.c
index 59f3914..c58833a 100644
--- a/src/openssl/x509vfy.c
+++ b/src/openssl/x509vfy.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * X509 support
  *
@@ -36,7 +36,7 @@
 #include <xmlsec/openssl/crypto.h>
 #include <xmlsec/openssl/evp.h>
 #include <xmlsec/openssl/x509.h>
-#include "openssl11_wrapper.h"
+#include "openssl_compat.h"
 
 /**************************************************************************
  *
@@ -178,7 +178,6 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
     X509 * cert;
     X509 * err_cert = NULL;
     X509_STORE_CTX *xsc;
-    char buf[256];
     int err = 0;
     int i;
     int ret;
@@ -189,11 +188,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
 
     xsc = X509_STORE_CTX_new();
     if(xsc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_CTX_new",
+                           xmlSecKeyDataStoreGetName(store));
         goto done;
     }
 
@@ -204,11 +200,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
     /* dup certs */
     certs2 = sk_X509_dup(certs);
     if(certs2 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "sk_X509_dup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_dup",
+                           xmlSecKeyDataStoreGetName(store));
         goto done;
     }
 
@@ -217,11 +210,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
         for(i = 0; i < sk_X509_num(ctx->untrusted); ++i) {
             ret = sk_X509_push(certs2, sk_X509_value(ctx->untrusted, i));
             if(ret < 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "sk_X509_push",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("sk_X509_push",
+                                   xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -231,11 +221,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
     if(crls != NULL) {
         crls2 = sk_X509_CRL_dup(crls);
         if(crls2 == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "sk_X509_CRL_dup",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_CRL_dup",
+                               xmlSecKeyDataStoreGetName(store));
             goto done;
         }
 
@@ -246,11 +233,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
             } else if(ret == 0) {
                 (void)sk_X509_CRL_delete(crls2, i);
             } else {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "xmlSecOpenSSLX509VerifyCRL",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLX509VerifyCRL",
+                                    xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -266,11 +250,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
                 (void)sk_X509_delete(certs2, i);
                 continue;
             } else if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "xmlSecOpenSSLX509VerifyCertAgainstCrls",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLX509VerifyCertAgainstCrls",
+                                    xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -281,11 +262,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
                 (void)sk_X509_delete(certs2, i);
                 continue;
             } else if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "xmlSecOpenSSLX509VerifyCertAgainstCrls",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecOpenSSLX509VerifyCertAgainstCrls",
+                                    xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
         }
@@ -299,11 +277,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
 
             ret = X509_STORE_CTX_init(xsc, ctx->xst, cert, certs2);
             if(ret != 1) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "X509_STORE_CTX_init",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecOpenSSLError("X509_STORE_CTX_init",
+                                   xmlSecKeyDataStoreGetName(store));
                 goto done;
             }
 
@@ -317,11 +292,8 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
 
                 vpm = X509_VERIFY_PARAM_new();
                 if(vpm == NULL) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                                "X509_VERIFY_PARAM_new",
-                                XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecOpenSSLError("X509_VERIFY_PARAM_new",
+                                       xmlSecKeyDataStoreGetName(store));
                     goto done;
                 }
                 vpm_flags = X509_VERIFY_PARAM_get_flags(vpm);
@@ -338,7 +310,11 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
             }
 
 
-            ret         = X509_verify_cert(xsc);
+            if((keyInfoCtx->flags & XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS) == 0) {
+                ret         = X509_verify_cert(xsc);
+            } else {
+                ret = 1;
+            }
             err_cert    = X509_STORE_CTX_get_current_cert(xsc);
             err         = X509_STORE_CTX_get_error(xsc);
 
@@ -348,34 +324,21 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
                 res = cert;
                 goto done;
             } else if(ret < 0) {
-                const char* err_msg;
-
-                buf[0] = '\0';
-                X509_NAME_oneline(X509_get_subject_name(err_cert), buf, sizeof buf);
-                err_msg = X509_verify_cert_error_string(err);
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "X509_verify_cert",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "subj=%s;err=%d;msg=%s",
-                            xmlSecErrorsSafeString(buf),
-                            err,
-                            xmlSecErrorsSafeString(err_msg));
+                /* real error */
+                xmlSecOpenSSLError("X509_verify_cert", xmlSecKeyDataStoreGetName(store));
                 goto done;
             } else if(ret == 0) {
                 const char* err_msg;
+                char subject[256], issuer[256];
 
-                buf[0] = '\0';
-                X509_NAME_oneline(X509_get_subject_name(err_cert), buf, sizeof buf);
+                X509_NAME_oneline(X509_get_subject_name(err_cert), subject, sizeof(subject));
+                X509_NAME_oneline(X509_get_issuer_name(err_cert), issuer, sizeof(issuer));
                 err_msg = X509_verify_cert_error_string(err);
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                            "X509_verify_cert",
-                            XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                            "subj=%s;err=%d;msg=%s",
-                            xmlSecErrorsSafeString(buf),
-                            err,
-                            xmlSecErrorsSafeString(err_msg));
+
+                xmlSecOtherError5(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
+                                  xmlSecKeyDataStoreGetName(store),
+                                  "X509_verify_cert: subject=%s; issuer=%s; err=%d; msg=%s",
+                                  subject, issuer, err, xmlSecErrorsSafeString(err_msg));
             }
         }
     }
@@ -383,45 +346,39 @@ xmlSecOpenSSLX509StoreVerify(xmlSecKeyDataStorePtr store, XMLSEC_STACK_OF_X509*
     /* if we came here then we found nothing. do we have any error? */
     if((err != 0) && (err_cert != NULL)) {
         const char* err_msg;
+        char subject[256], issuer[256];
 
+        X509_NAME_oneline(X509_get_subject_name(err_cert), subject, sizeof(subject));
+        X509_NAME_oneline(X509_get_issuer_name(err_cert), issuer, sizeof(issuer));
         err_msg = X509_verify_cert_error_string(err);
+
         switch (err) {
         case X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT:
-            X509_NAME_oneline(X509_get_issuer_name(err_cert), buf, sizeof buf);
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_ISSUER_FAILED,
-                        "err=%d;msg=%s;issuer=%s",
-                        err,
-                        xmlSecErrorsSafeString(err_msg),
-                        xmlSecErrorsSafeString(buf));
+            xmlSecOtherError5(XMLSEC_ERRORS_R_CERT_ISSUER_FAILED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=%s; issuer=%s; err=%d; msg=%s",
+                              subject, issuer, err, xmlSecErrorsSafeString(err_msg));
             break;
         case X509_V_ERR_CERT_NOT_YET_VALID:
         case X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_NOT_YET_VALID,
-                        "err=%d;msg=%s", err,
-                        xmlSecErrorsSafeString(err_msg));
+            xmlSecOtherError5(XMLSEC_ERRORS_R_CERT_NOT_YET_VALID,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=%s; issuer=%s; err=%d; msg=%s",
+                              subject, issuer, err, xmlSecErrorsSafeString(err_msg));
             break;
         case X509_V_ERR_CERT_HAS_EXPIRED:
         case X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
-                        "err=%d;msg=%s", err,
-                        xmlSecErrorsSafeString(err_msg));
+            xmlSecOtherError5(XMLSEC_ERRORS_R_CERT_HAS_EXPIRED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=%s; issuer=%s; err=%d; msg=%s",
+                              subject, issuer, err, xmlSecErrorsSafeString(err_msg));
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
-                        "err=%d;msg=%s", err,
-                        xmlSecErrorsSafeString(err_msg));
+            xmlSecOtherError5(XMLSEC_ERRORS_R_CERT_VERIFY_FAILED,
+                              xmlSecKeyDataStoreGetName(store),
+                              "subject=%s; issuer=%s; err=%d; msg=%s",
+                              subject, issuer, err, xmlSecErrorsSafeString(err_msg));
+            break;
         }
     }
 
@@ -464,11 +421,8 @@ xmlSecOpenSSLX509StoreAdoptCert(xmlSecKeyDataStorePtr store, X509* cert, xmlSecK
 
         ret = X509_STORE_add_cert(ctx->xst, cert);
         if(ret != 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "X509_STORE_add_cert",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("X509_STORE_add_cert",
+                               xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
         /* add cert increments the reference */
@@ -478,11 +432,8 @@ xmlSecOpenSSLX509StoreAdoptCert(xmlSecKeyDataStorePtr store, X509* cert, xmlSecK
 
         ret = sk_X509_push(ctx->untrusted, cert);
         if(ret < 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "sk_X509_push",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_push",
+                               xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
     }
@@ -512,11 +463,8 @@ xmlSecOpenSSLX509StoreAdoptCrl(xmlSecKeyDataStorePtr store, X509_CRL* crl) {
 
         ret = sk_X509_CRL_push(ctx->crls, crl);
         if(ret < 1) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                        "sk_X509_CRL_push",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("sk_X509_CRL_push",
+                               xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
 
@@ -547,21 +495,15 @@ xmlSecOpenSSLX509StoreAddCertsPath(xmlSecKeyDataStorePtr store, const char *path
 
     lookup = X509_STORE_add_lookup(ctx->xst, X509_LOOKUP_hash_dir());
     if(lookup == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_add_lookup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_add_lookup",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
     if(!X509_LOOKUP_add_dir(lookup, path, X509_FILETYPE_PEM)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_LOOKUP_add_dir",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "path='%s'",
-                    xmlSecErrorsSafeString(path)
-        );
+        xmlSecOpenSSLError2("X509_LOOKUP_add_dir",
+                            xmlSecKeyDataStoreGetName(store),
+                            "path='%s'",
+                            xmlSecErrorsSafeString(path));
         return(-1);
     }
     return(0);
@@ -570,7 +512,7 @@ xmlSecOpenSSLX509StoreAddCertsPath(xmlSecKeyDataStorePtr store, const char *path
 /**
  * xmlSecOpenSSLX509StoreAddCertsFile:
  * @store: the pointer to OpenSSL x509 store.
- * @file: the certs file.
+ * @filename: the certs file.
  *
  * Adds all certs in @file to the list of trusted certs
  * in @store. It is possible for @file to contain multiple certs.
@@ -578,12 +520,12 @@ xmlSecOpenSSLX509StoreAddCertsPath(xmlSecKeyDataStorePtr store, const char *path
  * Returns: 0 on success or a negative value otherwise.
  */
 int
-xmlSecOpenSSLX509StoreAddCertsFile(xmlSecKeyDataStorePtr store, const char *file) {
+xmlSecOpenSSLX509StoreAddCertsFile(xmlSecKeyDataStorePtr store, const char *filename) {
     xmlSecOpenSSLX509StoreCtxPtr ctx;
     X509_LOOKUP *lookup = NULL;
 
     xmlSecAssert2(xmlSecKeyDataStoreCheckId(store, xmlSecOpenSSLX509StoreId), -1);
-    xmlSecAssert2(file != NULL, -1);
+    xmlSecAssert2(filename != NULL, -1);
 
     ctx = xmlSecOpenSSLX509StoreGetCtx(store);
     xmlSecAssert2(ctx != NULL, -1);
@@ -591,21 +533,15 @@ xmlSecOpenSSLX509StoreAddCertsFile(xmlSecKeyDataStorePtr store, const char *file
 
     lookup = X509_STORE_add_lookup(ctx->xst, X509_LOOKUP_file());
     if(lookup == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_add_lookup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_add_lookup",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
-    if(!X509_LOOKUP_load_file(lookup, file, X509_FILETYPE_PEM)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_LOOKUP_load_file",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "file='%s'",
-                    xmlSecErrorsSafeString(file)
-        );
+    if(!X509_LOOKUP_load_file(lookup, filename, X509_FILETYPE_PEM)) {
+        xmlSecOpenSSLError2("X509_LOOKUP_load_file",
+                            xmlSecKeyDataStoreGetName(store),
+                            "filename='%s'",
+                            xmlSecErrorsSafeString(filename));
         return(-1);
     }
     return(0);
@@ -626,85 +562,60 @@ xmlSecOpenSSLX509StoreInitialize(xmlSecKeyDataStorePtr store) {
 
     ctx->xst = X509_STORE_new();
     if(ctx->xst == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_new",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
     if(!X509_STORE_set_default_paths(ctx->xst)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_set_default_paths",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_set_default_paths",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
 
     lookup = X509_STORE_add_lookup(ctx->xst, X509_LOOKUP_hash_dir());
     if(lookup == NULL) {
-         xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_STORE_add_lookup",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_add_lookup",
+                           xmlSecKeyDataStoreGetName(store));
          return(-1);
     }
 
     path = xmlSecOpenSSLGetDefaultTrustedCertsFolder();
     if(path != NULL) {
         if(!X509_LOOKUP_add_dir(lookup, (char*)path, X509_FILETYPE_PEM)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_LOOKUP_add_dir",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    "path='%s'",
-                    xmlSecErrorsSafeString(path)
-            );
+            xmlSecOpenSSLError2("X509_LOOKUP_add_dir",
+                                xmlSecKeyDataStoreGetName(store),
+                                "path='%s'",
+                                xmlSecErrorsSafeString(path));
             return(-1);
         }
     } else {
         if(!X509_LOOKUP_add_dir(lookup, NULL, X509_FILETYPE_DEFAULT)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_LOOKUP_add_dir",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE
-            );
+            xmlSecOpenSSLError("X509_LOOKUP_add_dir",
+                               xmlSecKeyDataStoreGetName(store));
             return(-1);
         }
     }
 
     ctx->untrusted = sk_X509_new_null();
     if(ctx->untrusted == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "sk_X509_new_null",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_new_null",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
     ctx->crls = sk_X509_CRL_new_null();
     if(ctx->crls == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "sk_X509_CRL_new_null",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_CRL_new_null",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
 
     ctx->vpm = X509_VERIFY_PARAM_new();
     if(ctx->vpm == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecKeyDataStoreGetName(store)),
-                    "X509_VERIFY_PARAM_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_VERIFY_PARAM_new",
+                           xmlSecKeyDataStoreGetName(store));
         return(-1);
     }
     X509_VERIFY_PARAM_set_depth(ctx->vpm, 9); /* the default cert verification path in openssl */
@@ -757,59 +668,35 @@ xmlSecOpenSSLX509VerifyCRL(X509_STORE* xst, X509_CRL *crl ) {
 
     xsc = X509_STORE_CTX_new();
     if(xsc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_STORE_CTX_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_CTX_new", NULL);
         goto err;
     }
     xobj = X509_OBJECT_new();
     if(xobj == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_OBJECT_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_OBJECT_new", NULL);
         goto err;
     }
 
     ret = X509_STORE_CTX_init(xsc, xst, NULL, NULL);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_STORE_CTX_init",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_CTX_init", NULL);
         goto err;
     }
-    ret = X509_STORE_get_by_subject(xsc, X509_LU_X509,
-                                    X509_CRL_get_issuer(crl), xobj);
+    ret = X509_STORE_CTX_get_by_subject(xsc, X509_LU_X509,
+                                        X509_CRL_get_issuer(crl), xobj);
     if(ret <= 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_STORE_get_by_subject",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_STORE_CTX_get_by_subject", NULL);
         goto err;
     }
     pkey = X509_get_pubkey(X509_OBJECT_get0_X509(xobj));
     if(pkey == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_get_pubkey",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_get_pubkey", NULL);
         goto err;
     }
     ret = X509_CRL_verify(crl, pkey);
     EVP_PKEY_free(pkey);
     if(ret != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_CRL_verify",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_CRL_verify", NULL);
     }
     X509_STORE_CTX_free(xsc);
     X509_OBJECT_free(xobj);
@@ -837,12 +724,8 @@ xmlSecOpenSSLX509FindCert(STACK_OF(X509) *certs, xmlChar *subjectName,
 
         nm = xmlSecOpenSSLX509NameRead(subjectName, xmlStrlen(subjectName));
         if(nm == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLX509NameRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "subject=%s",
-                        xmlSecErrorsSafeString(subjectName));
+            xmlSecInternalError2("xmlSecOpenSSLX509NameRead", NULL,
+                                 "subject=%s", xmlSecErrorsSafeString(subjectName));
             return(NULL);
         }
 
@@ -863,31 +746,19 @@ xmlSecOpenSSLX509FindCert(STACK_OF(X509) *certs, xmlChar *subjectName,
 
         nm = xmlSecOpenSSLX509NameRead(issuerName, xmlStrlen(issuerName));
         if(nm == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLX509NameRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "issuer=%s",
-                        xmlSecErrorsSafeString(issuerName));
+            xmlSecInternalError2("xmlSecOpenSSLX509NameRead", NULL,
+                                 "issuer=%s", xmlSecErrorsSafeString(issuerName));
             return(NULL);
         }
 
         bn = BN_new();
         if(bn == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "BN_new",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("BN_new", NULL);
             X509_NAME_free(nm);
             return(NULL);
         }
         if(BN_dec2bn(&bn, (char*)issuerSerial) == 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "BN_dec2bn",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("BN_dec2bn", NULL);
             BN_free(bn);
             X509_NAME_free(nm);
             return(NULL);
@@ -895,11 +766,7 @@ xmlSecOpenSSLX509FindCert(STACK_OF(X509) *certs, xmlChar *subjectName,
 
         serial = BN_to_ASN1_INTEGER(bn, NULL);
         if(serial == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "BN_to_ASN1_INTEGER",
-                        XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOpenSSLError("BN_to_ASN1_INTEGER", NULL);
             BN_free(bn);
             X509_NAME_free(nm);
             return(NULL);
@@ -931,12 +798,8 @@ xmlSecOpenSSLX509FindCert(STACK_OF(X509) *certs, xmlChar *subjectName,
         /* our usual trick with base64 decode */
         len = xmlSecBase64Decode(ski, (xmlSecByte*)ski, xmlStrlen(ski));
         if(len < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecBase64Decode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "ski=%s",
-                        xmlSecErrorsSafeString(ski));
+            xmlSecInternalError2("xmlSecBase64Decode", NULL,
+                                 "ski=%s", xmlSecErrorsSafeString(ski));
             return(NULL);
         }
         for(i = 0; i < sk_X509_num(certs); ++i) {
@@ -1024,11 +887,7 @@ xmlSecOpenSSLX509VerifyCertAgainstCrls(STACK_OF(X509_CRL) *crls, X509* cert) {
     for (i = 0; i < n; i++) {
         revoked = sk_X509_REVOKED_value(X509_CRL_get_REVOKED(crl), i);
         if (ASN1_INTEGER_cmp(X509_REVOKED_get0_serialNumber(revoked), X509_get_serialNumber(cert)) == 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_CERT_REVOKED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecOtherError(XMLSEC_ERRORS_R_CERT_REVOKED, NULL, NULL);
             return(0);
         }
     }
@@ -1047,11 +906,7 @@ xmlSecOpenSSLX509NameRead(xmlSecByte *str, int len) {
 
     nm = X509_NAME_new();
     if(nm == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "X509_NAME_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("X509_NAME_new", NULL);
         return(NULL);
     }
 
@@ -1063,11 +918,7 @@ xmlSecOpenSSLX509NameRead(xmlSecByte *str, int len) {
 
         nameLen = xmlSecOpenSSLX509NameStringRead(&str, &len, name, sizeof(name), '=', 0);
         if(nameLen < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecOpenSSLX509NameStringRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecOpenSSLX509NameStringRead", NULL);
             X509_NAME_free(nm);
             return(NULL);
         }
@@ -1079,23 +930,14 @@ xmlSecOpenSSLX509NameRead(xmlSecByte *str, int len) {
                 valueLen = xmlSecOpenSSLX509NameStringRead(&str, &len,
                                         value, sizeof(value), '"', 1);
                 if(valueLen < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecOpenSSLX509NameStringRead",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecOpenSSLX509NameStringRead", NULL);
                     X509_NAME_free(nm);
                     return(NULL);
                 }
 
                 /* skip quote */
                 if((len <= 0) || ((*str) != '\"')) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "quote is expected:%s",
-                                xmlSecErrorsSafeString(str));
+                    xmlSecInvalidIntegerDataError("char", (*str), "quote '\"'", NULL);
                     X509_NAME_free(nm);
                     return(NULL);
                 }
@@ -1106,12 +948,7 @@ xmlSecOpenSSLX509NameRead(xmlSecByte *str, int len) {
                     ++str; --len;
                 }
                 if((len > 0) && ((*str) != ',')) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "comma is expected:%s",
-                                xmlSecErrorsSafeString(str));
+                    xmlSecInvalidIntegerDataError("char", (*str), "comma ','", NULL);
                     X509_NAME_free(nm);
                     return(NULL);
                 }
@@ -1121,22 +958,14 @@ xmlSecOpenSSLX509NameRead(xmlSecByte *str, int len) {
                 type = MBSTRING_ASC;
             } else if((*str) == '#') {
                 /* TODO: read octect values */
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            NULL,
-                            XMLSEC_ERRORS_R_INVALID_DATA,
-                            "reading octect values is not implemented yet");
+                xmlSecNotImplementedError("reading octect values is not implemented yet");
                 X509_NAME_free(nm);
                 return(NULL);
             } else {
                 valueLen = xmlSecOpenSSLX509NameStringRead(&str, &len,
                                         value, sizeof(value), ',', 1);
                 if(valueLen < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecOpenSSLX509NameStringRead",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                XMLSEC_ERRORS_NO_MESSAGE);
+                    xmlSecInternalError("xmlSecOpenSSLX509NameStringRead", NULL);
                     X509_NAME_free(nm);
                     return(NULL);
                 }
@@ -1176,22 +1005,14 @@ xmlSecOpenSSLX509NameStringRead(xmlSecByte **str, int *strLen,
             nonSpace = q;
             if(xmlSecIsHex((*p))) {
                 if((p - (*str) + 1) >= (*strLen)) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "two hex digits expected");
+                    xmlSecInvalidDataError("two hex digits expected", NULL);
                     return(-1);
                 }
                 *(q++) = xmlSecGetHex(p[0]) * 16 + xmlSecGetHex(p[1]);
                 p += 2;
             } else {
                 if(((++p) - (*str)) >= (*strLen)) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                NULL,
-                                XMLSEC_ERRORS_R_INVALID_DATA,
-                                "escaped symbol missed");
+                    xmlSecInvalidDataError("escaped symbol missed", NULL);
                     return(-1);
                 }
                 *(q++) = *(p++);
@@ -1199,11 +1020,7 @@ xmlSecOpenSSLX509NameStringRead(xmlSecByte **str, int *strLen,
         }
     }
     if(((p - (*str)) < (*strLen)) && ((*p) != delim)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_SIZE,
-                    "buffer is too small");
+        xmlSecInvalidSizeOtherError("buffer is too small", NULL);
         return(-1);
     }
     (*strLen) -= (p - (*str));
@@ -1211,7 +1028,7 @@ xmlSecOpenSSLX509NameStringRead(xmlSecByte **str, int *strLen,
     return((ingoreTrailingSpaces) ? nonSpace - res + 1 : q - res);
 }
 
-/**
+/*
  * This function DOES NOT create duplicates for X509_NAME_ENTRY objects!
  */
 static STACK_OF(X509_NAME_ENTRY)*
@@ -1221,11 +1038,7 @@ xmlSecOpenSSLX509_NAME_ENTRIES_copy(X509_NAME * a) {
 
     res = sk_X509_NAME_ENTRY_new(xmlSecOpenSSLX509_NAME_ENTRY_cmp);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "sk_X509_NAME_ENTRY_new",
-                    XMLSEC_ERRORS_R_CRYPTO_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOpenSSLError("sk_X509_NAME_ENTRY_new", NULL);
         return(NULL);
     }
 
@@ -1280,20 +1093,12 @@ xmlSecOpenSSLX509NamesCompare(X509_NAME *a, X509_NAME *b) {
 
     a1 = xmlSecOpenSSLX509_NAME_ENTRIES_copy(a);
     if(a1 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509_NAME_ENTRIES_copy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509_NAME_ENTRIES_copy", NULL);
         return(-1);
     }
     b1 = xmlSecOpenSSLX509_NAME_ENTRIES_copy(b);
     if(b1 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecOpenSSLX509_NAME_ENTRIES_copy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecOpenSSLX509_NAME_ENTRIES_copy", NULL);
         sk_X509_NAME_ENTRY_free(a1);
         return(1);
     }
diff --git a/src/parser.c b/src/parser.c
index 969c3e4..9889ae9 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * XML Parser transform and utility functions.
@@ -87,6 +87,7 @@ static xmlSecTransformKlass xmlSecParserKlass = {
     NULL,                                       /* void* reserved1; */
 };
 
+
 /**
  * xmlSecTransformXmlParserGetKlass:
  *
@@ -148,11 +149,7 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
 
         ctx->parserCtx = xmlCreatePushParserCtxt(NULL, NULL, NULL, 0, NULL);
         if(ctx->parserCtx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlCreatePushParserCtxt",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlCreatePushParserCtxt", xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -165,11 +162,7 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
     } else if(transform->status == xmlSecTransformStatusFinished) {
         return(0);
     } else if(transform->status != xmlSecTransformStatusWorking) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     xmlSecAssert2(transform->status == xmlSecTransformStatusWorking, -1);
@@ -179,11 +172,9 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
     if((data != NULL) && (dataSize > 0)) {
         ret = xmlParseChunk(ctx->parserCtx, (const char*)data, dataSize, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "size=%d", dataSize);
+            xmlSecXmlParserError2("xmlParseChunk", ctx->parserCtx,
+                                  xmlSecTransformGetName(transform),
+                                  "size=%lu", (unsigned long)dataSize);
             return(-1);
         }
     }
@@ -192,11 +183,8 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
     if(final != 0) {
         ret = xmlParseChunk(ctx->parserCtx, NULL, 0, 1);
         if((ret != 0) || (ctx->parserCtx->myDoc == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlParserError("xmlParseChunk", ctx->parserCtx,
+                                 xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -204,11 +192,8 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
         transform->outNodes = xmlSecNodeSetCreate(ctx->parserCtx->myDoc,
                                                   NULL, xmlSecNodeSetTree);
         if(transform->outNodes == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecNodeSetCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecNodeSetCreate",
+                                xmlSecTransformGetName(transform));
             xmlFreeDoc(ctx->parserCtx->myDoc);
             ctx->parserCtx->myDoc = NULL;
             return(-1);
@@ -220,11 +205,8 @@ xmlSecParserPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
         if(transform->next != NULL) {
             ret = xmlSecTransformPushXml(transform->next, transform->outNodes, transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecTransformPushXml",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformPushXml",
+                                    xmlSecTransformGetName(transform));
                 return(-1);
             }
         }
@@ -264,53 +246,38 @@ xmlSecParserPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nodes,
         (*nodes) = NULL;
         return(0);
     default:
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     xmlSecAssert2(transform->status == xmlSecTransformStatusWorking, -1);
 
     /* prepare parser context */
     if(transform->prev == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    "prev transform is null");
+        xmlSecInvalidTransfromError2(transform,
+                                     "prev transform=\"%s\"",
+                                     xmlSecErrorsSafeString(transform->prev));
         return(-1);
     }
 
     buf = xmlSecTransformCreateInputBuffer(transform->prev, transformCtx);
     if(buf == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformCreateInputBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCreateInputBuffer",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ctxt = xmlNewParserCtxt();
     if (ctxt == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlNewParserCtxt",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewParserCtxt",
+                       xmlSecTransformGetName(transform));
         xmlFreeParserInputBuffer(buf);
         return(-1);
     }
 
     input = xmlNewIOInputStream(ctxt, buf, XML_CHAR_ENCODING_NONE);
     if(input == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlNewParserCtxt",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlParserError("xmlNewParserCtxt", ctxt,
+                             xmlSecTransformGetName(transform));
         xmlFreeParserCtxt(ctxt);
         xmlFreeParserInputBuffer(buf);
         return(-1);
@@ -318,11 +285,8 @@ xmlSecParserPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nodes,
 
     ret = inputPush(ctxt, input);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "inputPush",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlParserError("inputPush", ctxt,
+                             xmlSecTransformGetName(transform));
         xmlFreeInputStream(input);
         xmlFreeParserCtxt(ctxt);
         return(-1);
@@ -335,11 +299,8 @@ xmlSecParserPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nodes,
     /* finaly do the parsing */
     ret = xmlParseDocument(ctxt);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlParseDocument",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlParserError("xmlParseDocument", ctxt,
+                             xmlSecTransformGetName(transform));
         if(ctxt->myDoc != NULL) {
             xmlFreeDoc(ctxt->myDoc);
             ctxt->myDoc = NULL;
@@ -356,11 +317,8 @@ xmlSecParserPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nodes,
     /* return result to the caller */
     (*nodes) = xmlSecNodeSetCreate(doc, NULL, xmlSecNodeSetTree);
     if((*nodes) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecNodeSetCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNodeSetCreate",
+                            xmlSecTransformGetName(transform));
         xmlFreeDoc(doc);
         return(-1);
     }
@@ -394,15 +352,18 @@ typedef struct _xmlSecExtMemoryParserCtx {
  */
 xmlDocPtr
 xmlSecParseFile(const char *filename) {
-    xmlDocPtr ret;
     xmlParserCtxtPtr ctxt;
+    xmlDocPtr res = NULL;
     char *directory = NULL;
+    int ret;
 
     xmlSecAssert2(filename != NULL, NULL);
 
     xmlInitParser();
     ctxt = xmlCreateFileParserCtxt(filename);
     if (ctxt == NULL) {
+        xmlSecXmlError2("xmlCreateFileParserCtxt", NULL,
+                        "filename=%s", xmlSecErrorsSafeString(filename));
         return(NULL);
     }
 
@@ -410,26 +371,49 @@ xmlSecParseFile(const char *filename) {
     /* crashes on x64 xmlCtxtUseOptions (ctxt, XML_PARSE_HUGE); */
 
     /* todo: set directories from current doc? */
-    if ((ctxt->directory == NULL) && (directory == NULL))
+    if ((ctxt->directory == NULL) && (directory == NULL)) {
         directory = xmlParserGetDirectory(filename);
-    if ((ctxt->directory == NULL) && (directory != NULL))
-        ctxt->directory = (char *) xmlStrdup((xmlChar *) directory);
+        if(directory == NULL) {
+            xmlSecXmlError2("xmlParserGetDirectory", NULL,
+                            "filename=%s", xmlSecErrorsSafeString(filename));
+            xmlFreeParserCtxt(ctxt);
+            return(NULL);
+        }
+    }
+    if ((ctxt->directory == NULL) && (directory != NULL)) {
+        ctxt->directory = (char *) xmlStrdup(BAD_CAST directory);
+        if(ctxt->directory == NULL) {
+            xmlSecStrdupError(BAD_CAST directory, NULL);
+            xmlFreeParserCtxt(ctxt);
+            return(NULL);
+        }
+    }
 
     /* required for c14n! */
     ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
     ctxt->replaceEntities = 1;
 
-    xmlParseDocument(ctxt);
+    ret = xmlParseDocument(ctxt);
+    if(ret < 0) {
+        xmlSecXmlParserError2("xmlParseDocument", ctxt, NULL,
+                              "filename=%s",
+                              xmlSecErrorsSafeString(filename));
+        xmlFreeParserCtxt(ctxt);
+        return(NULL);
+    }
 
-    if(ctxt->wellFormed) {
-        ret = ctxt->myDoc;
-    } else {
-       ret = NULL;
+    if(!ctxt->wellFormed) {
+       xmlSecInternalError("document is not well formed", NULL);
        xmlFreeDoc(ctxt->myDoc);
        ctxt->myDoc = NULL;
+       xmlFreeParserCtxt(ctxt);
+       return(NULL);
     }
+
+    /* done */
+    res = ctxt->myDoc;
     xmlFreeParserCtxt(ctxt);
-    return(ret);
+    return(res);
 
 }
 
@@ -457,11 +441,7 @@ xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize prefixSize,
     /* create context */
     ctxt = xmlCreatePushParserCtxt(NULL, NULL, NULL, 0, NULL);
     if(ctxt == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlCreatePushParserCtxt",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlCreatePushParserCtxt", NULL);
         goto done;
     }
 
@@ -473,11 +453,9 @@ xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize prefixSize,
     if((prefix != NULL) && (prefixSize > 0)) {
         ret = xmlParseChunk(ctxt, (const char*)prefix, prefixSize, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "prefixSize=%d", prefixSize);
+            xmlSecXmlParserError2("xmlParseChunk", ctxt, NULL,
+                                  "chunkSize=%d", prefixSize);
+
             goto done;
         }
     }
@@ -486,11 +464,9 @@ xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize prefixSize,
     if((buffer != NULL) && (bufferSize > 0)) {
         ret = xmlParseChunk(ctxt, (const char*)buffer, bufferSize, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "bufferSize=%d", bufferSize);
+            xmlSecXmlParserError2("xmlParseChunk", ctxt, NULL,
+                                  "chunkSize=%d", bufferSize);
+
             goto done;
         }
     }
@@ -499,11 +475,9 @@ xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize prefixSize,
     if((postfix != NULL) && (postfixSize > 0)) {
         ret = xmlParseChunk(ctxt, (const char*)postfix, postfixSize, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "postfixSize=%d", postfixSize);
+            xmlSecXmlParserError2("xmlParseChunk", ctxt, NULL,
+                                  "chunkSize=%d", postfixSize);
+
             goto done;
         }
     }
@@ -511,11 +485,7 @@ xmlSecParseMemoryExt(const xmlSecByte *prefix, xmlSecSize prefixSize,
     /* finishing */
     ret = xmlParseChunk(ctxt, NULL, 0, 1);
     if((ret != 0) || (ctxt->myDoc == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlParseChunk",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlParserError("xmlParseChunk", ctxt, NULL);
         goto done;
     }
     doc = ctxt->myDoc;
@@ -541,18 +511,15 @@ done:
  */
 xmlDocPtr
 xmlSecParseMemory(const xmlSecByte *buffer, xmlSecSize size, int recovery) {
-    xmlDocPtr ret;
     xmlParserCtxtPtr ctxt;
+    xmlDocPtr res = NULL;
+    int ret;
 
     xmlSecAssert2(buffer != NULL, NULL);
 
     ctxt = xmlCreateMemoryParserCtxt((char*)buffer, size);
     if (ctxt == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlCreateMemoryParserCtxt",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlCreateMemoryParserCtxt", NULL);
         return(NULL);
     }
 
@@ -560,16 +527,24 @@ xmlSecParseMemory(const xmlSecByte *buffer, xmlSecSize size, int recovery) {
     ctxt->loadsubset = XML_DETECT_IDS | XML_COMPLETE_ATTRS;
     ctxt->replaceEntities = 1;
 
-    xmlParseDocument(ctxt);
+    ret = xmlParseDocument(ctxt);
+    if(ret < 0) {
+        xmlSecXmlParserError("xmlParseDocument", ctxt, NULL);
+        xmlFreeParserCtxt(ctxt);
+        return(NULL);
+    }
 
-    if((ctxt->wellFormed) || recovery) {
-        ret = ctxt->myDoc;
-    } else {
-       ret = NULL;
-       xmlFreeDoc(ctxt->myDoc);
-       ctxt->myDoc = NULL;
+    if(!(ctxt->wellFormed) && !recovery) {
+        xmlSecInternalError("document is not well formed", NULL);
+        xmlFreeDoc(ctxt->myDoc);
+        ctxt->myDoc = NULL;
+        xmlFreeParserCtxt(ctxt);
+        return(NULL);
     }
+
+    /* done */
+    res = ctxt->myDoc;
     xmlFreeParserCtxt(ctxt);
-    return(ret);
+    return(res);
 }
 
diff --git a/src/relationship.c b/src/relationship.c
index d69c977..b854ecd 100644
--- a/src/relationship.c
+++ b/src/relationship.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Relationship transform
@@ -168,11 +168,8 @@ xmlSecRelationshipInitialize(xmlSecTransformPtr transform) {
 
     ctx->sourceIdList = xmlSecPtrListCreate(xmlSecStringListId);
     if(ctx->sourceIdList == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListCreate",
-                     XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                     XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListCreate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -215,22 +212,15 @@ xmlSecRelationshipReadNode(xmlSecTransformPtr transform, xmlNodePtr node, xmlSec
 
             sourceId = xmlGetProp(cur, xmlSecRelationshipAttrSourceId);
             if(sourceId == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            "xmlGetProp",
-                            xmlSecErrorsSafeString(xmlSecRelationshipAttrSourceId),
-                            XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                xmlSecInvalidNodeAttributeError(cur, xmlSecRelationshipAttrSourceId,
+                                                NULL, "empty");
                 return(-1);
             }
 
             ret = xmlSecPtrListAdd(ctx->sourceIdList, sourceId);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecPtrListAdd",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecPtrListAdd",
+                                    xmlSecTransformGetName(transform));
                 xmlFree(sourceId);
                 return(-1);
             }
@@ -283,7 +273,7 @@ done:
     return ret;
 }
 
-/**
+/*
  * This is step 2, point 4: if the input sourceId list doesn't contain the Id attribute of the current node,
  * then exclude it from the output, instead of processing it.
  */
@@ -301,11 +291,9 @@ xmlSecTransformRelationshipProcessNode(xmlSecTransformPtr transform, xmlOutputBu
     if(xmlSecCheckNodeName(cur, xmlSecNodeRelationship, xmlSecRelationshipsNs)) {
         xmlChar* id = xmlGetProp(cur, xmlSecRelationshipAttrId);
         if(id == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlGetProp(xmlSecRelationshipAttrId)",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "name=Id");
+            xmlSecXmlError2("xmlGetProp(xmlSecRelationshipAttrId)",
+                            xmlSecTransformGetName(transform),
+                            "name=%s", xmlSecRelationshipAttrId);
             return(-1);
         }
 
@@ -326,18 +314,15 @@ xmlSecTransformRelationshipProcessNode(xmlSecTransformPtr transform, xmlOutputBu
 
     ret = xmlSecTransformRelationshipProcessElementNode(transform, buf, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformRelationshipProcessElementNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformRelationshipProcessElementNode",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     return(0);
 }
 
-/**
+/*
  * This is step 2, point 3: sort elements by Id: we process other elements as-is, but for elements we collect them in a list,
  * then sort, and finally process them (process the head of the list, then pop the head, till the list becomes empty).
  */
@@ -352,32 +337,21 @@ xmlSecTransformRelationshipProcessNodeList(xmlSecTransformPtr transform, xmlOutp
 
     list = xmlListCreate(NULL, (xmlListDataCompare)xmlSecTransformRelationshipCompare);
     if(list == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlListCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlListCreate", xmlSecTransformGetName(transform));
         return(-1);
     }
 
     for(; cur; cur = cur->next) {
         if(xmlStrcmp(cur->name, xmlSecNodeRelationship) == 0) {
             if(xmlListInsert(list, cur) != 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlListInsert",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecXmlError("xmlListInsert", xmlSecTransformGetName(transform));
                 return(-1);
             }
         } else {
             ret = xmlSecTransformRelationshipProcessNode(transform, buf, cur);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecTransformRelationshipProcessNode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformRelationshipProcessNode",
+                                    xmlSecTransformGetName(transform));
                 xmlListDelete(list);
                 return(-1);
             }
@@ -392,11 +366,8 @@ xmlSecTransformRelationshipProcessNodeList(xmlSecTransformPtr transform, xmlOutp
 
         ret = xmlSecTransformRelationshipProcessNode(transform, buf, node);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipProcessNode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipProcessNode",
+                                xmlSecTransformGetName(transform));
             xmlListDelete(list);
             return(-1);
         }
@@ -418,50 +389,30 @@ xmlSecTransformRelationshipWriteProp(xmlOutputBufferPtr buf, const xmlChar * nam
 
     ret = xmlOutputBufferWriteString(buf, " ");
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString", NULL);
         return(-1);
     }
 
     ret = xmlOutputBufferWriteString(buf, (const char*) name);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString", NULL);
         return(-1);
     }
 
     if(value != NULL) {
         ret = xmlOutputBufferWriteString(buf, "=\"");
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlOutputBufferWriteString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlOutputBufferWriteString", NULL);
             return(-1);
         }
         ret = xmlOutputBufferWriteString(buf, (const char*) value);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlOutputBufferWriteString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlOutputBufferWriteString", NULL);
             return(-1);
         }
         ret = xmlOutputBufferWriteString(buf, "\"");
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlOutputBufferWriteString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlOutputBufferWriteString", NULL);
             return(-1);
         }
     }
@@ -491,20 +442,14 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     /* write open node */
     ret = xmlOutputBufferWriteString(buf, "<");
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     ret = xmlOutputBufferWriteString(buf, (const char *)cur->name);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -512,16 +457,13 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     if(cur->nsDef != NULL) {
         ret = xmlSecTransformRelationshipWriteNs(buf, cur->nsDef->href);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipWriteNs",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipWriteNs",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
 
-    /**
+    /*
      *  write attributes:
      *
      *  This is step 3, point 6: add default value of TargetMode if there is no such attribute.
@@ -535,11 +477,8 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
 
         ret = xmlSecTransformRelationshipWriteProp(buf, attr->name, value);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipWriteProp",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipWriteProp",
+                                xmlSecTransformGetName(transform));
             xmlFree(value);
             return(-1);
         }
@@ -551,11 +490,8 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     if(xmlStrcmp(cur->name, xmlSecNodeRelationship) == 0 && !foundTargetMode) {
         ret = xmlSecTransformRelationshipWriteProp(buf, xmlSecRelationshipAttrTargetMode, BAD_CAST "Internal");
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipWriteProp(TargetMode=Internal)",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipWriteProp(TargetMode=Internal)",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -563,11 +499,8 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     /* finish writing open node */
     ret = xmlOutputBufferWriteString(buf, ">");
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -575,11 +508,8 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     if(cur->children != NULL) {
         ret = xmlSecTransformRelationshipProcessNodeList(transform, buf, cur->children);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipProcessNodeList",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipProcessNodeList",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -587,28 +517,19 @@ xmlSecTransformRelationshipProcessElementNode(xmlSecTransformPtr transform, xmlO
     /* write closing node */
     ret = xmlOutputBufferWriteString(buf, "</");
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     ret = xmlOutputBufferWriteString(buf, (const char *)cur->name);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     if(xmlOutputBufferWriteString(buf, ">") < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferWriteString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferWriteString",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -627,11 +548,8 @@ xmlSecTransformRelationshipExecute(xmlSecTransformPtr transform, xmlOutputBuffer
     if(doc->children != NULL) {
         ret = xmlSecTransformRelationshipProcessNodeList(transform, buf, doc->children);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformRelationshipProcessNodeList",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformRelationshipProcessNodeList",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -662,11 +580,7 @@ xmlSecTransformRelationshipPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPt
     case xmlSecTransformStatusFinished:
        return(0);
     default:
-       xmlSecError(XMLSEC_ERRORS_HERE,
-                   xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                   NULL,
-                   XMLSEC_ERRORS_R_INVALID_STATUS,
-                   "status=%d", transform->status);
+       xmlSecInvalidTransfromStatusError(transform);
        return(-1);
     }
     xmlSecAssert2(transform->status == xmlSecTransformStatusWorking, -1);
@@ -675,43 +589,30 @@ xmlSecTransformRelationshipPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPt
     if(transform->next != NULL) {
        buf = xmlSecTransformCreateOutputBuffer(transform->next, transformCtx);
        if(buf == NULL) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlSecTransformCreateOutputBuffer",
-                       XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+           xmlSecInternalError("xmlSecTransformCreateOutputBuffer",
+                               xmlSecTransformGetName(transform));
            return(-1);
        }
     } else {
        buf = xmlSecBufferCreateOutputBuffer(&(transform->outBuf));
        if(buf == NULL) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlSecBufferCreateOutputBuffer",
-                       XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+           xmlSecInternalError("xmlSecBufferCreateOutputBuffer",
+                               xmlSecTransformGetName(transform));
            return(-1);
        }
     }
 
     ret = xmlSecTransformRelationshipExecute(transform, buf, nodes->doc);
     if(ret < 0) {
-       xmlSecError(XMLSEC_ERRORS_HERE,
-                   xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                   "xmlC14NExecute",
-                   XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                   XMLSEC_ERRORS_NO_MESSAGE);
+       xmlSecInternalError("xmlSecTransformRelationshipExecute",
+                           xmlSecTransformGetName(transform));
        xmlOutputBufferClose(buf);
        return(-1);
     }
 
     ret = xmlOutputBufferClose(buf);
     if(ret < 0) {
-       xmlSecError(XMLSEC_ERRORS_HERE,
-                   xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                   "xmlOutputBufferClose",
-                   XMLSEC_ERRORS_R_XML_FAILED,
-                   XMLSEC_ERRORS_NO_MESSAGE);
+       xmlSecXmlError("xmlOutputBufferClose", xmlSecTransformGetName(transform));
        return(-1);
     }
     transform->status = xmlSecTransformStatusFinished;
@@ -742,43 +643,30 @@ xmlSecTransformRelationshipPopBin(xmlSecTransformPtr transform, xmlSecByte* data
        /* get xml data from previous transform */
        ret = xmlSecTransformPopXml(transform->prev, &(transform->inNodes), transformCtx);
        if(ret < 0) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlSecTransformPopXml",
-                       XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+           xmlSecInternalError("xmlSecTransformPopXml",
+                               xmlSecTransformGetName(transform));
            return(-1);
        }
 
        /* dump everything to internal buffer */
        buf = xmlSecBufferCreateOutputBuffer(out);
        if(buf == NULL) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlSecBufferCreateOutputBuffer",
-                       XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+           xmlSecInternalError("xmlSecBufferCreateOutputBuffer",
+                               xmlSecTransformGetName(transform));
            return(-1);
        }
 
        ret = xmlC14NExecute(transform->inNodes->doc, (xmlC14NIsVisibleCallback)xmlSecNodeSetContains, transform->inNodes, XML_C14N_1_0, NULL, 0, buf);
        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlSecTransformC14NExecute",
-                       XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformC14NExecute",
+                                xmlSecTransformGetName(transform));
            xmlOutputBufferClose(buf);
            return(-1);
        }
 
        ret = xmlOutputBufferClose(buf);
        if(ret < 0) {
-           xmlSecError(XMLSEC_ERRORS_HERE,
-                       xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                       "xmlOutputBufferClose",
-                       XMLSEC_ERRORS_R_XML_FAILED,
-                       XMLSEC_ERRORS_NO_MESSAGE);
+           xmlSecXmlError("xmlOutputBufferClose", xmlSecTransformGetName(transform));
            return(-1);
        }
        transform->status = xmlSecTransformStatusWorking;
@@ -801,11 +689,9 @@ xmlSecTransformRelationshipPopBin(xmlSecTransformPtr transform, xmlSecByte* data
            memcpy(data, xmlSecBufferGetData(out), outSize);
            ret = xmlSecBufferRemoveHead(out, outSize);
            if(ret < 0) {
-               xmlSecError(XMLSEC_ERRORS_HERE,
-                           xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                           "xmlSecBufferRemoveHead",
-                           XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                           "size=%d", outSize);
+               xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                    xmlSecTransformGetName(transform),
+                                    "size=%d", outSize);
                return(-1);
            }
        } else if(xmlSecBufferGetSize(out) == 0) {
@@ -817,11 +703,7 @@ xmlSecTransformRelationshipPopBin(xmlSecTransformPtr transform, xmlSecByte* data
        xmlSecAssert2(xmlSecBufferGetSize(out) == 0, -1);
        (*dataSize) = 0;
     } else {
-       xmlSecError(XMLSEC_ERRORS_HERE,
-                   xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                   NULL,
-                   XMLSEC_ERRORS_R_INVALID_STATUS,
-                   "status=%d", transform->status);
+       xmlSecInvalidTransfromStatusError(transform);
        return(-1);
     }
 
diff --git a/src/skeleton/Makefile.am b/src/skeleton/Makefile.am
index 2f54f9d..dd037e6 100644
--- a/src/skeleton/Makefile.am
+++ b/src/skeleton/Makefile.am
@@ -25,10 +25,6 @@ libxmlsec1_skeleton_la_SOURCES =\
 	globals.h \
 	$(NULL)
 
-if SHAREDLIB_HACK
-libxmlsec1_skeleton_la_SOURCES += ../strings.c
-endif
-
 libxmlsec1_skeleton_la_LIBADD = \
 	$(SKELETON_LIBS) \
 	$(LIBXSLT_LIBS) \
diff --git a/src/skeleton/app.c b/src/skeleton/app.c
index 69c8330..ceab2f3 100644
--- a/src/skeleton/app.c
+++ b/src/skeleton/app.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -73,11 +73,7 @@ xmlSecSkeletonAppKeyLoad(const char *filename, xmlSecKeyDataFormat format,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
 
     /* TODO: load key */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeyLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -101,11 +97,7 @@ xmlSecSkeletonAppKeyLoadMemory(const xmlSecByte* data, xmlSecSize dataSize, xmlS
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, NULL);
 
     /* TODO: load key */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeyLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -130,11 +122,7 @@ xmlSecSkeletonAppKeyCertLoad(xmlSecKeyPtr key, const char* filename,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeyCertLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -157,11 +145,7 @@ xmlSecSkeletonAppKeyCertLoadMemory(xmlSecKeyPtr key, const xmlSecByte* data, xml
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeyCertLoadMemory",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -188,11 +172,7 @@ xmlSecSkeletonAppPkcs12Load(const char *filename,
     xmlSecAssert2(filename != NULL, NULL);
 
     /* TODO: load pkcs12 file */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppPkcs12Load",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -217,11 +197,7 @@ xmlSecSkeletonAppPkcs12LoadMemory(const xmlSecByte* data, xmlSecSize dataSize, c
     xmlSecAssert2(data != NULL, NULL);
 
     /* TODO: load pkcs12 file */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppPkcs12Load",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(NULL);
 }
 
@@ -249,11 +225,7 @@ xmlSecSkeletonAppKeysMngrCertLoad(xmlSecKeysMngrPtr mngr, const char *filename,
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO: load cert and add to keys manager */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeysMngrCertLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -279,11 +251,7 @@ xmlSecSkeletonAppKeysMngrCertLoadMemory(xmlSecKeysMngrPtr mngr, const xmlSecByte
     xmlSecAssert2(format != xmlSecKeyDataFormatUnknown, -1);
 
     /* TODO: load cert and add to keys manager */
-    xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecSkeletonAppKeysMngrCertLoad",
-                XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecNotImplementedError(NULL);
     return(-1);
 }
 
@@ -314,21 +282,13 @@ xmlSecSkeletonAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
         keysStore = xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId);
         if(keysStore == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyStoreCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecSimpleKeysStoreId");
+            xmlSecInternalError("xmlSecKeyStoreCreate(xmlSecSimpleKeysStoreId)", NULL);
             return(-1);
         }
 
         ret = xmlSecKeysMngrAdoptKeysStore(mngr, keysStore);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeysMngrAdoptKeysStore",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeysMngrAdoptKeysStore", NULL);
             xmlSecKeyStoreDestroy(keysStore);
             return(-1);
         }
@@ -336,11 +296,7 @@ xmlSecSkeletonAppDefaultKeysMngrInit(xmlSecKeysMngrPtr mngr) {
 
     ret = xmlSecSkeletonKeysMngrInit(mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSkeletonKeysMngrInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSkeletonKeysMngrInit", NULL);
         return(-1);
     }
 
@@ -372,21 +328,13 @@ xmlSecSkeletonAppDefaultKeysMngrAdoptKey(xmlSecKeysMngrPtr mngr, xmlSecKeyPtr ke
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreAdoptKey(store, key);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreAdoptKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSimpleKeysStoreAdoptKey", NULL);
         return(-1);
     }
 
@@ -417,21 +365,14 @@ xmlSecSkeletonAppDefaultKeysMngrLoad(xmlSecKeysMngrPtr mngr, const char* uri) {
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreLoad(store, uri, mngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreLoad",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s", xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreLoad", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -462,22 +403,15 @@ xmlSecSkeletonAppDefaultKeysMngrSave(xmlSecKeysMngrPtr mngr, const char* filenam
 
     store = xmlSecKeysMngrGetKeysStore(mngr);
     if(store == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeysMngrGetKeysStore",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeysMngrGetKeysStore", NULL);
         return(-1);
     }
 
     ret = xmlSecSimpleKeysStoreSave(store, filename, type);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSimpleKeysStoreSave",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "filename=%s",
-                    xmlSecErrorsSafeString(filename));
+        xmlSecInternalError2("xmlSecSimpleKeysStoreSave", NULL,
+                             "filename=%s",
+                             xmlSecErrorsSafeString(filename));
         return(-1);
     }
 
diff --git a/src/skeleton/crypto.c b/src/skeleton/crypto.c
index 0e372f1..e93cfd0 100644
--- a/src/skeleton/crypto.c
+++ b/src/skeleton/crypto.c
@@ -1,5 +1,5 @@
-/**
- * XMLSec library
+/*
+ * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
@@ -244,21 +244,13 @@ int
 xmlSecSkeletonInit (void)  {
     /* Check loaded xmlsec library version */
     if(xmlSecCheckVersionExact() != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCheckVersionExact",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCheckVersionExact", NULL);
         return(-1);
     }
 
     /* register our klasses */
     if(xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms(xmlSecCryptoGetFunctions_skeleton()) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLFunctionsRegisterKeyDataAndTransforms", NULL);
         return(-1);
     }
     return(0);
diff --git a/src/skeleton/globals.h b/src/skeleton/globals.h
index 065c3e8..6e84c43 100644
--- a/src/skeleton/globals.h
+++ b/src/skeleton/globals.h
@@ -21,4 +21,7 @@
 #define IN_XMLSEC_CRYPTO
 #define XMLSEC_PRIVATE
 
+/* Include common error helper macros. */
+#include "../errors_helpers.h"
+
 #endif /* ! __XMLSEC_GLOBALS_H__ */
diff --git a/src/soap.c b/src/soap.c
index 3757e1a..8c618b9 100644
--- a/src/soap.c
+++ b/src/soap.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Simple SOAP messages parsing/creation.
@@ -6,7 +6,7 @@
  * This is free software; see Copyright file in the source
  * distribution for preciese wording.
  *
- * Copyright (C) 2002-2003 Aleksey Sanin <aleksey at aleksey.com>
+ * Copyright (C) 2002-2017 Aleksey Sanin <aleksey at aleksey.com>
  */
 #include "globals.h"
 
@@ -59,23 +59,15 @@ xmlSecSoap11CreateEnvelope(xmlDocPtr doc) {
     /* create Envelope node */
     envNode = xmlNewDocNode(doc, NULL, xmlSecNodeEnvelope, NULL);
     if(envNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDocNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeEnvelope));
+        xmlSecXmlError2("xmlNewDocNode", NULL,
+                        "node=%s", xmlSecErrorsSafeString(xmlSecNodeEnvelope));
         return(NULL);
     }
 
     ns = xmlNewNs(envNode, xmlSecSoap11Ns, NULL) ;
     if(ns == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "ns=%s",
-                    xmlSecErrorsSafeString(xmlSecSoap11Ns));
+        xmlSecXmlError2("xmlNewNs", NULL,
+                        "ns=%s", xmlSecErrorsSafeString(xmlSecSoap11Ns));
         xmlFreeNode(envNode);
         return(NULL);
     }
@@ -84,12 +76,7 @@ xmlSecSoap11CreateEnvelope(xmlDocPtr doc) {
     /* add required Body node */
     bodyNode = xmlSecAddChild(envNode, xmlSecNodeBody, xmlSecSoap11Ns);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeBody));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeBody)", NULL);
         xmlFreeNode(envNode);
         return(NULL);
     }
@@ -132,22 +119,14 @@ xmlSecSoap11EnsureHeader(xmlNodePtr envNode) {
 
     /* if the first element child is not Header then it is Body */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap11Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(NULL);
     }
 
     /* finally add Header node before body */
     hdrNode = xmlSecAddPrevSibling(cur, xmlSecNodeHeader, xmlSecSoap11Ns);
     if(hdrNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddPrevSibling",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecAddPrevSibling", NULL);
         return(NULL);
     }
 
@@ -172,11 +151,7 @@ xmlSecSoap11AddBodyEntry(xmlNodePtr envNode, xmlNodePtr entryNode) {
 
     bodyNode = xmlSecSoap11GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap11GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap11GetBody", NULL);
         return(NULL);
     }
 
@@ -232,46 +207,28 @@ xmlSecSoap11AddFaultEntry(xmlNodePtr envNode, const xmlChar* faultCodeHref,
     /* get Body node */
     bodyNode = xmlSecSoap11GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap11GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap11GetBody", NULL);
         return(NULL);
     }
 
     /* check that we don't have Fault node already */
     faultNode = xmlSecFindChild(bodyNode, xmlSecNodeFault, xmlSecSoap11Ns);
     if(faultNode != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(bodyNode, xmlSecNodeFault, NULL);
         return(NULL);
     }
 
     /* add Fault node */
     faultNode = xmlSecAddChild(bodyNode, xmlSecNodeFault, xmlSecSoap11Ns);
     if(faultNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeFault));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeFault)", NULL);
         return(NULL);
     }
 
     /* add faultcode node */
     cur = xmlSecAddChild(faultNode, xmlSecNodeFaultCode, xmlSecSoap11Ns);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeFaultCode));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeFaultCode)", NULL);
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -280,12 +237,8 @@ xmlSecSoap11AddFaultEntry(xmlNodePtr envNode, const xmlChar* faultCodeHref,
     /* create qname for fault code */
     qname = xmlSecGetQName(cur, faultCodeHref, faultCodeLocalPart);
     if(qname == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGetQName",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(cur->name));
+        xmlSecXmlError2("xmlSecGetQName", NULL,
+                        "node=%s", xmlSecErrorsSafeString(cur->name));
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -298,12 +251,7 @@ xmlSecSoap11AddFaultEntry(xmlNodePtr envNode, const xmlChar* faultCodeHref,
     /* add faultstring node */
     cur = xmlSecAddChild(faultNode, xmlSecNodeFaultString, xmlSecSoap11Ns);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeFaultString));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeFaultString)", NULL);
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -316,12 +264,7 @@ xmlSecSoap11AddFaultEntry(xmlNodePtr envNode, const xmlChar* faultCodeHref,
         /* add faultactor node */
         cur = xmlSecAddChild(faultNode, xmlSecNodeFaultActor, xmlSecSoap11Ns);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeFaultActor));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeFaultActor)", NULL);
             xmlUnlinkNode(faultNode);
             xmlFreeNode(faultNode);
             return(NULL);
@@ -351,11 +294,7 @@ xmlSecSoap11CheckEnvelope(xmlNodePtr envNode) {
 
     /* verify envNode itself */
     if(!xmlSecCheckNodeName(envNode, xmlSecNodeEnvelope, xmlSecSoap11Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeEnvelope),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(envNode, xmlSecNodeEnvelope, NULL);
         return(0);
     }
 
@@ -367,11 +306,7 @@ xmlSecSoap11CheckEnvelope(xmlNodePtr envNode) {
 
     /* required Body node is next */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap11Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(0);
     }
 
@@ -423,11 +358,7 @@ xmlSecSoap11GetBody(xmlNodePtr envNode) {
 
     /* Body node is next */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap11Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(NULL);
     }
 
@@ -453,11 +384,7 @@ xmlSecSoap11GetBodyEntriesNumber(xmlNodePtr envNode) {
     /* get Body node */
     bodyNode = xmlSecSoap11GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap11GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap11GetBody", NULL);
         return(0);
     }
 
@@ -489,11 +416,7 @@ xmlSecSoap11GetBodyEntry(xmlNodePtr envNode, xmlSecSize pos) {
     /* get Body node */
     bodyNode = xmlSecSoap11GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap11GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap11GetBody", NULL);
         return(NULL);
     }
 
@@ -523,11 +446,7 @@ xmlSecSoap11GetFaultEntry(xmlNodePtr envNode) {
     /* get Body node */
     bodyNode = xmlSecSoap11GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap11GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap11GetBody", NULL);
         return(NULL);
     }
 
@@ -585,23 +504,15 @@ xmlSecSoap12CreateEnvelope(xmlDocPtr doc) {
     /* create Envelope node */
     envNode = xmlNewDocNode(doc, NULL, xmlSecNodeEnvelope, NULL);
     if(envNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDocNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeEnvelope));
+        xmlSecXmlError2("xmlNewDocNode", NULL,
+                        "node=%s", xmlSecErrorsSafeString(xmlSecNodeEnvelope));
         return(NULL);
     }
 
     ns = xmlNewNs(envNode, xmlSecSoap12Ns, NULL) ;
     if(ns == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "ns=%s",
-                    xmlSecErrorsSafeString(xmlSecSoap12Ns));
+        xmlSecXmlError2("xmlNewNs", NULL,
+                        "ns=%s", xmlSecErrorsSafeString(xmlSecSoap12Ns));
         xmlFreeNode(envNode);
         return(NULL);
     }
@@ -610,12 +521,7 @@ xmlSecSoap12CreateEnvelope(xmlDocPtr doc) {
     /* add required Body node */
     bodyNode = xmlSecAddChild(envNode, xmlSecNodeBody, xmlSecSoap12Ns);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeBody));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeBody)", NULL);
         xmlFreeNode(envNode);
         return(NULL);
     }
@@ -658,22 +564,14 @@ xmlSecSoap12EnsureHeader(xmlNodePtr envNode) {
 
     /* if the first element child is not Header then it is Body */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap12Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(NULL);
     }
 
     /* finally add Header node before body */
     hdrNode = xmlSecAddPrevSibling(cur, xmlSecNodeHeader, xmlSecSoap12Ns);
     if(hdrNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddPrevSibling",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecAddPrevSibling", NULL);
         return(NULL);
     }
 
@@ -709,11 +607,7 @@ xmlSecSoap12AddBodyEntry(xmlNodePtr envNode, xmlNodePtr entryNode) {
 
     bodyNode = xmlSecSoap12GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap12GetBody", NULL);
         return(NULL);
     }
 
@@ -813,46 +707,28 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
     /* get Body node */
     bodyNode = xmlSecSoap12GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap12GetBody", NULL);
         return(NULL);
     }
 
     /* check that we don't have Fault node already */
     faultNode = xmlSecFindChild(bodyNode, xmlSecNodeFault, xmlSecSoap12Ns);
     if(faultNode != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(bodyNode, xmlSecNodeFault, NULL);
         return(NULL);
     }
 
     /* add Fault node */
     faultNode = xmlSecAddChild(bodyNode, xmlSecNodeFault, xmlSecSoap12Ns);
     if(faultNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeFault));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeFault)", NULL);
         return(NULL);
     }
 
     /* add Code node */
     cur = xmlSecAddChild(faultNode, xmlSecNodeCode, xmlSecSoap12Ns);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCode));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeCode)", NULL);
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -863,12 +739,8 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
                                        xmlSecNodeValue, xmlSecSoap12Ns,
                                        faultCode);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerNodeWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "faultCode=%d",
-                    faultCode);
+        xmlSecInternalError2("xmlSecQName2IntegerNodeWrite", NULL,
+                             "faultCode=%d", faultCode);
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -877,12 +749,7 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
     /* add Reason node */
     cur = xmlSecAddChild(faultNode, xmlSecNodeReason, xmlSecSoap12Ns);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeReason));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeReason)", NULL);
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -890,12 +757,8 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
 
     /* Add Reason/Text node */
     if(xmlSecSoap12AddFaultReasonText(faultNode, faultReasonText, faultReasonLang) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12AddFaultReasonText",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "text=%s",
-                    xmlSecErrorsSafeString(faultReasonText));
+        xmlSecInternalError2("xmlSecSoap12AddFaultReasonText", NULL,
+                             "text=%s", xmlSecErrorsSafeString(faultReasonText));
         xmlUnlinkNode(faultNode);
         xmlFreeNode(faultNode);
         return(NULL);
@@ -905,12 +768,7 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
         /* add Node node */
         cur = xmlSecAddChild(faultNode, xmlSecNodeNode, xmlSecSoap12Ns);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeNode));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeNode)", NULL);
             xmlUnlinkNode(faultNode);
             xmlFreeNode(faultNode);
             return(NULL);
@@ -922,12 +780,7 @@ xmlSecSoap12AddFaultEntry(xmlNodePtr envNode, xmlSecSoap12FaultCode faultCode,
         /* add Role node */
         cur = xmlSecAddChild(faultNode, xmlSecNodeRole, xmlSecSoap12Ns);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeRole));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeRole)", NULL);
             xmlUnlinkNode(faultNode);
             xmlFreeNode(faultNode);
             return(NULL);
@@ -961,12 +814,7 @@ xmlSecSoap12AddFaultSubcode(xmlNodePtr faultNode, const xmlChar* subCodeHref, co
     /* Code node is the first childern in Fault node */
     cur = xmlSecGetNextElementNode(faultNode->children);
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeCode, xmlSecSoap12Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCode));
+        xmlSecInvalidNodeError(cur, xmlSecNodeCode, NULL);
         return(NULL);
     }
 
@@ -986,24 +834,14 @@ xmlSecSoap12AddFaultSubcode(xmlNodePtr faultNode, const xmlChar* subCodeHref, co
     /* add Subcode node */
     subcodeNode = xmlSecAddChild(cur, xmlSecNodeSubcode, xmlSecSoap12Ns);
     if(subcodeNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSubcode));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeSubcode)", NULL);
         return(NULL);
     }
 
     /* add Value node */
     valueNode = xmlSecAddChild(subcodeNode, xmlSecNodeValue, xmlSecSoap12Ns);
     if(valueNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeValue));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeValue)", NULL);
         xmlUnlinkNode(subcodeNode);
         xmlFreeNode(subcodeNode);
         return(NULL);
@@ -1012,12 +850,8 @@ xmlSecSoap12AddFaultSubcode(xmlNodePtr faultNode, const xmlChar* subCodeHref, co
     /* create qname for fault code */
     qname = xmlSecGetQName(cur, subCodeHref, subCodeName);
     if(qname == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecGetQName",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(cur->name));
+        xmlSecXmlError2("xmlSecGetQName", NULL,
+                        "node=%s", xmlSecErrorsSafeString(cur->name));
         xmlUnlinkNode(subcodeNode);
         xmlFreeNode(subcodeNode);
         return(NULL);
@@ -1056,24 +890,14 @@ xmlSecSoap12AddFaultReasonText(xmlNodePtr faultNode, const xmlChar* faultReasonT
     /* find Reason node */
     reasonNode = xmlSecFindChild(faultNode,  xmlSecNodeReason, xmlSecSoap12Ns);
     if(reasonNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecFindChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeReason));
+        xmlSecInternalError("xmlSecFindChild(xmlSecNodeReason)", NULL);
         return(NULL);
     }
 
     /* add Text node */
     textNode = xmlSecAddChild(reasonNode, xmlSecNodeText, xmlSecSoap12Ns);
     if(textNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeText));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeText)", NULL);
         return(NULL);
     }
     xmlNodeSetContent(textNode, faultReasonText);
@@ -1104,12 +928,7 @@ xmlSecSoap12AddFaultDetailEntry(xmlNodePtr faultNode, xmlNodePtr detailEntryNode
     if(detailNode == NULL) {
         detailNode = xmlSecAddChild(faultNode, xmlSecNodeDetail, xmlSecSoap12Ns);
         if(detailNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeDetail));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeDetail)", NULL);
             return(NULL);
         }
     }
@@ -1134,11 +953,7 @@ xmlSecSoap12CheckEnvelope(xmlNodePtr envNode) {
 
     /* verify envNode itself */
     if(!xmlSecCheckNodeName(envNode, xmlSecNodeEnvelope, xmlSecSoap12Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeEnvelope),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(envNode, xmlSecNodeEnvelope, NULL);
         return(0);
     }
 
@@ -1150,11 +965,7 @@ xmlSecSoap12CheckEnvelope(xmlNodePtr envNode) {
 
     /* required Body node is next */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap12Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(0);
     }
 
@@ -1206,11 +1017,7 @@ xmlSecSoap12GetBody(xmlNodePtr envNode) {
 
     /* Body node is next */
     if((cur == NULL) || !xmlSecCheckNodeName(cur, xmlSecNodeBody, xmlSecSoap12Ns)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeBody),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeError(cur, xmlSecNodeBody, NULL);
         return(NULL);
     }
 
@@ -1236,11 +1043,7 @@ xmlSecSoap12GetBodyEntriesNumber(xmlNodePtr envNode) {
     /* get Body node */
     bodyNode = xmlSecSoap12GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap12GetBody", NULL);
         return(0);
     }
 
@@ -1272,11 +1075,7 @@ xmlSecSoap12GetBodyEntry(xmlNodePtr envNode, xmlSecSize pos) {
     /* get Body node */
     bodyNode = xmlSecSoap12GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap12GetBody", NULL);
         return(NULL);
     }
 
@@ -1306,11 +1105,7 @@ xmlSecSoap12GetFaultEntry(xmlNodePtr envNode) {
     /* get Body node */
     bodyNode = xmlSecSoap12GetBody(envNode);
     if(bodyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecSoap12GetBody",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecSoap12GetBody", NULL);
         return(NULL);
     }
 
diff --git a/src/strings.c b/src/strings.c
index 8a62133..98e7154 100644
--- a/src/strings.c
+++ b/src/strings.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * All the string constants.
diff --git a/src/templates.c b/src/templates.c
index 374917c..8897ebe 100644
--- a/src/templates.c
+++ b/src/templates.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Creating signature and encryption templates.
@@ -103,23 +103,15 @@ xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId c14nMethodId,
     /* create Signature node itself */
     signNode = xmlNewDocNode(doc, NULL, xmlSecNodeSignature, NULL);
     if(signNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDocNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignature));
+        xmlSecXmlError2("xmlNewDocNode", NULL,
+                        "node=%s", xmlSecErrorsSafeString(xmlSecNodeSignature));
         return(NULL);
     }
 
     ns = xmlNewNs(signNode, xmlSecDSigNs, nsPrefix);
     if(ns == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "ns=%s",
-                    xmlSecErrorsSafeString(xmlSecDSigNs));
+        xmlSecXmlError2("xmlNewNs", NULL,
+                        "ns=%s", xmlSecErrorsSafeString(xmlSecDSigNs));
         xmlFreeNode(signNode);
         return(NULL);
     }
@@ -132,12 +124,7 @@ xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId c14nMethodId,
     /* add SignedInfo node */
     signedInfoNode = xmlSecAddChild(signNode, xmlSecNodeSignedInfo, xmlSecDSigNs);
     if(signedInfoNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignedInfo));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeSignedInfo)", NULL);
         xmlFreeNode(signNode);
         return(NULL);
     }
@@ -145,12 +132,7 @@ xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId c14nMethodId,
     /* add SignatureValue node */
     cur = xmlSecAddChild(signNode, xmlSecNodeSignatureValue, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignatureValue));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeSignatureValue)", NULL);
         xmlFreeNode(signNode);
         return(NULL);
     }
@@ -158,23 +140,13 @@ xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId c14nMethodId,
     /* add CanonicaizationMethod node to SignedInfo */
     cur = xmlSecAddChild(signedInfoNode, xmlSecNodeCanonicalizationMethod, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCanonicalizationMethod));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeCanonicalizationMethod)", NULL);
         xmlFreeNode(signNode);
         return(NULL);
     }
     if(xmlSetProp(cur, xmlSecAttrAlgorithm, c14nMethodId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(c14nMethodId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlFreeNode(signNode);
         return(NULL);
     }
@@ -182,23 +154,13 @@ xmlSecTmplSignatureCreateNsPref(xmlDocPtr doc, xmlSecTransformId c14nMethodId,
     /* add SignatureMethod node to SignedInfo */
     cur = xmlSecAddChild(signedInfoNode, xmlSecNodeSignatureMethod, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignatureMethod));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeSignatureMethod)", NULL);
         xmlFreeNode(signNode);
         return(NULL);
     }
     if(xmlSetProp(cur, xmlSecAttrAlgorithm, signMethodId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(signMethodId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlFreeNode(signNode);
         return(NULL);
     }
@@ -229,22 +191,14 @@ xmlSecTmplSignatureEnsureKeyInfo(xmlNodePtr signNode, const xmlChar *id) {
 
         signValueNode = xmlSecFindChild(signNode, xmlSecNodeSignatureValue, xmlSecDSigNs);
         if(signValueNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeSignatureValue),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNodeNotFoundError("xmlSecFindChild", signNode,
+                                    xmlSecNodeSignatureValue, NULL);
             return(NULL);
         }
 
         res = xmlSecAddNextSibling(signValueNode, xmlSecNodeKeyInfo, xmlSecDSigNs);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddNextSibling",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError("xmlSecAddNextSibling(xmlSecNodeKeyInfo)", NULL);
             return(NULL);
         }
     }
@@ -280,11 +234,8 @@ xmlSecTmplSignatureAddReference(xmlNodePtr signNode, xmlSecTransformId digestMet
 
     signedInfoNode = xmlSecFindChild(signNode, xmlSecNodeSignedInfo, xmlSecDSigNs);
     if(signedInfoNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeSignedInfo),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindChild", signNode,
+                                xmlSecNodeSignedInfo, NULL);
         return(NULL);
     }
 
@@ -304,12 +255,7 @@ xmlSecTmplAddReference(xmlNodePtr parentNode, xmlSecTransformId digestMethodId,
     /* add Reference node */
     res = xmlSecAddChild(parentNode, xmlSecNodeReference, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeReference));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeReference)", NULL);
         return(NULL);
     }
 
@@ -327,24 +273,14 @@ xmlSecTmplAddReference(xmlNodePtr parentNode, xmlSecTransformId digestMethodId,
     /* add DigestMethod node and set algorithm */
     cur = xmlSecAddChild(res, xmlSecNodeDigestMethod, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDigestMethod));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeDigestMethod)", NULL);
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
     }
     if(xmlSetProp(cur, xmlSecAttrAlgorithm, digestMethodId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(digestMethodId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
@@ -353,12 +289,7 @@ xmlSecTmplAddReference(xmlNodePtr parentNode, xmlSecTransformId digestMethodId,
     /* add DigestValue node */
     cur = xmlSecAddChild(res, xmlSecNodeDigestValue, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDigestValue));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeDigestValue)", NULL);
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
@@ -388,12 +319,7 @@ xmlSecTmplSignatureAddObject(xmlNodePtr signNode, const xmlChar *id,
 
     res = xmlSecAddChild(signNode, xmlSecNodeObject, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeObject));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeObject)", NULL);
         return(NULL);
     }
     if(id != NULL) {
@@ -424,11 +350,8 @@ xmlSecTmplSignatureGetSignMethodNode(xmlNodePtr signNode) {
 
     signedInfoNode = xmlSecFindChild(signNode, xmlSecNodeSignedInfo, xmlSecDSigNs);
     if(signedInfoNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeSignedInfo),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindChild", signNode,
+                                xmlSecNodeSignedInfo, NULL);
         return(NULL);
     }
     return(xmlSecFindChild(signedInfoNode, xmlSecNodeSignatureMethod, xmlSecDSigNs));
@@ -450,11 +373,8 @@ xmlSecTmplSignatureGetC14NMethodNode(xmlNodePtr signNode) {
 
     signedInfoNode = xmlSecFindChild(signNode, xmlSecNodeSignedInfo, xmlSecDSigNs);
     if(signedInfoNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeSignedInfo),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindChild", signNode,
+                                xmlSecNodeSignedInfo, NULL);
         return(NULL);
     }
     return(xmlSecFindChild(signedInfoNode, xmlSecNodeCanonicalizationMethod, xmlSecDSigNs));
@@ -491,35 +411,20 @@ xmlSecTmplReferenceAddTransform(xmlNodePtr referenceNode, xmlSecTransformId tran
             transformsNode = xmlSecAddPrevSibling(tmp, xmlSecNodeTransforms, xmlSecDSigNs);
         }
         if(transformsNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild or xmlSecAddPrevSibling",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeTransforms));
+            xmlSecInternalError("xmlSecAddChild or xmlSecAddPrevSibling(xmlSecNodeTransforms)", NULL);
             return(NULL);
         }
     }
 
     res = xmlSecAddChild(transformsNode, xmlSecNodeTransform, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeTransform));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeTransform)", NULL);
         return(NULL);
     }
 
     if(xmlSetProp(res, xmlSecAttrAlgorithm, transformId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(transformId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
@@ -547,12 +452,7 @@ xmlSecTmplObjectAddSignProperties(xmlNodePtr objectNode, const xmlChar *id, cons
 
     res = xmlSecAddChild(objectNode, xmlSecNodeSignatureProperties, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignatureProperties));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeSignatureProperties)", NULL);
         return(NULL);
     }
     if(id != NULL) {
@@ -582,12 +482,7 @@ xmlSecTmplObjectAddManifest(xmlNodePtr objectNode,  const xmlChar *id) {
 
     res = xmlSecAddChild(objectNode, xmlSecNodeManifest, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeManifest));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeManifest)", NULL);
         return(NULL);
     }
     if(id != NULL) {
@@ -647,23 +542,15 @@ xmlSecTmplEncDataCreate(xmlDocPtr doc, xmlSecTransformId encMethodId,
 
     encNode = xmlNewDocNode(doc, NULL, xmlSecNodeEncryptedData, NULL);
     if(encNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDocNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeEncryptedData));
+        xmlSecXmlError2("xmlNewDocNode", NULL,
+                        "node=%s", xmlSecErrorsSafeString(xmlSecNodeEncryptedData));
         return(NULL);
     }
 
     ns = xmlNewNs(encNode, xmlSecEncNs, NULL);
     if(ns == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "ns=%s",
-                    xmlSecErrorsSafeString(xmlSecEncNs));
+        xmlSecXmlError2("xmlNewNs", NULL,
+                        "ns=%s", xmlSecErrorsSafeString(xmlSecEncNs));
         return(NULL);
     }
     xmlSetNs(encNode, ns);
@@ -699,22 +586,12 @@ xmlSecTmplPrepareEncData(xmlNodePtr parentNode, xmlSecTransformId encMethodId) {
     if(encMethodId != NULL) {
         cur = xmlSecAddChild(parentNode, xmlSecNodeEncryptionMethod, xmlSecEncNs);
         if(cur == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeEncryptionMethod));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeEncryptionMethod)", NULL);
             return(-1);
         }
         if(xmlSetProp(cur, xmlSecAttrAlgorithm, encMethodId->href) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSetProp",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "name=%s,value=%s",
-                        xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                        xmlSecErrorsSafeString(encMethodId->href));
+            xmlSecXmlError2("xmlSetProp", NULL,
+                            "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
             return(-1);
         }
     }
@@ -722,12 +599,7 @@ xmlSecTmplPrepareEncData(xmlNodePtr parentNode, xmlSecTransformId encMethodId) {
     /* and CipherData node */
     cur = xmlSecAddChild(parentNode, xmlSecNodeCipherData, xmlSecEncNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCipherData));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeCipherData)", NULL);
         return(-1);
     }
 
@@ -757,22 +629,14 @@ xmlSecTmplEncDataEnsureKeyInfo(xmlNodePtr encNode, const xmlChar* id) {
 
         cipherDataNode = xmlSecFindChild(encNode, xmlSecNodeCipherData, xmlSecEncNs);
         if(cipherDataNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeCipherData),
-                        XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecNodeNotFoundError("xmlSecFindChild", encNode,
+                                    xmlSecNodeCipherData, NULL);
             return(NULL);
         }
 
         res = xmlSecAddPrevSibling(cipherDataNode, xmlSecNodeKeyInfo, xmlSecDSigNs);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddPrevSibling",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeKeyInfo));
+            xmlSecInternalError("xmlSecAddPrevSibling(xmlSecNodeKeyInfo)", NULL);
             return(NULL);
         }
     }
@@ -803,12 +667,7 @@ xmlSecTmplEncDataEnsureEncProperties(xmlNodePtr encNode, const xmlChar *id) {
     if(res == NULL) {
         res = xmlSecAddChild(encNode, xmlSecNodeEncryptionProperties, xmlSecEncNs);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeEncryptionProperties));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeEncryptionProperties)", NULL);
             return(NULL);
         }
     }
@@ -842,22 +701,13 @@ xmlSecTmplEncDataAddEncProperty(xmlNodePtr encNode, const xmlChar *id, const xml
 
     encProps = xmlSecTmplEncDataEnsureEncProperties(encNode, NULL);
     if(encProps == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTmplEncDataEnsureEncProperties",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTmplEncDataEnsureEncProperties", NULL);
         return(NULL);
     }
 
     res = xmlSecAddChild(encProps, xmlSecNodeEncryptionProperty, xmlSecEncNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeEncryptionProperty));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeEncryptionProperty)", NULL);
         return(NULL);
     }
     if(id != NULL) {
@@ -888,22 +738,15 @@ xmlSecTmplEncDataEnsureCipherValue(xmlNodePtr encNode) {
 
     cipherDataNode = xmlSecFindChild(encNode, xmlSecNodeCipherData, xmlSecEncNs);
     if(cipherDataNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeCipherData),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindChild", encNode,
+                                xmlSecNodeCipherData, NULL);
         return(NULL);
     }
 
     /* check that we don;t have CipherReference node */
     tmp = xmlSecFindChild(cipherDataNode, xmlSecNodeCipherReference, xmlSecEncNs);
     if(tmp != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeCipherReference),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(cipherDataNode, xmlSecNodeCipherReference, NULL);
         return(NULL);
     }
 
@@ -911,12 +754,7 @@ xmlSecTmplEncDataEnsureCipherValue(xmlNodePtr encNode) {
     if(res == NULL) {
         res = xmlSecAddChild(cipherDataNode, xmlSecNodeCipherValue, xmlSecEncNs);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeCipherValue));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeCipherValue)", NULL);
             return(NULL);
         }
     }
@@ -944,22 +782,15 @@ xmlSecTmplEncDataEnsureCipherReference(xmlNodePtr encNode, const xmlChar *uri) {
 
     cipherDataNode = xmlSecFindChild(encNode, xmlSecNodeCipherData, xmlSecEncNs);
     if(cipherDataNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeCipherData),
-                    XMLSEC_ERRORS_R_NODE_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeNotFoundError("xmlSecFindChild", encNode,
+                                xmlSecNodeCipherData, NULL);
         return(NULL);
     }
 
     /* check that we don;t have CipherValue node */
     tmp = xmlSecFindChild(cipherDataNode, xmlSecNodeCipherValue, xmlSecEncNs);
     if(tmp != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeCipherValue),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(cipherDataNode, xmlSecNodeCipherValue, NULL);
         return(NULL);
     }
 
@@ -967,12 +798,7 @@ xmlSecTmplEncDataEnsureCipherReference(xmlNodePtr encNode, const xmlChar *uri) {
     if(res == NULL) {
         res = xmlSecAddChild(cipherDataNode, xmlSecNodeCipherReference, xmlSecEncNs);
         if(res == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeCipherReference));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeCipherReference)", NULL);
             return(NULL);
         }
     }
@@ -1025,35 +851,20 @@ xmlSecTmplCipherReferenceAddTransform(xmlNodePtr cipherReferenceNode,
     if(transformsNode == NULL) {
         transformsNode = xmlSecAddChild(cipherReferenceNode, xmlSecNodeTransforms, xmlSecEncNs);
         if(transformsNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeTransforms));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeTransforms)", NULL);
             return(NULL);
         }
     }
 
     res = xmlSecAddChild(transformsNode,  xmlSecNodeTransform, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeTransform));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeTransform)", NULL);
         return(NULL);
     }
 
     if(xmlSetProp(res, xmlSecAttrAlgorithm, transformId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(transformId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
@@ -1089,36 +900,21 @@ xmlSecTmplReferenceListAddDataReference(xmlNodePtr encNode, const xmlChar *uri)
     if(refListNode == NULL) {
         refListNode = xmlSecAddChild(encNode, xmlSecNodeReferenceList, xmlSecEncNs);
         if(refListNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeReferenceList));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeReferenceList)", NULL);
             return(NULL);
         }
     }
 
     res = xmlSecAddChild(refListNode,  xmlSecNodeDataReference, xmlSecEncNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDataReference));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeDataReference)", NULL);
         return(NULL);
     }
 
     if(uri != NULL) {
         if(xmlSetProp(res, xmlSecAttrURI, uri) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSetProp",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "name=%s,value=%s",
-                        xmlSecErrorsSafeString(xmlSecAttrURI),
-                        xmlSecErrorsSafeString(uri));
+            xmlSecXmlError2("xmlSetProp", NULL,
+                            "name=%s", xmlSecErrorsSafeString(xmlSecAttrURI));
             xmlUnlinkNode(res);
             xmlFreeNode(res);
             return(NULL);
@@ -1148,36 +944,21 @@ xmlSecTmplReferenceListAddKeyReference(xmlNodePtr encNode, const xmlChar *uri) {
     if(refListNode == NULL) {
         refListNode = xmlSecAddChild(encNode, xmlSecNodeReferenceList, xmlSecEncNs);
         if(refListNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeReferenceList));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeReferenceList)", NULL);
             return(NULL);
         }
     }
 
     res = xmlSecAddChild(refListNode,  xmlSecNodeKeyReference, xmlSecEncNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeKeyReference));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeKeyReference)", NULL);
         return(NULL);
     }
 
     if(uri != NULL) {
         if(xmlSetProp(res, xmlSecAttrURI, uri) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSetProp",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "name=%s,value=%s",
-                        xmlSecErrorsSafeString(xmlSecAttrURI),
-                        xmlSecErrorsSafeString(uri));
+            xmlSecXmlError2("xmlSetProp", NULL,
+                            "name=%s", xmlSecErrorsSafeString(xmlSecAttrURI));
             xmlUnlinkNode(res);
             xmlFreeNode(res);
             return(NULL);
@@ -1207,21 +988,21 @@ xmlSecTmplReferenceListAddKeyReference(xmlNodePtr encNode, const xmlChar *uri) {
 xmlNodePtr
 xmlSecTmplKeyInfoAddKeyName(xmlNodePtr keyInfoNode, const xmlChar* name) {
     xmlNodePtr res;
+    int ret;
 
     xmlSecAssert2(keyInfoNode != NULL, NULL);
 
     res = xmlSecAddChild(keyInfoNode, xmlSecNodeKeyName, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeKeyName));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeKeyName)", NULL);
         return(NULL);
     }
     if(name != NULL) {
-        xmlSecNodeEncodeAndSetContent(res, name);
+        ret = xmlSecNodeEncodeAndSetContent(res, name);
+        if(ret < 0) {
+            xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+            return(NULL);
+        }
     }
     return(res);
 }
@@ -1243,12 +1024,7 @@ xmlSecTmplKeyInfoAddKeyValue(xmlNodePtr keyInfoNode) {
 
     res = xmlSecAddChild(keyInfoNode, xmlSecNodeKeyValue, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeKeyValue));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeKeyValue)", NULL);
         return(NULL);
     }
 
@@ -1272,12 +1048,7 @@ xmlSecTmplKeyInfoAddX509Data(xmlNodePtr keyInfoNode) {
 
     res = xmlSecAddChild(keyInfoNode, xmlSecNodeX509Data, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Data));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509Data)", NULL);
         return(NULL);
     }
 
@@ -1304,12 +1075,7 @@ xmlSecTmplKeyInfoAddRetrievalMethod(xmlNodePtr keyInfoNode, const xmlChar *uri,
 
     res = xmlSecAddChild(keyInfoNode, xmlSecNodeRetrievalMethod, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRetrievalMethod));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeRetrievalMethod)", NULL);
         return(NULL);
     }
 
@@ -1346,35 +1112,20 @@ xmlSecTmplRetrievalMethodAddTransform(xmlNodePtr retrMethodNode, xmlSecTransform
     if(transformsNode == NULL) {
         transformsNode = xmlSecAddChild(retrMethodNode, xmlSecNodeTransforms, xmlSecDSigNs);
         if(transformsNode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecAddChild",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeTransforms));
+            xmlSecInternalError("xmlSecAddChild(xmlSecNodeTransforms)", NULL);
             return(NULL);
         }
     }
 
     res = xmlSecAddChild(transformsNode,  xmlSecNodeTransform, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeTransform));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeTransform)", NULL);
         return(NULL);
     }
 
     if(xmlSetProp(res, xmlSecAttrAlgorithm, transformId->href) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "name=%s,value=%s",
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    xmlSecErrorsSafeString(transformId->href));
+        xmlSecXmlError2("xmlSetProp", NULL,
+                        "name=%s", xmlSecErrorsSafeString(xmlSecAttrAlgorithm));
         xmlUnlinkNode(res);
         xmlFreeNode(res);
         return(NULL);
@@ -1408,12 +1159,7 @@ xmlSecTmplKeyInfoAddEncryptedKey(xmlNodePtr keyInfoNode, xmlSecTransformId encMe
     /* we allow multiple encrypted key elements */
     encKeyNode = xmlSecAddChild(keyInfoNode, xmlSecNodeEncryptedKey, xmlSecEncNs);
     if(encKeyNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeEncryptedKey));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeEncryptedKey)", NULL);
         return(NULL);
     }
 
@@ -1458,22 +1204,13 @@ xmlSecTmplX509DataAddIssuerSerial(xmlNodePtr x509DataNode) {
 
     cur = xmlSecFindChild(x509DataNode, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(x509DataNode, xmlSecNodeX509IssuerSerial, NULL);
         return(NULL);
     }
 
     cur = xmlSecAddChild(x509DataNode, xmlSecNodeX509IssuerSerial, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerSerial));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509IssuerSerial)", NULL);
         return(NULL);
     }
 
@@ -1492,35 +1229,29 @@ xmlSecTmplX509DataAddIssuerSerial(xmlNodePtr x509DataNode) {
  */
 xmlNodePtr
 xmlSecTmplX509IssuerSerialAddIssuerName(xmlNodePtr x509IssuerSerialNode, const xmlChar* issuerName) {
-        xmlNodePtr res;
-
-        xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
+    xmlNodePtr res;
+    int ret;
 
-  if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName,
-                                xmlSecDSigNs) != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+    xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
+    if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName, xmlSecDSigNs) != NULL) {
+        xmlSecNodeAlreadyPresentError(x509IssuerSerialNode, xmlSecNodeX509IssuerName, NULL);
         return(NULL);
-        }
+    }
 
-        res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName, xmlSecDSigNs);
+    res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509IssuerName, xmlSecDSigNs);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509IssuerName));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509IssuerName)", NULL);
         return(NULL);
     }
 
-                if (issuerName != NULL) {
-                        xmlSecNodeEncodeAndSetContent(res, issuerName);
-                }
-                return(res);
+    if (issuerName != NULL) {
+        ret = xmlSecNodeEncodeAndSetContent(res, issuerName);
+        if(ret < 0) {
+            xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+            return(NULL);
+        }
+    }
+    return(res);
 }
 
 /**
@@ -1535,35 +1266,30 @@ xmlSecTmplX509IssuerSerialAddIssuerName(xmlNodePtr x509IssuerSerialNode, const x
  */
 xmlNodePtr
 xmlSecTmplX509IssuerSerialAddSerialNumber(xmlNodePtr x509IssuerSerialNode, const xmlChar* serial) {
-        xmlNodePtr res;
-
-        xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
-
-        if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber,
-                                xmlSecDSigNs) != NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber),
-                                XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                                XMLSEC_ERRORS_NO_MESSAGE);
-                return(NULL);
-        }
+    xmlNodePtr res;
+    int ret;
 
-        res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
-        if(res == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecAddChild",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "node=%s",
-                                xmlSecErrorsSafeString(xmlSecNodeX509SerialNumber));
-                return(NULL);
-        }
+    xmlSecAssert2(x509IssuerSerialNode != NULL, NULL);
 
-        if (serial != NULL) {
-                xmlSecNodeEncodeAndSetContent(res, serial);
+    if(xmlSecFindChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber, xmlSecDSigNs) != NULL) {
+        xmlSecNodeAlreadyPresentError(x509IssuerSerialNode, xmlSecNodeX509SerialNumber, NULL);
+        return(NULL);
+    }
+
+    res = xmlSecAddChild(x509IssuerSerialNode, xmlSecNodeX509SerialNumber, xmlSecDSigNs);
+    if(res == NULL) {
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509SerialNumber)", NULL);
+        return(NULL);
+    }
+
+    if (serial != NULL) {
+        ret = xmlSecNodeEncodeAndSetContent(res, serial);
+        if(ret < 0) {
+            xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+            return(NULL);
         }
-        return(res);
+    }
+    return(res);
 }
 
 /**
@@ -1584,22 +1310,13 @@ xmlSecTmplX509DataAddSubjectName(xmlNodePtr x509DataNode) {
 
     cur = xmlSecFindChild(x509DataNode, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509SubjectName),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(x509DataNode, xmlSecNodeX509SubjectName, NULL);
         return(NULL);
     }
 
     cur = xmlSecAddChild(x509DataNode, xmlSecNodeX509SubjectName, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SubjectName));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509SubjectName)", NULL);
         return(NULL);
     }
 
@@ -1624,22 +1341,13 @@ xmlSecTmplX509DataAddSKI(xmlNodePtr x509DataNode) {
 
     cur = xmlSecFindChild(x509DataNode, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(x509DataNode, xmlSecNodeX509SKI, NULL);
         return(NULL);
     }
 
     cur = xmlSecAddChild(x509DataNode, xmlSecNodeX509SKI, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509SKI));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509SKI)", NULL);
         return(NULL);
     }
 
@@ -1665,22 +1373,13 @@ xmlSecTmplX509DataAddCertificate(xmlNodePtr x509DataNode) {
 
     cur = xmlSecFindChild(x509DataNode, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(x509DataNode, xmlSecNodeX509Certificate, NULL);
         return(NULL);
     }
 
     cur = xmlSecAddChild(x509DataNode, xmlSecNodeX509Certificate, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509Certificate));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509Certificate)", NULL);
         return(NULL);
     }
 
@@ -1705,22 +1404,13 @@ xmlSecTmplX509DataAddCRL(xmlNodePtr x509DataNode) {
 
     cur = xmlSecFindChild(x509DataNode, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(x509DataNode, xmlSecNodeX509CRL, NULL);
         return(NULL);
     }
 
     cur = xmlSecAddChild(x509DataNode, xmlSecNodeX509CRL, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeX509CRL));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeX509CRL)", NULL);
         return(NULL);
     }
 
@@ -1746,33 +1436,24 @@ xmlSecTmplX509DataAddCRL(xmlNodePtr x509DataNode) {
 int
 xmlSecTmplTransformAddHmacOutputLength(xmlNodePtr transformNode, xmlSecSize bitsLen) {
     xmlNodePtr cur;
-    char buf[32];
+    char buf[64];
 
     xmlSecAssert2(transformNode != NULL, -1);
     xmlSecAssert2(bitsLen > 0, -1);
 
     cur = xmlSecFindChild(transformNode, xmlSecNodeHMACOutputLength, xmlSecDSigNs);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeHMACOutputLength),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(transformNode, xmlSecNodeHMACOutputLength, NULL);
         return(-1);
     }
 
     cur = xmlSecAddChild(transformNode, xmlSecNodeHMACOutputLength, xmlSecDSigNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeHMACOutputLength));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeHMACOutputLength)", NULL);
         return(-1);
     }
 
-    sprintf(buf, "%u", bitsLen);
+    sprintf(buf, "%lu", (unsigned long)bitsLen);
     xmlNodeSetContent(cur, BAD_CAST buf);
     return(0);
 }
@@ -1799,32 +1480,19 @@ xmlSecTmplTransformAddRsaOaepParam(xmlNodePtr transformNode,
 
     oaepParamNode = xmlSecFindChild(transformNode, xmlSecNodeRsaOAEPparams, xmlSecEncNs);
     if(oaepParamNode != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeRsaOAEPparams),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(transformNode, xmlSecNodeRsaOAEPparams, NULL);
         return(-1);
     }
 
     oaepParamNode = xmlSecAddChild(transformNode, xmlSecNodeRsaOAEPparams, xmlSecEncNs);
     if(oaepParamNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeRsaOAEPparams));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeRsaOAEPparams)", NULL);
         return(-1);
     }
 
     base64 = xmlSecBase64Encode(buf, size, 0);
     if(base64 == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", size);
+        xmlSecInternalError2("xmlSecBase64Encode", NULL, "size=%d", size);
         return(-1);
     }
 
@@ -1852,21 +1520,13 @@ xmlSecTmplTransformAddXsltStylesheet(xmlNodePtr transformNode, const xmlChar *xs
 
     xsltDoc = xmlParseMemory((const char*)xslt, xmlStrlen(xslt));
     if(xsltDoc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlParseMemory",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlParseMemory", NULL);
         return(-1);
     }
 
     ret = xmlSecReplaceContent(transformNode, xmlDocGetRootElement(xsltDoc));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecReplaceContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecReplaceContent", NULL);
         xmlFreeDoc(xsltDoc);
         return(-1);
     }
@@ -1896,22 +1556,14 @@ xmlSecTmplTransformAddC14NInclNamespaces(xmlNodePtr transformNode,
 
     cur = xmlSecFindChild(transformNode, xmlSecNodeInclusiveNamespaces, xmlSecNsExcC14N);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeInclusiveNamespaces),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(transformNode, xmlSecNodeInclusiveNamespaces, NULL);
         return(-1);
     }
 
     cur = xmlSecAddChild(transformNode, xmlSecNodeInclusiveNamespaces, xmlSecNsExcC14N);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(transformNode)),
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeInclusiveNamespaces));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeInclusiveNamespaces)",
+                            xmlSecNodeGetName(transformNode));
         return(-1);
     }
 
@@ -1926,7 +1578,7 @@ xmlSecTmplTransformAddC14NInclNamespaces(xmlNodePtr transformNode,
  * @nsList:             the NULL terminated list of namespace prefix/href pairs
  *                      (optional).
  *
- * Writes XPath transform infromation to the <dsig:Transform/> node
+ * Writes XPath transform information to the <dsig:Transform/> node
  * @node.
  *
  * Returns: 0 for success or a negative value otherwise.
@@ -1935,32 +1587,29 @@ int
 xmlSecTmplTransformAddXPath(xmlNodePtr transformNode, const xmlChar *expression,
                          const xmlChar **nsList) {
     xmlNodePtr xpathNode;
+    int ret;
 
     xmlSecAssert2(transformNode != NULL, -1);
     xmlSecAssert2(expression != NULL, -1);
 
     xpathNode = xmlSecFindChild(transformNode, xmlSecNodeXPath, xmlSecDSigNs);
     if(xpathNode != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeXPath),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(transformNode, xmlSecNodeXPath, NULL);
         return(-1);
     }
 
     xpathNode = xmlSecAddChild(transformNode, xmlSecNodeXPath, xmlSecDSigNs);
     if(xpathNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeXPath));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeXPath)", NULL);
+        return(-1);
+    }
+
+    ret = xmlSecNodeEncodeAndSetContent(xpathNode, expression);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
         return(-1);
     }
 
-    xmlSecNodeEncodeAndSetContent(xpathNode, expression);
     return((nsList != NULL) ? xmlSecTmplNodeWriteNsList(xpathNode, nsList) : 0);
 }
 
@@ -1972,7 +1621,7 @@ xmlSecTmplTransformAddXPath(xmlNodePtr transformNode, const xmlChar *expression,
  * @nsList:             the NULL terminated list of namespace prefix/href pairs.
  *                      (optional).
  *
- * Writes XPath2 transform infromation to the <dsig:Transform/> node
+ * Writes XPath2 transform information to the <dsig:Transform/> node
  * @node.
  *
  * Returns: 0 for success or a negative value otherwise.
@@ -1981,6 +1630,7 @@ int
 xmlSecTmplTransformAddXPath2(xmlNodePtr transformNode, const xmlChar* type,
                         const xmlChar *expression, const xmlChar **nsList) {
     xmlNodePtr xpathNode;
+    int ret;
 
     xmlSecAssert2(transformNode != NULL, -1);
     xmlSecAssert2(type != NULL, -1);
@@ -1988,17 +1638,17 @@ xmlSecTmplTransformAddXPath2(xmlNodePtr transformNode, const xmlChar* type,
 
     xpathNode = xmlSecAddChild(transformNode, xmlSecNodeXPath, xmlSecXPath2Ns);
     if(xpathNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeXPath));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeXPath)", NULL);
         return(-1);
     }
     xmlSetProp(xpathNode, xmlSecAttrFilter, type);
 
-    xmlSecNodeEncodeAndSetContent(xpathNode, expression);
+    ret = xmlSecNodeEncodeAndSetContent(xpathNode, expression);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        return(-1);
+    }
+
     return((nsList != NULL) ? xmlSecTmplNodeWriteNsList(xpathNode, nsList) : 0);
 }
 
@@ -2009,7 +1659,7 @@ xmlSecTmplTransformAddXPath2(xmlNodePtr transformNode, const xmlChar* type,
  * @nsList:             the NULL terminated list of namespace prefix/href pairs.
  *                      (optional).
  *
- * Writes XPoniter transform infromation to the <dsig:Transform/> node
+ * Writes XPointer transform information to the <dsig:Transform/> node
  * @node.
  *
  * Returns: 0 for success or a negative value otherwise.
@@ -2018,33 +1668,29 @@ int
 xmlSecTmplTransformAddXPointer(xmlNodePtr transformNode, const xmlChar *expression,
                          const xmlChar **nsList) {
     xmlNodePtr xpointerNode;
+    int ret;
 
     xmlSecAssert2(expression != NULL, -1);
     xmlSecAssert2(transformNode != NULL, -1);
 
     xpointerNode = xmlSecFindChild(transformNode, xmlSecNodeXPointer, xmlSecXPointerNs);
     if(xpointerNode != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeXPointer),
-                    XMLSEC_ERRORS_R_NODE_ALREADY_PRESENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNodeAlreadyPresentError(transformNode, xmlSecNodeXPointer, NULL);
         return(-1);
     }
 
     xpointerNode = xmlSecAddChild(transformNode, xmlSecNodeXPointer, xmlSecXPointerNs);
     if(xpointerNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeXPointer));
+        xmlSecInternalError("xmlSecAddChild(xmlSecNodeXPointer)", NULL);
         return(-1);
     }
 
+    ret = xmlSecNodeEncodeAndSetContent(xpointerNode, expression);
+    if(ret < 0) {
+        xmlSecInternalError("xmlSecNodeEncodeAndSetContent", NULL);
+        return(-1);
+    }
 
-    xmlSecNodeEncodeAndSetContent(xpointerNode, expression);
     return((nsList != NULL) ? xmlSecTmplNodeWriteNsList(xpointerNode, nsList) : 0);
 }
 
@@ -2058,34 +1704,32 @@ xmlSecTmplNodeWriteNsList(xmlNodePtr parentNode, const xmlChar** nsList) {
     xmlSecAssert2(parentNode != NULL, -1);
     xmlSecAssert2(nsList != NULL, -1);
 
+    /* nsList contains pairs of prefix/href with NULL at the end. We use special
+    "#default" prefix instead of NULL prefix */
     ptr = nsList;
     while((*ptr) != NULL) {
+        /* get next prefix/href pair */
         if(xmlStrEqual(BAD_CAST "#default", (*ptr))) {
             prefix = NULL;
         } else {
             prefix = (*ptr);
         }
-        if((++ptr) == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "unexpected end of ns list");
+        href = *(++ptr);
+        if(href == NULL) {
+            xmlSecInvalidDataError("unexpected end of ns list", NULL);
             return(-1);
         }
-        href = *(ptr++);
 
+        /* create namespace node */
         ns = xmlNewNs(parentNode, href, prefix);
         if(ns == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNewNs",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "href=%s;prefix=%s",
-                        xmlSecErrorsSafeString(href),
-                        xmlSecErrorsSafeString(prefix));
+            xmlSecXmlError2("xmlNewNs", NULL,
+                            "prefix=%s", xmlSecErrorsSafeString(prefix));
             return(-1);
         }
+
+        /* next pair */
+        ++ptr;
     }
     return(0);
 }
diff --git a/src/transforms.c b/src/transforms.c
index b1f16f7..aea1b1b 100644
--- a/src/transforms.c
+++ b/src/transforms.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * The Transforms Element (http://www.w3.org/TR/xmldsig-core/#sec-Transforms)
@@ -97,21 +97,13 @@ xmlSecTransformIdsInit(void) {
 
     ret = xmlSecPtrListInitialize(xmlSecTransformIdsGet(), xmlSecTransformIdListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListPtrInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "xmlSecTransformIdListId");
+        xmlSecInternalError("xmlSecPtrListPtrInitialize(xmlSecTransformIdListId)", NULL);
         return(-1);
     }
 
     ret = xmlSecTransformIdsRegisterDefault();
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegisterDefault",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsRegisterDefault", NULL);
         return(-1);
     }
 
@@ -153,12 +145,8 @@ xmlSecTransformIdsRegister(xmlSecTransformId id) {
 
     ret = xmlSecPtrListAdd(xmlSecTransformIdsGet(), (xmlSecPtr)id);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)));
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecTransformKlassGetName(id));
         return(-1);
     }
 
@@ -176,129 +164,64 @@ xmlSecTransformIdsRegister(xmlSecTransformId id) {
 int
 xmlSecTransformIdsRegisterDefault(void) {
     if(xmlSecTransformIdsRegister(xmlSecTransformBase64Id) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformBase64Id)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformBase64Id)", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsRegister(xmlSecTransformEnvelopedId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformEnvelopedId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformEnvelopedId)", NULL);
         return(-1);
     }
 
     /* c14n methods */
     if(xmlSecTransformIdsRegister(xmlSecTransformInclC14NId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInclC14NId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14NId)", NULL);
         return(-1);
     }
     if(xmlSecTransformIdsRegister(xmlSecTransformInclC14NWithCommentsId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInclC14NWithCommentsId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14NWithCommentsId)", NULL);
         return(-1);
     }
     if(xmlSecTransformIdsRegister(xmlSecTransformInclC14N11Id) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInclC14N11Id)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14N11Id)", NULL);
         return(-1);
     }
     if(xmlSecTransformIdsRegister(xmlSecTransformInclC14N11WithCommentsId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInclC14N11WithCommentsId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformInclC14N11WithCommentsId)", NULL);
         return(-1);
     }
     if(xmlSecTransformIdsRegister(xmlSecTransformExclC14NId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformExclC14NId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformExclC14NId)", NULL);
         return(-1);
     }
     if(xmlSecTransformIdsRegister(xmlSecTransformExclC14NWithCommentsId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformExclC14NWithCommentsId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformExclC14NWithCommentsId)", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsRegister(xmlSecTransformXPathId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXPathId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPathId)", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsRegister(xmlSecTransformXPath2Id) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXPath2Id)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPath2Id)", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsRegister(xmlSecTransformXPointerId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXPointerId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXPointerId)", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsRegister(xmlSecTransformRelationshipId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformRelationshipId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformRelationshipId)", NULL);
         return(-1);
     }
 
 #ifndef XMLSEC_NO_XSLT
     if(xmlSecTransformIdsRegister(xmlSecTransformXsltId) < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsRegister",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXsltId)));
+        xmlSecInternalError("xmlSecTransformIdsRegister(xmlSecTransformXsltId)", NULL);
         return(-1);
     }
 #endif /* XMLSEC_NO_XSLT */
@@ -361,21 +284,13 @@ xmlSecTransformCtxCreate(void) {
     /* Allocate a new xmlSecTransform and fill the fields. */
     ctx = (xmlSecTransformCtxPtr)xmlMalloc(sizeof(xmlSecTransformCtx));
     if(ctx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)sizeof(xmlSecTransformCtx));
+        xmlSecMallocError(sizeof(xmlSecTransformCtx), NULL);
         return(NULL);
     }
 
     ret = xmlSecTransformCtxInitialize(ctx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxInitialize", NULL);
         xmlSecTransformCtxDestroy(ctx);
         return(NULL);
     }
@@ -417,11 +332,7 @@ xmlSecTransformCtxInitialize(xmlSecTransformCtxPtr ctx) {
 
     ret = xmlSecPtrListInitialize(&(ctx->enabledTransforms), xmlSecTransformIdListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize(xmlSecTransformIdListId)", NULL);
         return(-1);
     }
 
@@ -501,11 +412,7 @@ xmlSecTransformCtxCopyUserPref(xmlSecTransformCtxPtr dst, xmlSecTransformCtxPtr
 
     ret = xmlSecPtrListCopy(&(dst->enabledTransforms), &(src->enabledTransforms));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListCopy",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListCopy(enabledTransforms)", NULL);
         return(-1);
     }
 
@@ -533,12 +440,8 @@ xmlSecTransformCtxAppend(xmlSecTransformCtxPtr ctx, xmlSecTransformPtr transform
     if(ctx->last != NULL) {
         ret = xmlSecTransformConnect(ctx->last, transform, ctx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformConnect",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+            xmlSecInternalError("xmlSecTransformConnect",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     } else {
@@ -571,12 +474,8 @@ xmlSecTransformCtxPrepend(xmlSecTransformCtxPtr ctx, xmlSecTransformPtr transfor
     if(ctx->first != NULL) {
         ret = xmlSecTransformConnect(transform, ctx->first, ctx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformConnect",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+            xmlSecInternalError("xmlSecTransformConnect",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     } else {
@@ -609,23 +508,15 @@ xmlSecTransformCtxCreateAndAppend(xmlSecTransformCtxPtr ctx, xmlSecTransformId i
 
     transform = xmlSecTransformCreate(id);
     if(!xmlSecTransformIsValid(transform)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)));
+        xmlSecInternalError("xmlSecTransformCreate",
+                            xmlSecTransformKlassGetName(id));
         return(NULL);
     }
 
     ret = xmlSecTransformCtxAppend(ctx, transform);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxAppend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+        xmlSecInternalError("xmlSecTransformCtxAppend",
+                            xmlSecTransformKlassGetName(id));
         xmlSecTransformDestroy(transform);
         return(NULL);
     }
@@ -654,23 +545,15 @@ xmlSecTransformCtxCreateAndPrepend(xmlSecTransformCtxPtr ctx, xmlSecTransformId
 
     transform = xmlSecTransformCreate(id);
     if(!xmlSecTransformIsValid(transform)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)));
+        xmlSecInternalError("xmlSecTransformCreate",
+                            xmlSecTransformKlassGetName(id));
         return(NULL);
     }
 
     ret = xmlSecTransformCtxPrepend(ctx, transform);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPrepend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+        xmlSecInternalError("xmlSecTransformCtxPrepend",
+                            xmlSecTransformGetName(transform));
         xmlSecTransformDestroy(transform);
         return(NULL);
     }
@@ -701,23 +584,15 @@ xmlSecTransformCtxNodeRead(xmlSecTransformCtxPtr ctx, xmlNodePtr node,
 
     transform = xmlSecTransformNodeRead(node, usage, ctx);
     if(transform == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+        xmlSecInternalError("xmlSecTransformNodeRead",
+                            xmlSecNodeGetName(node));
         return(NULL);
     }
 
     ret = xmlSecTransformCtxAppend(ctx, transform);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxAppend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "name=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+        xmlSecInternalError("xmlSecTransformCtxAppend",
+                            xmlSecTransformGetName(transform));
         xmlSecTransformDestroy(transform);
         return(NULL);
     }
@@ -750,23 +625,15 @@ xmlSecTransformCtxNodesListRead(xmlSecTransformCtxPtr ctx, xmlNodePtr node, xmlS
     while((cur != NULL) && xmlSecCheckNodeName(cur, xmlSecNodeTransform, xmlSecDSigNs)) {
         transform = xmlSecTransformNodeRead(cur, usage, ctx);
         if(transform == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecTransformNodeRead",
+                                xmlSecNodeGetName(cur));
             return(-1);
         }
 
         ret = xmlSecTransformCtxAppend(ctx, transform);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecTransformCtxAppend",
+                                xmlSecTransformGetName(transform));
             xmlSecTransformDestroy(transform);
             return(-1);
         }
@@ -774,11 +641,7 @@ xmlSecTransformCtxNodesListRead(xmlSecTransformCtxPtr ctx, xmlNodePtr node, xmlS
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, NULL);
         return(-1);
     }
     return(0);
@@ -838,12 +701,8 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
 
     /* check uri */
     if(xmlSecTransformUriTypeCheck(ctx->enabledUris, uri) != 1) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_URI_TYPE,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecOtherError2(XMLSEC_ERRORS_R_INVALID_URI_TYPE, NULL,
+                          "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
@@ -857,11 +716,7 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
     if(xptr == NULL){
         ctx->uri = xmlStrdup(uri);
         if(ctx->uri == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_STRDUP_FAILED,
-                        "size=%d", xmlStrlen(uri));
+            xmlSecStrdupError(uri, NULL);
             return(-1);
         }
         /* we are done */
@@ -869,11 +724,7 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
     } else if(xmlStrcmp(uri, BAD_CAST "#xpointer(/)") == 0) {
         ctx->xptrExpr = xmlStrdup(uri);
         if(ctx->xptrExpr == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_STRDUP_FAILED,
-                        "size=%d", xmlStrlen(uri));
+            xmlSecStrdupError(uri, NULL);
             return(-1);
         }
         /* we are done */
@@ -882,21 +733,13 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
 
     ctx->uri = xmlStrndup(uri, xptr - uri);
     if(ctx->uri == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_STRDUP_FAILED,
-                    "size=%d", (int)(xptr - uri));
+        xmlSecStrdupError(uri, NULL);
         return(-1);
     }
 
     ctx->xptrExpr = xmlStrdup(xptr);
     if(ctx->xptrExpr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_STRDUP_FAILED,
-                    "size=%d", xmlStrlen(xptr));
+        xmlSecStrdupError(xptr, NULL);
         return(-1);
     }
 
@@ -918,14 +761,15 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
         size = xmlStrlen(BAD_CAST tmpl) + xmlStrlen(xptr) + 2;
         buf = (xmlChar*)xmlMalloc(size * sizeof(xmlChar));
         if(buf == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "size=%d", size);
+            xmlSecMallocError(size * sizeof(xmlChar), NULL);
             return(-1);
         }
-        sprintf((char*)buf, tmpl, xptr + 1);
+        ret = xmlStrPrintf(buf, size, tmpl, xptr + 1);
+        if(ret < 0) {
+            xmlSecXmlError("xmlStrPrintf", NULL);
+             xmlFree(buf);
+             return(-1);
+        }
         xptr = buf;
         nodeSetType = xmlSecNodeSetTreeWithoutComments;
     }
@@ -936,12 +780,7 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
         /* we need to create XPonter transform to execute expr */
         transform = xmlSecTransformCtxCreateAndPrepend(ctx, xmlSecTransformXPointerId);
         if(!xmlSecTransformIsValid(transform)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndPrepend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXPointerId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend(xmlSecTransformXPointerId)", NULL);
             if(buf != NULL) {
                 xmlFree(buf);
             }
@@ -950,12 +789,8 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
 
         ret = xmlSecTransformXPointerSetExpr(transform, xptr, nodeSetType, hereNode);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformXPointerSetExpr",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+            xmlSecInternalError("xmlSecTransformXPointerSetExpr",
+                                xmlSecTransformGetName(transform));
             if(buf != NULL) {
                 xmlFree(buf);
             }
@@ -972,12 +807,7 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
 
         transform = xmlSecTransformCtxCreateAndPrepend(ctx, xmlSecTransformVisa3DHackId);
         if(!xmlSecTransformIsValid(transform)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndPrepend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformVisa3DHackId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend(xmlSecTransformVisa3DHackId)", NULL);
             if(buf != NULL) {
                 xmlFree(buf);
             }
@@ -986,12 +816,8 @@ xmlSecTransformCtxSetUri(xmlSecTransformCtxPtr ctx, const xmlChar* uri, xmlNodeP
 
         ret = xmlSecTransformVisa3DHackSetID(transform, xptr);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformVisa3DHackSetID",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "name=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+            xmlSecInternalError("xmlSecTransformVisa3DHackSetID",
+                                xmlSecTransformGetName(transform));
             if(buf != NULL) {
                 xmlFree(buf);
             }
@@ -1027,22 +853,13 @@ xmlSecTransformCtxPrepare(xmlSecTransformCtxPtr ctx, xmlSecTransformDataType inp
     /* add binary buffer to store result */
     transform = xmlSecTransformCtxCreateAndAppend(ctx, xmlSecTransformMemBufId);
     if(!xmlSecTransformIsValid(transform)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformMemBufId)));
+        xmlSecInternalError("xmlSecTransformCreateAndAppend(xmlSecTransformMemBufId)", NULL);
         return(-1);
     }
     ctx->result = xmlSecTransformMemBufGetBuffer(transform);
     if(ctx->result == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformMemBufGetBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformMemBufId)));
+        xmlSecInternalError("xmlSecTransformMemBufGetBuffer(xmlSecTransformMemBufId)",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -1053,12 +870,7 @@ xmlSecTransformCtxPrepare(xmlSecTransformCtxPtr ctx, xmlSecTransformDataType inp
         /* need to add parser transform */
         transform = xmlSecTransformCtxCreateAndPrepend(ctx, xmlSecTransformXmlParserId);
         if(transform == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndPrepend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformXmlParserId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend(xmlSecTransformXmlParserId)", NULL);
             return(-1);
         }
     } else if(((firstType & xmlSecTransformDataTypeXml) == 0) &&
@@ -1067,12 +879,7 @@ xmlSecTransformCtxPrepare(xmlSecTransformCtxPtr ctx, xmlSecTransformDataType inp
         /* need to add c14n transform */
         transform = xmlSecTransformCtxCreateAndPrepend(ctx, xmlSecTransformInclC14NId);
         if(transform == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndPrepend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInclC14NId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend(xmlSecTransformInclC14NId)", NULL);
             return(-1);
         }
     }
@@ -1082,11 +889,7 @@ xmlSecTransformCtxPrepare(xmlSecTransformCtxPtr ctx, xmlSecTransformDataType inp
     if(ctx->preExecCallback != NULL) {
         ret = (ctx->preExecCallback)(ctx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "ctx->preExecCallback",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("ctx->preExecCallback", NULL);
             return(-1);
         }
     }
@@ -1121,21 +924,14 @@ xmlSecTransformCtxBinaryExecute(xmlSecTransformCtxPtr ctx,
 
     ret = xmlSecTransformCtxPrepare(ctx, xmlSecTransformDataTypeBin);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPrepare",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=bin");
+        xmlSecInternalError("xmlSecTransformCtxPrepare(TypeBin)", NULL);
         return(-1);
     }
 
     ret = xmlSecTransformPushBin(ctx->first, data, dataSize, 1, ctx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPushBin",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataSize=%d", dataSize);
+        xmlSecInternalError2("xmlSecTransformCtxPushBin", NULL,
+                             "dataSize=%d", dataSize);
         return(-1);
     }
 
@@ -1166,34 +962,21 @@ xmlSecTransformCtxUriExecute(xmlSecTransformCtxPtr ctx, const xmlChar* uri) {
 
     uriTransform = xmlSecTransformCtxCreateAndPrepend(ctx, xmlSecTransformInputURIId);
     if(uriTransform == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxCreateAndPrepend",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformInputURIId)));
+        xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend(xmlSecTransformInputURIId)", NULL);
         return(-1);
     }
 
     ret = xmlSecTransformInputURIOpen(uriTransform, uri);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformInputURIOpen",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecTransformInputURIOpen", NULL,
+                            "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
     /* we do not need to do something special for this transform */
     ret = xmlSecTransformCtxPrepare(ctx, xmlSecTransformDataTypeUnknown);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPrepare",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=bin");
+        xmlSecInternalError("xmlSecTransformCtxPrepare(TypeUnknown)", NULL);
         return(-1);
     }
 
@@ -1202,25 +985,18 @@ xmlSecTransformCtxUriExecute(xmlSecTransformCtxPtr ctx, const xmlChar* uri) {
      */
     ret = xmlSecTransformPump(uriTransform, uriTransform->next, ctx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformPump",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecInternalError("xmlSecTransformPump",
+                            xmlSecTransformGetName(uriTransform));
         return(-1);
     }
 
     /* Close to free up file handle */
     ret = xmlSecTransformInputURIClose(uriTransform);
     if(ret < 0) {
-		xmlSecError(XMLSEC_ERRORS_HERE,
-					NULL,
-					"xmlSecTransformInputURIClose",
-					XMLSEC_ERRORS_R_XMLSEC_FAILED,
-					"ret=%d", ret);
-		return(-1);
-	}
+        xmlSecInternalError("xmlSecTransformInputURIClose",
+                            xmlSecTransformGetName(uriTransform));
+        return(-1);
+    }
 
     /* Done */
     ctx->status = xmlSecTransformStatusFinished;
@@ -1249,11 +1025,7 @@ xmlSecTransformCtxXmlExecute(xmlSecTransformCtxPtr ctx, xmlSecNodeSetPtr nodes)
 
     ret = xmlSecTransformCtxPrepare(ctx, xmlSecTransformDataTypeXml);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPrepare",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=xml");
+        xmlSecInternalError("xmlSecTransformCtxPrepare(TypeXml)", NULL);
         return(-1);
     }
 
@@ -1261,12 +1033,8 @@ xmlSecTransformCtxXmlExecute(xmlSecTransformCtxPtr ctx, xmlSecNodeSetPtr nodes)
      * just don't care and c14n likes push more than pop */
     ret = xmlSecTransformPushXml(ctx->first, nodes, ctx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformPushXml",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(ctx->first)));
+        xmlSecInternalError("xmlSecTransformPushXml",
+                            xmlSecTransformGetName(ctx->first));
         return(-1);
     }
 
@@ -1299,11 +1067,7 @@ xmlSecTransformCtxExecute(xmlSecTransformCtxPtr ctx, xmlDocPtr doc) {
             /* our xpointer transform takes care of providing correct nodes set */
             nodes = xmlSecNodeSetCreate(doc, NULL, xmlSecNodeSetNormal);
             if(nodes == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecNodeSetCreate",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNodeSetCreate", NULL);
                 return(-1);
             }
 
@@ -1311,21 +1075,13 @@ xmlSecTransformCtxExecute(xmlSecTransformCtxPtr ctx, xmlDocPtr doc) {
             /* we do not want to have comments for empty URI */
             nodes = xmlSecNodeSetGetChildren(doc, NULL, 0, 0);
             if(nodes == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecNodeSetGetChildren",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecNodeSetGetChildren", NULL);
                 return(-1);
             }
         }
         ret = xmlSecTransformCtxXmlExecute(ctx, nodes);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxXmlExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxXmlExecute", NULL);
             xmlSecNodeSetDestroy(nodes);
             return(-1);
         }
@@ -1334,11 +1090,7 @@ xmlSecTransformCtxExecute(xmlSecTransformCtxPtr ctx, xmlDocPtr doc) {
     } else {
         ret = xmlSecTransformCtxUriExecute(ctx, ctx->uri);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxUriExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxUriExecute", NULL);
             return(-1);
         }
     }
@@ -1448,11 +1200,7 @@ xmlSecTransformCreate(xmlSecTransformId id) {
     /* Allocate a new xmlSecTransform and fill the fields. */
     transform = (xmlSecTransformPtr)xmlMalloc(id->objSize);
     if(transform == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", id->objSize);
+        xmlSecMallocError(id->objSize, NULL);
         return(NULL);
     }
     memset(transform, 0, id->objSize);
@@ -1461,11 +1209,8 @@ xmlSecTransformCreate(xmlSecTransformId id) {
     if(id->initialize != NULL) {
         ret = (id->initialize)(transform);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "id->initialize",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("id->initialize",
+                                xmlSecTransformGetName(transform));
             xmlSecTransformDestroy(transform);
             return(NULL);
         }
@@ -1473,22 +1218,16 @@ xmlSecTransformCreate(xmlSecTransformId id) {
 
     ret = xmlSecBufferInitialize(&(transform->inBuf), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", 0);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         xmlSecTransformDestroy(transform);
         return(NULL);
     }
 
     ret = xmlSecBufferInitialize(&(transform->outBuf), 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "size=%d", 0);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         xmlSecTransformDestroy(transform);
         return(NULL);
     }
@@ -1557,23 +1296,15 @@ xmlSecTransformNodeRead(xmlNodePtr node, xmlSecTransformUsage usage, xmlSecTrans
 
     href = xmlGetProp(node, xmlSecAttrAlgorithm);
     if(href == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecAttrAlgorithm),
-                    XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+        xmlSecInvalidNodeAttributeError(node, xmlSecAttrAlgorithm,
+                                        NULL, "empty");
         return(NULL);
     }
 
     id = xmlSecTransformIdListFindByHref(xmlSecTransformIdsGet(), href, usage);
     if(id == xmlSecTransformIdUnknown) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdListFindByHref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "href=%s",
-                    xmlSecErrorsSafeString(href));
+        xmlSecInternalError2("xmlSecTransformIdListFindByHref", NULL,
+                             "href=%s", xmlSecErrorsSafeString(href));
         xmlFree(href);
         return(NULL);
     }
@@ -1581,24 +1312,17 @@ xmlSecTransformNodeRead(xmlNodePtr node, xmlSecTransformUsage usage, xmlSecTrans
     /* check with enabled transforms list */
     if((xmlSecPtrListGetSize(&(transformCtx->enabledTransforms)) > 0) &&
        (xmlSecTransformIdListFind(&(transformCtx->enabledTransforms), id) != 1)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)),
-                    XMLSEC_ERRORS_R_TRANSFORM_DISABLED,
-                    "href=%s",
-                    xmlSecErrorsSafeString(href));
+        xmlSecOtherError2(XMLSEC_ERRORS_R_TRANSFORM_DISABLED,
+                          xmlSecTransformKlassGetName(id),
+                          "href=%s", xmlSecErrorsSafeString(href));
         xmlFree(href);
         return(NULL);
     }
 
     transform = xmlSecTransformCreate(id);
     if(!xmlSecTransformIsValid(transform)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(id)));
+        xmlSecInternalError("xmlSecTransformCreate(id)",
+                            xmlSecTransformKlassGetName(id));
         xmlFree(href);
         return(NULL);
     }
@@ -1606,12 +1330,8 @@ xmlSecTransformNodeRead(xmlNodePtr node, xmlSecTransformUsage usage, xmlSecTrans
     if(transform->id->readNode != NULL) {
         ret = transform->id->readNode(transform, node, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "id->readNode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)));
+            xmlSecInternalError("readNode",
+                                xmlSecTransformGetName(transform));
             xmlSecTransformDestroy(transform);
             xmlFree(href);
             return(NULL);
@@ -1655,21 +1375,15 @@ xmlSecTransformPump(xmlSecTransformPtr left, xmlSecTransformPtr right, xmlSecTra
 
        ret = xmlSecTransformPopXml(left, &nodes, transformCtx);
        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(left)),
-                        "xmlSecTransformPopXml",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPopXml",
+                                xmlSecTransformGetName(left));
             return(-1);
        }
 
        ret = xmlSecTransformPushXml(right, nodes, transformCtx);
        if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(right)),
-                        "xmlSecTransformPushXml",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPushXml",
+                                xmlSecTransformGetName(right));
             return(-1);
        }
     }  else if(((leftType & xmlSecTransformDataTypeBin) != 0) &&
@@ -1681,30 +1395,22 @@ xmlSecTransformPump(xmlSecTransformPtr left, xmlSecTransformPtr right, xmlSecTra
         do {
             ret = xmlSecTransformPopBin(left, buf, sizeof(buf), &bufSize, transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(left)),
-                            "xmlSecTransformPopBin",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformPopBin",
+                                    xmlSecTransformGetName(left));
                 return(-1);
             }
             final = (bufSize == 0) ? 1 : 0;
             ret = xmlSecTransformPushBin(right, buf, bufSize, final, transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(right)),
-                            "xmlSecTransformPushBin",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformPushBin",
+                                    xmlSecTransformGetName(right));
                 return(-1);
             }
         } while(final == 0);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(left)),
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(right)),
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    "transforms input/output data formats do not match");
+        xmlSecInvalidTransfromError2(left,
+                    "transforms input/output data formats do not match, right transform=\"%s\"",
+                    xmlSecErrorsSafeString(xmlSecTransformGetName(right)));
     }
     return(0);
 }
@@ -1801,21 +1507,15 @@ xmlSecTransformVerifyNodeContent(xmlSecTransformPtr transform, xmlNodePtr node,
 
     ret = xmlSecBufferInitialize(&buffer, 0);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecBufferBase64NodeContentRead(&buffer, node);
     if((ret < 0) || (xmlSecBufferGetData(&buffer) == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecBufferBase64NodeContentRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferBase64NodeContentRead",
+                            xmlSecTransformGetName(transform));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -1823,11 +1523,8 @@ xmlSecTransformVerifyNodeContent(xmlSecTransformPtr transform, xmlNodePtr node,
     ret = xmlSecTransformVerify(transform, xmlSecBufferGetData(&buffer),
                                 xmlSecBufferGetSize(&buffer), transformCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformVerify",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformVerify",
+                            xmlSecTransformGetName(transform));
         xmlSecBufferFinalize(&buffer);
         return(-1);
     }
@@ -2073,24 +1770,17 @@ xmlSecTransformConnect(xmlSecTransformPtr left, xmlSecTransformPtr right,
             middleId = xmlSecTransformInclC14NId;
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(left)),
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(right)),
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    "leftType=%d;rightType=%d",
-                    leftType, rightType);
+        xmlSecInvalidTransfromError2(left,
+                    "transforms types do not match, right transform=\"%s\"",
+                    xmlSecErrorsSafeString(xmlSecTransformGetName(right)));
         return(-1);
     }
 
     /* insert transform */
     middle = xmlSecTransformCreate(middleId);
     if(middle == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(left)),
-                    "xmlSecTransformCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformKlassGetName(middleId)));
+        xmlSecInternalError("xmlSecTransformCreate",
+                            xmlSecTransformKlassGetName(middleId));
         return(-1);
     }
     left->next = middle;
@@ -2164,11 +1854,9 @@ xmlSecTransformDefaultGetDataType(xmlSecTransformPtr transform, xmlSecTransformM
             }
             break;
         default:
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_DATA,
-                        "mode=%d", mode);
+            xmlSecInvalidIntegerDataError("mode", mode,
+                    "xmlSecTransformModePush,xmlSecTransformModePop",
+                    xmlSecTransformGetName(transform));
             return(xmlSecTransformDataTypeUnknown);
     }
 
@@ -2214,11 +1902,9 @@ xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const xmlSecByte* da
 
             ret = xmlSecBufferAppend(&(transform->inBuf), data, chunkSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferAppend",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", chunkSize);
+                xmlSecInternalError2("xmlSecBufferAppend",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", chunkSize);
                 return(-1);
             }
 
@@ -2227,16 +1913,12 @@ xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const xmlSecByte* da
         }
 
         /* process data */
-        inSize = xmlSecBufferGetSize(&(transform->inBuf));
-        outSize = xmlSecBufferGetSize(&(transform->outBuf));
         finalData = (((dataSize == 0) && (final != 0)) ? 1 : 0);
         ret = xmlSecTransformExecute(transform, finalData, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "final=%d", final);
+            xmlSecInternalError2("xmlSecTransformExecute",
+                                 xmlSecTransformGetName(transform),
+                                 "final=%d", final);
             return(-1);
         }
 
@@ -2259,11 +1941,9 @@ xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const xmlSecByte* da
                             finalData,
                             transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform->next)),
-                            "xmlSecTransformPushBin",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "final=%d;outSize=%d", final, outSize);
+                xmlSecInternalError3("xmlSecTransformPushBin",
+                                     xmlSecTransformGetName(transform->next),
+                                     "final=%d;outSize=%d", final, outSize);
                 return(-1);
             }
         }
@@ -2272,11 +1952,9 @@ xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const xmlSecByte* da
         if(outSize > 0) {
             ret = xmlSecBufferRemoveHead(&(transform->outBuf), outSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferAppend",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", outSize);
+                xmlSecInternalError2("xmlSecBufferAppend",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", outSize);
                 return(-1);
             }
         }
@@ -2301,7 +1979,8 @@ xmlSecTransformDefaultPushBin(xmlSecTransformPtr transform, const xmlSecByte* da
  */
 int
 xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
-                            xmlSecSize maxDataSize, xmlSecSize* dataSize, xmlSecTransformCtxPtr transformCtx) {
+                             xmlSecSize maxDataSize, xmlSecSize* dataSize,
+                             xmlSecTransformCtxPtr transformCtx) {
     xmlSecSize outSize;
     int final = 0;
     int ret;
@@ -2322,11 +2001,9 @@ xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
             /* ensure that we have space for at least one data chunk */
             ret = xmlSecBufferSetMaxSize(&(transform->inBuf), inSize + chunkSize);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferSetMaxSize",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "size=%d", inSize + chunkSize);
+                xmlSecInternalError2("xmlSecBufferSetMaxSize",
+                                     xmlSecTransformGetName(transform),
+                                     "size=%d", inSize + chunkSize);
                 return(-1);
             }
 
@@ -2335,11 +2012,8 @@ xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
                             xmlSecBufferGetData(&(transform->inBuf)) + inSize,
                             chunkSize, &chunkSize, transformCtx);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform->prev)),
-                            "xmlSecTransformPopBin",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformPopBin",
+                                    xmlSecTransformGetName(transform->prev));
                 return(-1);
             }
 
@@ -2347,11 +2021,9 @@ xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
             if(chunkSize > 0) {
                 ret = xmlSecBufferSetSize(&(transform->inBuf), inSize + chunkSize);
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                                "xmlSecBufferSetSize",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "size=%d", inSize + chunkSize);
+                    xmlSecInternalError2("xmlSecBufferSetSize",
+                                         xmlSecTransformGetName(transform),
+                                         "size=%d", inSize + chunkSize);
                     return(-1);
                 }
                 final = 0; /* the previous transform returned some data..*/
@@ -2365,11 +2037,8 @@ xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
         /* execute our transform */
         ret = xmlSecTransformExecute(transform, final, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformExecute",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -2391,11 +2060,9 @@ xmlSecTransformDefaultPopBin(xmlSecTransformPtr transform, xmlSecByte* data,
 
         ret = xmlSecBufferRemoveHead(&(transform->outBuf), outSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", outSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", outSize);
             return(-1);
         }
     }
@@ -2430,11 +2097,8 @@ xmlSecTransformDefaultPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr nod
     transform->inNodes = nodes;
     ret = xmlSecTransformExecute(transform, 1, transformCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformExecute",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -2442,11 +2106,8 @@ xmlSecTransformDefaultPushXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr nod
     if(transform->next != NULL) {
         ret = xmlSecTransformPushXml(transform->next, transform->outNodes, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformPushXml",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPushXml",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -2478,11 +2139,8 @@ xmlSecTransformDefaultPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nod
     if(transform->prev != NULL) {
         ret = xmlSecTransformPopXml(transform->prev, &(transform->inNodes), transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecTransformPopXml",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPopXml",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
     }
@@ -2490,11 +2148,8 @@ xmlSecTransformDefaultPopXml(xmlSecTransformPtr transform, xmlSecNodeSetPtr* nod
     /* execute our transform */
     ret = xmlSecTransformExecute(transform, 1, transformCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformExecute",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -2733,21 +2388,16 @@ xmlSecTransformCreateOutputBuffer(xmlSecTransformPtr transform, xmlSecTransformC
     /* check that we have binary push method for this transform */
     type = xmlSecTransformDefaultGetDataType(transform, xmlSecTransformModePush, transformCtx);
     if((type & xmlSecTransformDataTypeBin) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    "push binary data not supported");
+        xmlSecInvalidTransfromError2(transform,
+                            "push binary data not supported, type=\"%d\"",
+                            (int)type);
         return(NULL);
     }
 
     buffer = xmlSecTransformIOBufferCreate(xmlSecTransformIOBufferModeWrite, transform, transformCtx);
     if(buffer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformIOBufferCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIOBufferCreate",
+                            xmlSecTransformGetName(transform));
         return(NULL);
     }
 
@@ -2756,11 +2406,7 @@ xmlSecTransformCreateOutputBuffer(xmlSecTransformPtr transform, xmlSecTransformC
                                      buffer,
                                      NULL);
     if(output == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlOutputBufferCreateIO",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferCreateIO", xmlSecTransformGetName(transform));
         xmlSecTransformIOBufferDestroy(buffer);
         return(NULL);
     }
@@ -2789,21 +2435,16 @@ xmlSecTransformCreateInputBuffer(xmlSecTransformPtr transform, xmlSecTransformCt
     /* check that we have binary pop method for this transform */
     type = xmlSecTransformDefaultGetDataType(transform, xmlSecTransformModePop, transformCtx);
     if((type & xmlSecTransformDataTypeBin) == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TRANSFORM,
-                    "pop binary data not supported");
+        xmlSecInvalidTransfromError2(transform,
+                            "pop binary data not supported, type=\"%d\"",
+                            (int)type);
         return(NULL);
     }
 
     buffer = xmlSecTransformIOBufferCreate(xmlSecTransformIOBufferModeRead, transform, transformCtx);
     if(buffer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecTransformIOBufferCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIOBufferCreate",
+                            xmlSecTransformGetName(transform));
         return(NULL);
     }
 
@@ -2812,11 +2453,7 @@ xmlSecTransformCreateInputBuffer(xmlSecTransformPtr transform, xmlSecTransformCt
                                      buffer,
                                      XML_CHAR_ENCODING_NONE);
     if(input == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlParserInputBufferCreateIO",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlParserInputBufferCreateIO", xmlSecTransformGetName(transform));
         xmlSecTransformIOBufferDestroy(buffer);
         return(NULL);
     }
@@ -2834,11 +2471,7 @@ xmlSecTransformIOBufferCreate(xmlSecTransformIOBufferMode mode, xmlSecTransformP
 
     buffer = (xmlSecTransformIOBufferPtr)xmlMalloc(sizeof(xmlSecTransformIOBuffer));
     if(buffer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d", (int)sizeof(xmlSecTransformIOBuffer));
+        xmlSecMallocError(sizeof(xmlSecTransformIOBuffer), NULL);
         return(NULL);
     }
     memset(buffer, 0, sizeof(xmlSecTransformIOBuffer));
@@ -2871,11 +2504,8 @@ xmlSecTransformIOBufferRead(xmlSecTransformIOBufferPtr buffer,
 
     ret = xmlSecTransformPopBin(buffer->transform, buf, size, &size, buffer->transformCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(buffer->transform)),
-                    "xmlSecTransformPopBin",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformPopBin",
+                            xmlSecTransformGetName(buffer->transform));
         return(-1);
     }
     return(size);
@@ -2894,11 +2524,8 @@ xmlSecTransformIOBufferWrite(xmlSecTransformIOBufferPtr buffer,
 
     ret = xmlSecTransformPushBin(buffer->transform, buf, size, 0, buffer->transformCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(buffer->transform)),
-                    "xmlSecTransformPushBin",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformPushBin",
+                            xmlSecTransformGetName(buffer->transform));
         return(-1);
     }
     return(size);
@@ -2916,11 +2543,8 @@ xmlSecTransformIOBufferClose(xmlSecTransformIOBufferPtr buffer) {
     if(buffer->mode == xmlSecTransformIOBufferModeWrite) {
         ret = xmlSecTransformPushBin(buffer->transform, NULL, 0, 1, buffer->transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(buffer->transform)),
-                        "xmlSecTransformPushBin",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformPushBin",
+                                xmlSecTransformGetName(buffer->transform));
             return(-1);
         }
     }
diff --git a/src/x509.c b/src/x509.c
index c414ec5..d03f45b 100644
--- a/src/x509.c
+++ b/src/x509.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * This is free software; see Copyright file in the source
diff --git a/src/xmldsig.c b/src/xmldsig.c
index faf5545..a3b2c3e 100644
--- a/src/xmldsig.c
+++ b/src/xmldsig.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * "XML Digital Signature" implementation
@@ -72,22 +72,13 @@ xmlSecDSigCtxCreate(xmlSecKeysMngrPtr keysMngr) {
 
     dsigCtx = (xmlSecDSigCtxPtr) xmlMalloc(sizeof(xmlSecDSigCtx));
     if(dsigCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecDSigCtx)=%d",
-                    (int)sizeof(xmlSecDSigCtx));
+        xmlSecMallocError(sizeof(xmlSecDSigCtx), NULL);
         return(NULL);
     }
 
     ret = xmlSecDSigCtxInitialize(dsigCtx, keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxInitialize", NULL);
         xmlSecDSigCtxDestroy(dsigCtx);
         return(NULL);
     }
@@ -130,22 +121,14 @@ xmlSecDSigCtxInitialize(xmlSecDSigCtxPtr dsigCtx, xmlSecKeysMngrPtr keysMngr) {
     /* initialize key info */
     ret = xmlSecKeyInfoCtxInitialize(&(dsigCtx->keyInfoReadCtx), keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize", NULL);
         return(-1);
     }
     dsigCtx->keyInfoReadCtx.mode = xmlSecKeyInfoModeRead;
 
     ret = xmlSecKeyInfoCtxInitialize(&(dsigCtx->keyInfoWriteCtx), keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize", NULL);
         return(-1);
     }
     dsigCtx->keyInfoWriteCtx.mode = xmlSecKeyInfoModeWrite;
@@ -155,11 +138,7 @@ xmlSecDSigCtxInitialize(xmlSecDSigCtxPtr dsigCtx, xmlSecKeysMngrPtr keysMngr) {
     /* initializes transforms dsigCtx */
     ret = xmlSecTransformCtxInitialize(&(dsigCtx->transformCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxInitialize", NULL);
         return(-1);
     }
 
@@ -167,21 +146,13 @@ xmlSecDSigCtxInitialize(xmlSecDSigCtxPtr dsigCtx, xmlSecKeysMngrPtr keysMngr) {
     ret = xmlSecPtrListInitialize(&(dsigCtx->signedInfoReferences),
                                   xmlSecDSigReferenceCtxListId);
     if(ret != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize", NULL);
         return(ret);
     }
     ret = xmlSecPtrListInitialize(&(dsigCtx->manifestReferences),
                                   xmlSecDSigReferenceCtxListId);
     if(ret != 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize", NULL);
         return(ret);
     }
 
@@ -237,22 +208,14 @@ xmlSecDSigCtxEnableReferenceTransform(xmlSecDSigCtxPtr dsigCtx, xmlSecTransformI
     if(dsigCtx->enabledReferenceTransforms == NULL) {
         dsigCtx->enabledReferenceTransforms = xmlSecPtrListCreate(xmlSecTransformIdListId);
         if(dsigCtx->enabledReferenceTransforms == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListCreate", NULL);
             return(-1);
         }
     }
 
     ret = xmlSecPtrListAdd(dsigCtx->enabledReferenceTransforms, (void*)transformId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd", NULL);
         return(-1);
     }
     return(0);
@@ -320,11 +283,7 @@ xmlSecDSigCtxSign(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr tmpl) {
     /* read signature template */
     ret = xmlSecDSigCtxProcessSignatureNode(dsigCtx, tmpl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxSignatureProcessNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxSignatureProcessNode", NULL);
         return(-1);
     }
     xmlSecAssert2(dsigCtx->signMethod != NULL, -1);
@@ -338,11 +297,7 @@ xmlSecDSigCtxSign(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr tmpl) {
     /* check what we've got */
     dsigCtx->result = dsigCtx->transformCtx.result;
     if((dsigCtx->result == NULL) || (xmlSecBufferGetData(dsigCtx->result) == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_RESULT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_INVALID_RESULT, NULL, NULL);
         return(-1);
     }
 
@@ -361,7 +316,7 @@ xmlSecDSigCtxSign(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr tmpl) {
  * @dsigCtx:            the pointer to <dsig:Signature/> processing context.
  * @node:               the pointer with <dsig:Signature/> node.
  *
- * Vaidates signature in the @node. The verification result is returned
+ * Validates signature in the @node. The verification result is returned
  * in #status member of the @dsigCtx object.
  *
  * Returns: 0 on success (check #status member of @dsigCtx to get
@@ -383,11 +338,7 @@ xmlSecDSigCtxVerify(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     /* read signature info */
     ret = xmlSecDSigCtxProcessSignatureNode(dsigCtx, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxSignatureProcessNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxSignatureProcessNode", NULL);
         return(-1);
     }
     xmlSecAssert2(dsigCtx->signMethod != NULL, -1);
@@ -402,11 +353,7 @@ xmlSecDSigCtxVerify(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     ret = xmlSecTransformVerifyNodeContent(dsigCtx->signMethod, dsigCtx->signValueNode,
                                            &(dsigCtx->transformCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformVerifyNodeContent",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformVerifyNodeContent", NULL);
         return(-1);
     }
 
@@ -487,12 +434,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     xmlSecAssert2(node != NULL, -1);
 
     if(!xmlSecCheckNodeName(node, xmlSecNodeSignature, xmlSecDSigNs)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignature));
+        xmlSecInvalidNodeError(node, xmlSecNodeSignature, NULL);
         return(-1);
     }
 
@@ -503,12 +445,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     /* first node is required SignedInfo */
     cur = xmlSecGetNextElementNode(node->children);
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeSignedInfo, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignedInfo));
+        xmlSecInvalidNodeError(cur, xmlSecNodeSignedInfo, NULL);
         return(-1);
     }
     signedInfoNode = cur;
@@ -516,12 +453,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
 
     /* next node is required SignatureValue */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeSignatureValue, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignatureValue));
+        xmlSecInvalidNodeError(cur, xmlSecNodeSignatureValue, NULL);
         return(-1);
     }
     dsigCtx->signValueNode = cur;
@@ -541,11 +473,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         if((dsigCtx->flags & XMLSEC_DSIG_FLAGS_IGNORE_MANIFESTS) == 0) {
             ret = xmlSecDSigCtxProcessObjectNode(dsigCtx, cur);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecDSigCtxProcessObjectNode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecDSigCtxProcessObjectNode", NULL);
                 return(-1);
             }
         }
@@ -554,22 +482,14 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
 
     /* if there is something left than it's an error */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
 
     /* now validated all the references and prepare transform */
     ret = xmlSecDSigCtxProcessSignedInfoNode(dsigCtx, signedInfoNode, &firstReferenceNode);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxProcessSignedInfoNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxProcessSignedInfoNode", NULL);
         return(-1);
     }
 
@@ -580,11 +500,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     /* now read key info node */
     ret = xmlSecDSigCtxProcessKeyInfoNode(dsigCtx, keyInfoNode);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxProcessKeyInfoNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxProcessKeyInfoNode", NULL);
         return(-1);
     }
     /* as the result, we should have a key */
@@ -593,11 +509,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     /* now actually process references and calculate digests */
     ret = xmlSecDSigCtxProcessReferences(dsigCtx, firstReferenceNode);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigCtxProcessReferences",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigCtxProcessReferences", NULL);
         return(-1);
     }
     /* references processing might change the status */
@@ -613,11 +525,7 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         base64Encode = xmlSecTransformCtxCreateAndAppend(&(dsigCtx->transformCtx),
                                                          xmlSecTransformBase64Id);
         if(base64Encode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend", NULL);
             return(-1);
         }
         base64Encode->operation = xmlSecTransformOperationEncode;
@@ -632,34 +540,21 @@ xmlSecDSigCtxProcessSignatureNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         xmlSecAssert2(signedInfoNode != NULL, -1);
         nodeset = xmlSecNodeSetGetChildren(signedInfoNode->doc, signedInfoNode, 1, 0);
         if(nodeset == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNodeSetGetChildren",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(signedInfoNode)));
+            xmlSecInternalError("xmlSecNodeSetGetChildren(signedInfoNode)", NULL);
             return(-1);
         }
 
         /* calculate the signature */
         ret = xmlSecTransformCtxXmlExecute(&(dsigCtx->transformCtx), nodeset);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxXmlExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxXmlExecute", NULL);
             xmlSecNodeSetDestroy(nodeset);
             return(-1);
         }
         xmlSecNodeSetDestroy(nodeset);
     } else {
         /* TODO */
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "the binary c14n transforms are not supported yet",
-                    XMLSEC_ERRORS_R_NOT_IMPLEMENTED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecNotImplementedError("binary c14n transforms");
         return(-1);
     }
     return(0);
@@ -719,12 +614,8 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
         dsigCtx->c14nMethod = xmlSecTransformCtxNodeRead(&(dsigCtx->transformCtx),
                                         cur, xmlSecTransformUsageC14NMethod);
         if(dsigCtx->c14nMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError2("xmlSecTransformCtxNodeRead", NULL,
+                                "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
             return(-1);
         }
     } else if(dsigCtx->defC14NMethodId != xmlSecTransformIdUnknown) {
@@ -734,20 +625,14 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
         dsigCtx->c14nMethod = xmlSecTransformCtxCreateAndAppend(&(dsigCtx->transformCtx),
                                                               dsigCtx->defC14NMethodId);
         if(dsigCtx->c14nMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxAppend", NULL);
             return(-1);
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "CanonicalizationMethod",
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCanonicalizationMethod));
+        /* if c14n method is not specified in the template and not specified in
+         * the dsig context then it's an error.
+         */
+        xmlSecInvalidNodeError(cur, xmlSecNodeCanonicalizationMethod, NULL);
         return(-1);
     }
 
@@ -757,12 +642,8 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
         dsigCtx->preSignMemBufMethod = xmlSecTransformCtxCreateAndAppend(&(dsigCtx->transformCtx),
                                                 xmlSecTransformMemBufId);
         if(dsigCtx->preSignMemBufMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformMemBufId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend",
+                                xmlSecTransformKlassGetName(xmlSecTransformMemBufId));
         }
     }
 
@@ -772,12 +653,8 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
         dsigCtx->signMethod = xmlSecTransformCtxNodeRead(&(dsigCtx->transformCtx),
                                         cur, xmlSecTransformUsageSignatureMethod);
         if(dsigCtx->signMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecTransformCtxNodeRead",
+                                xmlSecNodeGetName(cur));
             return(-1);
         }
     } else if(dsigCtx->defSignMethodId != xmlSecTransformIdUnknown) {
@@ -787,20 +664,14 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
         dsigCtx->signMethod = xmlSecTransformCtxCreateAndAppend(&(dsigCtx->transformCtx),
                                                               dsigCtx->defSignMethodId);
         if(dsigCtx->signMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxAppend", NULL);
             return(-1);
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeSignatureMethod));
+        /* if sign method is not specified in the template and not specified in
+         * the dsig context then it's an error.
+         */
+        xmlSecInvalidNodeError(cur, xmlSecNodeSignatureMethod, NULL);
         return(-1);
     }
     dsigCtx->signMethod->operation = dsigCtx->operation;
@@ -822,21 +693,13 @@ xmlSecDSigCtxProcessSignedInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node, xm
 
     /* check that we have at least one Reference */
     if(refNodesCount == 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_DSIG_NO_REFERENCES,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_DSIG_NO_REFERENCES, NULL, NULL);
         return(-1);
     }
 
     /* if there is something left than it's an error */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
 
@@ -861,34 +724,21 @@ xmlSecDSigCtxProcessReferences(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr firstReferen
     for(cur = firstReferenceNode; (cur != NULL); cur = xmlSecGetNextElementNode(cur->next)) {
         /* already checked but we trust none */
         if(!xmlSecCheckNodeName(cur, xmlSecNodeReference, xmlSecDSigNs)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                        XMLSEC_ERRORS_R_INVALID_NODE,
-                        "expected=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeReference));
+            xmlSecInvalidNodeError(cur, xmlSecNodeReference, NULL);
             return(-1);
         }
 
         /* create reference */
         dsigRefCtx = xmlSecDSigReferenceCtxCreate(dsigCtx, xmlSecDSigReferenceOriginSignedInfo);
         if(dsigRefCtx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecDSigReferenceCtxCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecDSigReferenceCtxCreate", NULL);
             return(-1);
         }
 
         /* add to the list */
         ret = xmlSecPtrListAdd(&(dsigCtx->signedInfoReferences), dsigRefCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd", NULL);
             xmlSecDSigReferenceCtxDestroy(dsigRefCtx);
             return(-1);
         }
@@ -896,12 +746,8 @@ xmlSecDSigCtxProcessReferences(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr firstReferen
         /* process */
         ret = xmlSecDSigReferenceCtxProcessNode(dsigRefCtx, cur);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecDSigReferenceCtxProcessNode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecDSigReferenceCtxProcessNode",
+                                xmlSecNodeGetName(cur));
             return(-1);
         }
 
@@ -927,12 +773,8 @@ xmlSecDSigCtxProcessKeyInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     /* set key requirements */
     ret = xmlSecTransformSetKeyReq(dsigCtx->signMethod, &(dsigCtx->keyInfoReadCtx.keyReq));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformSetKeyReq",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(dsigCtx->signMethod)));
+        xmlSecInternalError("xmlSecTransformSetKeyReq",
+                            xmlSecTransformGetName(dsigCtx->signMethod));
         return(-1);
     }
 
@@ -945,23 +787,15 @@ xmlSecDSigCtxProcessKeyInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
 
     /* check that we have exactly what we want */
     if((dsigCtx->signKey == NULL) || (!xmlSecKeyMatch(dsigCtx->signKey, NULL, &(dsigCtx->keyInfoReadCtx.keyReq)))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_KEY_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL, NULL);
         return(-1);
     }
 
     /* set the key to the transform */
     ret = xmlSecTransformSetKey(dsigCtx->signMethod, dsigCtx->signKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformSetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(dsigCtx->signMethod)));
+        xmlSecInternalError("xmlSecTransformSetKey",
+                            xmlSecTransformGetName(dsigCtx->signMethod));
         return(-1);
     }
 
@@ -969,11 +803,7 @@ xmlSecDSigCtxProcessKeyInfoNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
     if((node != NULL) && (dsigCtx->operation == xmlSecTransformOperationSign)) {
         ret = xmlSecKeyInfoNodeWrite(node, dsigCtx->signKey, &(dsigCtx->keyInfoWriteCtx));
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyInfoNodeWrite",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeWrite", NULL);
             return(-1);
         }
     }
@@ -1024,11 +854,7 @@ xmlSecDSigCtxProcessObjectNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         if(xmlSecCheckNodeName(cur, xmlSecNodeManifest, xmlSecDSigNs)) {
             ret = xmlSecDSigCtxProcessManifestNode(dsigCtx, cur);
             if(ret < 0){
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecDSigCtxProcessManifestNode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecDSigCtxProcessManifestNode", NULL);
                 return(-1);
             }
         }
@@ -1083,22 +909,14 @@ xmlSecDSigCtxProcessManifestNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         /* create reference */
         dsigRefCtx = xmlSecDSigReferenceCtxCreate(dsigCtx, xmlSecDSigReferenceOriginManifest);
         if(dsigRefCtx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecDSigReferenceCtxCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecDSigReferenceCtxCreate", NULL);
             return(-1);
         }
 
         /* add to the list */
         ret = xmlSecPtrListAdd(&(dsigCtx->manifestReferences), dsigRefCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd", NULL);
             xmlSecDSigReferenceCtxDestroy(dsigRefCtx);
             return(-1);
         }
@@ -1106,12 +924,8 @@ xmlSecDSigCtxProcessManifestNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
         /* process */
         ret = xmlSecDSigReferenceCtxProcessNode(dsigRefCtx, cur);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecDSigReferenceCtxProcessNode",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecDSigReferenceCtxProcessNode",
+                                xmlSecNodeGetName(cur));
             return(-1);
         }
 
@@ -1122,11 +936,7 @@ xmlSecDSigCtxProcessManifestNode(xmlSecDSigCtxPtr dsigCtx, xmlNodePtr node) {
 
     /* we should have nothing else here */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
     return(0);
@@ -1332,22 +1142,13 @@ xmlSecDSigReferenceCtxCreate(xmlSecDSigCtxPtr dsigCtx, xmlSecDSigReferenceOrigin
 
     dsigRefCtx = (xmlSecDSigReferenceCtxPtr) xmlMalloc(sizeof(xmlSecDSigReferenceCtx));
     if(dsigRefCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecDSigReferenceCtx)=%d",
-                    (int)sizeof(xmlSecDSigReferenceCtx));
+        xmlSecMallocError(sizeof(xmlSecDSigReferenceCtx), NULL);
         return(NULL);
     }
 
     ret = xmlSecDSigReferenceCtxInitialize(dsigRefCtx, dsigCtx, origin);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecDSigReferenceCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecDSigReferenceCtxInitialize", NULL);
         xmlSecDSigReferenceCtxDestroy(dsigRefCtx);
         return(NULL);
     }
@@ -1396,11 +1197,7 @@ xmlSecDSigReferenceCtxInitialize(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlSecDSi
     /* initializes transforms dsigRefCtx */
     ret = xmlSecTransformCtxInitialize(&(dsigRefCtx->transformCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxInitialize", NULL);
         return(-1);
     }
 
@@ -1409,11 +1206,7 @@ xmlSecDSigReferenceCtxInitialize(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlSecDSi
         ret = xmlSecPtrListCopy(&(dsigRefCtx->transformCtx.enabledTransforms),
                                      dsigCtx->enabledReferenceTransforms);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListCopy",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListCopy", NULL);
             return(-1);
         }
     }
@@ -1513,12 +1306,8 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
     /* set start URI (and check that it is enabled!) */
     ret = xmlSecTransformCtxSetUri(transformCtx, dsigRefCtx->uri, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxSetUri",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(dsigRefCtx->uri));
+        xmlSecInternalError2("xmlSecTransformCtxSetUri", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(dsigRefCtx->uri));
         return(-1);
     }
 
@@ -1528,12 +1317,8 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         ret = xmlSecTransformCtxNodesListRead(transformCtx,
                                         cur, xmlSecTransformUsageDSigTransform);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodesListRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError2("xmlSecTransformCtxNodesListRead", NULL,
+                                 "node=%s", xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
             return(-1);
         }
 
@@ -1551,12 +1336,7 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
                                                 transformCtx,
                                                 xmlSecTransformMemBufId);
         if(dsigRefCtx->preDigestMemBufMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "transform=%s",
-                        xmlSecErrorsSafeString(xmlSecTransformKlassGetName(xmlSecTransformMemBufId)));
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend(xmlSecTransformMemBufId)", NULL);
             return(-1);
         }
     }
@@ -1566,12 +1346,8 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         dsigRefCtx->digestMethod = xmlSecTransformCtxNodeRead(&(dsigRefCtx->transformCtx),
                                         cur, xmlSecTransformUsageDigestMethod);
         if(dsigRefCtx->digestMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInternalError("xmlSecTransformCtxNodeRead",
+                                xmlSecNodeGetName(cur));
             return(-1);
         }
 
@@ -1583,20 +1359,14 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         dsigRefCtx->digestMethod = xmlSecTransformCtxCreateAndAppend(&(dsigRefCtx->transformCtx),
                                                               dsigRefCtx->dsigCtx->defSignMethodId);
         if(dsigRefCtx->digestMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxAppend", NULL);
             return(-1);
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDigestMethod));
+        /* if digest method is not specified in the template and not specified in
+         * the dsig context then it's an error.
+         */
+        xmlSecInvalidNodeError(cur, xmlSecNodeDigestMethod, NULL);
         return(-1);
     }
     dsigRefCtx->digestMethod->operation = dsigRefCtx->dsigCtx->operation;
@@ -1606,22 +1376,13 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         digestValueNode = cur;
         cur = xmlSecGetNextElementNode(cur->next);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeDigestValue));
+        xmlSecInvalidNodeError(cur, xmlSecNodeDigestValue, NULL);
         return(-1);
     }
 
     /* if we have something else then it's an error */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
 
@@ -1632,11 +1393,7 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         /* we need to add base64 encode transform */
         base64Encode = xmlSecTransformCtxCreateAndAppend(transformCtx, xmlSecTransformBase64Id);
         if(base64Encode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend", NULL);
             return(-1);
         }
         base64Encode->operation = xmlSecTransformOperationEncode;
@@ -1645,22 +1402,14 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
     /* finally get transforms results */
     ret = xmlSecTransformCtxExecute(transformCtx, node->doc);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxExecute", NULL);
         return(-1);
     }
     dsigRefCtx->result = transformCtx->result;
 
     if(dsigRefCtx->dsigCtx->operation == xmlSecTransformOperationSign) {
         if((dsigRefCtx->result == NULL) || (xmlSecBufferGetData(dsigRefCtx->result) == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxExecute", NULL);
             return(-1);
         }
 
@@ -1676,11 +1425,7 @@ xmlSecDSigReferenceCtxProcessNode(xmlSecDSigReferenceCtxPtr dsigRefCtx, xmlNodeP
         ret = xmlSecTransformVerifyNodeContent(dsigRefCtx->digestMethod,
                             digestValueNode, transformCtx);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformVerifyNodeContent",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformVerifyNodeContent", NULL);
             return(-1);
         }
 
diff --git a/src/xmlenc.c b/src/xmlenc.c
index 36c7bca..073af72 100644
--- a/src/xmlenc.c
+++ b/src/xmlenc.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * "XML Encryption" implementation
@@ -60,22 +60,13 @@ xmlSecEncCtxCreate(xmlSecKeysMngrPtr keysMngr) {
 
     encCtx = (xmlSecEncCtxPtr) xmlMalloc(sizeof(xmlSecEncCtx));
     if(encCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecEncCtx)=%d",
-                    (int)sizeof(xmlSecEncCtx));
+        xmlSecMallocError(sizeof(xmlSecEncCtx), NULL);
         return(NULL);
     }
 
     ret = xmlSecEncCtxInitialize(encCtx, keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxInitialize", NULL);
         xmlSecEncCtxDestroy(encCtx);
         return(NULL);
     }
@@ -118,22 +109,14 @@ xmlSecEncCtxInitialize(xmlSecEncCtxPtr encCtx, xmlSecKeysMngrPtr keysMngr) {
     /* initialize key info */
     ret = xmlSecKeyInfoCtxInitialize(&(encCtx->keyInfoReadCtx), keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize", NULL);
         return(-1);
     }
     encCtx->keyInfoReadCtx.mode = xmlSecKeyInfoModeRead;
 
     ret = xmlSecKeyInfoCtxInitialize(&(encCtx->keyInfoWriteCtx), keysMngr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxInitialize", NULL);
         return(-1);
     }
     encCtx->keyInfoWriteCtx.mode = xmlSecKeyInfoModeWrite;
@@ -143,11 +126,7 @@ xmlSecEncCtxInitialize(xmlSecEncCtxPtr encCtx, xmlSecKeysMngrPtr keysMngr) {
     /* initializes transforms encCtx */
     ret = xmlSecTransformCtxInitialize(&(encCtx->transformCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxInitialize", NULL);
         return(-1);
     }
 
@@ -261,31 +240,19 @@ xmlSecEncCtxCopyUserPref(xmlSecEncCtxPtr dst, xmlSecEncCtxPtr src) {
 
     ret = xmlSecTransformCtxCopyUserPref(&(dst->transformCtx), &(src->transformCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxCopyUserPref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxCopyUserPref", NULL);
         return(-1);
     }
 
     ret = xmlSecKeyInfoCtxCopyUserPref(&(dst->keyInfoReadCtx), &(src->keyInfoReadCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxCopyUserPref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxCopyUserPref", NULL);
         return(-1);
     }
 
     ret = xmlSecKeyInfoCtxCopyUserPref(&(dst->keyInfoWriteCtx), &(src->keyInfoWriteCtx));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyInfoCtxCopyUserPref",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyInfoCtxCopyUserPref", NULL);
         return(-1);
     }
 
@@ -320,22 +287,14 @@ xmlSecEncCtxBinaryEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl,
     /* read the template and set encryption method, key, etc. */
     ret = xmlSecEncCtxEncDataNodeRead(encCtx, tmpl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeRead", NULL);
         return(-1);
     }
 
     ret = xmlSecTransformCtxBinaryExecute(&(encCtx->transformCtx), data, dataSize);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxBinaryExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "dataSize=%d",
-                    dataSize);
+        xmlSecInternalError2("xmlSecTransformCtxBinaryExecute", NULL,
+                             "dataSize=%d", dataSize);
         return(-1);
     }
 
@@ -344,11 +303,7 @@ xmlSecEncCtxBinaryEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl,
 
     ret = xmlSecEncCtxEncDataNodeWrite(encCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeWrite", NULL);
         return(-1);
     }
     return(0);
@@ -383,21 +338,13 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
     /* read the template and set encryption method, key, etc. */
     ret = xmlSecEncCtxEncDataNodeRead(encCtx, tmpl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeRead", NULL);
         return(-1);
     }
 
     ret = xmlSecTransformCtxPrepare(&(encCtx->transformCtx), xmlSecTransformDataTypeBin);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxPrepare",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=bin");
+        xmlSecInternalError("xmlSecTransformCtxPrepare(TypeBin)", NULL);
         return(-1);
     }
 
@@ -405,11 +352,8 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
     output = xmlSecTransformCreateOutputBuffer(encCtx->transformCtx.first,
                                                 &(encCtx->transformCtx));
     if(output == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(encCtx->transformCtx.first)),
-                    "xmlSecTransformCreateOutputBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCreateOutputBuffer",
+                            xmlSecTransformGetName(encCtx->transformCtx.first));
         return(-1);
     }
 
@@ -425,12 +369,8 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
             xmlNodeDumpOutput(output, node->doc, cur, 0, 0, NULL);
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_TYPE,
-                    "type=%s",
-                    xmlSecErrorsSafeString(encCtx->type));
+        xmlSecInvalidStringTypeError("encryption type", encCtx->type,
+                "supported encryption type", NULL);
         xmlOutputBufferClose(output);
         return(-1);
     }
@@ -438,11 +378,7 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
     /* close the buffer and flush everything */
     ret = xmlOutputBufferClose(output);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlOutputBufferClose",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferClose", NULL);
         return(-1);
     }
 
@@ -451,11 +387,7 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
 
     ret = xmlSecEncCtxEncDataNodeWrite(encCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeWrite", NULL);
         return(-1);
     }
 
@@ -465,23 +397,15 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
         if((encCtx->flags & XMLSEC_ENC_RETURN_REPLACED_NODE) != 0) {
             ret = xmlSecReplaceNodeAndReturn(node, tmpl, &(encCtx->replacedNodeList));
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                NULL,
-                "xmlSecReplaceNode",
-                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                "node=%s",
-                xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                xmlSecInternalError("xmlSecReplaceNode",
+                                    xmlSecNodeGetName(node));
                 return(-1);
             }
         } else {
             ret = xmlSecReplaceNode(node, tmpl);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecReplaceNode",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                xmlSecInternalError("xmlSecReplaceNode",
+                                    xmlSecNodeGetName(node));
                 return(-1);
             }
         }
@@ -492,38 +416,27 @@ xmlSecEncCtxXmlEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, xmlNodePtr node)
         if((encCtx->flags & XMLSEC_ENC_RETURN_REPLACED_NODE) != 0) {
             ret = xmlSecReplaceContentAndReturn(node, tmpl, &(encCtx->replacedNodeList));
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecReplaceContentAndReturn",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                xmlSecInternalError("xmlSecReplaceContentAndReturn",
+                                    xmlSecNodeGetName(node));
                 return(-1);
             }
         } else {
             ret = xmlSecReplaceContent(node, tmpl);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecReplaceContent",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                xmlSecInternalError("xmlSecReplaceContent",
+                                    xmlSecNodeGetName(node));
                 return(-1);
             }
         }
 
         encCtx->resultReplaced = 1;
     } else {
-            /* we should've catached this error before */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_INVALID_TYPE,
-                        "type=%s",
-                        xmlSecErrorsSafeString(encCtx->type));
-            return(-1);
+        /* we should've caught this error before */
+        xmlSecInvalidStringTypeError("encryption type", encCtx->type,
+                "supported encryption type", NULL);
+        return(-1);
     }
+    /* done */
     return(0);
 }
 
@@ -553,34 +466,22 @@ xmlSecEncCtxUriEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, const xmlChar *u
     /* we need to add input uri transform first */
     ret = xmlSecTransformCtxSetUri(&(encCtx->transformCtx), uri, tmpl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxSetUri",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecTransformCtxSetUri", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         return(-1);
     }
 
     /* read the template and set encryption method, key, etc. */
     ret = xmlSecEncCtxEncDataNodeRead(encCtx, tmpl);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeRead", NULL);
         return(-1);
     }
 
     /* encrypt the data */
     ret = xmlSecTransformCtxExecute(&(encCtx->transformCtx), tmpl->doc);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformCtxExecute", NULL);
         return(-1);
     }
 
@@ -589,11 +490,7 @@ xmlSecEncCtxUriEncrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr tmpl, const xmlChar *u
 
     ret = xmlSecEncCtxEncDataNodeWrite(encCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeWrite",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeWrite", NULL);
         return(-1);
     }
 
@@ -620,11 +517,7 @@ xmlSecEncCtxDecrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     /* decrypt */
     buffer = xmlSecEncCtxDecryptToBuffer(encCtx, node);
     if(buffer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxDecryptToBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxDecryptToBuffer", NULL);
         return(-1);
     }
 
@@ -634,23 +527,15 @@ xmlSecEncCtxDecrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         if((encCtx->flags & XMLSEC_ENC_RETURN_REPLACED_NODE) != 0) {
                 ret = xmlSecReplaceNodeBufferAndReturn(node, xmlSecBufferGetData(buffer),  xmlSecBufferGetSize(buffer), &(encCtx->replacedNodeList));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecReplaceNodeBufferAndReturn",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "node=%s",
-                                xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                    xmlSecInternalError("xmlSecReplaceNodeBufferAndReturn",
+                                        xmlSecNodeGetName(node));
                     return(-1);
                 }
         } else {
                 ret = xmlSecReplaceNodeBuffer(node, xmlSecBufferGetData(buffer),  xmlSecBufferGetSize(buffer));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecReplaceNodeBuffer",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "node=%s",
-                                xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                    xmlSecInternalError("xmlSecReplaceNodeBuffer",
+                                        xmlSecNodeGetName(node));
                     return(-1);
                 }
         }
@@ -663,23 +548,15 @@ xmlSecEncCtxDecrypt(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         if((encCtx->flags & XMLSEC_ENC_RETURN_REPLACED_NODE) != 0) {
                 ret = xmlSecReplaceNodeBufferAndReturn(node, xmlSecBufferGetData(buffer), xmlSecBufferGetSize(buffer), &(encCtx->replacedNodeList));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecReplaceNodeBufferAndReturn",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "node=%s",
-                                xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                    xmlSecInternalError("xmlSecReplaceNodeBufferAndReturn",
+                                        xmlSecNodeGetName(node));
                     return(-1);
                 }
         } else {
             ret = xmlSecReplaceNodeBuffer(node, xmlSecBufferGetData(buffer), xmlSecBufferGetSize(buffer));
                 if(ret < 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlSecReplaceNodeBuffer",
-                                XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                                "node=%s",
-                                xmlSecErrorsSafeString(xmlSecNodeGetName(node)));
+                    xmlSecInternalError("xmlSecReplaceNodeBuffer",
+                                        xmlSecNodeGetName(node));
                     return(-1);
                 }
         }
@@ -712,11 +589,7 @@ xmlSecEncCtxDecryptToBuffer(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
 
     ret = xmlSecEncCtxEncDataNodeRead(encCtx, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxEncDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxEncDataNodeRead", NULL);
         return(NULL);
     }
 
@@ -727,22 +600,14 @@ xmlSecEncCtxDecryptToBuffer(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
 
         data = xmlNodeGetContent(encCtx->cipherValueNode);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(encCtx->cipherValueNode)),
-                        XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInvalidNodeContentError(encCtx->cipherValueNode, NULL, "empty");
             return(NULL);
         }
         dataSize = xmlStrlen(data);
 
         ret = xmlSecTransformCtxBinaryExecute(&(encCtx->transformCtx), data, dataSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxBinaryExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxBinaryExecute", NULL);
             if(data != NULL) {
                 xmlFree(data);
             }
@@ -754,11 +619,7 @@ xmlSecEncCtxDecryptToBuffer(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     } else {
         ret = xmlSecTransformCtxExecute(&(encCtx->transformCtx), node->doc);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxBinaryExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxBinaryExecute", NULL);
             return(NULL);
         }
     }
@@ -781,23 +642,13 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     switch(encCtx->mode) {
         case xmlEncCtxModeEncryptedData:
             if(!xmlSecCheckNodeName(node, xmlSecNodeEncryptedData, xmlSecEncNs)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                            XMLSEC_ERRORS_R_INVALID_NODE,
-                            "expected=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeEncryptedData));
+                xmlSecInvalidNodeError(node, xmlSecNodeEncryptedData, NULL);
                 return(-1);
             }
             break;
         case xmlEncCtxModeEncryptedKey:
             if(!xmlSecCheckNodeName(node, xmlSecNodeEncryptedKey, xmlSecEncNs)) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                            XMLSEC_ERRORS_R_INVALID_NODE,
-                            "expected=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeEncryptedKey));
+                xmlSecInvalidNodeError(node, xmlSecNodeEncryptedKey, NULL);
                 return(-1);
             }
             break;
@@ -837,22 +688,13 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
 
     /* next is required CipherData node */
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeCipherData, xmlSecEncNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "node=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeCipherData));
+        xmlSecInvalidNodeError(cur, xmlSecNodeCipherData, NULL);
         return(-1);
     }
 
     ret = xmlSecEncCtxCipherDataNodeRead(encCtx, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecEncCtxCipherDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecEncCtxCipherDataNodeRead", NULL);
         return(-1);
     }
     cur = xmlSecGetNextElementNode(cur->next);
@@ -873,12 +715,7 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         if((cur != NULL) && (xmlSecCheckNodeName(cur, xmlSecNodeCarriedKeyName, xmlSecEncNs))) {
             encCtx->carriedKeyName = xmlNodeGetContent(cur);
             if(encCtx->carriedKeyName == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                            XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeCipherData));
+                xmlSecInvalidNodeContentError(cur, NULL, "empty");
                 return(-1);
             }
             /* TODO: decode the name? */
@@ -888,11 +725,7 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
 
     /* if there is something left than it's an error */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
 
@@ -902,31 +735,20 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         encCtx->encMethod = xmlSecTransformCtxNodeRead(&(encCtx->transformCtx), encCtx->encMethodNode,
                                                 xmlSecTransformUsageEncryptionMethod);
         if(encCtx->encMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(encCtx->encMethodNode)));
+            xmlSecInternalError("xmlSecTransformCtxNodeRead",
+                                xmlSecNodeGetName(encCtx->encMethodNode));
             return(-1);
         }
     } else if(encCtx->defEncMethodId != xmlSecTransformIdUnknown) {
         encCtx->encMethod = xmlSecTransformCtxCreateAndAppend(&(encCtx->transformCtx),
                                                               encCtx->defEncMethodId);
         if(encCtx->encMethod == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend",
+                    xmlSecTransformKlassGetName(encCtx->defEncMethodId));
             return(-1);
         }
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_DATA,
-                    "encryption method not specified");
+        xmlSecInvalidDataError("encryption method not specified", NULL);
         return(-1);
     }
     encCtx->encMethod->operation = encCtx->operation;
@@ -934,12 +756,8 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     /* we have encryption method, find key */
     ret = xmlSecTransformSetKeyReq(encCtx->encMethod, &(encCtx->keyInfoReadCtx.keyReq));
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformSetKeyReq",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(encCtx->encMethod)));
+        xmlSecInternalError("xmlSecTransformSetKeyReq",
+                xmlSecTransformGetName(encCtx->encMethod));
         return(-1);
     }
 
@@ -954,23 +772,17 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     if((encCtx->encKey == NULL) ||
        (!xmlSecKeyMatch(encCtx->encKey, NULL, &(encCtx->keyInfoReadCtx.keyReq)))) {
 
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_KEY_NOT_FOUND,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecOtherError2(XMLSEC_ERRORS_R_KEY_NOT_FOUND, NULL,
+                          "encMethod=%s",
+                          xmlSecErrorsSafeString(xmlSecTransformGetName(encCtx->encMethod)));
         return(-1);
     }
 
     /* set the key to the transform */
     ret = xmlSecTransformSetKey(encCtx->encMethod, encCtx->encKey);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformSetKey",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "transform=%s",
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(encCtx->encMethod)));
+        xmlSecInternalError("xmlSecTransformSetKey",
+                            xmlSecTransformGetName(encCtx->encMethod));
         return(-1);
     }
 
@@ -981,11 +793,7 @@ xmlSecEncCtxEncDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         /* we need to add base64 encode transform */
         base64Encode = xmlSecTransformCtxCreateAndAppend(&(encCtx->transformCtx), xmlSecTransformBase64Id);
         if(base64Encode == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxCreateAndAppend",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecTransformCtxCreateAndAppend", NULL);
             return(-1);
         }
         base64Encode->operation         = xmlSecTransformOperationEncode;
@@ -1017,11 +825,7 @@ xmlSecEncCtxEncDataNodeWrite(xmlSecEncCtxPtr encCtx) {
     if(encCtx->keyInfoNode != NULL) {
         ret = xmlSecKeyInfoNodeWrite(encCtx->keyInfoNode, encCtx->encKey, &(encCtx->keyInfoWriteCtx));
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecKeyInfoNodeWrite",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecKeyInfoNodeWrite", NULL);
             return(-1);
         }
     }
@@ -1049,11 +853,7 @@ xmlSecEncCtxCipherDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
             /* we need to add base64 decode transform */
             base64Decode = xmlSecTransformCtxCreateAndPrepend(&(encCtx->transformCtx), xmlSecTransformBase64Id);
             if(base64Decode == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecTransformCtxCreateAndPrepend",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformCtxCreateAndPrepend", NULL);
                 return(-1);
             }
         }
@@ -1064,12 +864,8 @@ xmlSecEncCtxCipherDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         if(encCtx->operation == xmlSecTransformOperationDecrypt) {
             ret = xmlSecEncCtxCipherReferenceNodeRead(encCtx, cur);
             if(ret < 0) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecEncCtxCipherReferenceNodeRead",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+                xmlSecInternalError("xmlSecEncCtxCipherReferenceNodeRead",
+                                    xmlSecNodeGetName(cur));
                 return(-1);
             }
         }
@@ -1077,11 +873,7 @@ xmlSecEncCtxCipherDataNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     }
 
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
     return(0);
@@ -1100,12 +892,8 @@ xmlSecEncCtxCipherReferenceNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
     uri = xmlGetProp(node, xmlSecAttrURI);
     ret = xmlSecTransformCtxSetUri(&(encCtx->transformCtx), uri, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformCtxSetUri",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "uri=%s",
-                    xmlSecErrorsSafeString(uri));
+        xmlSecInternalError2("xmlSecTransformCtxSetUri", NULL,
+                             "uri=%s", xmlSecErrorsSafeString(uri));
         xmlFree(uri);
         return(-1);
     }
@@ -1118,12 +906,8 @@ xmlSecEncCtxCipherReferenceNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
         ret = xmlSecTransformCtxNodesListRead(&(encCtx->transformCtx), cur,
                                     xmlSecTransformUsageDSigTransform);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecTransformCtxNodesListRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(encCtx->encMethodNode)));
+            xmlSecInternalError("xmlSecTransformCtxNodesListRead",
+                                xmlSecNodeGetName(encCtx->encMethodNode));
             return(-1);
         }
         cur = xmlSecGetNextElementNode(cur->next);
@@ -1131,11 +915,7 @@ xmlSecEncCtxCipherReferenceNodeRead(xmlSecEncCtxPtr encCtx, xmlNodePtr node) {
 
     /* if there is something left than it's an error */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur,  NULL);
         return(-1);
     }
     return(0);
diff --git a/src/xmlsec.c b/src/xmlsec.c
index 6098d3c..520557d 100644
--- a/src/xmlsec.c
+++ b/src/xmlsec.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * General functions.
@@ -23,6 +23,53 @@
 #include <xmlsec/io.h>
 #include <xmlsec/errors.h>
 
+/*
+ * Custom external entity handler, denies all files except the initial
+ * document we're parsing (input_id == 1)
+ */
+/* default external entity loader, pointer saved during xmlInit */
+static xmlExternalEntityLoader
+xmlSecDefaultExternalEntityLoader = NULL;
+
+/*
+ * xmlSecNoXxeExternalEntityLoader:
+ * @URL:        the URL for the entity to load
+ * @ID:         public ID for the entity to load
+ * @ctxt:       XML parser context, or NULL
+ *
+ * See libxml2's xmlLoadExternalEntity and xmlNoNetExternalEntityLoader.
+ * This function prevents any external (file or network) entities from being loaded.
+ */
+static xmlParserInputPtr
+xmlSecNoXxeExternalEntityLoader(const char *URL, const char *ID,
+                          xmlParserCtxtPtr ctxt) {
+    if (ctxt == NULL) {
+        return(NULL);
+    }
+    if (ctxt->input_id == 1) {
+        return xmlSecDefaultExternalEntityLoader((const char *) URL, ID, ctxt);
+    }
+    xmlSecXmlError2("xmlSecNoXxeExternalEntityLoader", NULL,
+                    "illegal external entity='%s'", xmlSecErrorsSafeString(URL));
+    return(NULL);
+}
+
+/*
+ * xmlSecSetExternalEntityLoader:
+ * @entityLoader:       the new entity resolver function, or NULL to restore 
+ *                      libxml2's default handler
+ *
+ * Wrapper for xmlSetExternalEntityLoader.
+ */
+void
+xmlSecSetExternalEntityLoader(xmlExternalEntityLoader entityLoader) {
+    if (entityLoader == NULL) {
+        entityLoader = xmlSecDefaultExternalEntityLoader;
+    }
+    xmlSetExternalEntityLoader(entityLoader);
+}
+
+
 /**
  * xmlSecInit:
  *
@@ -38,37 +85,30 @@ xmlSecInit(void) {
 
 #ifndef XMLSEC_NO_CRYPTO_DYNAMIC_LOADING
     if(xmlSecCryptoDLInit() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLInit", NULL);
         return(-1);
     }
 #endif /* XMLSEC_NO_CRYPTO_DYNAMIC_LOADING */
 
     if(xmlSecKeyDataIdsInit() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecKeyDataIdsInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecKeyDataIdsInit", NULL);
         return(-1);
     }
 
     if(xmlSecTransformIdsInit() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecTransformIdsInit",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecTransformIdsInit", NULL);
         return(-1);
     }
 
+    /* initialise safe external entity loader */
+    if (!xmlSecDefaultExternalEntityLoader) {
+        xmlSecDefaultExternalEntityLoader = xmlGetExternalEntityLoader();
+    }
+    xmlSetExternalEntityLoader(xmlSecNoXxeExternalEntityLoader);
 
 
     /* we use rand() function to generate id attributes */
-    srand(time(NULL));
+    srand((unsigned int)time(NULL));
     return(0);
 }
 
@@ -88,11 +128,7 @@ xmlSecShutdown(void) {
 
 #ifndef XMLSEC_NO_CRYPTO_DYNAMIC_LOADING
     if(xmlSecCryptoDLShutdown() < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecCryptoDLShutdown",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecCryptoDLShutdown", NULL);
         res = -1;
     }
 #endif /* XMLSEC_NO_CRYPTO_DYNAMIC_LOADING */
@@ -129,39 +165,27 @@ int
 xmlSecCheckVersionExt(int major, int minor, int subminor, xmlSecCheckVersionMode mode) {
     /* we always want to have a match for major version number */
     if(major != XMLSEC_VERSION_MAJOR) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "expected major version=%d;real major version=%d",
-                    XMLSEC_VERSION_MAJOR, major);
+        xmlSecOtherError3(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
+                "expected major version=%d;real major version=%d",
+                XMLSEC_VERSION_MAJOR, major);
         return(0);
     }
 
     switch(mode) {
     case xmlSecCheckVersionExactMatch:
         if((minor != XMLSEC_VERSION_MINOR) || (subminor != XMLSEC_VERSION_SUBMINOR)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "mode=exact;expected minor version=%d;real minor version=%d;expected subminor version=%d;real subminor version=%d",
-                        XMLSEC_VERSION_MINOR, minor,
-                        XMLSEC_VERSION_SUBMINOR, subminor);
+            xmlSecOtherError5(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
+                    "mode=exact;expected minor version=%d;real minor version=%d;expected subminor version=%d;real subminor version=%d",
+                    XMLSEC_VERSION_MINOR, minor, XMLSEC_VERSION_SUBMINOR, subminor);
             return(0);
         }
         break;
     case xmlSecCheckVersionABICompatible:
-        if((minor > XMLSEC_VERSION_MINOR) ||
-           ((minor == XMLSEC_VERSION_MINOR) &&
-            (subminor > XMLSEC_VERSION_SUBMINOR))) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        NULL,
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "mode=abi compatible;expected minor version=%d;real minor version=%d;expected subminor version=%d;real subminor version=%d",
-                        XMLSEC_VERSION_MINOR, minor,
-                        XMLSEC_VERSION_SUBMINOR, subminor);
+        if((minor > XMLSEC_VERSION_MINOR) || ((minor == XMLSEC_VERSION_MINOR) &&
+                (subminor > XMLSEC_VERSION_SUBMINOR))) {
+            xmlSecOtherError5(XMLSEC_ERRORS_R_INVALID_VERSION, NULL,
+                    "mode=abi compatible;expected minor version=%d;real minor version=%d;expected subminor version=%d;real subminor version=%d",
+                    XMLSEC_VERSION_MINOR, minor, XMLSEC_VERSION_SUBMINOR, subminor);
             return(0);
         }
         break;
diff --git a/src/xmltree.c b/src/xmltree.c
index 86ad363..4b83044 100644
--- a/src/xmltree.c
+++ b/src/xmltree.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * Common XML Doc utility functions
@@ -13,7 +13,6 @@
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
-#include <errno.h>
 
 #include <libxml/tree.h>
 #include <libxml/valid.h>
@@ -202,11 +201,7 @@ xmlSecAddChild(xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
         /* TODO: add indents */
         text = xmlNewText(xmlSecStringCR);
         if(text == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNewText",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlNewText", NULL);
             return(NULL);
         }
         xmlAddChild(parent, text);
@@ -214,11 +209,7 @@ xmlSecAddChild(xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
 
     cur = xmlNewChild(parent, NULL, name, NULL);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewChild",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewChild", NULL);
         return(NULL);
     }
 
@@ -230,6 +221,10 @@ xmlSecAddChild(xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
         nsPtr = xmlSearchNsByHref(cur->doc, cur, ns);
         if((nsPtr == NULL) || (xmlSearchNs(cur->doc, cur, nsPtr->prefix) != nsPtr)) {
             nsPtr = xmlNewNs(cur, ns, NULL);
+            if(nsPtr == NULL) {
+                xmlSecXmlError("xmlNewNs", NULL);
+                return(NULL);
+            }
         }
         xmlSetNs(cur, nsPtr);
     }
@@ -237,11 +232,7 @@ xmlSecAddChild(xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
     /* TODO: add indents */
     text = xmlNewText(xmlSecStringCR);
     if(text == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewText",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewText", NULL);
         return(NULL);
     }
     xmlAddChild(parent, text);
@@ -269,11 +260,7 @@ xmlSecAddChildNode(xmlNodePtr parent, xmlNodePtr child) {
         /* TODO: add indents */
         text = xmlNewText(xmlSecStringCR);
         if(text == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNewText",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlNewText", NULL);
             return(NULL);
         }
         xmlAddChild(parent, text);
@@ -284,11 +271,7 @@ xmlSecAddChildNode(xmlNodePtr parent, xmlNodePtr child) {
     /* TODO: add indents */
     text = xmlNewText(xmlSecStringCR);
     if(text == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewText",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewText", NULL);
         return(NULL);
     }
     xmlAddChild(parent, text);
@@ -309,7 +292,7 @@ xmlSecAddChildNode(xmlNodePtr parent, xmlNodePtr child) {
  * Returns: the pointer to the found or created node; or NULL if an error occurs.
  */
 xmlNodePtr
-xmlSecEnsureEmptyChild(const xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
+xmlSecEnsureEmptyChild(xmlNodePtr parent, const xmlChar *name, const xmlChar *ns) {
     xmlNodePtr cur = NULL;
     xmlNodePtr tmp;
 
@@ -335,12 +318,8 @@ xmlSecEnsureEmptyChild(const xmlNodePtr parent, const xmlChar *name, const xmlCh
         cur = xmlSecAddNextSibling(cur, name, ns);
     }
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild or xmlSecAddNextSibling",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(name));
+        xmlSecInternalError2("xmlSecAddChild or xmlSecAddNextSibling", NULL,
+                             "node=%s", xmlSecErrorsSafeString(name));
         return(NULL);
     }
     return(cur);
@@ -366,11 +345,7 @@ xmlSecAddNextSibling(xmlNodePtr node, const xmlChar *name, const xmlChar *ns) {
 
     cur = xmlNewNode(NULL, name);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewNode", NULL);
         return(NULL);
     }
     xmlAddNextSibling(node, cur);
@@ -390,11 +365,7 @@ xmlSecAddNextSibling(xmlNodePtr node, const xmlChar *name, const xmlChar *ns) {
     /* TODO: add indents */
     text = xmlNewText(xmlSecStringCR);
     if(text == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewText",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewText", NULL);
         return(NULL);
     }
     xmlAddNextSibling(node, text);
@@ -422,11 +393,7 @@ xmlSecAddPrevSibling(xmlNodePtr node, const xmlChar *name, const xmlChar *ns) {
 
     cur = xmlNewNode(NULL, name);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewNode", NULL);
         return(NULL);
     }
     xmlAddPrevSibling(node, cur);
@@ -446,11 +413,7 @@ xmlSecAddPrevSibling(xmlNodePtr node, const xmlChar *name, const xmlChar *ns) {
     /* TODO: add indents */
     text = xmlNewText(xmlSecStringCR);
     if(text == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewText",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewText", NULL);
         return(NULL);
     }
     xmlAddPrevSibling(node, text);
@@ -518,11 +481,7 @@ xmlSecReplaceNodeAndReturn(xmlNodePtr node, xmlNodePtr newNode, xmlNodePtr* repl
 
     oldNode = xmlReplaceNode(node, newNode);
     if(oldNode == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlReplaceNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlReplaceNode", NULL);
         return(-1);
     }
 
@@ -630,17 +589,15 @@ int
 xmlSecReplaceNodeBufferAndReturn(xmlNodePtr node, const xmlSecByte *buffer, xmlSecSize size, xmlNodePtr *replaced) {
     xmlNodePtr results = NULL;
     xmlNodePtr next = NULL;
+    int ret;
 
     xmlSecAssert2(node != NULL, -1);
     xmlSecAssert2(node->parent != NULL, -1);
 
     /* parse buffer in the context of node's parent */
-    if(xmlParseInNodeContext(node->parent, (const char*)buffer, size, XML_PARSE_NODICT, &results) != XML_ERR_OK) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlParseInNodeContext",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "Failed to parse content");
+    ret = xmlParseInNodeContext(node->parent, (const char*)buffer, size, XML_PARSE_NODICT, &results);
+    if(ret != XML_ERR_OK) {
+        xmlSecXmlError("xmlParseInNodeContext", NULL);
         return(-1);
     }
 
@@ -680,24 +637,17 @@ xmlSecNodeEncodeAndSetContent(xmlNodePtr node, const xmlChar * buffer) {
     xmlSecAssert2(node->doc != NULL, -1);
 
     if(buffer != NULL) {
-            xmlChar * tmp;
-
+        xmlChar * tmp;
         tmp = xmlEncodeSpecialChars(node->doc, buffer);
         if (tmp == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlEncodeSpecialChars",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "Failed to encode special characters");
+            xmlSecXmlError("xmlEncodeSpecialChars", NULL);
             return(-1);
         }
-
         xmlNodeSetContent(node, tmp);
         xmlFree(tmp);
     } else {
         xmlNodeSetContent(node, NULL);
     }
-
     return(0);
 }
 
@@ -732,12 +682,7 @@ xmlSecAddIDs(xmlDocPtr doc, xmlNodePtr cur, const xmlChar** ids) {
                         if(tmp == NULL) {
                             xmlAddID(NULL, doc, name, attr);
                         } else if(tmp != attr) {
-                            xmlSecError(XMLSEC_ERRORS_HERE,
-                                        NULL,
-                                        NULL,
-                                        XMLSEC_ERRORS_R_INVALID_DATA,
-                                        "id=%s already defined",
-                                        xmlSecErrorsSafeString(name));
+                            xmlSecInvalidStringDataError("id", name, "unique id (id already defined)", NULL);
                         }
                         xmlFree(name);
                     }
@@ -765,6 +710,8 @@ xmlSecAddIDs(xmlDocPtr doc, xmlNodePtr cur, const xmlChar** ids) {
  * @prefix:                     the prefix to add to the generated ID (can be NULL).
  * @len:                        the length of ID.
  *
+ * Deprecated and will be removed in the future releases, do not use.
+ *
  * Generates a unique ID in the format <@prefix>base64-encoded(@len random bytes)
  * and puts it in the attribute @attrName.
  *
@@ -782,22 +729,14 @@ xmlSecGenerateAndAddID(xmlNodePtr node, const xmlChar* attrName, const xmlChar*
     for(count = 0; count < 5; count++) {
         id = xmlSecGenerateID(prefix, len);
         if(id == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecGenerateID",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecGenerateID", NULL);
             return(-1);
         }
 
         if((node->doc == NULL) || (xmlGetID(node->doc, id) == NULL)) {
             /* this is a unique ID in the document and we can use it */
             if(xmlSetProp(node, attrName, id) == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSetProp",
-                            XMLSEC_ERRORS_R_XML_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecXmlError("xmlSetProp", NULL);
                 xmlFree(id);
                 return(-1);
             }
@@ -816,6 +755,8 @@ xmlSecGenerateAndAddID(xmlNodePtr node, const xmlChar* attrName, const xmlChar*
  * @prefix:                     the prefix to add to the generated ID (can be NULL).
  * @len:                        the length of ID.
  *
+ * Deprecated and will be removed in the future releases, do not use.
+ *
  * Generates a unique ID in the format <@prefix>base64-encoded(@len random bytes).
  * The caller is responsible for freeing returned string using @xmlFree function.
  *
@@ -836,11 +777,7 @@ xmlSecGenerateID(const xmlChar* prefix, xmlSecSize len) {
 
     ret = xmlSecBufferInitialize(&buffer, binLen + 1);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferInitialize", NULL);
         return(NULL);
     }
     xmlSecAssert2(xmlSecBufferGetData(&buffer) != NULL, NULL);
@@ -848,11 +785,7 @@ xmlSecGenerateID(const xmlChar* prefix, xmlSecSize len) {
 
     ret = xmlSecBufferSetSize(&buffer, binLen);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferSetSize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferSetSize", NULL);
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -866,11 +799,7 @@ xmlSecGenerateID(const xmlChar* prefix, xmlSecSize len) {
     /* base64 encode random bytes */
     res = xmlSecBase64Encode(xmlSecBufferGetData(&buffer), xmlSecBufferGetSize(&buffer), 0);
     if((res == NULL) || (xmlStrlen(res) == 0)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBase64Encode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBase64Encode", NULL);
         xmlSecBufferFinalize(&buffer);
         return(NULL);
     }
@@ -896,16 +825,19 @@ xmlSecGenerateID(const xmlChar* prefix, xmlSecSize len) {
         tmpLen = xmlStrlen(prefix) + xmlStrlen(res) + 1;
         tmp = xmlMalloc(tmpLen + 1);
         if(tmp == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlMalloc",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecMallocError(tmpLen + 1, NULL);
             xmlFree(res);
             return(NULL);
         }
 
-        xmlSecStrPrintf(tmp, tmpLen, BAD_CAST "%s%s", prefix, res);
+        ret = xmlStrPrintf(tmp, tmpLen, "%s%s", prefix, res);
+        if(ret < 0) {
+            xmlSecXmlError("xmlStrPrintf", NULL);
+            xmlFree(res);
+            xmlFree(tmp);
+            return(NULL);
+        }
+
         xmlFree(res);
         res = tmp;
     } else {
@@ -940,22 +872,15 @@ xmlSecCreateTree(const xmlChar* rootNodeName, const xmlChar* rootNodeNs) {
     /* create doc */
     doc = xmlNewDoc(BAD_CAST "1.0");
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDoc",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlNewDoc", NULL);
         return(NULL);
     }
 
     /* create root node */
     root = xmlNewDocNode(doc, NULL, rootNodeName, NULL);
     if(root == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewDocNode",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=Keys");
+        xmlSecXmlError2("xmlNewDocNode", NULL,
+                        "node=%s", rootNodeName);
         xmlFreeDoc(doc);
         return(NULL);
     }
@@ -964,12 +889,8 @@ xmlSecCreateTree(const xmlChar* rootNodeName, const xmlChar* rootNodeNs) {
     /* and set root node namespace */
     ns = xmlNewNs(root, rootNodeNs, NULL);
     if(ns == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNewNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "ns=%s",
-                    xmlSecErrorsSafeString(rootNodeNs));
+        xmlSecXmlError2("xmlNewNs", NULL,
+                        "ns=%s", xmlSecErrorsSafeString(rootNodeNs));
         xmlFreeDoc(doc);
         return(NULL);
     }
@@ -1044,12 +965,8 @@ xmlSecPrintXmlString(FILE * fd, const xmlChar * str) {
         xmlChar * encoded_str = NULL;
         encoded_str = xmlEncodeSpecialChars(NULL, str);
         if(encoded_str == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlEncodeSpecialChars",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "string=%s",
-                        xmlSecErrorsSafeString(str));
+            xmlSecXmlError2("xmlEncodeSpecialChars", NULL,
+                            "string=%s", xmlSecErrorsSafeString(str));
             return(-1);
         }
 
@@ -1060,12 +977,7 @@ xmlSecPrintXmlString(FILE * fd, const xmlChar * str) {
     }
 
     if(res < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "fprintf",
-                    XMLSEC_ERRORS_R_IO_FAILED,
-                    "res=%d,errno=%d",
-                    res, errno);
+        xmlSecIOError("fprintf", NULL, NULL);
         return(-1);
     }
     return(res);
@@ -1087,6 +999,7 @@ xmlChar*
 xmlSecGetQName(xmlNodePtr node, const xmlChar* href, const xmlChar* local) {
     xmlChar* qname;
     xmlNsPtr ns;
+    int ret;
 
     xmlSecAssert2(node != NULL, NULL);
     xmlSecAssert2(local != NULL, NULL);
@@ -1095,13 +1008,8 @@ xmlSecGetQName(xmlNodePtr node, const xmlChar* href, const xmlChar* local) {
      * it might cause collisions */
     ns = xmlSearchNsByHref(node->doc, node, href);
     if((ns == NULL) && (href != NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSearchNsByHref",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s,href=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(href));
+        xmlSecXmlError2("xmlSearchNsByHref", NULL,
+                        "node=%s", xmlSecErrorsSafeString(node->name));
         return(NULL);
     }
 
@@ -1111,24 +1019,20 @@ xmlSecGetQName(xmlNodePtr node, const xmlChar* href, const xmlChar* local) {
         len = xmlStrlen(local) + xmlStrlen(ns->prefix) + 4;
         qname = xmlMalloc(len);
         if(qname == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlMalloc",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(node->name));
+            xmlSecMallocError(len, NULL);
+            return(NULL);
+        }
+
+        ret = xmlStrPrintf(qname, len, "%s:%s", ns->prefix, local);
+        if(ret < 0) {
+            xmlSecXmlError("xmlStrPrintf", NULL);
+            xmlFree(qname);
             return(NULL);
         }
-        xmlSecStrPrintf(qname, len, BAD_CAST "%s:%s", ns->prefix, local);
     } else {
         qname = xmlStrdup(local);
         if(qname == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlStrdup",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(node->name));
+            xmlSecStrdupError(local, NULL);
             return(NULL);
         }
     }
@@ -1230,13 +1134,7 @@ xmlSecQName2IntegerGetIntegerFromString(xmlSecQName2IntegerInfoConstPtr info,
     if(qnameLocalPart != NULL) {
         qnamePrefix = xmlStrndup(qname, qnameLocalPart - qname);
         if(qnamePrefix == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlStrndup",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "node=%s,value=%s",
-                        xmlSecErrorsSafeString(node->name),
-                        xmlSecErrorsSafeString(qname));
+            xmlSecStrdupError(qname, NULL);
             return(-1);
         }
         qnameLocalPart++;
@@ -1248,13 +1146,8 @@ xmlSecQName2IntegerGetIntegerFromString(xmlSecQName2IntegerInfoConstPtr info,
     /* search namespace href */
     ns = xmlSearchNs(node->doc, node, qnamePrefix);
     if((ns == NULL) && (qnamePrefix != NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSearchNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s,qnamePrefix=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(qnamePrefix));
+        xmlSecXmlError2("xmlSearchNs", NULL,
+                        "node=%s", xmlSecErrorsSafeString(node->name));
         if(qnamePrefix != NULL) {
             xmlFree(qnamePrefix);
         }
@@ -1265,14 +1158,11 @@ xmlSecQName2IntegerGetIntegerFromString(xmlSecQName2IntegerInfoConstPtr info,
     /* and finally search for integer */
     ret = xmlSecQName2IntegerGetInteger(info, qnameHref, qnameLocalPart, intValue);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetInteger",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,qnameLocalPart=%s,qnameHref=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(qnameLocalPart),
-                    xmlSecErrorsSafeString(qnameHref));
+        xmlSecInternalError4("xmlSecQName2IntegerGetInteger", NULL,
+                             "node=%s,qnameLocalPart=%s,qnameHref=%s",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(qnameLocalPart),
+                             xmlSecErrorsSafeString(qnameHref));
         if(qnamePrefix != NULL) {
             xmlFree(qnamePrefix);
         }
@@ -1307,13 +1197,10 @@ xmlSecQName2IntegerGetStringFromInteger(xmlSecQName2IntegerInfoConstPtr info,
 
     qnameInfo = xmlSecQName2IntegerGetInfo(info, intValue);
     if(qnameInfo == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetInfo",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,intValue=%d",
-                    xmlSecErrorsSafeString(node->name),
-                    intValue);
+        xmlSecInternalError3("xmlSecQName2IntegerGetInfo", NULL,
+                             "node=%s,intValue=%d",
+                             xmlSecErrorsSafeString(node->name),
+                             intValue);
         return(NULL);
     }
 
@@ -1342,25 +1229,18 @@ xmlSecQName2IntegerNodeRead(xmlSecQName2IntegerInfoConstPtr info, xmlNodePtr nod
 
     content = xmlNodeGetContent(node);
     if(content == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlNodeGetContent",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s",
-                    xmlSecErrorsSafeString(node->name));
+        xmlSecXmlError2("xmlNodeGetContent", NULL,
+                        "node=%s", xmlSecErrorsSafeString(node->name));
         return(-1);
     }
     /* todo: trim content? */
 
     ret = xmlSecQName2IntegerGetIntegerFromString(info, node, content, intValue);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetIntegerFromString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,value=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(content));
+        xmlSecInternalError3("xmlSecQName2IntegerGetIntegerFromString", NULL,
+                             "node=%s,value=%s",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(content));
         xmlFree(content);
         return(-1);
     }
@@ -1394,25 +1274,19 @@ xmlSecQName2IntegerNodeWrite(xmlSecQName2IntegerInfoConstPtr info, xmlNodePtr no
     /* find and build qname */
     qname = xmlSecQName2IntegerGetStringFromInteger(info, node, intValue);
     if(qname == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetStringFromInteger",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,intValue=%d",
-                    xmlSecErrorsSafeString(node->name),
-                    intValue);
+        xmlSecInternalError3("xmlSecQName2IntegerGetStringFromInteger", NULL,
+                             "node=%s,intValue=%d",
+                             xmlSecErrorsSafeString(node->name),
+                             intValue);
         return(-1);
     }
 
     cur = xmlSecAddChild(node, nodeName, nodeNs);
     if(cur == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChild",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,intValue=%d",
-                    xmlSecErrorsSafeString(nodeName),
-                    intValue);
+        xmlSecInternalError3("xmlSecAddChild", NULL,
+                             "node=%s,intValue=%d",
+                             xmlSecErrorsSafeString(nodeName),
+                             intValue);
         xmlFree(qname);
         return(-1);
     }
@@ -1447,27 +1321,19 @@ xmlSecQName2IntegerAttributeRead(xmlSecQName2IntegerInfoConstPtr info, xmlNodePt
 
     attrValue = xmlGetProp(node, attrName);
     if(attrValue == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlGetProp",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s,attrValue=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(attrName));
+        xmlSecXmlError2("xmlGetProp", NULL,
+                        "node=%s", xmlSecErrorsSafeString(node->name));
         return(-1);
     }
     /* todo: trim value? */
 
     ret = xmlSecQName2IntegerGetIntegerFromString(info, node, attrValue, intValue);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetIntegerFromString",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,attrName=%s,attrValue=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(attrName),
-                    xmlSecErrorsSafeString(attrValue));
+        xmlSecInternalError4("xmlSecQName2IntegerGetIntegerFromString", NULL,
+                             "node=%s,attrName=%s,attrValue=%s",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(attrName),
+                             xmlSecErrorsSafeString(attrValue));
         xmlFree(attrValue);
         return(-1);
     }
@@ -1501,27 +1367,21 @@ xmlSecQName2IntegerAttributeWrite(xmlSecQName2IntegerInfoConstPtr info, xmlNodeP
     /* find and build qname */
     qname = xmlSecQName2IntegerGetStringFromInteger(info, node, intValue);
     if(qname == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2IntegerGetStringFromInteger",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,attrName=%s,intValue=%d",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(attrName),
-                    intValue);
+        xmlSecInternalError4("xmlSecQName2IntegerGetStringFromInteger", NULL,
+                             "node=%s,attrName=%s,intValue=%d",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(attrName),
+                             intValue);
         return(-1);
     }
 
     attr = xmlSetProp(node, attrName, qname);
     if(attr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecAddChildNode",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,attrName=%s,intValue=%d",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(attrName),
-                    intValue);
+        xmlSecInternalError4("xmlSecAddChildNode", NULL,
+                             "node=%s,attrName=%s,intValue=%d",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(attrName),
+                             intValue);
         xmlFree(qname);
         return(-1);
     }
@@ -1678,13 +1538,7 @@ xmlSecQName2BitMaskGetBitMaskFromString(xmlSecQName2BitMaskInfoConstPtr info,
     if(qnameLocalPart != NULL) {
         qnamePrefix = xmlStrndup(qname, qnameLocalPart - qname);
         if(qnamePrefix == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlStrndup",
-                        XMLSEC_ERRORS_R_MALLOC_FAILED,
-                        "node=%s,value=%s",
-                        xmlSecErrorsSafeString(node->name),
-                        xmlSecErrorsSafeString(qname));
+            xmlSecStrdupError(qname, NULL);
             return(-1);
         }
         qnameLocalPart++;
@@ -1696,13 +1550,8 @@ xmlSecQName2BitMaskGetBitMaskFromString(xmlSecQName2BitMaskInfoConstPtr info,
     /* search namespace href */
     ns = xmlSearchNs(node->doc, node, qnamePrefix);
     if((ns == NULL) && (qnamePrefix != NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSearchNs",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "node=%s,qnamePrefix=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(qnamePrefix));
+        xmlSecXmlError2("xmlSearchNs", NULL,
+                        "node=%s", xmlSecErrorsSafeString(node->name));
         if(qnamePrefix != NULL) {
             xmlFree(qnamePrefix);
         }
@@ -1713,14 +1562,11 @@ xmlSecQName2BitMaskGetBitMaskFromString(xmlSecQName2BitMaskInfoConstPtr info,
     /* and finally search for integer */
     ret = xmlSecQName2BitMaskGetBitMask(info, qnameHref, qnameLocalPart, mask);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2BitMaskGetBitMask",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,qnameLocalPart=%s,qnameHref=%s",
-                    xmlSecErrorsSafeString(node->name),
-                    xmlSecErrorsSafeString(qnameLocalPart),
-                    xmlSecErrorsSafeString(qnameHref));
+        xmlSecInternalError4("xmlSecQName2BitMaskGetBitMask", NULL,
+                             "node=%s,qnameLocalPart=%s,qnameHref=%s",
+                             xmlSecErrorsSafeString(node->name),
+                             xmlSecErrorsSafeString(qnameLocalPart),
+                             xmlSecErrorsSafeString(qnameHref));
         if(qnamePrefix != NULL) {
             xmlFree(qnamePrefix);
         }
@@ -1755,13 +1601,10 @@ xmlSecQName2BitMaskGetStringFromBitMask(xmlSecQName2BitMaskInfoConstPtr info,
 
     qnameInfo = xmlSecQName2BitMaskGetInfo(info, mask);
     if(qnameInfo == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecQName2BitMaskGetInfo",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "node=%s,mask=%d",
-                    xmlSecErrorsSafeString(node->name),
-                    mask);
+        xmlSecInternalError3("xmlSecQName2BitMaskGetInfo", NULL,
+                             "node=%s,mask=%d",
+                             xmlSecErrorsSafeString(node->name),
+                             mask);
         return(NULL);
     }
 
@@ -1802,23 +1645,15 @@ xmlSecQName2BitMaskNodesRead(xmlSecQName2BitMaskInfoConstPtr info, xmlNodePtr* n
     while((cur != NULL) && (xmlSecCheckNodeName(cur, nodeName, nodeNs))) {
         content = xmlNodeGetContent(cur);
         if(content == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlNodeGetContent",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "node=%s",
-                        xmlSecErrorsSafeString(cur->name));
+            xmlSecXmlError2("xmlNodeGetContent", NULL,
+                            "node=%s", xmlSecErrorsSafeString(cur->name));
             return(-1);
         }
 
         ret = xmlSecQName2BitMaskGetBitMaskFromString(info, cur, content, &tmp);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecQName2BitMaskGetBitMaskFromString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "value=%s",
-                        xmlSecErrorsSafeString(content));
+            xmlSecInternalError2("xmlSecQName2BitMaskGetBitMaskFromString", NULL,
+                                 "value=%s", xmlSecErrorsSafeString(content));
             xmlFree(content);
             return(-1);
         }
@@ -1826,12 +1661,8 @@ xmlSecQName2BitMaskNodesRead(xmlSecQName2BitMaskInfoConstPtr info, xmlNodePtr* n
 
         if((stopOnUnknown != 0) && (tmp == 0)) {
             /* todo: better error */
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecQName2BitMaskGetBitMaskFromString",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "value=%s",
-                        xmlSecErrorsSafeString(content));
+            xmlSecInternalError2("xmlSecQName2BitMaskGetBitMaskFromString", NULL,
+                                 "value=%s", xmlSecErrorsSafeString(content));
             return(-1);
         }
 
@@ -1874,23 +1705,15 @@ xmlSecQName2BitMaskNodesWrite(xmlSecQName2BitMaskInfoConstPtr info, xmlNodePtr n
 
             qname = xmlSecGetQName(node, info[ii].qnameHref, info[ii].qnameLocalPart);
             if(qname == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecGetQName",
-                            XMLSEC_ERRORS_R_XML_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(nodeName));
+                xmlSecXmlError2("xmlSecGetQName", NULL,
+                                "node=%s", xmlSecErrorsSafeString(nodeName));
                 return(-1);
             }
 
             cur = xmlSecAddChild(node, nodeName, nodeNs);
             if(cur == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            NULL,
-                            "xmlSecAddChild",
-                            XMLSEC_ERRORS_R_XML_FAILED,
-                            "node=%s",
-                            xmlSecErrorsSafeString(nodeName));
+                xmlSecXmlError2("xmlSecAddChild", NULL,
+                                "node=%s", xmlSecErrorsSafeString(nodeName));
                 xmlFree(qname);
                 return(-1);
             }
diff --git a/src/xpath.c b/src/xpath.c
index 8b0cf79..1ddc08a 100644
--- a/src/xpath.c
+++ b/src/xpath.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * XPath transform
@@ -86,12 +86,7 @@ xmlSecXPathDataCreate(xmlSecXPathDataType type) {
 
     data = (xmlSecXPathDataPtr) xmlMalloc(sizeof(xmlSecXPathData));
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "sizeof(xmlSecXPathData)=%d",
-                    (int)sizeof(xmlSecXPathData));
+        xmlSecMallocError(sizeof(xmlSecXPathData), NULL);
         return(NULL);
     }
     memset(data, 0, sizeof(xmlSecXPathData));
@@ -105,11 +100,7 @@ xmlSecXPathDataCreate(xmlSecXPathDataType type) {
     case xmlSecXPathDataTypeXPath2:
         data->ctx = xmlXPathNewContext(NULL); /* we'll set doc in the context later */
         if(data->ctx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlXPathNewContext",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlXPathNewContext", NULL);
             xmlSecXPathDataDestroy(data);
             return(NULL);
         }
@@ -117,11 +108,7 @@ xmlSecXPathDataCreate(xmlSecXPathDataType type) {
     case xmlSecXPathDataTypeXPointer:
         data->ctx = xmlXPtrNewContext(NULL, NULL, NULL); /* we'll set doc in the context later */
         if(data->ctx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlXPtrNewContext",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlXPtrNewContext", NULL);
             xmlSecXPathDataDestroy(data);
             return(NULL);
         }
@@ -154,11 +141,7 @@ xmlSecXPathDataSetExpr(xmlSecXPathDataPtr data, const xmlChar* expr) {
 
     data->expr = xmlStrdup(expr);
     if(data->expr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    NULL,
-                    XMLSEC_ERRORS_R_STRDUP_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecStrdupError(expr, NULL);
         return(-1);
     }
     return(0);
@@ -182,13 +165,8 @@ xmlSecXPathDataRegisterNamespaces(xmlSecXPathDataPtr data, xmlNodePtr node) {
             if((ns->prefix != NULL) && (xmlXPathNsLookup(data->ctx, ns->prefix) == NULL)){
                 ret = xmlXPathRegisterNs(data->ctx, ns->prefix, ns->href);
                 if(ret != 0) {
-                    xmlSecError(XMLSEC_ERRORS_HERE,
-                                NULL,
-                                "xmlXPathRegisterNs",
-                                XMLSEC_ERRORS_R_XML_FAILED,
-                                "href=%s;prefix=%s",
-                                xmlSecErrorsSafeString(ns->href),
-                                xmlSecErrorsSafeString(ns->prefix));
+                    xmlSecXmlError2("xmlXPathRegisterNs", NULL,
+                                    "prefix=%s", xmlSecErrorsSafeString(ns->prefix));
                     return(-1);
                 }
             }
@@ -209,22 +187,14 @@ xmlSecXPathDataNodeRead(xmlSecXPathDataPtr data, xmlNodePtr node) {
 
     ret = xmlSecXPathDataRegisterNamespaces (data, node);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecXPathDataRegisterNamespaces",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataRegisterNamespaces", NULL);
         return(-1);
     }
 
     /* read node content and set expr */
     data->expr = xmlNodeGetContent(node);
     if(data->expr == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(node)),
-                    XMLSEC_ERRORS_R_INVALID_NODE_CONTENT,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInvalidNodeContentError(node, NULL, "empty");
         return(-1);
     }
 
@@ -258,24 +228,16 @@ xmlSecXPathDataExecute(xmlSecXPathDataPtr data, xmlDocPtr doc, xmlNodePtr hereNo
     case xmlSecXPathDataTypeXPath2:
         xpathObj = xmlXPathEvalExpression(data->expr, data->ctx);
         if(xpathObj == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlXPathEvalExpression",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "expr=%s",
-                        xmlSecErrorsSafeString(data->expr));
+            xmlSecXmlError2("xmlXPathEvalExpression", NULL,
+                            "expr=%s", xmlSecErrorsSafeString(data->expr));
             return(NULL);
         }
         break;
     case xmlSecXPathDataTypeXPointer:
         xpathObj = xmlXPtrEval(data->expr, data->ctx);
         if(xpathObj == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlXPtrEval",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "expr=%s",
-                        xmlSecErrorsSafeString(data->expr));
+            xmlSecXmlError2("xmlXPtrEval", NULL,
+                            "expr=%s", xmlSecErrorsSafeString(data->expr));
             return(NULL);
         }
         break;
@@ -288,23 +250,15 @@ xmlSecXPathDataExecute(xmlSecXPathDataPtr data, xmlDocPtr doc, xmlNodePtr hereNo
     	xpathObj->nodesetval = xmlXPathNodeSetCreate(NULL);
     	if(xpathObj->nodesetval == NULL) {
     		xmlXPathFreeObject(xpathObj);
-    		xmlSecError(XMLSEC_ERRORS_HERE,
-        				NULL,
-                        "xmlXPathNodeSetCreate",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "expr=%s",
-                        xmlSecErrorsSafeString(data->expr));
+            xmlSecXmlError2("xmlXPathNodeSetCreate", NULL,
+                            "expr=%s", xmlSecErrorsSafeString(data->expr));
     		return(NULL);
     	}
     }
 
     nodes = xmlSecNodeSetCreate(doc, xpathObj->nodesetval, data->nodeSetType);
     if(nodes == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecNodeSetCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    "type=%d", data->nodeSetType);
+        xmlSecInternalError2("xmlSecNodeSetCreate", NULL, "type=%d", data->nodeSetType);
         xmlXPathFreeObject(xpathObj);
         return(NULL);
     }
@@ -357,11 +311,7 @@ xmlSecXPathDataListExecute(xmlSecPtrListPtr dataList, xmlDocPtr doc,
     for(pos = 0; pos < xmlSecPtrListGetSize(dataList); ++pos) {
         data = (xmlSecXPathDataPtr)xmlSecPtrListGetItem(dataList, pos);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecPtrListGetItem",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "pos=%d", pos);
+            xmlSecInternalError2("xmlSecPtrListGetItem", NULL, "pos=%d", pos);
             if((res != NULL) && (res != nodes)) {
                 xmlSecNodeSetDestroy(res);
             }
@@ -370,11 +320,7 @@ xmlSecXPathDataListExecute(xmlSecPtrListPtr dataList, xmlDocPtr doc,
 
         tmp = xmlSecXPathDataExecute(data, doc, hereNode);
         if(tmp == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecXPathDataExecute",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecXPathDataExecute", NULL);
             if((res != NULL) && (res != nodes)) {
                 xmlSecNodeSetDestroy(res);
             }
@@ -383,11 +329,8 @@ xmlSecXPathDataListExecute(xmlSecPtrListPtr dataList, xmlDocPtr doc,
 
         tmp2 = xmlSecNodeSetAdd(res, tmp, data->nodeSetOp);
         if(tmp2 == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        NULL,
-                        "xmlSecNodeSetAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "xmlSecNodeSetIntersection");
+            xmlSecInternalError2("xmlSecNodeSetAdd", NULL,
+                                 "nodeSetOp=%d", (int)data->nodeSetOp);
             if((res != NULL) && (res != nodes)) {
                 xmlSecNodeSetDestroy(res);
             }
@@ -436,11 +379,8 @@ xmlSecTransformXPathInitialize(xmlSecTransformPtr transform) {
 
     ret = xmlSecPtrListInitialize(dataList, xmlSecXPathDataListId);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListInitialize",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListInitialize",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -480,11 +420,8 @@ xmlSecTransformXPathExecute(xmlSecTransformPtr transform, int last,
     transform->outNodes = xmlSecXPathDataListExecute(dataList, doc,
                                 transform->hereNode, transform->inNodes);
     if(transform->outNodes == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataExecute",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataExecute",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -547,6 +484,7 @@ xmlSecTransformXPathNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
     xmlSecXPathDataPtr data;
     xmlNodePtr cur;
     xmlChar* tmp;
+    int tmpSize;
     int ret;
 
     xmlSecAssert2(xmlSecTransformCheckId(transform, xmlSecTransformXPathId), -1);
@@ -560,33 +498,23 @@ xmlSecTransformXPathNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
     /* there is only one required node */
     cur = xmlSecGetNextElementNode(node->children);
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeXPath, xmlSecDSigNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeXPath));
+        xmlSecInvalidNodeError(cur, xmlSecNodeXPath,
+                               xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* read information from the node */
     data = xmlSecXPathDataCreate(xmlSecXPathDataTypeXPath);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataCreate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecXPathDataNodeRead(data, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataNodeRead",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
@@ -594,29 +522,27 @@ xmlSecTransformXPathNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
     /* append it to the list */
     ret = xmlSecPtrListAdd(dataList, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
 
     /* create full XPath expression */
     xmlSecAssert2(data->expr != NULL, -1);
-    tmp = (xmlChar*) xmlMalloc(sizeof(xmlChar) * (xmlStrlen(data->expr) +
-                                                  strlen(xpathPattern) + 1));
+    tmpSize = xmlStrlen(data->expr) + strlen(xpathPattern) + 1;
+    tmp = (xmlChar*) xmlMalloc(sizeof(xmlChar) * tmpSize);
     if(tmp == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    "size=%d",
-                    (int)(xmlStrlen(data->expr) + strlen(xpathPattern) + 1));
+        xmlSecMallocError(sizeof(xmlChar) * tmpSize,
+                          xmlSecTransformGetName(transform));
         return(-1);
     }
-    sprintf((char*)tmp, xpathPattern, (char*)data->expr);
+    ret = xmlStrPrintf(tmp, tmpSize, xpathPattern, (char*)data->expr);
+    if(ret < 0) {
+       xmlSecXmlError("xmlStrPrintf", xmlSecTransformGetName(transform));
+       xmlFree(tmp);
+       return(-1);
+    }
     xmlFree(data->expr);
     data->expr = tmp;
 
@@ -627,11 +553,7 @@ xmlSecTransformXPathNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xmlS
     /* check that we have nothing else */
     cur = xmlSecGetNextElementNode(cur->next);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -706,21 +628,15 @@ xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
         /* read information from the node */
         data = xmlSecXPathDataCreate(xmlSecXPathDataTypeXPath2);
         if(data == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecXPathDataCreate",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecXPathDataCreate",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ret = xmlSecXPathDataNodeRead(data, cur);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecXPathDataNodeRead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecXPathDataNodeRead",
+                                xmlSecTransformGetName(transform));
             xmlSecXPathDataDestroy(data);
             return(-1);
         }
@@ -728,11 +644,8 @@ xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
         /* append it to the list */
         ret = xmlSecPtrListAdd(dataList, data);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecPtrListAdd",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecPtrListAdd",
+                                xmlSecTransformGetName(transform));
             xmlSecXPathDataDestroy(data);
             return(-1);
         }
@@ -741,12 +654,9 @@ xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
         data->nodeSetType = xmlSecNodeSetTree;
         op = xmlGetProp(cur, xmlSecAttrFilter);
         if(op == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecAttrFilter),
-                        XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                        "node=%s",
-                        xmlSecErrorsSafeString(xmlSecNodeGetName(cur)));
+            xmlSecInvalidNodeAttributeError(cur, xmlSecAttrFilter,
+                                            xmlSecTransformGetName(transform),
+                                            "empty");
             return(-1);
         }
         if(xmlStrEqual(op, xmlSecXPath2FilterIntersect)) {
@@ -756,12 +666,9 @@ xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
         } else if(xmlStrEqual(op, xmlSecXPath2FilterUnion)) {
             data->nodeSetOp = xmlSecNodeSetUnion;
         } else {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        xmlSecErrorsSafeString(xmlSecAttrFilter),
-                        XMLSEC_ERRORS_R_INVALID_NODE_ATTRIBUTE,
-                        "filter=%s",
-                        xmlSecErrorsSafeString(op));
+            xmlSecInvalidNodeAttributeError(cur, xmlSecAttrFilter,
+                                            xmlSecTransformGetName(transform),
+                                            "unknown");
             xmlFree(op);
             return(-1);
         }
@@ -772,11 +679,7 @@ xmlSecTransformXPath2NodeRead(xmlSecTransformPtr transform, xmlNodePtr node, xml
 
     /* check that we have nothing else */
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -861,32 +764,23 @@ xmlSecTransformXPointerSetExpr(xmlSecTransformPtr transform, const xmlChar* expr
 
     data = xmlSecXPathDataCreate(xmlSecXPathDataTypeXPointer);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataCreate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecXPathDataRegisterNamespaces(data, hereNode);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataRegisterNamespaces",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataRegisterNamespaces",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
 
     ret = xmlSecXPathDataSetExpr(data, expr);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataSetExpr",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataSetExpr",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
@@ -894,11 +788,8 @@ xmlSecTransformXPointerSetExpr(xmlSecTransformPtr transform, const xmlChar* expr
     /* append it to the list */
     ret = xmlSecPtrListAdd(dataList, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
@@ -928,33 +819,23 @@ xmlSecTransformXPointerNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, x
     /* there is only one required node */
     cur = xmlSecGetNextElementNode(node->children);
     if((cur == NULL) || (!xmlSecCheckNodeName(cur, xmlSecNodeXPointer, xmlSecXPointerNs))) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_INVALID_NODE,
-                    "expected=%s",
-                    xmlSecErrorsSafeString(xmlSecNodeXPath));
+        xmlSecInvalidNodeError(cur, xmlSecNodeXPointer,
+                               xmlSecTransformGetName(transform));
         return(-1);
     }
 
     /* read information from the node */
     data = xmlSecXPathDataCreate(xmlSecXPathDataTypeXPointer);
     if(data == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataCreate",
+                            xmlSecTransformGetName(transform));
         return(-1);
     }
 
     ret = xmlSecXPathDataNodeRead(data, cur);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecXPathDataNodeRead",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXPathDataNodeRead",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
@@ -962,11 +843,8 @@ xmlSecTransformXPointerNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, x
     /* append it to the list */
     ret = xmlSecPtrListAdd(dataList, data);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecPtrListAdd",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecPtrListAdd",
+                            xmlSecTransformGetName(transform));
         xmlSecXPathDataDestroy(data);
         return(-1);
     }
@@ -978,11 +856,7 @@ xmlSecTransformXPointerNodeRead(xmlSecTransformPtr transform, xmlNodePtr node, x
     /* check that we have nothing else */
     cur = xmlSecGetNextElementNode(cur->next);
     if(cur != NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    xmlSecErrorsSafeString(xmlSecNodeGetName(cur)),
-                    XMLSEC_ERRORS_R_UNEXPECTED_NODE,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecUnexpectedNodeError(cur, xmlSecTransformGetName(transform));
         return(-1);
     }
     return(0);
@@ -1073,11 +947,7 @@ xmlSecTransformVisa3DHackSetID(xmlSecTransformPtr transform, const xmlChar* id)
 
     (*idPtr) = xmlStrdup(id);
     if((*idPtr) == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlStrdup",
-                    XMLSEC_ERRORS_R_MALLOC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecStrdupError(id, xmlSecTransformGetName(transform));
         return(-1);
     }
 
@@ -1128,33 +998,22 @@ xmlSecTransformVisa3DHackExecute(xmlSecTransformPtr transform, int last,
 
     attr = xmlGetID(doc, (*idPtr));
     if((attr == NULL) || (attr->parent == NULL)) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlGetID",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "id=\"%s\"",
-                    xmlSecErrorsSafeString((*idPtr)));
+        xmlSecXmlError2("xmlGetID", xmlSecTransformGetName(transform),
+                        "id=\"%s\"", xmlSecErrorsSafeString(*idPtr));
         return(-1);
     }
 
     nodeSet = xmlXPathNodeSetCreate(attr->parent);
     if(nodeSet == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlXPathNodeSetCreate",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    "id=\"%s\"",
-                    xmlSecErrorsSafeString((*idPtr)));
+        xmlSecXmlError2("xmlXPathNodeSetCreate", xmlSecTransformGetName(transform),
+                        "id=\"%s\"", xmlSecErrorsSafeString(*idPtr));
         return(-1);
     }
 
     transform->outNodes = xmlSecNodeSetCreate(doc, nodeSet, xmlSecNodeSetTreeWithoutComments);
     if(transform->outNodes == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecNodeSetCreate",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecNodeSetCreate",
+                            xmlSecTransformGetName(transform));
         xmlXPathFreeNodeSet(nodeSet);
         return(-1);
     }
diff --git a/src/xslt.c b/src/xslt.c
index e547058..c7916ed 100644
--- a/src/xslt.c
+++ b/src/xslt.c
@@ -1,4 +1,4 @@
-/**
+/*
  * XML Security Library (http://www.aleksey.com/xmlsec).
  *
  * XSLT Transform (http://www.w3.org/TR/xmldsig-core/#sec-XSLT)
@@ -236,11 +236,7 @@ xmlSecXsltReadNode(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTransfor
     /* read content in the buffer */
     buffer = xmlBufferCreate();
     if(buffer == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlBufferCreate",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlBufferCreate", xmlSecTransformGetName(transform));
         return(-1);
     }
     cur = node->children;
@@ -253,11 +249,8 @@ xmlSecXsltReadNode(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTransfor
     doc = xmlSecParseMemory(xmlBufferContent(buffer),
                              xmlBufferLength(buffer), 1);
     if(doc == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xmlSecParseMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecParseMemory",
+                            xmlSecTransformGetName(transform));
         xmlBufferFree(buffer);
         return(-1);
     }
@@ -265,11 +258,8 @@ xmlSecXsltReadNode(xmlSecTransformPtr transform, xmlNodePtr node, xmlSecTransfor
     /* pre-process stylesheet */
     ctx->xslt = xsltParseStylesheetDoc(doc);
     if(ctx->xslt == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    "xsltParseStylesheetDoc",
-                    XMLSEC_ERRORS_R_XSLT_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXsltError("xsltParseStylesheetDoc", NULL, xmlSecTransformGetName(transform));
+
         /* after parsing stylesheet doc is assigned
          * to it and will be freed by xsltFreeStylesheet() */
         xmlFreeDoc(doc);
@@ -301,11 +291,7 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
 
         ctx->parserCtx = xmlCreatePushParserCtxt(NULL, NULL, NULL, 0, NULL);
         if(ctx->parserCtx == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlCreatePushParserCtxt",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlCreatePushParserCtxt", xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -317,11 +303,7 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
     } else if(transform->status == xmlSecTransformStatusFinished) {
         return(0);
     } else if(transform->status != xmlSecTransformStatusWorking) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     xmlSecAssert2(transform->status == xmlSecTransformStatusWorking, -1);
@@ -331,11 +313,10 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
     if((data != NULL) && (dataSize > 0)) {
         ret = xmlParseChunk(ctx->parserCtx, (const char*)data, dataSize, 0);
         if(ret != 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        "size=%d", dataSize);
+            xmlSecXmlParserError2("xmlParseChunk", ctx->parserCtx,
+                                  xmlSecTransformGetName(transform),
+                                  "size=%d", dataSize);
+
             return(-1);
         }
     }
@@ -349,11 +330,8 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
         /* finalize */
         ret = xmlParseChunk(ctx->parserCtx, NULL, 0, 1);
         if((ret != 0) || (ctx->parserCtx->myDoc == NULL)) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlParseChunk",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlParserError("xmlParseChunk", ctx->parserCtx,
+                                 xmlSecTransformGetName(transform));
             return(-1);
         }
 
@@ -363,11 +341,8 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
 
         docOut = xmlSecXsApplyStylesheet(ctx, docIn);
         if(docOut == NULL) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecXsApplyStylesheet",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecXsApplyStylesheet",
+                                xmlSecTransformGetName(transform));
             xmlFreeDoc(docIn);
             return(-1);
         }
@@ -376,22 +351,16 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
         if(transform->next != NULL) {
             output = xmlSecTransformCreateOutputBuffer(transform->next, transformCtx);
             if(output == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecTransformCreateOutputBuffer",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecTransformCreateOutputBuffer",
+                                    xmlSecTransformGetName(transform));
                 xmlFreeDoc(docOut);
                 return(-1);
             }
         } else {
             output = xmlSecBufferCreateOutputBuffer(&(transform->outBuf));
             if(output == NULL) {
-                xmlSecError(XMLSEC_ERRORS_HERE,
-                            xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                            "xmlSecBufferCreateOutputBuffer",
-                            XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                            XMLSEC_ERRORS_NO_MESSAGE);
+                xmlSecInternalError("xmlSecBufferCreateOutputBuffer",
+                                    xmlSecTransformGetName(transform));
                 xmlFreeDoc(docOut);
                 return(-1);
             }
@@ -399,22 +368,14 @@ xmlSecXsltPushBin(xmlSecTransformPtr transform, const xmlSecByte* data,
 
         ret = xsltSaveResultTo(output, docOut, ctx->xslt);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xsltSaveResultTo",
-                        XMLSEC_ERRORS_R_XSLT_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXsltError("xsltParseStylesheetDoc", ctx->xslt, xmlSecTransformGetName(transform));
             xmlOutputBufferClose(output);
             xmlFreeDoc(docOut);
             return(-1);
         }
         ret = xmlOutputBufferClose(output);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlOutputBufferClose",
-                        XMLSEC_ERRORS_R_XML_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecXmlError("xmlOutputBufferClose", xmlSecTransformGetName(transform));
             xmlFreeDoc(docOut);
             return(-1);
         }
@@ -459,21 +420,16 @@ xmlSecXsltExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr
 
         ret = xmlSecXslProcess(ctx, in, out);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecXslProcess",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        XMLSEC_ERRORS_NO_MESSAGE);
+            xmlSecInternalError("xmlSecXslProcess",
+                                xmlSecTransformGetName(transform));
             return(-1);
         }
 
         ret = xmlSecBufferRemoveHead(in, inSize);
         if(ret < 0) {
-            xmlSecError(XMLSEC_ERRORS_HERE,
-                        xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                        "xmlSecBufferRemoveHead",
-                        XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                        "size=%d", inSize);
+            xmlSecInternalError2("xmlSecBufferRemoveHead",
+                                 xmlSecTransformGetName(transform),
+                                 "size=%d", inSize);
             return(-1);
         }
 
@@ -482,11 +438,7 @@ xmlSecXsltExecute(xmlSecTransformPtr transform, int last, xmlSecTransformCtxPtr
         /* the only way we can get here is if there is no input */
         xmlSecAssert2(inSize == 0, -1);
     } else {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    xmlSecErrorsSafeString(xmlSecTransformGetName(transform)),
-                    NULL,
-                    XMLSEC_ERRORS_R_INVALID_STATUS,
-                    "status=%d", transform->status);
+        xmlSecInvalidTransfromStatusError(transform);
         return(-1);
     }
     return(0);
@@ -507,52 +459,32 @@ xmlSecXslProcess(xmlSecXsltCtxPtr ctx, xmlSecBufferPtr in, xmlSecBufferPtr out)
 
     docIn = xmlSecParseMemory(xmlSecBufferGetData(in), xmlSecBufferGetSize(in), 1);
     if(docIn == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecParseMemory",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecParseMemory", NULL);
         goto done;
     }
 
     docOut = xmlSecXsApplyStylesheet(ctx, docIn);
     if(docOut == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecXsApplyStylesheet",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecXsApplyStylesheet", NULL);
         goto done;
     }
 
     output = xmlSecBufferCreateOutputBuffer(out);
     if(output == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlSecBufferCreateOutputBuffer",
-                    XMLSEC_ERRORS_R_XMLSEC_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecInternalError("xmlSecBufferCreateOutputBuffer", NULL);
         goto done;
     }
 
     ret = xsltSaveResultTo(output, docOut, ctx->xslt);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xsltSaveResultTo",
-                    XMLSEC_ERRORS_R_XSLT_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXsltError("xsltSaveResultTo", ctx->xslt, NULL);
         goto done;
     }
 
     ret = xmlOutputBufferClose(output);
     output = NULL;
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xmlOutputBufferClose",
-                    XMLSEC_ERRORS_R_XML_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXmlError("xmlOutputBufferClose", NULL);
         return(-1);
     }
 
@@ -578,32 +510,20 @@ xmlSecXsApplyStylesheet(xmlSecXsltCtxPtr ctx, xmlDocPtr doc) {
 
     xsltCtx = xsltNewTransformContext(ctx->xslt, doc);
     if(xsltCtx == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xsltNewTransformContext",
-                    XMLSEC_ERRORS_R_XSLT_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXsltError("xsltNewTransformContext", ctx->xslt, NULL);
         goto done;
     }
 
     /* set security prefs  */
     ret = xsltSetCtxtSecurityPrefs(g_xslt_default_security_prefs, xsltCtx);
     if(ret < 0) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xsltSetCtxtSecurityPrefs",
-                    XMLSEC_ERRORS_R_XSLT_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXsltError("xsltSetCtxtSecurityPrefs", ctx->xslt, NULL);
         goto done;
     }
 
     res = xsltApplyStylesheetUser(ctx->xslt, doc, NULL, NULL, NULL, xsltCtx);
     if(res == NULL) {
-        xmlSecError(XMLSEC_ERRORS_HERE,
-                    NULL,
-                    "xsltApplyStylesheetUser",
-                    XMLSEC_ERRORS_R_XSLT_FAILED,
-                    XMLSEC_ERRORS_NO_MESSAGE);
+        xmlSecXsltError("xsltApplyStylesheetUser", ctx->xslt, NULL);
         goto done;
     }
     
diff --git a/tests/aleksey-xmldsig-01/enveloping-sha1-ecdsa-sha1.xml b/tests/aleksey-xmldsig-01/enveloping-sha1-ecdsa-sha1.xml
index 358a7a1..10018e7 100644
--- a/tests/aleksey-xmldsig-01/enveloping-sha1-ecdsa-sha1.xml
+++ b/tests/aleksey-xmldsig-01/enveloping-sha1-ecdsa-sha1.xml
@@ -8,8 +8,8 @@
       <DigestValue>7/XTsHaBSOnJ/jXD5v0zL6VKYsk=</DigestValue>
     </Reference>
   </SignedInfo>
-  <SignatureValue>kTx1j2j4J3hQuKBTGrPMj1ZQvYJgoyKtqcIPMoyB+623RD8dpp38v7DWmYipsqZA
-mHrqJBEmRI9o8h3Gwy/1Bg==</SignatureValue>
+  <SignatureValue>1T18pVocVMRq1aJ6L+bpLOzNQtM5kqjXafgzlgaGxFQMM/K1oBzWE5vmlau8WYm+
+04elfDnQb9tf5w2dXGyQBQ==</SignatureValue>
   <KeyInfo>
     <X509Data>
 <X509Certificate>MIID9zCCA2CgAwIBAgIJAK+ii7kzrdqsMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
@@ -34,6 +34,7 @@ EwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEARpb86RP/ck55X+NunXeIX81i763b
 j7Z1VJwFbA/QfupzxnqJ2IP/lxC8YxJ3Bp2IJMI7rC9r0poa41ZxI5rGHip97Dpg
 sxPF9lkRUmKBBQjkICOq1w/4d2DRInBoqXttD+0WsqDfNDVK+7kSE07ytn3RzHCj
 j0gv0PdxmuCsR/E=</X509Certificate>
+
 <X509Certificate>MIIDzzCCAzigAwIBAgIJAK+ii7kzrdqtMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEQMA4G
@@ -55,26 +56,25 @@ eS5jb22CCQCvoou5M63arDANBgkqhkiG9w0BAQUFAAOBgQBuTAW63AgWqqUDPGi8
 BiXbdKHhFP4J8qgkdv5WMa6SpSWVgNgOYXkK/BSg1aSmQtGv8/8UvBRPoJnO4y0N
 jWUFf1ubOgUNmedYNLq7YbTp8yTGWeogCyM2xdWELMP8BMgQL0sP+MDAFMKO3itY
 mEWnCEsP15HKSTms54RNj7oJ+A==</X509Certificate>
-<X509Certificate>MIIDfDCCAyagAwIBAgIJAK+ii7kzrdq0MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+<X509Certificate>MIIDfzCCAymgAwIBAgIJAK+ii7kzrdq1MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
 A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
-ZXkuY29tMCAXDTE2MDEyOTE3MjYxMloYDzIxMTYwMTA1MTcyNjEyWjCBojELMAkG
+ZXkuY29tMCAXDTE3MDIxNTIyMDgyMVoYDzIxMTcwMTIyMjIwODIxWjCBojELMAkG
 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
 cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
-BgNVBAMTE0VDRFNBIHNlY3AyNTZrMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
-Y0BhbGVrc2V5LmNvbTBWMBAGByqGSM49AgEGBSuBBAAKA0IABGfbnXrR7bjGBsK6
-LIo2LkMPz9OhqW6U4EUwhA+0wbXbLzRufuaaUuGHkhl9LDa5128d1209j25iWgyL
-QoxgMLOjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1PcGVu
-U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUPJXHiW1HSqdwbucp
-ESi1JeIJHKAwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436hgbSk
-gbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYDVQQK
-EzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNvbS94
-bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNhbmlu
-MSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63arTAN
-BgkqhkiG9w0BAQUFAANBAFweA03Qo3e3BvU4MT3wnsn7VZukTI61ewyrGCQshOc5
-ng3TuNfNcAuwhwDnTkHEarbwvG3OmJIl+yDqgVtTD9M=</X509Certificate>
-</X509Data>
+BgNVBAMTE0VDRFNBIHNlY3AyNTZyMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
+Y0BhbGVrc2V5LmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG0uzqp1mHfR
+9zEMsYiIXkNPttZyj0aP8iE9wlKNp9x73kJnNmll8l47MZDWVjtrcyFn1XUzxH7q
+WVJYjPBGptSjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1P
+cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeiw8r3+wiHw0
+5T+3qRhjfhAZu9kwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436h
+gbSkgbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYD
+VQQKEzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNv
+bS94bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNh
+bmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63a
+rTANBgkqhkiG9w0BAQUFAANBABs4Ie691BR30Ki9MM5jzGhWlnWs8SaGJkAlJxck
+hhVmvV/5cntLvuQNGPpZJtkY8cVIw2/G4XmBBad7lZcuOag=</X509Certificate></X509Data>
   </KeyInfo>
   <Object Id="object">some text</Object>
 </Signature>
diff --git a/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml b/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml
index 393f095..b8f6b53 100644
--- a/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml
+++ b/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml
@@ -8,8 +8,8 @@
       <DigestValue>iDhYt78o294fA6pzQ7k44+eejrQMi+WX3l3UrUdtL1Q=</DigestValue>
     </Reference>
   </SignedInfo>
-  <SignatureValue>r58DPJHB2Fi7Ssc/5W5/ZXys8uWiz3aF+XtDo6ZRF78rgk2TQDTse6yvTUC9kY3L
-UHcDZl9sGTJXyrw3DirasQ==</SignatureValue>
+  <SignatureValue>epctjDEaow8JdOu4/pCsV8WxYBtfeWGLYD51CRVeuUjjTaAodr+tXpdd1jvYoSxv
+YjhC4hmJTgH0tEmYWEPYZg==</SignatureValue>
   <KeyInfo>
     <X509Data>
 <X509Certificate>MIID9zCCA2CgAwIBAgIJAK+ii7kzrdqsMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
@@ -34,6 +34,7 @@ EwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEARpb86RP/ck55X+NunXeIX81i763b
 j7Z1VJwFbA/QfupzxnqJ2IP/lxC8YxJ3Bp2IJMI7rC9r0poa41ZxI5rGHip97Dpg
 sxPF9lkRUmKBBQjkICOq1w/4d2DRInBoqXttD+0WsqDfNDVK+7kSE07ytn3RzHCj
 j0gv0PdxmuCsR/E=</X509Certificate>
+
 <X509Certificate>MIIDzzCCAzigAwIBAgIJAK+ii7kzrdqtMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEQMA4G
@@ -55,26 +56,25 @@ eS5jb22CCQCvoou5M63arDANBgkqhkiG9w0BAQUFAAOBgQBuTAW63AgWqqUDPGi8
 BiXbdKHhFP4J8qgkdv5WMa6SpSWVgNgOYXkK/BSg1aSmQtGv8/8UvBRPoJnO4y0N
 jWUFf1ubOgUNmedYNLq7YbTp8yTGWeogCyM2xdWELMP8BMgQL0sP+MDAFMKO3itY
 mEWnCEsP15HKSTms54RNj7oJ+A==</X509Certificate>
-<X509Certificate>MIIDfDCCAyagAwIBAgIJAK+ii7kzrdq0MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+<X509Certificate>MIIDfzCCAymgAwIBAgIJAK+ii7kzrdq1MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
 A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
-ZXkuY29tMCAXDTE2MDEyOTE3MjYxMloYDzIxMTYwMTA1MTcyNjEyWjCBojELMAkG
+ZXkuY29tMCAXDTE3MDIxNTIyMDgyMVoYDzIxMTcwMTIyMjIwODIxWjCBojELMAkG
 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
 cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
-BgNVBAMTE0VDRFNBIHNlY3AyNTZrMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
-Y0BhbGVrc2V5LmNvbTBWMBAGByqGSM49AgEGBSuBBAAKA0IABGfbnXrR7bjGBsK6
-LIo2LkMPz9OhqW6U4EUwhA+0wbXbLzRufuaaUuGHkhl9LDa5128d1209j25iWgyL
-QoxgMLOjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1PcGVu
-U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUPJXHiW1HSqdwbucp
-ESi1JeIJHKAwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436hgbSk
-gbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYDVQQK
-EzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNvbS94
-bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNhbmlu
-MSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63arTAN
-BgkqhkiG9w0BAQUFAANBAFweA03Qo3e3BvU4MT3wnsn7VZukTI61ewyrGCQshOc5
-ng3TuNfNcAuwhwDnTkHEarbwvG3OmJIl+yDqgVtTD9M=</X509Certificate>
-</X509Data>
+BgNVBAMTE0VDRFNBIHNlY3AyNTZyMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
+Y0BhbGVrc2V5LmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG0uzqp1mHfR
+9zEMsYiIXkNPttZyj0aP8iE9wlKNp9x73kJnNmll8l47MZDWVjtrcyFn1XUzxH7q
+WVJYjPBGptSjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1P
+cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeiw8r3+wiHw0
+5T+3qRhjfhAZu9kwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436h
+gbSkgbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYD
+VQQKEzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNv
+bS94bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNh
+bmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63a
+rTANBgkqhkiG9w0BAQUFAANBABs4Ie691BR30Ki9MM5jzGhWlnWs8SaGJkAlJxck
+hhVmvV/5cntLvuQNGPpZJtkY8cVIw2/G4XmBBad7lZcuOag=</X509Certificate></X509Data>
   </KeyInfo>
   <Object Id="object">some text</Object>
 </Signature>
diff --git a/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml b/tests/aleksey-xmldsig-01/enveloping-sha256-rsa-sha256-verify.xml
similarity index 75%
copy from tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml
copy to tests/aleksey-xmldsig-01/enveloping-sha256-rsa-sha256-verify.xml
index 393f095..4d6c84d 100644
--- a/tests/aleksey-xmldsig-01/enveloping-sha256-ecdsa-sha256.xml
+++ b/tests/aleksey-xmldsig-01/enveloping-sha256-rsa-sha256-verify.xml
@@ -2,14 +2,14 @@
 <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
   <SignedInfo>
     <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
-    <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha256"/>
+    <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
     <Reference URI="#object">
       <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
       <DigestValue>iDhYt78o294fA6pzQ7k44+eejrQMi+WX3l3UrUdtL1Q=</DigestValue>
     </Reference>
   </SignedInfo>
-  <SignatureValue>r58DPJHB2Fi7Ssc/5W5/ZXys8uWiz3aF+XtDo6ZRF78rgk2TQDTse6yvTUC9kY3L
-UHcDZl9sGTJXyrw3DirasQ==</SignatureValue>
+  <SignatureValue>xOSp1bweDaNd5+NzBNO+m+1oEOm1jNjBMXf12F7LsXoBDpvgC3efL2XgkoRY8LJ9
+msV4PSDkJRzzmvSTvQ6Txg==</SignatureValue>
   <KeyInfo>
     <X509Data>
 <X509Certificate>MIID9zCCA2CgAwIBAgIJAK+ii7kzrdqsMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
@@ -55,25 +55,26 @@ eS5jb22CCQCvoou5M63arDANBgkqhkiG9w0BAQUFAAOBgQBuTAW63AgWqqUDPGi8
 BiXbdKHhFP4J8qgkdv5WMa6SpSWVgNgOYXkK/BSg1aSmQtGv8/8UvBRPoJnO4y0N
 jWUFf1ubOgUNmedYNLq7YbTp8yTGWeogCyM2xdWELMP8BMgQL0sP+MDAFMKO3itY
 mEWnCEsP15HKSTms54RNj7oJ+A==</X509Certificate>
-<X509Certificate>MIIDfDCCAyagAwIBAgIJAK+ii7kzrdq0MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+<X509Certificate>MIIDpzCCA1GgAwIBAgIJAK+ii7kzrdqvMA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
 A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
-ZXkuY29tMCAXDTE2MDEyOTE3MjYxMloYDzIxMTYwMTA1MTcyNjEyWjCBojELMAkG
+ZXkuY29tMCAXDTE0MDUyMzE3NTUzNFoYDzIxMTQwNDI5MTc1NTM0WjCBxzELMAkG
 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
-cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
-BgNVBAMTE0VDRFNBIHNlY3AyNTZrMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
-Y0BhbGVrc2V5LmNvbTBWMBAGByqGSM49AgEGBSuBBAAKA0IABGfbnXrR7bjGBsK6
-LIo2LkMPz9OhqW6U4EUwhA+0wbXbLzRufuaaUuGHkhl9LDa5128d1209j25iWgyL
-QoxgMLOjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1PcGVu
-U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUPJXHiW1HSqdwbucp
-ESi1JeIJHKAwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436hgbSk
-gbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYDVQQK
-EzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNvbS94
-bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNhbmlu
-MSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63arTAN
-BgkqhkiG9w0BAQUFAANBAFweA03Qo3e3BvU4MT3wnsn7VZukTI61ewyrGCQshOc5
-ng3TuNfNcAuwhwDnTkHEarbwvG3OmJIl+yDqgVtTD9M=</X509Certificate>
+cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxKTAn
+BgNVBAsTIFRlc3QgVGhpcmQgTGV2ZWwgUlNBIENlcnRpZmljYXRlMRYwFAYDVQQD
+Ew1BbGVrc2V5IFNhbmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5j
+b20wXDANBgkqhkiG9w0BAQEFAANLADBIAkEA09BtD3aeVt6DVDkk0dI7Vh7Ljqdn
+sYmW0tbDVxxK+nume+Z9Sb4znbUKkWl+vgQATdRUEyhT2P+Gqrd0UBzYfQIDAQAB
+o4IBRTCCAUEwDAYDVR0TBAUwAwEB/zAsBglghkgBhvhCAQ0EHxYdT3BlblNTTCBH
+ZW5lcmF0ZWQgQ2VydGlmaWNhdGUwHQYDVR0OBBYEFNf0xkZ3zjcEI60pVPuwDqTM
+QygZMIHjBgNVHSMEgdswgdiAFP7k7FMk8JWVxxC14US1XTllWuN+oYG0pIGxMIGu
+MQswCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1M
+IFNlY3VyaXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2Vj
+KTEQMA4GA1UECxMHUm9vdCBDQTEWMBQGA1UEAxMNQWxla3NleSBTYW5pbjEhMB8G
+CSqGSIb3DQEJARYSeG1sc2VjQGFsZWtzZXkuY29tggkAr6KLuTOt2q0wDQYJKoZI
+hvcNAQEFBQADQQAOXBj0yICp1RmHXqnUlsppryLCW3pKBD1dkb4HWarO7RjA1yJJ
+fBjXssrERn05kpBcrRfzou4r3DCgQFPhjxga</X509Certificate>
 </X509Data>
   </KeyInfo>
   <Object Id="object">some text</Object>
diff --git a/tests/aleksey-xmldsig-01/enveloping-sha512-ecdsa-sha512.xml b/tests/aleksey-xmldsig-01/enveloping-sha512-ecdsa-sha512.xml
index a33ea36..9233969 100644
--- a/tests/aleksey-xmldsig-01/enveloping-sha512-ecdsa-sha512.xml
+++ b/tests/aleksey-xmldsig-01/enveloping-sha512-ecdsa-sha512.xml
@@ -9,8 +9,8 @@
 XDnbRaf22WqerzX1vL0QzA==</DigestValue>
     </Reference>
   </SignedInfo>
-  <SignatureValue>p8iywKCFPKqaRq9tIpu2tXWx8BQ7L+1laypGaNucLtqzyUjSJy6XGoV9yNTnAEKq
-afu0z12Y/KTPRgfjLOqWXA==</SignatureValue>
+  <SignatureValue>5vaWW6jmgfmhFcV65FrOsOicilCL4H53ZNZU5XCvYXQvfJmYsQZ4bhzg2KOV78ZO
+v05ijIzPhhvYF+eodPfCZQ==</SignatureValue>
   <KeyInfo>
     <X509Data>
 <X509Certificate>MIID9zCCA2CgAwIBAgIJAK+ii7kzrdqsMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
@@ -35,6 +35,7 @@ EwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEARpb86RP/ck55X+NunXeIX81i763b
 j7Z1VJwFbA/QfupzxnqJ2IP/lxC8YxJ3Bp2IJMI7rC9r0poa41ZxI5rGHip97Dpg
 sxPF9lkRUmKBBQjkICOq1w/4d2DRInBoqXttD+0WsqDfNDVK+7kSE07ytn3RzHCj
 j0gv0PdxmuCsR/E=</X509Certificate>
+
 <X509Certificate>MIIDzzCCAzigAwIBAgIJAK+ii7kzrdqtMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEQMA4G
@@ -56,26 +57,25 @@ eS5jb22CCQCvoou5M63arDANBgkqhkiG9w0BAQUFAAOBgQBuTAW63AgWqqUDPGi8
 BiXbdKHhFP4J8qgkdv5WMa6SpSWVgNgOYXkK/BSg1aSmQtGv8/8UvBRPoJnO4y0N
 jWUFf1ubOgUNmedYNLq7YbTp8yTGWeogCyM2xdWELMP8BMgQL0sP+MDAFMKO3itY
 mEWnCEsP15HKSTms54RNj7oJ+A==</X509Certificate>
-<X509Certificate>MIIDfDCCAyagAwIBAgIJAK+ii7kzrdq0MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+<X509Certificate>MIIDfzCCAymgAwIBAgIJAK+ii7kzrdq1MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
 VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
 aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
 A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
-ZXkuY29tMCAXDTE2MDEyOTE3MjYxMloYDzIxMTYwMTA1MTcyNjEyWjCBojELMAkG
+ZXkuY29tMCAXDTE3MDIxNTIyMDgyMVoYDzIxMTcwMTIyMjIwODIxWjCBojELMAkG
 A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
 cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
-BgNVBAMTE0VDRFNBIHNlY3AyNTZrMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
-Y0BhbGVrc2V5LmNvbTBWMBAGByqGSM49AgEGBSuBBAAKA0IABGfbnXrR7bjGBsK6
-LIo2LkMPz9OhqW6U4EUwhA+0wbXbLzRufuaaUuGHkhl9LDa5128d1209j25iWgyL
-QoxgMLOjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1PcGVu
-U1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUPJXHiW1HSqdwbucp
-ESi1JeIJHKAwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436hgbSk
-gbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYDVQQK
-EzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNvbS94
-bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNhbmlu
-MSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63arTAN
-BgkqhkiG9w0BAQUFAANBAFweA03Qo3e3BvU4MT3wnsn7VZukTI61ewyrGCQshOc5
-ng3TuNfNcAuwhwDnTkHEarbwvG3OmJIl+yDqgVtTD9M=</X509Certificate>
-</X509Data>
+BgNVBAMTE0VDRFNBIHNlY3AyNTZyMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
+Y0BhbGVrc2V5LmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG0uzqp1mHfR
+9zEMsYiIXkNPttZyj0aP8iE9wlKNp9x73kJnNmll8l47MZDWVjtrcyFn1XUzxH7q
+WVJYjPBGptSjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1P
+cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeiw8r3+wiHw0
+5T+3qRhjfhAZu9kwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436h
+gbSkgbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYD
+VQQKEzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNv
+bS94bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNh
+bmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63a
+rTANBgkqhkiG9w0BAQUFAANBABs4Ie691BR30Ki9MM5jzGhWlnWs8SaGJkAlJxck
+hhVmvV/5cntLvuQNGPpZJtkY8cVIw2/G4XmBBad7lZcuOag=</X509Certificate></X509Data>
   </KeyInfo>
   <Object Id="object">some text</Object>
 </Signature>
diff --git a/tests/keys/README b/tests/keys/README
index 7a5a568..e5d4882 100644
--- a/tests/keys/README
+++ b/tests/keys/README
@@ -81,12 +81,13 @@ README
     
   G. Generate ECDSA key with second level CA
     > openssl ecparam -list_curves
-    > openssl ecparam -name secp256k1 -genkey -noout -out ecdsa-secp256k1-key.pem
-    > openssl req -config ./openssl.cnf -new -key ecdsa-secp256k1-key.pem -out ecdsa-secp256k1-req.pem
+    > openssl ecparam -name secp256r1 -genkey -noout -out ecdsa-secp256r1-key.pem
+    Here use 'ECDSA secp256r1 Key' for Common Name:
+    > openssl req -config ./openssl.cnf -new -key ecdsa-secp256r1-key.pem -out ecdsa-secp256r1-req.pem
     > openssl ca -config ./openssl.cnf -cert ca2cert.pem -keyfile ca2key.pem \
-        -out ecdsa-secp256k1-cert.pem -infiles ecdsa-secp256k1-req.pem
-     > openssl verify -CAfile cacert.pem -untrusted ca2cert.pem ecdsa-secp256k1-cert.pem
-     > rm ecdsa-secp256k1-req.pem
+        -out ecdsa-secp256r1-cert.pem -infiles ecdsa-secp256r1-req.pem
+     > openssl verify -CAfile cacert.pem -untrusted ca2cert.pem ecdsa-secp256r1-cert.pem
+     > rm ecdsa-secp256r1-req.pem
  
 3. Converting key and certs between PEM and DER formats
 
@@ -101,7 +102,7 @@ README
     > openssl dsa -inform PEM -outform DER -in dsa3072key.pem -out dsa3072key.der
     
   ECDSA keys:
-    > openssl ec -inform PEM -outform DER -in ecdsa-secp256k1-key.pem -out ecdsa-secp256k1-key.der
+    > openssl ec -inform PEM -outform DER -in ecdsa-secp256r1-key.pem -out ecdsa-secp256r1-key.der
 
   - Convert PEM cert file to DER file
     > openssl x509 -outform DER -in cacert.pem -out cacert.der 
@@ -112,7 +113,7 @@ README
     > openssl x509 -outform DER -in rsacert.pem -out rsacert.der 
     > openssl x509 -outform DER -in largersacert.pem -out largersacert.der 
     > openssl x509 -outform DER -in expiredcert.pem -out expiredcert.der 
-    > openssl x509 -outform DER -in ecdsa-secp256k1-cert.pem -out ecdsa-secp256k1-cert.der 
+    > openssl x509 -outform DER -in ecdsa-secp256r1-cert.pem -out ecdsa-secp256r1-cert.der 
   
   - (optional) Convert PEM public key file to DER file
   RSA key:
@@ -141,7 +142,7 @@ README
         -outform pem -topk8
      > openssl pkcs8 -in largersakey.der -inform der -out largersakey.p8-der \
         -outform der -topk8
-     > openssl pkcs8 -in ecdsa-secp256k1-key.der -inform der -out ecdsa-secp256k1-key.p8-der \
+     > openssl pkcs8 -in ecdsa-secp256r1-key.der -inform der -out ecdsa-secp256r1-key.p8-der \
         -outform der -topk8
      
 5. NSS is unfriendly towards standalone private keys.
@@ -167,9 +168,9 @@ README
     > openssl pkcs12 -export -in allexpired.pem -name TestExpiredRsaKey \
       -out expiredkey.p12
 
-    > cat ecdsa-secp256k1-key.pem ecdsa-secp256k1-cert.pem ca2cert.pem cacert.pem > all-ecdsa-secp256k1.pem
-    > openssl pkcs12 -export -in all-ecdsa-secp256k1.pem -name TestEcdsaSecp256k1Key -out ecdsa-secp256k1-key.p12
-    > rm all-ecdsa-secp256k1.pem
+    > cat ecdsa-secp256r1-key.pem ecdsa-secp256r1-cert.pem ca2cert.pem cacert.pem > all-ecdsa-secp256r1.pem
+    > openssl pkcs12 -export -in all-ecdsa-secp256r1.pem -name TestEcdsaSecp256k1Key -out ecdsa-secp256r1-key.p12
+    > rm all-ecdsa-secp256r1.pem
 
    5a.
        Input: DSA/RSA private key in PEM or DER format
diff --git a/tests/keys/demoCA/index.txt b/tests/keys/demoCA/index.txt
index 1b8c10f..1bef065 100644
--- a/tests/keys/demoCA/index.txt
+++ b/tests/keys/demoCA/index.txt
@@ -7,3 +7,4 @@ V	140524175816Z		AFA28BB933ADDAB1	unknown	/C=US/ST=California/O=XML Security Lib
 V	21150209225409Z		AFA28BB933ADDAB2	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Test Third Level DSA 2048 Certificate/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
 V	21150209225453Z		AFA28BB933ADDAB3	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Test Third Level DSA 3072 Certificate/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
 V	21160105172612Z		AFA28BB933ADDAB4	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/CN=ECDSA secp256k1 Key/emailAddress=xmlsec at aleksey.com
+V	21170122220821Z		AFA28BB933ADDAB5	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/CN=ECDSA secp256r1 Key/emailAddress=xmlsec at aleksey.com
diff --git a/tests/keys/demoCA/index.txt.old b/tests/keys/demoCA/index.txt.old
index c8270ea..1b8c10f 100644
--- a/tests/keys/demoCA/index.txt.old
+++ b/tests/keys/demoCA/index.txt.old
@@ -6,3 +6,4 @@ V	21140429175706Z		AFA28BB933ADDAB0	unknown	/C=US/ST=California/O=XML Security L
 V	140524175816Z		AFA28BB933ADDAB1	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Test Expired RSA Certificate/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
 V	21150209225409Z		AFA28BB933ADDAB2	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Test Third Level DSA 2048 Certificate/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
 V	21150209225453Z		AFA28BB933ADDAB3	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Test Third Level DSA 3072 Certificate/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
+V	21160105172612Z		AFA28BB933ADDAB4	unknown	/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/CN=ECDSA secp256k1 Key/emailAddress=xmlsec at aleksey.com
diff --git a/tests/keys/demoCA/newcerts/AFA28BB933ADDAB5.pem b/tests/keys/demoCA/newcerts/AFA28BB933ADDAB5.pem
new file mode 100644
index 0000000..3404e67
--- /dev/null
+++ b/tests/keys/demoCA/newcerts/AFA28BB933ADDAB5.pem
@@ -0,0 +1,60 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number:
+            af:a2:8b:b9:33:ad:da:b5
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer: C=US, ST=California, O=XML Security Library (http://www.aleksey.com/xmlsec), CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
+        Validity
+            Not Before: Feb 15 22:08:21 2017 GMT
+            Not After : Jan 22 22:08:21 2117 GMT
+        Subject: C=US, ST=California, O=XML Security Library (http://www.aleksey.com/xmlsec), CN=ECDSA secp256r1 Key/emailAddress=xmlsec at aleksey.com
+        Subject Public Key Info:
+            Public Key Algorithm: id-ecPublicKey
+                Public-Key: (256 bit)
+                pub: 
+                    04:6d:2e:ce:aa:75:98:77:d1:f7:31:0c:b1:88:88:
+                    5e:43:4f:b6:d6:72:8f:46:8f:f2:21:3d:c2:52:8d:
+                    a7:dc:7b:de:42:67:36:69:65:f2:5e:3b:31:90:d6:
+                    56:3b:6b:73:21:67:d5:75:33:c4:7e:ea:59:52:58:
+                    8c:f0:46:a6:d4
+                ASN1 OID: prime256v1
+                NIST CURVE: P-256
+        X509v3 extensions:
+            X509v3 Basic Constraints: 
+                CA:TRUE
+            Netscape Comment: 
+                OpenSSL Generated Certificate
+            X509v3 Subject Key Identifier: 
+                7A:2C:3C:AF:7F:B0:88:7C:34:E5:3F:B7:A9:18:63:7E:10:19:BB:D9
+            X509v3 Authority Key Identifier: 
+                keyid:FE:E4:EC:53:24:F0:95:95:C7:10:B5:E1:44:B5:5D:39:65:5A:E3:7E
+                DirName:/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Root CA/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
+                serial:AF:A2:8B:B9:33:AD:DA:AD
+
+    Signature Algorithm: sha1WithRSAEncryption
+         1b:38:21:ee:bd:d4:14:77:d0:a8:bd:30:ce:63:cc:68:56:96:
+         75:ac:f1:26:86:26:40:25:27:17:24:86:15:66:bd:5f:f9:72:
+         7b:4b:be:e4:0d:18:fa:59:26:d9:18:f1:c5:48:c3:6f:c6:e1:
+         79:81:05:a7:7b:95:97:2e:39:a8
+-----BEGIN CERTIFICATE-----
+MIIDfzCCAymgAwIBAgIJAK+ii7kzrdq1MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
+aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
+A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
+ZXkuY29tMCAXDTE3MDIxNTIyMDgyMVoYDzIxMTcwMTIyMjIwODIxWjCBojELMAkG
+A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
+cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
+BgNVBAMTE0VDRFNBIHNlY3AyNTZyMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
+Y0BhbGVrc2V5LmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG0uzqp1mHfR
+9zEMsYiIXkNPttZyj0aP8iE9wlKNp9x73kJnNmll8l47MZDWVjtrcyFn1XUzxH7q
+WVJYjPBGptSjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1P
+cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeiw8r3+wiHw0
+5T+3qRhjfhAZu9kwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436h
+gbSkgbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYD
+VQQKEzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNv
+bS94bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNh
+bmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63a
+rTANBgkqhkiG9w0BAQUFAANBABs4Ie691BR30Ki9MM5jzGhWlnWs8SaGJkAlJxck
+hhVmvV/5cntLvuQNGPpZJtkY8cVIw2/G4XmBBad7lZcuOag=
+-----END CERTIFICATE-----
diff --git a/tests/keys/demoCA/serial b/tests/keys/demoCA/serial
index f10ea95..ee29801 100644
--- a/tests/keys/demoCA/serial
+++ b/tests/keys/demoCA/serial
@@ -1 +1 @@
-AFA28BB933ADDAB5
+AFA28BB933ADDAB6
diff --git a/tests/keys/demoCA/serial.old b/tests/keys/demoCA/serial.old
index adf3394..f10ea95 100644
--- a/tests/keys/demoCA/serial.old
+++ b/tests/keys/demoCA/serial.old
@@ -1 +1 @@
-AFA28BB933ADDAB4
+AFA28BB933ADDAB5
diff --git a/tests/keys/ecdsa-secp256r1-cert.der b/tests/keys/ecdsa-secp256r1-cert.der
new file mode 100644
index 0000000..c2f99e4
Binary files /dev/null and b/tests/keys/ecdsa-secp256r1-cert.der differ
diff --git a/tests/keys/ecdsa-secp256r1-cert.pem b/tests/keys/ecdsa-secp256r1-cert.pem
new file mode 100644
index 0000000..3404e67
--- /dev/null
+++ b/tests/keys/ecdsa-secp256r1-cert.pem
@@ -0,0 +1,60 @@
+Certificate:
+    Data:
+        Version: 3 (0x2)
+        Serial Number:
+            af:a2:8b:b9:33:ad:da:b5
+    Signature Algorithm: sha1WithRSAEncryption
+        Issuer: C=US, ST=California, O=XML Security Library (http://www.aleksey.com/xmlsec), CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
+        Validity
+            Not Before: Feb 15 22:08:21 2017 GMT
+            Not After : Jan 22 22:08:21 2117 GMT
+        Subject: C=US, ST=California, O=XML Security Library (http://www.aleksey.com/xmlsec), CN=ECDSA secp256r1 Key/emailAddress=xmlsec at aleksey.com
+        Subject Public Key Info:
+            Public Key Algorithm: id-ecPublicKey
+                Public-Key: (256 bit)
+                pub: 
+                    04:6d:2e:ce:aa:75:98:77:d1:f7:31:0c:b1:88:88:
+                    5e:43:4f:b6:d6:72:8f:46:8f:f2:21:3d:c2:52:8d:
+                    a7:dc:7b:de:42:67:36:69:65:f2:5e:3b:31:90:d6:
+                    56:3b:6b:73:21:67:d5:75:33:c4:7e:ea:59:52:58:
+                    8c:f0:46:a6:d4
+                ASN1 OID: prime256v1
+                NIST CURVE: P-256
+        X509v3 extensions:
+            X509v3 Basic Constraints: 
+                CA:TRUE
+            Netscape Comment: 
+                OpenSSL Generated Certificate
+            X509v3 Subject Key Identifier: 
+                7A:2C:3C:AF:7F:B0:88:7C:34:E5:3F:B7:A9:18:63:7E:10:19:BB:D9
+            X509v3 Authority Key Identifier: 
+                keyid:FE:E4:EC:53:24:F0:95:95:C7:10:B5:E1:44:B5:5D:39:65:5A:E3:7E
+                DirName:/C=US/ST=California/O=XML Security Library (http://www.aleksey.com/xmlsec)/OU=Root CA/CN=Aleksey Sanin/emailAddress=xmlsec at aleksey.com
+                serial:AF:A2:8B:B9:33:AD:DA:AD
+
+    Signature Algorithm: sha1WithRSAEncryption
+         1b:38:21:ee:bd:d4:14:77:d0:a8:bd:30:ce:63:cc:68:56:96:
+         75:ac:f1:26:86:26:40:25:27:17:24:86:15:66:bd:5f:f9:72:
+         7b:4b:be:e4:0d:18:fa:59:26:d9:18:f1:c5:48:c3:6f:c6:e1:
+         79:81:05:a7:7b:95:97:2e:39:a8
+-----BEGIN CERTIFICATE-----
+MIIDfzCCAymgAwIBAgIJAK+ii7kzrdq1MA0GCSqGSIb3DQEBBQUAMIGcMQswCQYD
+VQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTE9MDsGA1UEChM0WE1MIFNlY3Vy
+aXR5IExpYnJhcnkgKGh0dHA6Ly93d3cuYWxla3NleS5jb20veG1sc2VjKTEWMBQG
+A1UEAxMNQWxla3NleSBTYW5pbjEhMB8GCSqGSIb3DQEJARYSeG1sc2VjQGFsZWtz
+ZXkuY29tMCAXDTE3MDIxNTIyMDgyMVoYDzIxMTcwMTIyMjIwODIxWjCBojELMAkG
+A1UEBhMCVVMxEzARBgNVBAgTCkNhbGlmb3JuaWExPTA7BgNVBAoTNFhNTCBTZWN1
+cml0eSBMaWJyYXJ5IChodHRwOi8vd3d3LmFsZWtzZXkuY29tL3htbHNlYykxHDAa
+BgNVBAMTE0VDRFNBIHNlY3AyNTZyMSBLZXkxITAfBgkqhkiG9w0BCQEWEnhtbHNl
+Y0BhbGVrc2V5LmNvbTBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABG0uzqp1mHfR
+9zEMsYiIXkNPttZyj0aP8iE9wlKNp9x73kJnNmll8l47MZDWVjtrcyFn1XUzxH7q
+WVJYjPBGptSjggFFMIIBQTAMBgNVHRMEBTADAQH/MCwGCWCGSAGG+EIBDQQfFh1P
+cGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQUeiw8r3+wiHw0
+5T+3qRhjfhAZu9kwgeMGA1UdIwSB2zCB2IAU/uTsUyTwlZXHELXhRLVdOWVa436h
+gbSkgbEwga4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMT0wOwYD
+VQQKEzRYTUwgU2VjdXJpdHkgTGlicmFyeSAoaHR0cDovL3d3dy5hbGVrc2V5LmNv
+bS94bWxzZWMpMRAwDgYDVQQLEwdSb290IENBMRYwFAYDVQQDEw1BbGVrc2V5IFNh
+bmluMSEwHwYJKoZIhvcNAQkBFhJ4bWxzZWNAYWxla3NleS5jb22CCQCvoou5M63a
+rTANBgkqhkiG9w0BAQUFAANBABs4Ie691BR30Ki9MM5jzGhWlnWs8SaGJkAlJxck
+hhVmvV/5cntLvuQNGPpZJtkY8cVIw2/G4XmBBad7lZcuOag=
+-----END CERTIFICATE-----
diff --git a/tests/keys/ecdsa-secp256r1-key.der b/tests/keys/ecdsa-secp256r1-key.der
new file mode 100644
index 0000000..a26a34c
Binary files /dev/null and b/tests/keys/ecdsa-secp256r1-key.der differ
diff --git a/tests/keys/ecdsa-secp256r1-key.p12 b/tests/keys/ecdsa-secp256r1-key.p12
new file mode 100644
index 0000000..b81eba3
Binary files /dev/null and b/tests/keys/ecdsa-secp256r1-key.p12 differ
diff --git a/tests/keys/ecdsa-secp256r1-key.p8-der b/tests/keys/ecdsa-secp256r1-key.p8-der
new file mode 100644
index 0000000..44c8eb5
Binary files /dev/null and b/tests/keys/ecdsa-secp256r1-key.p8-der differ
diff --git a/tests/keys/ecdsa-secp256r1-key.pem b/tests/keys/ecdsa-secp256r1-key.pem
new file mode 100644
index 0000000..e5e864f
--- /dev/null
+++ b/tests/keys/ecdsa-secp256r1-key.pem
@@ -0,0 +1,5 @@
+-----BEGIN EC PRIVATE KEY-----
+MHcCAQEEID5bCaVHTwFNu+anJe0XrGEg+ExsbUIlyub3bPWh5BcMoAoGCCqGSM49
+AwEHoUQDQgAEbS7OqnWYd9H3MQyxiIheQ0+21nKPRo/yIT3CUo2n3HveQmc2aWXy
+XjsxkNZWO2tzIWfVdTPEfupZUliM8Eam1A==
+-----END EC PRIVATE KEY-----
diff --git a/tests/keys/merlincert.der b/tests/keys/merlincert.der
new file mode 100644
index 0000000..b1f5d14
Binary files /dev/null and b/tests/keys/merlincert.der differ
diff --git a/tests/testDSig.sh b/tests/testDSig.sh
index fa4836b..5ef44a4 100755
--- a/tests/testDSig.sh
+++ b/tests/testDSig.sh
@@ -353,7 +353,7 @@ execDSigTest $res_success \
     "sha1 ecdsa-sha1" \
     "rsa x509" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509" \
-    "$priv_key_option $topfolder/keys/ecdsa-secp256k1-key.$priv_key_format --pwd secret123" \
+    "$priv_key_option $topfolder/keys/ecdsa-secp256r1-key.$priv_key_format --pwd secret123" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509"
 
 execDSigTest $res_success \
@@ -362,7 +362,7 @@ execDSigTest $res_success \
     "sha256 ecdsa-sha256" \
     "rsa x509" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509" \
-    "$priv_key_option $topfolder/keys/ecdsa-secp256k1-key.$priv_key_format --pwd secret123" \
+    "$priv_key_option $topfolder/keys/ecdsa-secp256r1-key.$priv_key_format --pwd secret123" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509"
 
 execDSigTest $res_success \
@@ -371,7 +371,7 @@ execDSigTest $res_success \
     "sha512 ecdsa-sha512" \
     "rsa x509" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509" \
-    "$priv_key_option $topfolder/keys/ecdsa-secp256k1-key.$priv_key_format --pwd secret123" \
+    "$priv_key_option $topfolder/keys/ecdsa-secp256r1-key.$priv_key_format --pwd secret123" \
     "--trusted-$cert_format $topfolder/keys/cacert.$cert_format --enabled-key-data x509"
 
 #
@@ -922,6 +922,35 @@ execDSigTest $res_fail \
     "rsa x509" \
     "--trusted-$cert_format certs/rsa-ca-cert.$cert_format"
 
+# 'Verify existing signature' MUST fail here, as --trusted-... is not passed.
+# If this passes, that's a bug. Note that we need to cleanup NSS certs DB
+# since it automaticall stores trusted certs
+if [ "z$crypto" = "znss" ] ;
+then
+    certutil  -D -n "$NSS_TEST_CERT_NICKNAME" -d "$crypto_config"
+    if [ $? -ne 0 ]; then
+        echo "--- FAILED TO DELETE TRUSTED TEST CERTIFICATE FROM NSS CERT DB. THE NEXT TEST MIGHT FAIL" >> $logfile
+        echo "--- FAILED TO DELETE TRUSTED TEST CERTIFICATE FROM NSS CERT DB. THE NEXT TEST MIGHT FAIL"
+    fi
+fi
+
+execDSigTest $res_fail \
+    "aleksey-xmldsig-01" \
+    "enveloping-sha256-rsa-sha256-verify" \
+    "sha256 rsa-sha256" \
+    "rsa x509" \
+    "--enabled-key-data x509"
+
+# This is the same, but due to --insecure it must pass.
+# If this fails, that means avoiding the certificate verification doesn't
+# happen correctly.
+execDSigTest $res_success \
+    "aleksey-xmldsig-01" \
+    "enveloping-sha256-rsa-sha256-verify" \
+    "sha256 rsa-sha256" \
+    "rsa x509" \
+    "--enabled-key-data x509 --insecure"
+
 ##########################################################################
 ##########################################################################
 ##########################################################################
diff --git a/tests/testrun.sh b/tests/testrun.sh
index 9e94423..3470ac9 100755
--- a/tests/testrun.sh
+++ b/tests/testrun.sh
@@ -106,6 +106,9 @@ else
     diff_param=-u
 fi
 
+NSS_TEST_CERT_NICKNAME="NSS Certificate DB:Aleksey Sanin - XML Security Library (http://www.aleksey.com/xmlsec)"
+
+
 #
 # Check the command result and print it to stdout
 #
diff --git a/win32/Makefile.msvc b/win32/Makefile.msvc
index 8c887a1..c1eea25 100644
--- a/win32/Makefile.msvc
+++ b/win32/Makefile.msvc
@@ -33,10 +33,8 @@ AUTOCONF = .\configure.txt
 #UNICODE = 1
 #DEBUG = 0
 #WITH_CRYPTO=openssl
-#WITH_CRYPTO=openssl
 #WITH_DEFAULT_CRYPTO=openssl
 #WITH_OPENSSL=1
-#WITH_OPENSSL_VERSION=
 #WITH_NSS=0
 #WITH_MSCRYPTO=0
 #WITH_LIBXSLT=1
@@ -116,7 +114,6 @@ XMLSEC_OPENSSL_SRCDIR   = $(XMLSEC_SRCDIR)\openssl
 XMLSEC_NSS_SRCDIR   	= $(XMLSEC_SRCDIR)\nss
 XMLSEC_MSCRYPTO_SRCDIR  = $(XMLSEC_SRCDIR)\mscrypto
 
-
 #
 # Object files for libraries and apps.
 #
@@ -199,6 +196,7 @@ XMLSEC_OPENSSL_OBJS = \
 	$(XMLSEC_OPENSSL_INTDIR)\crypto.obj \
 	$(XMLSEC_OPENSSL_INTDIR)\digests.obj \
 	$(XMLSEC_OPENSSL_INTDIR)\evp.obj \
+	$(XMLSEC_OPENSSL_INTDIR)\evp_signatures.obj \
 	$(XMLSEC_OPENSSL_INTDIR)\hmac.obj \
 	$(XMLSEC_OPENSSL_INTDIR)\kt_rsa.obj \
 	$(XMLSEC_OPENSSL_INTDIR)\kw_aes.obj \
@@ -215,6 +213,7 @@ XMLSEC_OPENSSL_OBJS_A = \
 	$(XMLSEC_OPENSSL_INTDIR_A)\crypto.obj \
 	$(XMLSEC_OPENSSL_INTDIR_A)\digests.obj \
 	$(XMLSEC_OPENSSL_INTDIR_A)\evp.obj \
+	$(XMLSEC_OPENSSL_INTDIR_A)\evp_signatures.obj \
 	$(XMLSEC_OPENSSL_INTDIR_A)\hmac.obj \
 	$(XMLSEC_OPENSSL_INTDIR_A)\kt_rsa.obj \
 	$(XMLSEC_OPENSSL_INTDIR_A)\kw_aes.obj \
@@ -302,7 +301,7 @@ CPPFLAGS 		= /nologo
 #
 # The compiler and its options.
 #
-CC 			= cl.exe
+CC 				= cl.exe
 CFLAGS 			= /nologo /D "WIN32" /D "_WINDOWS" 
 CFLAGS 			= $(CFLAGS) /D "_MBCS" /D "_REENTRANT"  /W1  
 CFLAGS 			= $(CFLAGS) /I$(BASEDIR) /I$(BASEDIR)\include
@@ -311,6 +310,7 @@ CFLAGS 			= $(CFLAGS) /D PACKAGE=\"$(XMLSEC_NAME)\"
 CFLAGS 			= $(CFLAGS) /D "HAVE_STDIO_H" /D "HAVE_STDLIB_H"
 CFLAGS 			= $(CFLAGS) /D "HAVE_STRING_H" /D "HAVE_CTYPE_H"
 CFLAGS 			= $(CFLAGS) /D "HAVE_MALLOC_H" /D "HAVE_MEMORY_H"
+CFLAGS 			= $(CFLAGS) /D "XMLSEC_NO_GOST" /D "XMLSEC_NO_GOST2012" 
 
 !if "$(UNICODE)" == "1"
 CFLAGS 			= $(CFLAGS) /D "UNICODE" /D "_UNICODE"
@@ -318,11 +318,13 @@ CFLAGS 			= $(CFLAGS) /D "UNICODE" /D "_UNICODE"
 
 # Optimisation and debug symbols.
 !if "$(DEBUG)" == "1"
-CFLAGS 			= $(CFLAGS) /D "_DEBUG" /Od /Z7 /MDd 
+CFLAGS 			= $(CFLAGS) /D "_DEBUG" /Od /Z7 
 !else
-CFLAGS 			= $(CFLAGS) /D "NDEBUG" /O2 /MD
+CFLAGS 			= $(CFLAGS) /D "NDEBUG" /O2 
 !endif
 
+CFLAGS 			= $(CFLAGS) $(CRUNTIME)
+
 # configurable options
 !if "$(WITH_LIBXSLT)" == "1"
 !else 
@@ -345,18 +347,14 @@ APP_CFLAGS		= $(APP_CFLAGS) $(XMLSEC_CRYPTO_CFLAGS)
 APP_CFLAGS		= $(APP_CFLAGS) /D "XMLSEC_NO_TMPL_TEST"
 !endif
 
-!if "$(WITH_OPENSSL_VERSION)" == ""
 XMLSEC_OPENSSL_CFLAGS   = /D "XMLSEC_CRYPTO_OPENSSL" /D "XMLSEC_DEFAULT_CRYPTO=\"openssl\""
-!else
-XMLSEC_OPENSSL_CFLAGS   = /D "$(WITH_OPENSSL_VERSION)" /D "XMLSEC_CRYPTO_OPENSSL" /D "XMLSEC_DEFAULT_CRYPTO=\"openssl\""
-!endif
 XMLSEC_NSS_CFLAGS   	= /D "XMLSEC_CRYPTO_NSS" /D "XMLSEC_DEFAULT_CRYPTO=\"nss\""
 XMLSEC_MSCRYPTO_CFLAGS  = /D "XMLSEC_CRYPTO_MSCRYPTO" /D "XMLSEC_DEFAULT_CRYPTO=\"mscrypto\""
 
 #
 # The linker and its options.
 #
-LD 			= link.exe
+LD 				= link.exe
 LDFLAGS 		= /nologo 
 LDFLAGS 		= $(LDFLAGS) /LIBPATH:$(BINDIR) /LIBPATH:$(LIBPREFIX)
 LIBS 			= 
@@ -365,13 +363,14 @@ LIBS 			=
 !if "$(DEBUG)" == "1"
 LDFLAGS 		= $(LDFLAGS) /DEBUG
 !else
-LDFLAGS 		= $(LDFLAGS) /OPT:NOWIN98
+LDFLAGS 		= $(LDFLAGS)
 !endif
 
 SOLIBS 			= $(LIBS) libxml2.lib 
 ALIBS 			= $(LIBS) libxml2_a.lib 
 
 !if "$(WITH_ICONV)" == "1"
+CFLAGS          = $(CFLAGS) /D "LIBXML_ICONV_ENABLED"
 SOLIBS 			= $(SOLIBS) iconv.lib
 ALIBS 			= $(ALIBS) iconv_a.lib
 !endif
@@ -391,11 +390,11 @@ APP_LIBS  		= $(SOLIBS) $(XMLSEC_CRYPTO_SOLIBS)
 !else
 !endif
 
-XMLSEC_OPENSSL_SOLIBS   = libeay32.lib wsock32.lib kernel32.lib user32.lib gdi32.lib
-XMLSEC_OPENSSL_ALIBS    = libeay32.lib wsock32.lib kernel32.lib user32.lib gdi32.lib
+XMLSEC_OPENSSL_SOLIBS   = libcrypto.lib wsock32.lib kernel32.lib user32.lib gdi32.lib crypt32.lib advapi32.lib ws2_32.lib
+XMLSEC_OPENSSL_ALIBS    = libcrypto.lib wsock32.lib kernel32.lib user32.lib gdi32.lib crypt32.lib advapi32.lib ws2_32.lib
 
-XMLSEC_NSS_SOLIBS   	= smime3.lib ssl3.lib nss3.lib libnspr4.lib libplds4.lib libplc4.lib kernel32.lib user32.lib gdi32.lib
-XMLSEC_NSS_ALIBS    	= smime3.lib ssl3.lib nss3.lib libnspr4_s.lib libplds4_s.lib libplc4_s.lib kernel32.lib user32.lib gdi32.lib
+XMLSEC_NSS_SOLIBS       = smime3.lib ssl3.lib nss3.lib libnspr4.lib libplds4.lib libplc4.lib kernel32.lib user32.lib gdi32.lib
+XMLSEC_NSS_ALIBS        = smime3.lib ssl3.lib nss3.lib libnspr4_s.lib libplds4_s.lib libplc4_s.lib kernel32.lib user32.lib gdi32.lib
 
 XMLSEC_MSCRYPTO_SOLIBS  = kernel32.lib user32.lib gdi32.lib Crypt32.lib Advapi32.lib
 XMLSEC_MSCRYPTO_ALIBS   = kernel32.lib user32.lib gdi32.lib Crypt32.lib Advapi32.lib
@@ -405,7 +404,6 @@ XMLSEC_MSCRYPTO_ALIBS   = kernel32.lib user32.lib gdi32.lib Crypt32.lib Advapi32
 AR = link.exe /lib
 ARFLAGS = /nologo
 
-
 #
 # xmlsec-<default-crypto> options
 #
diff --git a/win32/README.txt b/win32/README.txt
index 7040e05..ddb9edf 100644
--- a/win32/README.txt
+++ b/win32/README.txt
@@ -127,7 +127,7 @@ you need to add one of the following global defines:
     #define XMLSEC_CRYPTO_NSS
 
 Also you'll need to define all configuration parameters used during XML Security
-Library compilation (XMLSEC_OPENSSL_100, XMLSEC_NO_AES, XMLSEC_NO_X509,...).
+Library compilation (XMLSEC_NO_AES, XMLSEC_NO_X509,...).
 
   2.1 Additional Global Defines for static linking.
   -------------
-------------
-------------
------
diff --git a/win32/configure.js b/win32/configure.js
index 7bbba19..0444abc 100644
--- a/win32/configure.js
+++ b/win32/configure.js
@@ -30,6 +30,10 @@ var versionFile = ".\\configure.txt";
 var optsFileIn = baseDir + "\\config.h.in";
 var optsFile = baseDir + "\\config.h";
 
+/* Input and output files regarding the xmlsec version. */
+var versionHeaderIn = baseDir + "\\include\\xmlsec\\version.h.in";
+var versionHeader = baseDir + "\\include\\xmlsec\\version.h";
+
 /* Version strings for the binary distribution. Will be filled later 
    in the code. */
 var verMajorXmlSec;
@@ -40,7 +44,6 @@ var verMicroXmlSec;
 var withCrypto = "openssl";
 var withDefaultCrypto = "openssl";
 var withOpenSSL = 0;
-var withOpenSSLVersion = "";
 var withNss = 0;
 var withMSCrypto = 0;
 var withLibXSLT = 1;
@@ -59,6 +62,8 @@ var buildLibPrefix = "$(PREFIX)\\lib";
 var buildSoPrefix = "$(PREFIX)\\lib";
 var buildInclude = ".";
 var buildLib = ".";
+var cruntime = "/MD";
+
 /* Local stuff */
 var error = 0;
 
@@ -97,7 +102,7 @@ function usage()
 	txt += "either 'yes' or 'no'.\n\n";
 	txt += "XmlSec Library options, default value given in parentheses:\n\n";
 	txt += "  crypto:     Crypto engines list, first is default: \"openssl\",\n";
-	txt += "              \"openssl=096\", \"openssl=097\", \"openssl=098\", \n";
+	txt += "              \"openssl=098\", \"openssl=100\", \"openssl=110\", \n";
 	txt += "              \"nss\", \"mscrypto\" (\"" + withCrypto + "\");\n"
  	txt += "  xslt:       LibXSLT is used (" + (withLibXSLT? "yes" : "no")  + ")\n";	
  	txt += "  iconv:      Use the iconv library (" + (withIconv? "yes" : "no")  + ")\n";	
@@ -159,7 +164,6 @@ function discoverVersion()
 	vf.WriteLine("WITH_CRYPTO=" + withCrypto);	
 	vf.WriteLine("WITH_DEFAULT_CRYPTO=" + withDefaultCrypto);	
 	vf.WriteLine("WITH_OPENSSL=" + withOpenSSL);	
-	vf.WriteLine("WITH_OPENSSL_VERSION=XMLSEC_OPENSSL_" + withOpenSSLVersion);	
 	vf.WriteLine("WITH_NSS=" + withNss);	
 	vf.WriteLine("WITH_MSCRYPTO=" + withMSCrypto);	
 	vf.WriteLine("WITH_LIBXSLT=" + (withLibXSLT ? "1" : "0"));
@@ -176,6 +180,7 @@ function discoverVersion()
 	vf.WriteLine("SOPREFIX=" + buildSoPrefix);
 	vf.WriteLine("INCLUDE=$(INCLUDE);" + buildInclude);
 	vf.WriteLine("LIB=$(LIB);" + buildLib);
+	vf.WriteLine("CRUNTIME=" + cruntime);
 	vf.Close();
 }
 
@@ -203,6 +208,43 @@ function configureXmlSec()
 	of.Close();
 }
 
+/* This one will generate version.h from version.h.in. */
+function configureXmlSecVersion()
+{
+	var fso, ofi, of, ln, s;
+	fso = new ActiveXObject("Scripting.FileSystemObject");
+	if (fso.FileExists(versionHeader)) {
+		// version.h is already generated, nothing to do.
+		return;
+	}
+
+	ofi = fso.OpenTextFile(versionHeaderIn, 1);
+	of = fso.CreateTextFile(versionHeader, true);
+	while (ofi.AtEndOfStream != true) {
+		ln = ofi.ReadLine();
+		s = new String(ln);
+		if (s.search(/\@XMLSEC_VERSION_MAJOR\@/) != -1) {
+			of.WriteLine(s.replace(/\@XMLSEC_VERSION_MAJOR\@/,
+				verMajorXmlSec));
+		} else if (s.search(/\@XMLSEC_VERSION_MINOR\@/) != -1) {
+			of.WriteLine(s.replace(/\@XMLSEC_VERSION_MINOR\@/,
+				verMinorXmlSec));
+		} else if (s.search(/\@XMLSEC_VERSION_SUBMINOR\@/) != -1) {
+			of.WriteLine(s.replace(/\@XMLSEC_VERSION_SUBMINOR\@/,
+				verMicroXmlSec));
+		} else if (s.search(/\@XMLSEC_VERSION\@/) != -1) {
+			of.WriteLine(s.replace(/\@XMLSEC_VERSION\@/,
+				verMajorXmlSec + "." + verMinorXmlSec + "." + verMicroXmlSec));
+		} else if (s.search(/\@XMLSEC_VERSION_INFO\@/) != -1) {
+			of.WriteLine(s.replace(/\@XMLSEC_VERSION_INFO\@/,
+				(parseInt(verMajorXmlSec) + parseInt(verMinorXmlSec)) + ":" + verMicroXmlSec + ":" + verMinorXmlSec));
+		} else
+			of.WriteLine(ln);
+	}
+	ofi.Close();
+	of.Close();
+}
+
 /* Creates the readme file for the binary distribution of 'bname', for the
    version 'ver' in the file 'file'. This one is called from the Makefile when
    generating a binary distribution. The parameters are passed by make. */
@@ -281,6 +323,8 @@ for (i = 0; (i < WScript.Arguments.length) && (error == 0); i++) {
 			buildInclude = arg.substring(opt.length + 1, arg.length);
 		else if (opt == "lib")
 			buildLib = arg.substring(opt.length + 1, arg.length);
+		else if (opt == "cruntime")
+			cruntime = arg.substring(opt.length + 1, arg.length);
 		else
 			error = 1;
 	} else if (i == 0) {
@@ -311,19 +355,15 @@ for (j = 0; j < crlist.length; j++) {
 	if (crlist[j] == "openssl") {
 		curcrypto="openssl";
 		withOpenSSL = 1;
-		withOpenSSLVersion = "100"; /* default */
 	} else if (crlist[j] == "openssl=098") {
 		curcrypto="openssl";
 		withOpenSSL = 1;
-		withOpenSSLVersion = "098";
 	} else if (crlist[j] == "openssl=100") {
 		curcrypto="openssl";
 		withOpenSSL = 1;
-		withOpenSSLVersion = "100";
 	} else if (crlist[j] == "openssl=110") {
 		curcrypto="openssl";
 		withOpenSSL = 1;
-		withOpenSSLVersion = "110";
 	} else if (crlist[j] == "nss") {
 		curcrypto="nss";
 		withNss = 1;
@@ -353,6 +393,8 @@ WScript.Echo(baseName + " version: " + verMajorXmlSec + "." + verMinorXmlSec + "
 
 // Configure libxmlsec.
 configureXmlSec();
+// Generate version.h.
+configureXmlSecVersion();
 if (error != 0) {
 	WScript.Echo("Configuration failed, aborting.");
 	WScript.Quit(error);
@@ -370,7 +412,6 @@ txtOut += "----------------------------\n";
 txtOut += "         Use Crypto: " + withCrypto + "\n";
 txtOut += " Use Default Crypto: " + withDefaultCrypto + "\n";
 txtOut += "        Use OpenSSL: " + boolToStr(withOpenSSL) + "\n";
-txtOut += "Use OpenSSL Version: " + withOpenSSLVersion + "\n";
 txtOut += "            Use NSS: " + boolToStr(withNss) + "\n";
 txtOut += "       Use MSCrypto: " + boolToStr(withMSCrypto) + "\n";
 txtOut += "        Use LibXSLT: " + boolToStr(withLibXSLT) + "\n";
@@ -379,6 +420,7 @@ txtOut += "     NT 4.0 support: " + boolToStr(withNT4) + "\n";
 txtOut += "\n";
 txtOut += "Win32 build configuration\n";
 txtOut += "-------------------------\n";
+txtOut += "  C-Runtime option: " + cruntime + "\n";
 txtOut += "           Unicode: " + boolToStr(buildUnicode) + "\n";
 txtOut += "     Debug symbols: " + boolToStr(buildDebug) + "\n";
 txtOut += "     Static xmlsec: " + boolToStr(buildStatic) + "\n";
diff --git a/win32/mycfg.bat b/win32/mycfg.bat
index 17617b0..a1190a1 100644
--- a/win32/mycfg.bat
+++ b/win32/mycfg.bat
@@ -8,14 +8,16 @@ REM
 REM Aleksey Sanin <aleksey at aleksey.com>
 REM 
 
-SET PREFIX=C:\cygwin\home\local
-SET XMLSEC_INCLUDE=%PREFIX%\include;%PREFIX%\include\mozilla;%PREFIX%\include\mozilla\nspr;%PREFIX%\include\mozilla\nss;%MSSDK_INCLUDE%
+SET PREFIX=C:\Users\Aleksey\dev\local
+SET XMLSEC_CRYPTO=mscrypto
+SET XMLSEC_INCLUDE=%PREFIX%\include;%MSSDK_INCLUDE%
 SET XMLSEC_LIB=%PREFIX%\lib;%MSSDK_LIB%
-SET XMLSEC_OPTIONS=static=no iconv=no debug=yes xslt=yes crypto=mscrypto,openssl unicode=yes
+SET XMLSEC_OPTIONS=static=yes iconv=no debug=yes xslt=yes crypto=%XMLSEC_CRYPTO% unicode=yes
 
 del /F Makefile configure.txt
-cscript configure.js prefix=%PREFIX% %XMLSEC_OPTIONS% include=%XMLSEC_INCLUDE% lib=%XMLSEC_LIB% 
+cscript configure.js prefix=%PREFIX% %XMLSEC_OPTIONS% include=%XMLSEC_INCLUDE% lib=%XMLSEC_LIB%
 
 mkdir binaries
 copy %PREFIX%\bin\*.dll binaries
 copy %PREFIX%\lib\*.dll binaries
+
diff --git a/xmlsec1-config b/xmlsec1-config
index 11d42c3..52e62c0 100755
--- a/xmlsec1-config
+++ b/xmlsec1-config
@@ -95,7 +95,7 @@ do
     ;;
 
     --version)
-        echo 1.2.23
+        echo 1.2.24
         exit 0
     ;;
     
@@ -158,16 +158,16 @@ none)
     ;;
 
 default) 
-    the_crypto_flags=" -DXMLSEC_OPENSSL_100=1 -DXMLSEC_CRYPTO_OPENSSL=1"
-    the_crypto_libs="-lssl -lcrypto "
+    the_crypto_flags=" -DXMLSEC_CRYPTO_OPENSSL=1"
+    the_crypto_libs="-lssl -lcrypto"
     the_xmlsec_crypto_lib="-lxmlsec1-openssl"
     ;;
     
 openssl)
     if test "0" = "0" ;
     then
-        the_crypto_flags=" -DXMLSEC_OPENSSL_100=1 -DXMLSEC_CRYPTO_OPENSSL=1"
-        the_crypto_libs="-lssl -lcrypto "
+        the_crypto_flags=" -DXMLSEC_CRYPTO_OPENSSL=1"
+        the_crypto_libs="-lssl -lcrypto"
         the_xmlsec_crypto_lib="-lxmlsec1-openssl"
     else
         echo "Error: the \"$crypto\" cryptographic library is not supported"
@@ -178,8 +178,8 @@ openssl)
 gnutls)
     if test "0" = "0" ;
     then
-        the_crypto_flags="-I/usr/include/p11-kit-1  -DXMLSEC_CRYPTO_GNUTLS=1"
-        the_crypto_libs="-lgnutls "
+        the_crypto_flags="-I/usr/include/p11-kit-1 -DXMLSEC_CRYPTO_GNUTLS=1"
+        the_crypto_libs="-lgnutls"
         the_xmlsec_crypto_lib="-lxmlsec1-gnutls"
     else
         echo "Error: the \"$crypto\" cryptographic library is not supported"
@@ -202,8 +202,8 @@ gcrypt)
 nss)
     if test "0" = "0";
     then
-        the_crypto_flags="-I/usr/include/nspr -I/usr/include/nss -I/usr/include/nspr  -DXMLSEC_CRYPTO_NSS=1"
-        the_crypto_libs="-lplds4 -lplc4 -lnspr4 -lnss3 -lnssutil3 -lsmime3 -lssl3 -lplds4 -lplc4 -lnspr4 "
+        the_crypto_flags="-I/usr/include/nspr -I/usr/include/nss -I/usr/include/nspr -DXMLSEC_CRYPTO_NSS=1"
+        the_crypto_libs="-lplds4 -lplc4 -lnspr4 -lnss3 -lnssutil3 -lsmime3 -lssl3 -lplds4 -lplc4 -lnspr4"
         the_xmlsec_crypto_lib="-lxmlsec1-nss"
     else
         echo "Error: the \"$crypto\" cryptographic library is not supported"
diff --git a/xmlsec1-gcrypt.pc b/xmlsec1-gcrypt.pc
index c093148..16bd3e6 100644
--- a/xmlsec1-gcrypt.pc
+++ b/xmlsec1-gcrypt.pc
@@ -4,7 +4,7 @@ libdir=${exec_prefix}/lib
 includedir=${prefix}/include
 
 Name: xmlsec1-gcrypt
-Version: 1.2.23
+Version: 1.2.24
 Description: XML Security Library implements XML Signature and XML Encryption standards
 Requires: libxml-2.0 >= 2.7.4 libxslt >= 1.0.20
 Cflags:  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1    -I/home/aleksey/local/include -DXMLSEC_CRYPTO_GCRYPT=1
diff --git a/xmlsec1-gnutls.pc b/xmlsec1-gnutls.pc
index 9353d20..e7f86ad 100644
--- a/xmlsec1-gnutls.pc
+++ b/xmlsec1-gnutls.pc
@@ -4,8 +4,8 @@ libdir=${exec_prefix}/lib
 includedir=${prefix}/include
 
 Name: xmlsec1-gnutls
-Version: 1.2.23
+Version: 1.2.24
 Description: XML Security Library implements XML Signature and XML Encryption standards
 Requires: libxml-2.0 >= 2.7.4 libxslt >= 1.0.20
-Cflags:  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1   -I/usr/include/p11-kit-1  -DXMLSEC_CRYPTO_GNUTLS=1
-Libs: -L${exec_prefix}/lib -lxmlsec1-gnutls -lxmlsec1-gcrypt -lxmlsec1 -lltdl  -lgnutls 
+Cflags:  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1   -I/usr/include/p11-kit-1 -DXMLSEC_CRYPTO_GNUTLS=1
+Libs: -L${exec_prefix}/lib -lxmlsec1-gnutls -lxmlsec1-gcrypt -lxmlsec1 -lltdl  -lgnutls
diff --git a/xmlsec1-nss.pc b/xmlsec1-nss.pc
index d2757af..33715a5 100644
--- a/xmlsec1-nss.pc
+++ b/xmlsec1-nss.pc
@@ -4,7 +4,7 @@ libdir=${exec_prefix}/lib
 includedir=${prefix}/include
 
 Name: xmlsec1-nss
-Version: 1.2.23
+Version: 1.2.24
 Description: XML Security Library implements XML Signature and XML Encryption standards
 Requires: libxml-2.0 >= 2.7.4 libxslt >= 1.0.20 xulrunner-nspr >= 1.4 xulrunner-nss >= 1.4
 Cflags: -DXMLSEC_CRYPTO_NSS=1  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1  
diff --git a/xmlsec1-openssl.pc b/xmlsec1-openssl.pc
index c411816..c80061f 100644
--- a/xmlsec1-openssl.pc
+++ b/xmlsec1-openssl.pc
@@ -4,8 +4,8 @@ libdir=${exec_prefix}/lib
 includedir=${prefix}/include
 
 Name: xmlsec1-openssl
-Version: 1.2.23
+Version: 1.2.24
 Description: XML Security Library implements XML Signature and XML Encryption standards
 Requires: libxml-2.0 >= 2.7.4 libxslt >= 1.0.20
-Cflags:  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1    -DXMLSEC_OPENSSL_100=1 -DXMLSEC_CRYPTO_OPENSSL=1
-Libs: -L${exec_prefix}/lib -lxmlsec1-openssl -lxmlsec1 -lltdl  -lssl -lcrypto 
+Cflags:  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1    -DXMLSEC_CRYPTO_OPENSSL=1
+Libs: -L${exec_prefix}/lib -lxmlsec1-openssl -lxmlsec1 -lltdl  -lssl -lcrypto
diff --git a/xmlsec1.pc b/xmlsec1.pc
index 12947c7..6b4431a 100644
--- a/xmlsec1.pc
+++ b/xmlsec1.pc
@@ -4,7 +4,7 @@ libdir=${exec_prefix}/lib
 includedir=${prefix}/include
 
 Name: xmlsec1
-Version: 1.2.23
+Version: 1.2.24
 Description: XML Security Library implements XML Signature and XML Encryption standards
 Requires: libxml-2.0 >= 2.7.4 libxslt >= 1.0.20 
 Cflags: -DXMLSEC_CRYPTO_DYNAMIC_LOADING=1  -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1  
diff --git a/xmlsec1.spec b/xmlsec1.spec
index 74a104a..5a9e9e4 100644
--- a/xmlsec1.spec
+++ b/xmlsec1.spec
@@ -1,6 +1,6 @@
 Summary: Library providing support for "XML Signature" and "XML Encryption" standards
 Name: xmlsec1
-Version: 1.2.23
+Version: 1.2.24
 Release: 1
 License: MIT
 Group: Development/Libraries
diff --git a/xmlsec1Conf.sh b/xmlsec1Conf.sh
index fde6222..c21fb0c 100755
--- a/xmlsec1Conf.sh
+++ b/xmlsec1Conf.sh
@@ -7,7 +7,7 @@ libdir="${exec_prefix}/lib"
 includedir="${prefix}/include"
 
 XMLSEC_LIBDIR="${exec_prefix}/lib"
-XMLSEC_INCLUDEDIR=" -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1   -I/usr/include/libxml2  -I/usr/include/libxml2   -DXMLSEC_OPENSSL_100=1 -DXMLSEC_CRYPTO_OPENSSL=1"
-XMLSEC_LIBS="-L${exec_prefix}/lib -lxmlsec1-openssl -lxmlsec1 -lltdl  -lxml2  -lxslt -lxml2  -lssl -lcrypto "
-MODULE_VERSION="xmlsec-1.2.23-openssl"
+XMLSEC_INCLUDEDIR=" -D__XMLSEC_FUNCTION__=__func__ -DXMLSEC_NO_GOST=1 -DXMLSEC_NO_GOST2012=1 -DXMLSEC_DL_LIBLTDL=1 -I${prefix}/include/xmlsec1   -I/usr/include/libxml2 -I/usr/include/libxml2  -DXMLSEC_CRYPTO_OPENSSL=1"
+XMLSEC_LIBS="-L${exec_prefix}/lib -lxmlsec1-openssl -lxmlsec1 -lltdl  -lxml2 -lxslt -lxml2 -lssl -lcrypto"
+MODULE_VERSION="xmlsec-1.2.24-openssl"
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-xml-sgml/xmlsec1.git



More information about the debian-xml-sgml-commit mailing list