Provided by: libbson-doc_1.3.1-1_all bug

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 bson where 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_UTF8 will 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_NULL  will 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_KEYS  will request that all key names are checked to ensure they do not start with
         the ASCII dollar character ( $ ).

       \[bu]
         BSON_VALIDATE_DOT_KEYS will 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.

libbson                                            2016‐01‐18                                   BSON_VALIDATE(3)