ReactOS 0.4.16-dev-297-gc569aee
|
ASN.1 buffer writing functionality. More...
Go to the source code of this file.
Macros | |
#define | MBEDTLS_ASN1_CHK_ADD(g, f) |
ASN.1 buffer writing functionality.
Definition in file asn1write.h.
Definition at line 60 of file asn1write.h.
mbedtls_asn1_named_data * mbedtls_asn1_store_named_data | ( | mbedtls_asn1_named_data ** | list, |
const char * | oid, | ||
size_t | oid_len, | ||
const unsigned char * | val, | ||
size_t | val_len | ||
) |
Create or find a specific named_data entry for writing in a sequence or list based on the OID. If not already in there, a new entry is added to the head of the list. Warning: Destructive behaviour for the val data!
list | The pointer to the location of the head of the list to seek through (will be updated in case of a new entry). |
oid | The OID to look for. |
oid_len | The size of the OID. |
val | The data to store (can be NULL if you want to fill it by hand). |
val_len | The minimum length of the data buffer needed. |
NULL
if if there was a memory allocation error. int mbedtls_asn1_write_algorithm_identifier | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const char * | oid, | ||
size_t | oid_len, | ||
size_t | par_len | ||
) |
Write an AlgorithmIdentifier sequence in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
oid | The OID of the algorithm to write. |
oid_len | The length of the algorithm's OID. |
par_len | The length of the parameters, which must be already written. If 0, NULL parameters are added |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. int mbedtls_asn1_write_bitstring | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const unsigned char * | buf, | ||
size_t | bits | ||
) |
Write a bitstring tag (MBEDTLS_ASN1_BIT_STRING) and value in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
buf | The bitstring to write. |
bits | The total number of bits in the bitstring. |
p
on success. Write a boolean tag (MBEDTLS_ASN1_BOOLEAN) and value in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
boolean | The boolean value to write, either 0 or 1 . |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. int mbedtls_asn1_write_ia5_string | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const char * | text, | ||
size_t | text_len | ||
) |
Write a string in ASN.1 format using the IA5String string encoding tag (MBEDTLS_ASN1_IA5_STRING).
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
text | The string to write. |
text_len | The length of text in bytes (which might be strictly larger than the number of characters). |
p
on success. Write an int tag (MBEDTLS_ASN1_INTEGER) and value in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
val | The integer value to write. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. Write a length field in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
len | The length value to write. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. Write a arbitrary-precision number (MBEDTLS_ASN1_INTEGER) in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
X | The MPI to write. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. Write a NULL tag (MBEDTLS_ASN1_NULL) with zero data in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. int mbedtls_asn1_write_octet_string | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const unsigned char * | buf, | ||
size_t | size | ||
) |
Write an octet string tag (MBEDTLS_ASN1_OCTET_STRING) and value in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
buf | The buffer holding the data to write. |
size | The length of the data buffer buf . |
p
on success. int mbedtls_asn1_write_oid | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const char * | oid, | ||
size_t | oid_len | ||
) |
Write an OID tag (MBEDTLS_ASN1_OID) and data in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
oid | The OID to write. |
oid_len | The length of the OID. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. int mbedtls_asn1_write_printable_string | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const char * | text, | ||
size_t | text_len | ||
) |
Write a string in ASN.1 format using the PrintableString string encoding tag (MBEDTLS_ASN1_PRINTABLE_STRING).
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
text | The string to write. |
text_len | The length of text in bytes (which might be strictly larger than the number of characters). |
p
on success. int mbedtls_asn1_write_raw_buffer | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const unsigned char * | buf, | ||
size_t | size | ||
) |
Write raw buffer data.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
buf | The data buffer to write. |
size | The length of the data buffer. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. Write an ASN.1 tag in ASN.1 format.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
tag | The tag to write. |
p
on success. MBEDTLS_ERR_ASN1_XXX
error code on failure. int mbedtls_asn1_write_tagged_string | ( | unsigned char ** | p, |
unsigned char * | start, | ||
int | tag, | ||
const char * | text, | ||
size_t | text_len | ||
) |
Write a string in ASN.1 format using a specific string encoding tag.
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
tag | The string encoding tag to write, e.g. MBEDTLS_ASN1_UTF8_STRING. |
text | The string to write. |
text_len | The length of text in bytes (which might be strictly larger than the number of characters). |
p
on success. int mbedtls_asn1_write_utf8_string | ( | unsigned char ** | p, |
unsigned char * | start, | ||
const char * | text, | ||
size_t | text_len | ||
) |
Write a UTF8 string in ASN.1 format using the UTF8String string encoding tag (MBEDTLS_ASN1_PRINTABLE_STRING).
p | The reference to the current position pointer. |
start | The start of the buffer, for bounds-checking. |
text | The string to write. |
text_len | The length of text in bytes (which might be strictly larger than the number of characters). |
p
on success.