nla_parse_nested_deprecated(9)
π nla_parse_nested_deprecated β Kernel API Manual, bestie edition β¨
okay so bestie, welcome to nla_parse_nested_deprecated π this one lives in the Kernel API Manual section 9, and it's lowkey a little shy β the whole description is basically a "go ask my sibling" moment. Anyway, let's get into it π«Ά
πΈ NAME πΈ
nla_parse_nested_deprecated β parse nested attributes β¨
π SYNOPSIS π
int nla_parse_nested_deprecated (struct nlattr *tb[] , int maxtype ,
const struct nlattr *nla , const struct nla_policy *policy , struct
netlink_ext_ack *extack );
like, yes, that's a lot of arguments, but we're gonna walk through them one by one, no cap π
π ARGUMENTS π
tbβ the destination array, and it needsmaxtype+1elements. count them properly bestie, the+1is not decorative πmaxtypeβ the maximum attribute type you're expecting to see. the ceiling. the limit. the "don't come at me with anything bigger than this" πnlaβ the attribute that's holding all the nested attributes inside it. it's giving "bag full of smaller bags" πpolicyβ the validation policy. the rules of the group chat πextackβ the extended ACK report struct. this is where the receipts get written if something goes wrong π§Ύ
π¦ DESCRIPTION π¦
See nla_parse_deprecated.
...that's it. that's the whole thing. i'm not even joking π bestie the manpage literally just points you at nla_parse_deprecated and dips. iconic behaviour honestly, main character energy of the highest order π but fr fr go read that one, it's got the actual scoop.
π SEE ALSO π
the whole squad, and i mean the whole squad π«Ά starting with the kernel file ./include/net/netlink.h, then:
struct nla_policy(9), struct nl_info(9), enum netlink_validation(9), nlmsg_msg_size(9), nlmsg_total_size(9), nlmsg_padlen(9), nlmsg_data(9), nlmsg_len(9), nlmsg_payload(9), nlmsg_attrdata(9), nlmsg_attrlen(9), nlmsg_ok(9), nlmsg_next(9), nla_parse(9), nla_parse_deprecated(9), nla_parse_deprecated_strict(9), __nlmsg_parse(9), nlmsg_parse(9), nlmsg_parse_deprecated(9), nlmsg_parse_deprecated_strict(9), nlmsg_find_attr(9), nla_validate_deprecated(9), nla_validate(9), nlmsg_validate_deprecated(9), nlmsg_report(9), nlmsg_seq(9), nlmsg_for_each_attr(9), nlmsg_for_each_attr_type(9), nlmsg_put(9), nlmsg_append(9), nlmsg_put_answer(9), nlmsg_new(9), nlmsg_new_large(9), nlmsg_end(9), nlmsg_get_pos(9), nlmsg_trim(9), nlmsg_cancel(9), nlmsg_free(9), nlmsg_consume(9), nlmsg_multicast_filtered(9), nlmsg_multicast(9), nlmsg_unicast(9), nlmsg_for_each_msg(9), nl_dump_check_consistent(9), nla_attr_size(9), nla_total_size(9), nla_padlen(9), nla_type(9), nla_data(9), nla_len(9), nla_ok(9), nla_next(9), nla_find_nested(9), nla_parse_nested(9), nla_put_u8(9), nla_put_u16(9), nla_put_be16(9), nla_put_net16(9), nla_put_le16(9), nla_put_u32(9), nla_put_uint(9), nla_put_be32(9), nla_put_net32(9), nla_put_le32(9), nla_put_u64_64bit(9), nla_put_be64(9), nla_put_net64(9), nla_put_le64(9), nla_put_s8(9), nla_put_s16(9), nla_put_s32(9), nla_put_s64(9), nla_put_sint(9), nla_put_string(9), nla_put_flag(9), nla_put_msecs(9), nla_put_in_addr(9), nla_put_in6_addr(9), nla_put_bitfield32(9), nla_get_u32(9), nla_get_u32_default(9), nla_get_be32(9), nla_get_be32_default(9), nla_get_le32(9), nla_get_le32_default(9), nla_get_u16(9), nla_get_u16_default(9), nla_get_be16(9), nla_get_be16_default(9), nla_get_le16(9), nla_get_le16_default(9), nla_get_u8(9), nla_get_u8_default(9), nla_get_u64(9), nla_get_u64_default(9), nla_get_uint(9), nla_get_uint_default(9), nla_get_be64(9), nla_get_be64_default(9), nla_get_le64(9), nla_get_le64_default(9), nla_get_s32(9), nla_get_s32_default(9), nla_get_s16(9), nla_get_s16_default(9), nla_get_s8(9), nla_get_s8_default(9), nla_get_s64(9), nla_get_s64_default(9), nla_get_sint(9), nla_get_sint_default(9), nla_get_flag(9), nla_get_msecs(9), nla_get_msecs_default(9), nla_get_in_addr(9), nla_get_in_addr_default(9), nla_get_in6_addr(9), nla_get_bitfield32(9), nla_memdup(9), nla_nest_start_noflag(9), nla_nest_start(9), nla_nest_end(9), nla_nest_end_safe(9), nla_nest_cancel(9), nla_put_empty_nest(9), __nla_validate_nested(9), nla_need_padding_for_64bit(9), nla_align_64bit(9), nla_total_size_64bit(9), nla_for_each_attr(9), nla_for_each_attr_type(9), nla_for_each_nested(9), nla_for_each_nested_type(9), nla_is_last(9)
and that's the whole page babes π it came from ./include/net, dropped October 2026, and it's the nla_parse_nested_deprecated(9) page β short, sweet, and fully delegating ππ
go read nla_parse_deprecated and slay β¨π·
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms