nla_put_u32(9)
β¨ nla_put_u32 β it's giving "kernel API manual" energy β¨
hiii bestie π«Ά okay so we're in the Kernel API Manual today, and the page we're reading is all about nla_put_u32(9). Yes the whole manual is named nla_put_u32(9) β it's that girl, she's the main character of this page π
πΈ NAME πΈ
nla_put_u32 β Add a u32 netlink attribute to a socket buffer
Like literally all it does is take a u32 netlink attribute and add it to a socket buffer. That's the whole vibe. Slay. β¨
π¦ SYNOPSIS π¦
int nla_put_u32 (struct sk_buff *skb , int attrtype , u32 value );
no cap, that's the entire call signature β copy it character for character, bestie, don't get cute with the spacing π
π ARGUMENTS π
skbβ the socket buffer to add the attribute to. this is the canvas, the moment, the whole point πΌοΈattrtypeβ the attribute type. which attribute are we talking about, girlypop πvalueβ the numeric value. the actual digit situation π’
π SEE ALSO π
okay so this is the part where the page just. keeps. going. π₯ It points at the kernel file ./include/net/netlink.h and then a genuinely iconic number of friends. Every single one is listed below, no skipping, fr fr π
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_parse_nested_deprecated(9)nla_put_u8(9),nla_put_u16(9),nla_put_be16(9),nla_put_net16(9),nla_put_le16(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, bestie π
so anyway, the source for all this is ./include/net, version date October 2026 β that's the footer tea, mwah π go read the other ones too, iykyk π
π¦ 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