rc_avpair_get_raw(3)
β¨ rc_avpair_get_raw β from the radcli crew (Radius client library, bestie) β¨
okay so before we even start: yes, the manual page header says rc_avpair_get_raw(3) and the library it lives in is the Radius client library. There, that's the whole intro, we're caught up. π«Ά
πΈ NAME πΈ
rc_avpair_get_raw β and that's genuinely it, the official description field is just empty, no cap. The manpage literally ends the line after the dash. So we're all just going to vibe with the name and find out what it does below. π
π SYNOPSIS π
#include <radcli/radcli.h>
int rc_avpair_get_raw(
VALUE_PAIR *vp,
char **res,
unsigned *res_size
);
look at her. three args. neat. slay. π
π¦ DESCRIPTION π¦
So what does this little icon actually do? It gets the raw value of the attribute value-pair you hand it. That's it. That's the job. Very demure, very mindful. π§
Here's the important bit though β this one only works for PW_TYPE_STRING, PW_TYPE_IPV6ADDR, and PW_TYPE_IPV6PREFIX. Those three. If your value-pair is something else, that's a different function's problem, not hers. β
π PARAMETERS π
vpβ a pointer to aVALUE_PAIRstructure. the little guy you want the raw data out of. πresβ will contain pointer to the data value. she's writing into this one, so heads up. β¨res_sizeβ will contain the data size. so you know how much data you actually got, king. π
π STRUCTURES π
bestie. listen to me. Avoid using this structure directly. Use the rc_avpair_get_ functions. The struct is giving forbidden knowledge, and the manpage said it in so many words. do not touch. π
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
};
that's the whole thing, comments and all, copied exactly because we do not mess with structs in this house. π₯
β RETURN VALUE β
zero on success, or -1 on failure. simple. binary. main character energy honestly. if you get -1, that's your sign from the universe. π
π SEE ALSO π
the whole extended friend group, in order, exactly as listed, iykyk:
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!! π this one shipped under the radcli name, dated 2023-01-29, and the footer also just says rc_avpair_get_raw(3) again because the page loves a little callback. go get your raw values, bestie, you've got this πβ¨π¦
π¦ 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