-
Notifications
You must be signed in to change notification settings - Fork 113
API XMLSec Core Buffer
API Group: xmlsec_core_buffer
Dynamic binary buffer implementation.
Binary memory buffer functions.
Source: include/xmlsec/buffer.h
The memory allocation mode.
The memory allocation mode (used by xmlSecBuffer and xmlSecList).
| Value | Initializer | Description |
|---|---|---|
xmlSecAllocModeExact |
= 0 |
|
xmlSecAllocModeDouble |
`` |
void xmlSecBufferSetDefaultAllocMode(xmlSecAllocMode defAllocMode, xmlSecSize defInitialSize);Source: include/xmlsec/buffer.h
Sets the default buffer allocation mode.
Sets new global default allocation mode and minimal intial size.
Parameters:
-
defAllocMode— the new default buffer allocation mode. -
defInitialSize— the new default buffer minimal intial size.
xmlSecBufferPtr xmlSecBufferCreate(xmlSecSize size);Source: include/xmlsec/buffer.h
Allocates and initializes a new memory buffer.
Allocates and initializes new memory buffer with given size. Caller is responsible for calling xmlSecBufferDestroy function to free the buffer.
Parameters:
-
size— the intial size.
Returns: pointer to newly allocated buffer or NULL if an error occurs.
void xmlSecBufferDestroy(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Destroys a buffer object.
Destroys buffer object created with xmlSecBufferCreate function.
Parameters:
-
buf— the pointer to buffer object.
int xmlSecBufferInitialize(xmlSecBufferPtr buf, xmlSecSize size);Source: include/xmlsec/buffer.h
Initializes a buffer object.
Initializes buffer object buf. Caller is responsible for calling xmlSecBufferFinalize function to free allocated resources.
Parameters:
-
buf— the pointer to buffer object. -
size— the initial buffer size.
Returns: 0 on success or a negative value if an error occurs.
void xmlSecBufferFinalize(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Frees resources for an initialized buffer.
Frees allocated resource for a buffer initialized with xmlSecBufferInitialize function.
Parameters:
-
buf— the pointer to buffer object.
int xmlSecBufferIsEmpty(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Checks if the buffer is empty.
Checks if the buf is empty (buf is null or buf's data is null or buf's size is zero).
Parameters:
-
buf— the pointer to buffer object.
Returns: 1 if buffer is empty or 0 otherwise.
xmlSecByte * xmlSecBufferGetData(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Gets pointer to buffer's data.
Parameters:
-
buf— the pointer to buffer object.
Returns: pointer to buffer's data.
int xmlSecBufferSetData(xmlSecBufferPtr buf, const xmlSecByte *data, xmlSecSize size);Source: include/xmlsec/buffer.h
Sets the value of the buffer to data.
Parameters:
-
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.
xmlSecSize xmlSecBufferGetSize(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Gets the current buffer data size.
Parameters:
-
buf— the pointer to buffer object.
Returns: the current data size.
int xmlSecBufferSetSize(xmlSecBufferPtr buf, xmlSecSize size);Source: include/xmlsec/buffer.h
Sets new buffer data size.
Sets new buffer data size. If necessary, buffer grows to have at least size bytes.
Parameters:
-
buf— the pointer to buffer object. -
size— the new data size.
Returns: 0 on success or a negative value if an error occurs.
xmlSecSize xmlSecBufferGetMaxSize(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Gets the maximum (allocated) buffer size.
Parameters:
-
buf— the pointer to buffer object.
Returns: the maximum (allocated) buffer size.
int xmlSecBufferSetMaxSize(xmlSecBufferPtr buf, xmlSecSize size);Source: include/xmlsec/buffer.h
Sets new buffer maximum size.
Sets new buffer maximum size. If necessary, buffer grows to have at least size bytes.
Parameters:
-
buf— the pointer to buffer object. -
size— the new maximum size.
Returns: 0 on success or a negative value if an error occurs.
void xmlSecBufferEmpty(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Empties the buffer.
Parameters:
-
buf— the pointer to buffer object.
void xmlSecBufferSwap(xmlSecBufferPtr buf1, xmlSecBufferPtr buf2);Source: include/xmlsec/buffer.h
Swaps the content of the two buffers.
Parameters:
-
buf1— the pointer to the first buffer object. -
buf2— the pointer to the second buffer object.
int xmlSecBufferAppend(xmlSecBufferPtr buf, const xmlSecByte *data, xmlSecSize size);Source: include/xmlsec/buffer.h
Appends data to the end of the buffer.
Appends the data after the current data stored in the buffer.
Parameters:
-
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.
int xmlSecBufferPrepend(xmlSecBufferPtr buf, const xmlSecByte *data, xmlSecSize size);Source: include/xmlsec/buffer.h
Prepends data to the beginning of the buffer.
Prepends the data before the current data stored in the buffer.
Parameters:
-
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.
int xmlSecBufferRemoveHead(xmlSecBufferPtr buf, xmlSecSize size);Source: include/xmlsec/buffer.h
Removes bytes from the beginning of the buffer.
Removes size bytes from the beginning of the current buffer.
Parameters:
-
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.
int xmlSecBufferRemoveTail(xmlSecBufferPtr buf, xmlSecSize size);Source: include/xmlsec/buffer.h
Removes bytes from the end of the buffer.
Removes size bytes from the end of current buffer.
Parameters:
-
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.
int xmlSecBufferReverse(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Reverses order of bytes in the buffer buf.
Parameters:
-
buf— the pointer to buffer object.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBufferReadFile(xmlSecBufferPtr buf, const char *filename);Source: include/xmlsec/buffer.h
Reads the content of a file into the buffer.
Reads the content of the file filename in the buffer.
Parameters:
-
buf— the pointer to buffer object. -
filename— the filename.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBufferBase64NodeContentRead(xmlSecBufferPtr buf, xmlNodePtr node);Source: include/xmlsec/buffer.h
Reads and base64-decodes a node's content into the buffer.
Reads the content of the node, base64 decodes it and stores the result in the buffer.
Parameters:
-
buf— the pointer to buffer object. -
node— the pointer to node.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBufferBase64NodeContentWrite(xmlSecBufferPtr buf, xmlNodePtr node, int columns);Source: include/xmlsec/buffer.h
Sets node content to the base64-encoded buffer data.
Sets the content of the node to the base64 encoded buffer data.
Parameters:
-
buf— the pointer to buffer object. -
node— the pointer to a node. -
columns— the max line size for base64 encoded data.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBufferHexRead(xmlSecBufferPtr buf, const xmlChar *hexStr);Source: include/xmlsec/buffer.h
Reads hex-encoded string into the buffer.
Reads content of hex encoded hexStr into buf.
Parameters:
-
buf— the pointer to buffer object. -
hexStr— the hex string.
Returns: 0 on success or a negative value if an error occurs.
void xmlSecBufferDebugHexDump(xmlSecBufferPtr buf, FILE *output);Source: include/xmlsec/buffer.h
Writes the content of the buffer as hex string to the output.
Writes the content of the buf as hex string to the output (no more than 32 bytes per line).
Parameters:
-
buf— the pointer to buffer object. -
output— the pointer to output FILE.
xmlOutputBufferPtr xmlSecBufferCreateOutputBuffer(xmlSecBufferPtr buf);Source: include/xmlsec/buffer.h
Creates a LibXML output buffer to store data in buf.
Creates new LibXML output buffer to store data in the buf. Caller is responsible for destroying buf when processing is done.
Parameters:
-
buf— the pointer to buffer.
Returns: pointer to newly allocated output buffer or NULL if an error occurs.