diff options
Diffstat (limited to 'include/xmlsec/xmlenc.h')
-rw-r--r-- | include/xmlsec/xmlenc.h | 208 |
1 files changed, 104 insertions, 104 deletions
diff --git a/include/xmlsec/xmlenc.h b/include/xmlsec/xmlenc.h index dc6805a8..6725454d 100644 --- a/include/xmlsec/xmlenc.h +++ b/include/xmlsec/xmlenc.h @@ -1,26 +1,26 @@ -/** +/** * XML Security Library (http://www.aleksey.com/xmlsec). * * "XML Encryption" implementation * http://www.w3.org/TR/xmlenc-core - * + * * This is free software; see Copyright file in the source * distribution for preciese wording. - * + * * Copyright (C) 2002-2003 Aleksey Sanin <aleksey@aleksey.com> */ #ifndef __XMLSEC_XMLENC_H__ -#define __XMLSEC_XMLENC_H__ +#define __XMLSEC_XMLENC_H__ #ifndef XMLSEC_NO_XMLENC - + #ifdef __cplusplus extern "C" { -#endif /* __cplusplus */ -#include <stdio.h> +#endif /* __cplusplus */ +#include <stdio.h> #include <libxml/tree.h> -#include <libxml/parser.h> +#include <libxml/parser.h> #include <xmlsec/xmlsec.h> #include <xmlsec/buffer.h> @@ -29,10 +29,10 @@ extern "C" { #include <xmlsec/keyinfo.h> #include <xmlsec/transforms.h> -/** - * xmlEncCtxMode: - * @xmlEncCtxModeEncryptedData: the <enc:EncryptedData/> element procesing. - * @xmlEncCtxModeEncryptedKey: the <enc:EncryptedKey/> element processing. +/** + * xmlEncCtxMode: + * @xmlEncCtxModeEncryptedData: the <enc:EncryptedData/> element procesing. + * @xmlEncCtxModeEncryptedKey: the <enc:EncryptedKey/> element processing. * * The #xmlSecEncCtx mode. */ @@ -47,111 +47,111 @@ typedef enum { * * If this flag is set, then the replaced node will be returned in the replacedNodeList */ -#define XMLSEC_ENC_RETURN_REPLACED_NODE 0x00000001 +#define XMLSEC_ENC_RETURN_REPLACED_NODE 0x00000001 -/** +/** * xmlSecEncCtx: - * @userData: the pointer to user data (xmlsec and xmlsec-crypto libraries - * never touches this). - * @flags: the XML Encryption processing flags. - * @flags2: the XML Encryption processing flags. - * @mode: the mode. - * @keyInfoReadCtx: the reading key context. - * @keyInfoWriteCtx: the writing key context (not used for signature verification). - * @transformCtx: the transforms processing context. - * @defEncMethodId: the default encryption method (used if - * <enc:EncryptionMethod/> node is not present). - * @encKey: the signature key; application may set #encKey - * before calling encryption/decryption functions. - * @operation: the operation: encrypt or decrypt. - * @result: the pointer to signature (not valid for signature verificaction). - * @resultBase64Encoded: the flag: if set then result in #result is base64 encoded. - * @resultReplaced: the flag: if set then resulted <enc:EncryptedData/> - * or <enc:EncryptedKey/> node is added to the document. - * @encMethod: the pointer to encryption transform. + * @userData: the pointer to user data (xmlsec and xmlsec-crypto libraries + * never touches this). + * @flags: the XML Encryption processing flags. + * @flags2: the XML Encryption processing flags. + * @mode: the mode. + * @keyInfoReadCtx: the reading key context. + * @keyInfoWriteCtx: the writing key context (not used for signature verification). + * @transformCtx: the transforms processing context. + * @defEncMethodId: the default encryption method (used if + * <enc:EncryptionMethod/> node is not present). + * @encKey: the signature key; application may set #encKey + * before calling encryption/decryption functions. + * @operation: the operation: encrypt or decrypt. + * @result: the pointer to signature (not valid for signature verification). + * @resultBase64Encoded: the flag: if set then result in #result is base64 encoded. + * @resultReplaced: the flag: if set then resulted <enc:EncryptedData/> + * or <enc:EncryptedKey/> node is added to the document. + * @encMethod: the pointer to encryption transform. * @replacedNodeList: the first node of the list of replaced nodes depending on the nodeReplacementMode - * @id: the ID attribute of <enc:EncryptedData/> - * or <enc:EncryptedKey/> node. - * @type: the Type attribute of <enc:EncryptedData/> - * or <enc:EncryptedKey/> node. - * @mimeType: the MimeType attribute of <enc:EncryptedData/> - * or <enc:EncryptedKey/> node. - * @encoding: the Encoding attributeof <enc:EncryptedData/> - * or <enc:EncryptedKey/> node. - * @recipient: the Recipient attribute of <enc:EncryptedKey/> node.. - * @carriedKeyName: the CarriedKeyName attribute of <enc:EncryptedKey/> node. - * @encDataNode: the pointer to <enc:EncryptedData/> - * or <enc:EncryptedKey/> node. - * @encMethodNode: the pointer to <enc:EncryptionMethod/> node. - * @keyInfoNode: the pointer to <enc:KeyInfo/> node. - * @cipherValueNode: the pointer to <enc:CipherValue/> node. - * @reserved1: reserved for the future. - * + * @id: the ID attribute of <enc:EncryptedData/> + * or <enc:EncryptedKey/> node. + * @type: the Type attribute of <enc:EncryptedData/> + * or <enc:EncryptedKey/> node. + * @mimeType: the MimeType attribute of <enc:EncryptedData/> + * or <enc:EncryptedKey/> node. + * @encoding: the Encoding attributeof <enc:EncryptedData/> + * or <enc:EncryptedKey/> node. + * @recipient: the Recipient attribute of <enc:EncryptedKey/> node.. + * @carriedKeyName: the CarriedKeyName attribute of <enc:EncryptedKey/> node. + * @encDataNode: the pointer to <enc:EncryptedData/> + * or <enc:EncryptedKey/> node. + * @encMethodNode: the pointer to <enc:EncryptionMethod/> node. + * @keyInfoNode: the pointer to <enc:KeyInfo/> node. + * @cipherValueNode: the pointer to <enc:CipherValue/> node. + * @reserved1: reserved for the future. + * * XML Encrypiton context. */ struct _xmlSecEncCtx { /* these data user can set before performing the operation */ - void* userData; - unsigned int flags; - unsigned int flags2; - xmlEncCtxMode mode; - xmlSecKeyInfoCtx keyInfoReadCtx; - xmlSecKeyInfoCtx keyInfoWriteCtx; - xmlSecTransformCtx transformCtx; - xmlSecTransformId defEncMethodId; + void* userData; + unsigned int flags; + unsigned int flags2; + xmlEncCtxMode mode; + xmlSecKeyInfoCtx keyInfoReadCtx; + xmlSecKeyInfoCtx keyInfoWriteCtx; + xmlSecTransformCtx transformCtx; + xmlSecTransformId defEncMethodId; /* these data are returned */ - xmlSecKeyPtr encKey; - xmlSecTransformOperation operation; - xmlSecBufferPtr result; - int resultBase64Encoded; - int resultReplaced; - xmlSecTransformPtr encMethod; - - /* attributes from EncryptedData or EncryptedKey */ - xmlChar* id; - xmlChar* type; - xmlChar* mimeType; - xmlChar* encoding; - xmlChar* recipient; - xmlChar* carriedKeyName; + xmlSecKeyPtr encKey; + xmlSecTransformOperation operation; + xmlSecBufferPtr result; + int resultBase64Encoded; + int resultReplaced; + xmlSecTransformPtr encMethod; + + /* attributes from EncryptedData or EncryptedKey */ + xmlChar* id; + xmlChar* type; + xmlChar* mimeType; + xmlChar* encoding; + xmlChar* recipient; + xmlChar* carriedKeyName; /* these are internal data, nobody should change that except us */ - xmlNodePtr encDataNode; - xmlNodePtr encMethodNode; - xmlNodePtr keyInfoNode; - xmlNodePtr cipherValueNode; - - xmlNodePtr replacedNodeList; /* the pointer to the replaced node */ - void* reserved1; /* reserved for future */ + xmlNodePtr encDataNode; + xmlNodePtr encMethodNode; + xmlNodePtr keyInfoNode; + xmlNodePtr cipherValueNode; + + xmlNodePtr replacedNodeList; /* the pointer to the replaced node */ + void* reserved1; /* reserved for future */ }; -XMLSEC_EXPORT xmlSecEncCtxPtr xmlSecEncCtxCreate (xmlSecKeysMngrPtr keysMngr); -XMLSEC_EXPORT void xmlSecEncCtxDestroy (xmlSecEncCtxPtr encCtx); -XMLSEC_EXPORT int xmlSecEncCtxInitialize (xmlSecEncCtxPtr encCtx, - xmlSecKeysMngrPtr keysMngr); -XMLSEC_EXPORT void xmlSecEncCtxFinalize (xmlSecEncCtxPtr encCtx); -XMLSEC_EXPORT int xmlSecEncCtxCopyUserPref (xmlSecEncCtxPtr dst, - xmlSecEncCtxPtr src); -XMLSEC_EXPORT void xmlSecEncCtxReset (xmlSecEncCtxPtr encCtx); -XMLSEC_EXPORT int xmlSecEncCtxBinaryEncrypt (xmlSecEncCtxPtr encCtx, - xmlNodePtr tmpl, - const xmlSecByte* data, - xmlSecSize dataSize); -XMLSEC_EXPORT int xmlSecEncCtxXmlEncrypt (xmlSecEncCtxPtr encCtx, - xmlNodePtr tmpl, - xmlNodePtr node); -XMLSEC_EXPORT int xmlSecEncCtxUriEncrypt (xmlSecEncCtxPtr encCtx, - xmlNodePtr tmpl, - const xmlChar *uri); -XMLSEC_EXPORT int xmlSecEncCtxDecrypt (xmlSecEncCtxPtr encCtx, - xmlNodePtr node); -XMLSEC_EXPORT xmlSecBufferPtr xmlSecEncCtxDecryptToBuffer (xmlSecEncCtxPtr encCtx, - xmlNodePtr node ); -XMLSEC_EXPORT void xmlSecEncCtxDebugDump (xmlSecEncCtxPtr encCtx, - FILE* output); -XMLSEC_EXPORT void xmlSecEncCtxDebugXmlDump (xmlSecEncCtxPtr encCtx, - FILE* output); +XMLSEC_EXPORT xmlSecEncCtxPtr xmlSecEncCtxCreate (xmlSecKeysMngrPtr keysMngr); +XMLSEC_EXPORT void xmlSecEncCtxDestroy (xmlSecEncCtxPtr encCtx); +XMLSEC_EXPORT int xmlSecEncCtxInitialize (xmlSecEncCtxPtr encCtx, + xmlSecKeysMngrPtr keysMngr); +XMLSEC_EXPORT void xmlSecEncCtxFinalize (xmlSecEncCtxPtr encCtx); +XMLSEC_EXPORT int xmlSecEncCtxCopyUserPref (xmlSecEncCtxPtr dst, + xmlSecEncCtxPtr src); +XMLSEC_EXPORT void xmlSecEncCtxReset (xmlSecEncCtxPtr encCtx); +XMLSEC_EXPORT int xmlSecEncCtxBinaryEncrypt (xmlSecEncCtxPtr encCtx, + xmlNodePtr tmpl, + const xmlSecByte* data, + xmlSecSize dataSize); +XMLSEC_EXPORT int xmlSecEncCtxXmlEncrypt (xmlSecEncCtxPtr encCtx, + xmlNodePtr tmpl, + xmlNodePtr node); +XMLSEC_EXPORT int xmlSecEncCtxUriEncrypt (xmlSecEncCtxPtr encCtx, + xmlNodePtr tmpl, + const xmlChar *uri); +XMLSEC_EXPORT int xmlSecEncCtxDecrypt (xmlSecEncCtxPtr encCtx, + xmlNodePtr node); +XMLSEC_EXPORT xmlSecBufferPtr xmlSecEncCtxDecryptToBuffer (xmlSecEncCtxPtr encCtx, + xmlNodePtr node ); +XMLSEC_EXPORT void xmlSecEncCtxDebugDump (xmlSecEncCtxPtr encCtx, + FILE* output); +XMLSEC_EXPORT void xmlSecEncCtxDebugXmlDump (xmlSecEncCtxPtr encCtx, + FILE* output); #ifdef __cplusplus } |