DOKK / manpages / debian 12 / libbson-doc / bson_new_from_buffer.3.en
BSON_NEW_FROM_BUFFER(3) libbson BSON_NEW_FROM_BUFFER(3)

bson_new_from_buffer - bson_new_from_buffer()

bson_t *
bson_new_from_buffer (uint8_t **buf,

size_t *buf_len,
bson_realloc_func realloc_func,
void *realloc_func_ctx);


  • buf: An out-pointer to a buffer containing a serialized BSON document, or to NULL.
  • buf_len: An out-pointer to the length of the buffer in bytes.
  • realloc_func: Optional bson_realloc_func for reallocating the buffer.
  • realloc_func_ctx: Optional pointer that will be passed as ctx to realloc_func.

Creates a new bson_t using the data provided.

The realloc_func, if provided, is called to resize buf if the document is later expanded, for example by a call to one of the bson_append functions.

If *buf is initially NULL then it is allocated, using realloc_func or the default allocator, and initialized with an empty BSON document, and *buf_len is set to 5, the size of an empty document.

A newly-allocated bson_t on success, or NULL.

MongoDB, Inc

2017-present, MongoDB, Inc

October 20, 2022 1.23.1