Details
enum xmlSecAllocMode
typedef enum {
xmlSecAllocModeExact = 0,
xmlSecAllocModeDouble
} xmlSecAllocMode;
The memory allocation mode (used by xmlSecBuffer
and xmlSecList
).
struct xmlSecBuffer
struct xmlSecBuffer {
xmlSecByte* data;
xmlSecSize size;
xmlSecSize maxSize;
xmlSecAllocMode allocMode;
};
Binary data buffer.
xmlSecBufferSetDefaultAllocMode ()
void xmlSecBufferSetDefaultAllocMode (xmlSecAllocMode defAllocMode
,
xmlSecSize defInitialSize
);
Sets new global default allocation mode and minimal intial size.
xmlSecBufferCreate ()
xmlSecBufferPtr xmlSecBufferCreate (xmlSecSize size
);
Allocates and initalizes new memory buffer with given size.
Caller is responsible for calling xmlSecBufferDestroy function
to free the buffer.
size : |
the intial size. |
Returns : |
pointer to newly allocated buffer or NULL if an error occurs. |
xmlSecBufferInitialize ()
int xmlSecBufferInitialize (xmlSecBufferPtr buf
,
xmlSecSize size
);
Initializes buffer object buf
. Caller is responsible for calling
xmlSecBufferFinalize function to free allocated resources.
buf : |
the pointer to buffer object. |
size : |
the initial buffer size. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferSetSize ()
int xmlSecBufferSetSize (xmlSecBufferPtr buf
,
xmlSecSize size
);
Sets new buffer data size. If necessary, buffer grows to
have at least size
bytes.
buf : |
the pointer to buffer object. |
size : |
the new data size. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferGetMaxSize ()
xmlSecSize xmlSecBufferGetMaxSize (xmlSecBufferPtr buf
);
Gets the maximum (allocated) buffer size.
buf : |
the pointer to buffer object. |
Returns : |
the maximum (allocated) buffer size. |
xmlSecBufferSetMaxSize ()
int xmlSecBufferSetMaxSize (xmlSecBufferPtr buf
,
xmlSecSize size
);
Sets new buffer maximum size. If necessary, buffer grows to
have at least size
bytes.
buf : |
the pointer to buffer object. |
size : |
the new maximum size. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferEmpty ()
void xmlSecBufferEmpty (xmlSecBufferPtr buf
);
Empties the buffer.
buf : |
the pointer to buffer object. |
xmlSecBufferAppend ()
int xmlSecBufferAppend (xmlSecBufferPtr buf
,
const xmlSecByte *data
,
xmlSecSize size
);
Appends the data
after the current data stored in the buffer.
buf : |
the pointer to buffer object. |
data : |
the data. |
size : |
the data size. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferPrepend ()
int xmlSecBufferPrepend (xmlSecBufferPtr buf
,
const xmlSecByte *data
,
xmlSecSize size
);
Prepends the data
before the current data stored in the buffer.
buf : |
the pointer to buffer object. |
data : |
the data. |
size : |
the data size. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferRemoveHead ()
int xmlSecBufferRemoveHead (xmlSecBufferPtr buf
,
xmlSecSize size
);
Removes size
bytes from the beginning of the current buffer.
buf : |
the pointer to buffer object. |
size : |
the number of bytes to be removed. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferRemoveTail ()
int xmlSecBufferRemoveTail (xmlSecBufferPtr buf
,
xmlSecSize size
);
Removes size
bytes from the end of current buffer.
buf : |
the pointer to buffer object. |
size : |
the number of bytes to be removed. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferReadFile ()
int xmlSecBufferReadFile (xmlSecBufferPtr buf
,
const char *filename
);
Reads the content of the file filename
in the buffer.
buf : |
the pointer to buffer object. |
filename : |
the filename. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferBase64NodeContentRead ()
int xmlSecBufferBase64NodeContentRead (xmlSecBufferPtr buf
,
xmlNodePtr node
);
Reads the content of the node
, base64 decodes it and stores the
result in the buffer.
buf : |
the pointer to buffer object. |
node : |
the pointer to node. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferBase64NodeContentWrite ()
int xmlSecBufferBase64NodeContentWrite (xmlSecBufferPtr buf
,
xmlNodePtr node
,
int columns
);
Sets the content of the node
to the base64 encoded buffer data.
buf : |
the pointer to buffer object. |
node : |
the pointer to a node. |
columns : |
the max line size fro base64 encoded data. |
Returns : |
0 on success or a negative value if an error occurs. |
xmlSecBufferCreateOutputBuffer ()
xmlOutputBufferPtr xmlSecBufferCreateOutputBuffer (xmlSecBufferPtr buf
);
Creates new LibXML output buffer to store data in the buf
. Caller is
responsible for destroying buf
when processing is done.
buf : |
the pointer to buffer. |
Returns : |
pointer to newly allocated output buffer or NULL if an error
occurs. |