rc_avpair_log(3)
rc_avpair_log(3) π
okay bestie, welcome to the radcli (Radius client library) glow-up tour, page rc_avpair_log(3). buckle up, this one's short but it's mighty. π¦
β¨ NAME β¨
rc_avpair_log -
(and yes, the description slot is literally empty in the original. iconic. leaving it blank, we respect the source material π )
β¨ SYNOPSIS β¨
#include <radcli/radcli.h>
char * rc_avpair_log(
rc_handle const *rh,
VALUE_PAIR *pair,
char *buf,
size_t buf_len
);
β¨ DESCRIPTION β¨
so what does it DO. it takes a whole sequence of attribute value pairs and formats them into a printable string. that's the whole vibe. π
and heads up β you have to bring the storage. the caller should provide a storage buffer and the buffer length. no buffer, no glory. π
β¨ PARAMETERS β¨
rhβ a handle to parsed configuration. the little config brain. π§pairβ a pointer to aVALUE_PAIRstructure. the thing we're stringifying. β¨bufβ this is the one that will hold the string output of the pair. your lil container bestie. π«Άbuf_lenβ the size ofbuf. pls get this right, no cap. π
β¨ STRUCTURES β¨
β οΈ Avoid using this structure directly. Use the rc_avpair_get_ functions. like, seriously, don't touch it with your bare hands. use the getters. π
struct rc_value_pair {
char name[RC_NAME_LENGTH+1]; // attribute name if known.
uint64_t attribute; // attribute numeric value of type rc_attr_id including vendor; use VENDOR() and ATTRID() to separate.
rc_attr_type type; // attribute type.
uint32_t lvalue; // attribute value if type is PW_TYPE_INTEGER, PW_TYPE_DATE or PW_TYPE_IPADDR.
char strvalue[AUTH_STRING_LEN+1]; // contains attribute value in other cases.
struct rc_value_pair *next;
char pad[32]; // unused pad
};
okay the way that pad[32] is just sitting there, unused, doing nothing, living its best life π we love a filler era. and peep attribute β it's the numeric value of type rc_attr_id including vendor, so use VENDOR() and ATTRID() to separate. iykyk. π
β¨ RETURN VALUE β¨
a pointer to the provided storage buffer. that's it. that's the return. π₯
β¨ SEE ALSO β¨
the whole friend group, fr fr. go say hi to all of them:
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 whole page bestie, you ate it up. π β¨ this one's from radcli, dated 2023-01-29 β so when you cite it, you know who to thank. mwah, go format some attribute value pairs. ππ
π¦ 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