---
name: "radcli_ctx_read_dictionary_from_buffer"
section: "3"
platform: "linux"
package: "radcli"
version: "2.0.1-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/radcli_ctx_read_dictionary_from_buffer"
---

# radcli\_ctx\_read\_dictionary\_from\_buffer(3)

Load an additional attribute dictionary from an in-memory buffer.

## NAME

radcli\_ctx\_read\_dictionary\_from\_buffer - Load an additional attribute dictionary from an in-memory buffer.

## SYNOPSIS

```
#include <radcli/>

int radcli_ctx_read_dictionary_from_buffer(
    radcli_ctx  *ctx,
    const char  *buf,
    size_t       size
);
```

## DESCRIPTION

The from-buffer counterpart to radcli\_ctx\_read\_dictionary(), for a caller that has dictionary text already in memory rather than in a file (e.g. a small, program-defined supplemental dictionary)  added so a radcli2.h-only caller is not forced to reach into radcli.h's rc\_read\_dictionary\_from\_buffer() for this one operation.

## PARAMETERS

- **ctx**

  a context from radcli\_ctx\_new() or radcli\_ctx\_read\_config().

- **buf**

  the dictionary text.

- **size**

  buf's length in bytes.

## RETURN VALUE

0 on success, -1 on failure (a parse error, including a conflicting redefinition of an already-loaded attribute).

## SEE ALSO

[*radcli\_ctx\_apply*(3)](/radcli_ctx_apply/3.md), [*radcli\_ctx\_free*(3)](/radcli_ctx_free/3.md), [*radcli\_ctx\_get\_opt\_int*(3)](/radcli_ctx_get_opt_int/3.md), [*radcli\_ctx\_get\_opt\_str*(3)](/radcli_ctx_get_opt_str/3.md), [*radcli\_ctx\_new*(3)](/radcli_ctx_new/3.md), [*radcli\_ctx\_read\_config*(3)](/radcli_ctx_read_config/3.md), [*radcli\_ctx\_read\_dictionary*(3)](/radcli_ctx_read_dictionary/3.md), [*radcli\_ctx\_set\_opt\_int*(3)](/radcli_ctx_set_opt_int/3.md), [*radcli\_ctx\_set\_opt\_str*(3)](/radcli_ctx_set_opt_str/3.md), [*radcli\_ctx\_set\_secret*(3)](/radcli_ctx_set_secret/3.md), [*radcli\_ctx\_set\_tls\_psk*(3)](/radcli_ctx_set_tls_psk/3.md)
