bson_validate (3) Linux Manual Page
NAME
bson_validate() – Validates a BSON document by walking through the document and inspecting the fields for valid content.
SYNOPSIS
typedef enum {
BSON_VALIDATE_NONE = 0,
BSON_VALIDATE_UTF8 = (1 << 0),
BSON_VALIDATE_DOLLAR_KEYS = (1 << 1),
BSON_VALIDATE_DOT_KEYS = (1 << 2),
BSON_VALIDATE_UTF8_ALLOW_NULL = (1 << 3),
} bson_validate_flags_t;
bool bson_validate(const bson_t *bson,
bson_validate_flags_t flags,
size_t *offset);
PARAMETERS
bson- A
bson_t\&.
flags- A bitwise-or of all desired
bson_validate_flags_t\&.
offset- A location for the offset within
bsonwhere the error ocurred.
DESCRIPTION
Validates a BSON document by walking through the document and inspecting the fields for valid content.
You can modify how the validation occurs through the use of the flags parameter. A description of their effect is below.
- \[bu]
-
BSON_VALIDATE_UTF8will request that all UTF-8 strings are checked to contain valid UTF-8 sequences. This is expensive and disabled by default. - \[bu]
-
BSON_VALIDATE_UTF8_ALLOW_NULLwill specify that UTF-8 strings are allowed to have embedded NULL bytes. Many UTF-8 implementations use a 2-byte squence for embedded NULLs so that they work with stanard libc functions. Libbson expects this by default. - \[bu]
-
BSON_VALIDATE_DOLLAR_KEYSwill request that all key names are checked to ensure they do not start with the ASCII dollar character ($). - \[bu]
-
BSON_VALIDATE_DOT_KEYSwill request that all key names are checked to ensure they do not contain an ASCII dot (.) character.
RETURNS
Returns true if bson is valid; otherwise false and offset is set to the byte offset where the error was detected.
COLOPHON
This page is part of libbson. Please report any bugs at https://jira.mongodb.org/browse/CDRIVER.
