rc_read_dic...from_buffer(3)
π rc_read_dic...from_buffer(3) π
okay bestie, welcome to the radcli radius client library manual, section 3, and today's main character is rc_read_dic...from_buffer(3). yes the title is literally abbreviated like that, that's just how it is, we don't question the icon. π
β¨ NAME β¨
rc_read_dictionary_from_buffer -
(yeah bestie the description line is empty in the original, and I'm not about to invent lore. it does what its name says. iykyk. π)
πΈ SYNOPSIS πΈ
#include <radcli/radcli.h>
int rc_read_dictionary_from_buffer(
rc_handle *rh,
char const *buf,
size_t size
);
like. that's the whole vibe. three args, one int coming back at you. π
π¦ DESCRIPTION π¦
Initialize the dictionary from Buffer π«
So what's actually happening: it reads all ATTRIBUTES into the dictionary_attributes list. Then it reads all VALUES into the dictionary_values list. That's it, that's the whole job β no cap. Two lists, fully populated, one function call. slay. π₯
π PARAMETERS π
rhβ a handle to parsed configuration. this is your ride-or-die context, you gotta have it already set up.bufβ buffer holding Dictionary info. literally the raw text of the dictionary, sitting in memory. π¦sizeβ size of buffer. how many bytes of that buffer we're actually looking at. don't lie about this one bestie.
β RETURN VALUE β
0on success β we ate. π-1on failure β it's giving error, check your inputs. π
fr fr, always check the return value.0is the good timeline,-1is not.
π SEE ALSO π
okay so this is the whole extended universe, the entire friend group, everybody's here:
radcli.h(3)rc_aaa(3)rc_aaa_ctx(3)rc_aaa_ctx_free(3)rc_aaa_ctx_get_secret(3)rc_aaa_ctx_get_vector(3)rc_aaa_ctx_server(3)rc_acct(3)rc_acct_proxy(3)rc_add_config(3)rc_apply_config(3)rc_auth(3)rc_auth_proxy(3)rc_avpair_add(3)rc_avpair_assign(3)rc_avpair_copy(3)rc_avpair_free(3)rc_avpair_gen(3)rc_avpair_get(3)rc_avpair_get_attr(3)rc_avpair_get_in6(3)rc_avpair_get_raw(3)rc_avpair_get_uint32(3)rc_avpair_insert(3)rc_avpair_log(3)rc_avpair_new(3)rc_avpair_next(3)rc_avpair_parse(3)rc_avpair_remove(3)rc_avpair_tostr(3)rc_buildreq(3)rc_check(3)rc_check_tls(3)rc_conf_int(3)rc_conf_srv(3)rc_conf_str(3)rc_config_free(3)rc_config_init(3)rc_destroy(3)rc_dict_addattr(3)rc_dict_addval(3)rc_dict_addvend(3)rc_dict_findattr(3)rc_dict_findval(3)rc_dict_findvend(3)rc_dict_free(3)rc_dict_getattr(3)rc_dict_getval(3)rc_dict_getvend(3)rc_find_server_addr(3)rc_get_socket_type(3)rc_get_srcaddr(3)rc_getport(3)rc_mksid(3)rc_new(3)rc_openlog(3)rc_own_hostname(3)rc_read_config(3)rc_read_dictionary(3)rc_read_dictionary_from_buffer(3)rc_send_server(3)rc_setdebug(3)rc_test_config(3)rc_tls_fd(3)
and that's the page bestie!! this one's from the radcli era, dated 2023-01-29 β a lil vintage, still iconic. go read your dictionary from a buffer and thrive. mwah πβ¨ππ¦
π¦ where this page comes from
- alpine 3.24: radcli-doc 1.4.0-r0 Β· BSD-2-Clause AND MIT
- epel 10: radcli-devel 1.5.2-3.el10_3 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 43: radcli-devel 1.4.0-5.fc43 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 43: radcli-devel 1.4.0-5.fc43 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 44: radcli-devel 1.4.0-6.fc44 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 44: radcli-devel 1.4.0-6.fc44 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 44: radcli-devel 1.5.2-3.fc44 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- fedora 44: radcli-devel 1.5.2-3.fc44 Β· BSD-2-Clause AND UMich-Merit AND HPND-Fenneberg-Livingston
- nixos 26.05: radcli 1.5.1
- nixpkgs unstable: radcli 1.5.2
- opensuse-leap 16.0: radcli-devel 1.4.0-bp160.1.11 Β· BSD-2-Clause AND MIT
- opensuse-leap 16.0: radcli-devel 1.4.0-bp160.1.11 Β· BSD-2-Clause AND MIT
- opensuse-leap 16.0: radcli-devel 1.4.0-bp160.1.11 Β· BSD-2-Clause AND MIT
- opensuse-leap 16.0: radcli-devel 1.4.0-bp160.1.11 Β· BSD-2-Clause AND MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms