radcli_avp_get_ip6(3)
π radcli_avp_get_ip6(3) β bestie's guide to the Radius client library
okay so picture this: you're deep in the Radius client library (that's the manual we're in, mwah π) and you've got an attribute just sitting there holding an IPv6 address or prefix, and you need it OUT. That's this function. It's giving "extract the goods" energy. π
β¨ NAME β¨
radcli_avp_get_ip6 β read an attribute's value as an IPv6 address or prefix. that's it, that's the whole gig. ngl it does exactly what it says on the tin π¦
πΈ SYNOPSIS πΈ
#include <radcli/>
int radcli_avp_get_ip6(
const radcli_avp *a,
struct in6_addr *out,
unsigned *prefix
);
π«Ά DESCRIPTION π«Ά
so the actual DESCRIPTION section on this page is literally blank π like the manpage authors said "the vibes will explain it" and moved on. no cap. everything you need is chilling in PARAMETERS and RETURN VALUE below β go look, I got you π
π PARAMETERS π
aβ the attribute itself. the catch?radcli_avp_def(a)must beRADCLI_TYPE_IPV6ADDRorRADCLI_TYPE_IPV6PREFIX. anything else and we're not doing this. main character attribute only π₯outβ where the address gets written. lowkey important detail: forRADCLI_TYPE_IPV6PREFIXit's zero-padded beyond the prefix length. also it may beNULL, so if you just wanna peek at the prefix and not the address, you do you bestie πprefixβ where the prefix length goes. it's128forRADCLI_TYPE_IPV6ADDR, which makes sense (a whole address is a /128, periodt). and yep β it may beNULLtoo. equal opportunity NULLs β¨
β RETURN VALUE β
0β success!! ate. π-1βa's type does not match. the vibe check failed, sorry babe π
π SEE ALSO π
the whole friend group, fr fr β go read these next:
radcli_avp_add_bytes(3)radcli_avp_add_bytes_by_num(3)radcli_avp_add_gigawords64(3)radcli_avp_add_gigawords64_by_num(3)radcli_avp_add_ip4(3)radcli_avp_add_ip4_by_num(3)radcli_avp_add_ip4prefix(3)radcli_avp_add_ip4prefix_by_num(3)radcli_avp_add_ip6(3)radcli_avp_add_ip6_by_num(3)radcli_avp_add_str(3)radcli_avp_add_str_by_num(3)radcli_avp_add_uint32(3)radcli_avp_add_uint32_by_num(3)radcli_avp_add_uint64(3)radcli_avp_add_uint64_by_num(3)radcli_avp_add_username(3)radcli_avp_concat_str(3)radcli_avp_concat_str_by_num(3)radcli_avp_def(3)radcli_avp_get(3)radcli_avp_get_by_num(3)radcli_avp_get_bytes(3)radcli_avp_get_bytes_by_num(3)radcli_avp_get_cstr(3)radcli_avp_get_cstr_by_num(3)radcli_avp_get_gigawords64(3)radcli_avp_get_gigawords64_by_num(3)radcli_avp_get_ip4prefix(3)radcli_avp_get_ip4prefix_by_num(3)radcli_avp_get_ip6_by_num(3)radcli_avp_get_uint32(3)radcli_avp_get_uint32_by_num(3)radcli_avp_get_uint64(3)radcli_avp_get_uint64_by_num(3)radcli_avp_iter_next(3)radcli_avp_list_error(3)radcli_avp_list_free(3)radcli_avp_list_iter(3)radcli_avp_list_new(3)
and that's the page!! π§ this lil masterpiece comes to you courtesy of radcli, dated 2026-10-10 β screenshot it, cite it, tattoo it, ily, bye πβ¨π
π¦ where this page comes from
- arch rolling: radcli 2.0.1-1 Β· BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms