-
Notifications
You must be signed in to change notification settings - Fork 113
API XMLSec Core Bn
API Group: xmlsec_core_bn
Big-number (arbitrary-precision integer) utility functions.
Big numbers support functions.
typedef xmlSecBuffer xmlSecBn;Source: include/xmlsec/bn.h
Big Number (arbitrary-precision integer).
typedef xmlSecBn* xmlSecBnPtr;Source: include/xmlsec/bn.h
Pointer to xmlSecBn.
Source: include/xmlsec/bn.h
The big numbers formats.
| Value | Initializer | Description |
|---|---|---|
xmlSecBnBase64 |
`` | |
xmlSecBnHex |
`` | |
xmlSecBnDec |
`` |
xmlSecBnPtr xmlSecBnCreate(xmlSecSize size);Source: include/xmlsec/bn.h
Creates a new BN object.
Creates a new BN object. Caller is responsible for destroying it by calling xmlSecBnDestroy function.
Parameters:
-
size— the initial allocated BN size.
Returns: the newly BN or a NULL if an error occurs.
void xmlSecBnDestroy(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Destroys bn object.
Destroys bn object created with xmlSecBnCreate function.
Parameters:
-
bn— the pointer to BN.
int xmlSecBnInitialize(xmlSecBnPtr bn, xmlSecSize size);Source: include/xmlsec/bn.h
Initializes a BN object.
Initializes a BN object. Caller is responsible for destroying it by calling xmlSecBnFinalize function.
Parameters:
-
bn— the pointer to BN. -
size— the initial allocated BN size.
Returns: 0 on success or a negative value if an error occurs.
void xmlSecBnFinalize(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Destroys bn object.
Destroys bn object created with xmlSecBnInitialize function.
Parameters:
-
bn— the pointer to BN.
xmlSecByte * xmlSecBnGetData(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Gets pointer to the binary bn representation.
Parameters:
-
bn— the pointer to BN.
Returns: pointer to binary BN data or NULL if an error occurs.
int xmlSecBnSetData(xmlSecBnPtr bn, const xmlSecByte *data, xmlSecSize size);Source: include/xmlsec/bn.h
Sets the value of bn to data.
Parameters:
-
bn— the pointer to BN. -
data— the pointer to new BN binary data. -
size— the size of new BN data.
Returns: 0 on success or a negative value if an error occurs.
xmlSecSize xmlSecBnGetSize(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Gets the size of binary data in bn.
Parameters:
-
bn— the pointer to BN.
Returns: the size of binary data.
void xmlSecBnZero(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Sets the value of bn to zero.
Parameters:
-
bn— the pointer to BN.
int xmlSecBnFromString(xmlSecBnPtr bn, const xmlChar *str, xmlSecSize base);Source: include/xmlsec/bn.h
Reads bn from string str in given base.
Reads bn from string str assuming it has base base.
Parameters:
-
bn— the pointer to BN. -
str— the string with BN. -
base— the base forstr.
Returns: 0 on success or a negative value if an error occurs.
xmlChar * xmlSecBnToString(xmlSecBnPtr bn, xmlSecSize base);Source: include/xmlsec/bn.h
Writes bn to string with given base.
Writes bn to string with base base. Caller is responsible for freeing returned string with xmlFree.
Parameters:
-
bn— the pointer to BN. -
base— the base for returned string.
Returns: the string represenataion if BN or a NULL if an error occurs.
int xmlSecBnFromHexString(xmlSecBnPtr bn, const xmlChar *str);Source: include/xmlsec/bn.h
Reads bn from hex string str.
Parameters:
-
bn— the pointer to BN. -
str— the string with BN.
Returns: 0 on success or a negative value if an error occurs.
xmlChar * xmlSecBnToHexString(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Writes bn to hex string.
Writes bn to hex string. Caller is responsible for freeing returned string with xmlFree.
Parameters:
-
bn— the pointer to BN.
Returns: the string represenataion if BN or a NULL if an error occurs.
int xmlSecBnFromDecString(xmlSecBnPtr bn, const xmlChar *str);Source: include/xmlsec/bn.h
Reads bn from decimal string str.
Parameters:
-
bn— the pointer to BN. -
str— the string with BN.
Returns: 0 on success or a negative value if an error occurs.
xmlChar * xmlSecBnToDecString(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Writes bn to decimal string.
Writes bn to decimal string. Caller is responsible for freeing returned string with xmlFree.
Parameters:
-
bn— the pointer to BN.
Returns: the string represenataion if BN or a NULL if an error occurs.
int xmlSecBnMul(xmlSecBnPtr bn, int multiplier);Source: include/xmlsec/bn.h
Multiplies bn with multiplier.
Parameters:
-
bn— the pointer to BN. -
multiplier— the multiplier.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBnDiv(xmlSecBnPtr bn, int divider, int *mod);Source: include/xmlsec/bn.h
Divides bn by divider.
Divides bn by divider and places modulus into mod.
Parameters:
-
bn— the pointer to BN. -
divider— the divider -
mod— the pointer for modulus result.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBnAdd(xmlSecBnPtr bn, int delta);Source: include/xmlsec/bn.h
Adds delta to bn.
Parameters:
-
bn— the pointer to BN. -
delta— the delta.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBnReverse(xmlSecBnPtr bn);Source: include/xmlsec/bn.h
Reverses bytes order in bn.
Parameters:
-
bn— the pointer to BN.
Returns: 0 on success or a negative value if an error occurs.
int xmlSecBnCompare(xmlSecBnPtr bn, const xmlSecByte *data, xmlSecSize dataSize);Source: include/xmlsec/bn.h
Compares the bn with data.
Parameters:
-
bn— the pointer to BN. -
data— the data to compare BN to. -
dataSize— thedatasize.
Returns: 0 if data is equal, negative value if bn is less or positive value if bn is greater than data.
int xmlSecBnCompareReverse(xmlSecBnPtr bn, const xmlSecByte *data, xmlSecSize dataSize);Source: include/xmlsec/bn.h
Compares the bn with reverse data.
Parameters:
-
bn— the pointer to BN. -
data— the data to compare BN to. -
dataSize— thedatasize.
Returns: 0 if data is equal, negative value if bn is less or positive value if bn is greater than data.
int xmlSecBnGetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int reverse);Source: include/xmlsec/bn.h
Converts node content to BN value.
Converts the node content from format to bn.
Parameters:
-
bn— the pointer to BN. -
cur— the pointer to an XML node. -
format— the BN format. -
reverse— if set then reverse read buffer after reading.
Returns: 0 on success and a negative values if an error occurs.
int xmlSecBnSetNodeValue(xmlSecBnPtr bn, xmlNodePtr cur, xmlSecBnFormat format, int reverse, int addLineBreaks);Source: include/xmlsec/bn.h
Converts the bn and sets it to node content.
Parameters:
-
bn— the pointer to BN. -
cur— the pointer to an XML node. -
format— the BN format. -
reverse— the flag that indicates whether to reverse the buffer before writing. -
addLineBreaks— the flag; it is equal to 1 then linebreaks will be added before and after new buffer content.
Returns: 0 on success and a negative values if an error occurs.
int xmlSecBnBlobSetNodeValue(const xmlSecByte *data, xmlSecSize dataSize, xmlNodePtr cur, xmlSecBnFormat format, int reverse, int addLineBreaks);Source: include/xmlsec/bn.h
Converts the blob and sets it to node content.
Parameters:
-
data— the pointer to BN blob. -
dataSize— the size of BN blob. -
cur— the pointer to an XML node. -
format— the BN format. -
reverse— the flag that indicates whether to reverse the buffer before writing. -
addLineBreaks— if the flag is equal to 1 then linebreaks will be added before and after new buffer content.
Returns: 0 on success and a negative values if an error occurs.