nla_put_string(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– nla_put_string (9) πŸ’–

okay so bestie, welcome to the Kernel API Manual ✨ this one's short and sweet and honestly kind of a vibe. no cap.


🌸 NAME 🌸

nla_put_string β€” literally just adds a string netlink attribute to a socket buffer πŸŽ€ that's it. that's the whole thing.


✨ SYNOPSIS ✨

int nla_put_string (struct sk_buff *skb , int attrtype , const char *str );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • skb β€” the socket buffer you're adding the attribute to 🫢 like, the thing that's carrying your stuff.
  • attrtype β€” the attribute type πŸ’… yes it's an int, yes it matters.
  • str β€” a NUL terminated string πŸ“ must be NUL terminated, bestie, that's the whole contract.

πŸ‘‘ SEE ALSO πŸ‘‘

okay this list is long long β€” the kernel authors really said "let me introduce you to everyone." main character energy fr fr. here's the whole squad, straight from the Kernel file ./include/net/netlink.h:

  • 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_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_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 πŸ’œ tiny page, giant friend group. anyway β€” this lives over in <code>./include/net</code>, dated October 2026, and it's giving "short king of the netlink API." slay βœ¨πŸ¦‹πŸ’…

πŸ“¦ where this page comes from