transformsInternal.h
Name
transformsInternal.h -- The internal transform's functions.
Synopsis
enum xmlSecTransformResult;
struct xmlSecTransformState;
xmlSecTransformStatePtr xmlSecTransformStateCreate
(xmlDocPtr doc,
xmlSecNodeSetPtr nodeSet,
const char *uri);
void xmlSecTransformStateDestroy (xmlSecTransformStatePtr state);
int xmlSecTransformStateUpdate (xmlSecTransformStatePtr state,
xmlSecTransformPtr transform);
int xmlSecTransformStateFinal (xmlSecTransformStatePtr state,
xmlSecTransformResult type);
int xmlSecTransformStateFinalToNode (xmlSecTransformStatePtr state,
xmlNodePtr node,
int addBase64,
xmlSecTransformCtxPtr transformCtx);
int xmlSecTransformStateFinalVerifyNode
(xmlSecTransformStatePtr state,
xmlSecTransformPtr transform,
xmlNodePtr node,
xmlSecTransformCtxPtr transformCtx);
int xmlSecTransformRegister (xmlSecTransformId keyId);
int xmlSecTransformsInit (void);
int xmlSecTransformsNodeRead (xmlSecTransformStatePtr state,
xmlNodePtr transformsNode);
xmlSecTransformId xmlSecTransformFind (const xmlChar *href,
xmlSecTransformUsage usage);
xmlSecTransformPtr xmlSecTransformNodeRead (xmlNodePtr transformNode,
xmlSecTransformUsage usage,
int dontDestroy);
int xmlSecTransformNodeWrite (xmlNodePtr transformNode,
xmlSecTransformId id); |
Details
enum xmlSecTransformResult
typedef enum {
xmlSecTransformResultBinary,
xmlSecTransformResultXml
} xmlSecTransformResult; |
The transform result types.
struct xmlSecTransformState
struct xmlSecTransformState {
/* initial state */
xmlDocPtr initDoc;
xmlSecNodeSetPtr initNodeSet;
char *initUri;
/* current state: xml */
xmlDocPtr curDoc;
xmlSecNodeSetPtr curNodeSet;
/* current state: binary */
xmlSecBufferPtr curBuf;
xmlSecTransformPtr curFirstBinTransform;
xmlSecTransformPtr curLastBinTransform;
/* optimization: special case for c14n transforms */
xmlSecTransformPtr curC14NTransform;
}; |
The current transforms state.
xmlSecTransformStateCreate ()
xmlSecTransformStatePtr xmlSecTransformStateCreate
(xmlDocPtr doc,
xmlSecNodeSetPtr nodeSet,
const char *uri); |
Creates new transform state.
xmlSecTransformStateDestroy ()
void xmlSecTransformStateDestroy (xmlSecTransformStatePtr state); |
Destroys the transform state.
xmlSecTransformStateUpdate ()
int xmlSecTransformStateUpdate (xmlSecTransformStatePtr state,
xmlSecTransformPtr transform); |
Updates the current state with transform. Note all transforms are
applied immidiatelly.
xmlSecTransformStateFinal ()
Finalazies transforms state (applies all pending transforms) and
creates a result of the desired type.
xmlSecTransformStateFinalToNode ()
int xmlSecTransformStateFinalToNode (xmlSecTransformStatePtr state,
xmlNodePtr node,
int addBase64,
xmlSecTransformCtxPtr transformCtx); |
xmlSecTransformStateFinalVerifyNode ()
int xmlSecTransformStateFinalVerifyNode
(xmlSecTransformStatePtr state,
xmlSecTransformPtr transform,
xmlNodePtr node,
xmlSecTransformCtxPtr transformCtx); |
xmlSecTransformRegister ()
Adds the transformId to the internal table of known transforms.
xmlSecTransformsInit ()
int xmlSecTransformsInit (void); |
Trnasforms engine initialization (called from xmlSecInit() function).
The applications should not call this function directly.
xmlSecTransformsNodeRead ()
int xmlSecTransformsNodeRead (xmlSecTransformStatePtr state,
xmlNodePtr transformsNode); |
Reads the transform node and updates state,
xmlSecTransformFind ()
Searches the list of known transforms for transform with given href
xmlSecTransformNodeRead ()
xmlSecTransformPtr xmlSecTransformNodeRead (xmlNodePtr transformNode,
xmlSecTransformUsage usage,
int dontDestroy); |
Reads transform from the transformNode as follows:
1) reads "Algorithm" attribute;
2) checks the list of known algorithms;
3) calls transform create method;
4) calls transform read transform node method.
xmlSecTransformNodeWrite ()
Writes Agorithm attribute in the transform node.