Synopsis
xmlNodePtr          xmlSecTmplSignatureCreate           (xmlDocPtr doc,
                                                         xmlSecTransformId c14nMethodId,
                                                         xmlSecTransformId signMethodId,
                                                         const xmlChar *id);
xmlNodePtr          xmlSecTmplSignatureCreateNsPref     (xmlDocPtr doc,
                                                         xmlSecTransformId c14nMethodId,
                                                         xmlSecTransformId signMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *nsPrefix);
xmlNodePtr          xmlSecTmplSignatureEnsureKeyInfo    (xmlNodePtr signNode,
                                                         const xmlChar *id);
xmlNodePtr          xmlSecTmplSignatureAddReference     (xmlNodePtr signNode,
                                                         xmlSecTransformId digestMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
xmlNodePtr          xmlSecTmplSignatureAddObject        (xmlNodePtr signNode,
                                                         const xmlChar *id,
                                                         const xmlChar *mimeType,
                                                         const xmlChar *encoding);
xmlNodePtr          xmlSecTmplSignatureGetSignMethodNode
                                                        (xmlNodePtr signNode);
xmlNodePtr          xmlSecTmplSignatureGetC14NMethodNode
                                                        (xmlNodePtr signNode);
xmlNodePtr          xmlSecTmplReferenceAddTransform     (xmlNodePtr referenceNode,
                                                         xmlSecTransformId transformId);
xmlNodePtr          xmlSecTmplObjectAddSignProperties   (xmlNodePtr objectNode,
                                                         const xmlChar *id,
                                                         const xmlChar *target);
xmlNodePtr          xmlSecTmplObjectAddManifest         (xmlNodePtr objectNode,
                                                         const xmlChar *id);
xmlNodePtr          xmlSecTmplManifestAddReference      (xmlNodePtr manifestNode,
                                                         xmlSecTransformId digestMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
xmlNodePtr          xmlSecTmplEncDataCreate             (xmlDocPtr doc,
                                                         xmlSecTransformId encMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *type,
                                                         const xmlChar *mimeType,
                                                         const xmlChar *encoding);
xmlNodePtr          xmlSecTmplEncDataEnsureKeyInfo      (xmlNodePtr encNode,
                                                         const xmlChar *id);
xmlNodePtr          xmlSecTmplEncDataEnsureEncProperties
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *id);
xmlNodePtr          xmlSecTmplEncDataAddEncProperty     (xmlNodePtr encNode,
                                                         const xmlChar *id,
                                                         const xmlChar *target);
xmlNodePtr          xmlSecTmplEncDataEnsureCipherValue  (xmlNodePtr encNode);
xmlNodePtr          xmlSecTmplEncDataEnsureCipherReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
xmlNodePtr          xmlSecTmplEncDataGetEncMethodNode   (xmlNodePtr encNode);
xmlNodePtr          xmlSecTmplCipherReferenceAddTransform
                                                        (xmlNodePtr cipherReferenceNode,
                                                         xmlSecTransformId transformId);
xmlNodePtr          xmlSecTmplReferenceListAddDataReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
xmlNodePtr          xmlSecTmplReferenceListAddKeyReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
xmlNodePtr          xmlSecTmplKeyInfoAddKeyName         (xmlNodePtr keyInfoNode,
                                                         const xmlChar *name);
xmlNodePtr          xmlSecTmplKeyInfoAddKeyValue        (xmlNodePtr keyInfoNode);
xmlNodePtr          xmlSecTmplKeyInfoAddX509Data        (xmlNodePtr keyInfoNode);
xmlNodePtr          xmlSecTmplKeyInfoAddRetrievalMethod (xmlNodePtr keyInfoNode,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
xmlNodePtr          xmlSecTmplRetrievalMethodAddTransform
                                                        (xmlNodePtr retrMethodNode,
                                                         xmlSecTransformId transformId);
xmlNodePtr          xmlSecTmplKeyInfoAddEncryptedKey    (xmlNodePtr keyInfoNode,
                                                         xmlSecTransformId encMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *type,
                                                         const xmlChar *recipient);
xmlNodePtr          xmlSecTmplX509DataAddIssuerSerial   (xmlNodePtr x509DataNode);
xmlNodePtr          xmlSecTmplX509IssuerSerialAddIssuerName
                                                        (xmlNodePtr x509IssuerSerialNode,
                                                         const xmlChar *issuerName);
xmlNodePtr          xmlSecTmplX509IssuerSerialAddSerialNumber
                                                        (xmlNodePtr x509IssuerSerialNode,
                                                         const xmlChar *serial);
xmlNodePtr          xmlSecTmplX509DataAddSubjectName    (xmlNodePtr x509DataNode);
xmlNodePtr          xmlSecTmplX509DataAddSKI            (xmlNodePtr x509DataNode);
xmlNodePtr          xmlSecTmplX509DataAddCertificate    (xmlNodePtr x509DataNode);
xmlNodePtr          xmlSecTmplX509DataAddCRL            (xmlNodePtr x509DataNode);
int                 xmlSecTmplTransformAddHmacOutputLength
                                                        (xmlNodePtr transformNode,
                                                         xmlSecSize bitsLen);
int                 xmlSecTmplTransformAddRsaOaepParam  (xmlNodePtr transformNode,
                                                         const xmlSecByte *buf,
                                                         xmlSecSize size);
int                 xmlSecTmplTransformAddXsltStylesheet
                                                        (xmlNodePtr transformNode,
                                                         const xmlChar *xslt);
int                 xmlSecTmplTransformAddC14NInclNamespaces
                                                        (xmlNodePtr transformNode,
                                                         const xmlChar *prefixList);
int                 xmlSecTmplTransformAddXPath         (xmlNodePtr transformNode,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
int                 xmlSecTmplTransformAddXPath2        (xmlNodePtr transformNode,
                                                         const xmlChar *type,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
int                 xmlSecTmplTransformAddXPointer      (xmlNodePtr transformNode,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
 
Details
xmlSecTmplSignatureCreateNsPref ()
xmlNodePtr          xmlSecTmplSignatureCreateNsPref     (xmlDocPtr doc,
                                                         xmlSecTransformId c14nMethodId,
                                                         xmlSecTransformId signMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *nsPrefix);
Creates new <dsig:Signature/> node with the mandatory
<dsig:SignedInfo/>, <dsig:CanonicalizationMethod/>,
<dsig:SignatureMethod/> and <dsig:SignatureValue/> children and
sub-children. This method differs from xmlSecTmplSignatureCreate in
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.
| doc: |                 the pointer to signature document or NULL; in the
                     second case, application must later call xmlSetTreeDocto ensure that all the children nodes have correct
                     pointer to XML document. | 
| c14nMethodId: |        the signature canonicalization method. | 
| signMethodId: |        the signature  method. | 
| id: |                  the node id (may be NULL). | 
| nsPrefix: |    the namespace prefix for the signature element (e.g. "dsig"), or NULL | 
| Returns : |  the pointer to newly created <dsig:Signature/> node or NULL if an
error occurs. | 
 
xmlSecTmplSignatureEnsureKeyInfo ()
xmlNodePtr          xmlSecTmplSignatureEnsureKeyInfo    (xmlNodePtr signNode,
                                                         const xmlChar *id);
Adds (if necessary) <dsig:KeyInfo/> node to the <dsig:Signature/>
node signNode.
 
xmlSecTmplSignatureAddReference ()
xmlNodePtr          xmlSecTmplSignatureAddReference     (xmlNodePtr signNode,
                                                         xmlSecTransformId digestMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
Adds <dsig:Reference/> node with given URI (uri), Id (id) and
Type (type) attributes and the required children <dsig:DigestMethod/> and
<dsig:DigestValue/> to the <dsig:SignedInfo/> child of signNode.
 
xmlSecTmplSignatureAddObject ()
xmlNodePtr          xmlSecTmplSignatureAddObject        (xmlNodePtr signNode,
                                                         const xmlChar *id,
                                                         const xmlChar *mimeType,
                                                         const xmlChar *encoding);
Adds <dsig:Object/> node to the <dsig:Signature/> node signNode.
 
xmlSecTmplReferenceAddTransform ()
xmlNodePtr          xmlSecTmplReferenceAddTransform     (xmlNodePtr referenceNode,
                                                         xmlSecTransformId transformId);
Adds <dsig:Transform/> node to the <dsig:Reference/> node referenceNode.
 
xmlSecTmplObjectAddSignProperties ()
xmlNodePtr          xmlSecTmplObjectAddSignProperties   (xmlNodePtr objectNode,
                                                         const xmlChar *id,
                                                         const xmlChar *target);
Adds <dsig:SignatureProperties/> node to the <dsig:Object/> node objectNode.
 
xmlSecTmplObjectAddManifest ()
xmlNodePtr          xmlSecTmplObjectAddManifest         (xmlNodePtr objectNode,
                                                         const xmlChar *id);
Adds <dsig:Manifest/> node to the <dsig:Object/> node objectNode.
 
xmlSecTmplManifestAddReference ()
xmlNodePtr          xmlSecTmplManifestAddReference      (xmlNodePtr manifestNode,
                                                         xmlSecTransformId digestMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
Adds <dsig:Reference/> node with specified URI (uri), Id (id) and
Type (type) attributes and the required children <dsig:DigestMethod/> and
<dsig:DigestValue/> to the <dsig:Manifest/> node manifestNode.
 
xmlSecTmplEncDataCreate ()
xmlNodePtr          xmlSecTmplEncDataCreate             (xmlDocPtr doc,
                                                         xmlSecTransformId encMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *type,
                                                         const xmlChar *mimeType,
                                                         const xmlChar *encoding);
Creates new <enc:EncryptedData /> node for encryption template.
| doc: |                 the pointer to signature document or NULL; in the later
                     case, application must later call xmlSetTreeDocto ensure
                     that all the children nodes have correct pointer to XML document. | 
| encMethodId: |         the encryption method (may be NULL). | 
| id: |                  the Id attribute (optional). | 
| type: |                the Type attribute (optional) | 
| mimeType: |            the MimeType attribute (optional) | 
| encoding: |            the Encoding attribute (optional) | 
| Returns : |  the pointer newly created  <enc:EncryptedData/> node or NULL
if an error occurs. | 
 
xmlSecTmplEncDataEnsureKeyInfo ()
xmlNodePtr          xmlSecTmplEncDataEnsureKeyInfo      (xmlNodePtr encNode,
                                                         const xmlChar *id);
Adds <dsig:KeyInfo/> to the  <enc:EncryptedData/> node encNode.
 
xmlSecTmplEncDataEnsureCipherReference ()
xmlNodePtr          xmlSecTmplEncDataEnsureCipherReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
Adds <enc:CipherReference/> node with specified URI attribute uri
to the <enc:EncryptedData/> node encNode.
 
xmlSecTmplEncDataGetEncMethodNode ()
xmlNodePtr          xmlSecTmplEncDataGetEncMethodNode   (xmlNodePtr encNode);
Gets pointer to <enc:EncrytpionMethod/> node.
 
xmlSecTmplReferenceListAddDataReference ()
xmlNodePtr          xmlSecTmplReferenceListAddDataReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
Adds <enc:DataReference/> and the parent <enc:ReferenceList/> node (if needed).
 
xmlSecTmplReferenceListAddKeyReference ()
xmlNodePtr          xmlSecTmplReferenceListAddKeyReference
                                                        (xmlNodePtr encNode,
                                                         const xmlChar *uri);
Adds <enc:KeyReference/> and the parent <enc:ReferenceList/> node (if needed).
 
xmlSecTmplKeyInfoAddKeyName ()
xmlNodePtr          xmlSecTmplKeyInfoAddKeyName         (xmlNodePtr keyInfoNode,
                                                         const xmlChar *name);
Adds <dsig:KeyName/> node to the <dsig:KeyInfo/> node keyInfoNode.
 
xmlSecTmplKeyInfoAddKeyValue ()
xmlNodePtr          xmlSecTmplKeyInfoAddKeyValue        (xmlNodePtr keyInfoNode);
Adds <dsig:KeyValue/> node to the <dsig:KeyInfo/> node keyInfoNode.
 
xmlSecTmplKeyInfoAddX509Data ()
xmlNodePtr          xmlSecTmplKeyInfoAddX509Data        (xmlNodePtr keyInfoNode);
Adds <dsig:X509Data/> node to the <dsig:KeyInfo/> node keyInfoNode.
 
xmlSecTmplKeyInfoAddRetrievalMethod ()
xmlNodePtr          xmlSecTmplKeyInfoAddRetrievalMethod (xmlNodePtr keyInfoNode,
                                                         const xmlChar *uri,
                                                         const xmlChar *type);
Adds <dsig:RetrievalMethod/> node to the <dsig:KeyInfo/> node keyInfoNode.
 
xmlSecTmplKeyInfoAddEncryptedKey ()
xmlNodePtr          xmlSecTmplKeyInfoAddEncryptedKey    (xmlNodePtr keyInfoNode,
                                                         xmlSecTransformId encMethodId,
                                                         const xmlChar *id,
                                                         const xmlChar *type,
                                                         const xmlChar *recipient);
Adds <enc:EncryptedKey/> node with given attributes to
the <dsig:KeyInfo/> node keyInfoNode.
 
xmlSecTmplX509IssuerSerialAddIssuerName ()
xmlNodePtr          xmlSecTmplX509IssuerSerialAddIssuerName
                                                        (xmlNodePtr x509IssuerSerialNode,
                                                         const xmlChar *issuerName);
Adds <dsig:X509IssuerName/> node to the <dsig:X509IssuerSerial/> node x509IssuerSerialNode.
 
xmlSecTmplX509IssuerSerialAddSerialNumber ()
xmlNodePtr          xmlSecTmplX509IssuerSerialAddSerialNumber
                                                        (xmlNodePtr x509IssuerSerialNode,
                                                         const xmlChar *serial);
Adds <dsig:X509SerialNumber/> node to the <dsig:X509IssuerSerial/> node x509IssuerSerialNode.
 
xmlSecTmplTransformAddHmacOutputLength ()
int                 xmlSecTmplTransformAddHmacOutputLength
                                                        (xmlNodePtr transformNode,
                                                         xmlSecSize bitsLen);
Creates <dsig:HMACOutputLength/> child for the HMAC transform
node node.
 
xmlSecTmplTransformAddRsaOaepParam ()
int                 xmlSecTmplTransformAddRsaOaepParam  (xmlNodePtr transformNode,
                                                         const xmlSecByte *buf,
                                                         xmlSecSize size);
Creates <enc:OAEPParam/> child node in the node.
 
xmlSecTmplTransformAddXsltStylesheet ()
int                 xmlSecTmplTransformAddXsltStylesheet
                                                        (xmlNodePtr transformNode,
                                                         const xmlChar *xslt);
Writes the XSLT transform expression to the node.
 
xmlSecTmplTransformAddC14NInclNamespaces ()
int                 xmlSecTmplTransformAddC14NInclNamespaces
                                                        (xmlNodePtr transformNode,
                                                         const xmlChar *prefixList);
Adds "inclusive" namespaces to the ExcC14N transform node node.
 
xmlSecTmplTransformAddXPath ()
int                 xmlSecTmplTransformAddXPath         (xmlNodePtr transformNode,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
Writes XPath transform infromation to the <dsig:Transform/> node
node.
 
xmlSecTmplTransformAddXPath2 ()
int                 xmlSecTmplTransformAddXPath2        (xmlNodePtr transformNode,
                                                         const xmlChar *type,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
Writes XPath2 transform infromation to the <dsig:Transform/> node
node.
 
xmlSecTmplTransformAddXPointer ()
int                 xmlSecTmplTransformAddXPointer      (xmlNodePtr transformNode,
                                                         const xmlChar *expression,
                                                         const xmlChar **nsList);
Writes XPoniter transform infromation to the <dsig:Transform/> node
node.