diff options
Diffstat (limited to 'templates/man7/netlink.7.pot')
-rw-r--r-- | templates/man7/netlink.7.pot | 1292 |
1 files changed, 1292 insertions, 0 deletions
diff --git a/templates/man7/netlink.7.pot b/templates/man7/netlink.7.pot new file mode 100644 index 00000000..0ccf72df --- /dev/null +++ b/templates/man7/netlink.7.pot @@ -0,0 +1,1292 @@ +# SOME DESCRIPTIVE TITLE +# Copyright (C) YEAR Free Software Foundation, Inc. +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2024-03-01 17:02+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. type: TH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "netlink" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "2023-10-31" +msgstr "" + +#. type: TH +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "Linux man-pages 6.06" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NAME" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "netlink - communication between kernel and user space (AF_NETLINK)" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SYNOPSIS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"B<#include E<lt>asm/types.hE<gt>>\n" +"B<#include E<lt>sys/socket.hE<gt>>\n" +"B<#include E<lt>linux/netlink.hE<gt>>\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<netlink_socket = socket(AF_NETLINK, >I<socket_type>B<, >I<netlink_family>B<);>\n" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "DESCRIPTION" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Netlink is used to transfer information between the kernel and user-space " +"processes. It consists of a standard sockets-based interface for user space " +"processes and an internal kernel API for kernel modules. The internal " +"kernel interface is not documented in this manual page. There is also an " +"obsolete netlink interface via netlink character devices; this interface is " +"not documented here and is provided only for backward compatibility." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Netlink is a datagram-oriented service. Both B<SOCK_RAW> and B<SOCK_DGRAM> " +"are valid values for I<socket_type>. However, the netlink protocol does not " +"distinguish between datagram and raw sockets." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<netlink_family> selects the kernel module or netlink group to communicate " +"with. The currently assigned netlink families are:" +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_ROUTE>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Receives routing and link updates and may be used to modify the routing " +"tables (both IPv4 and IPv6), IP addresses, link parameters, neighbor setups, " +"queueing disciplines, traffic classes, and packet classifiers (see " +"B<rtnetlink>(7))." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_W1> (Linux 2.6.13 to Linux 2.16.17)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Messages from 1-wire subsystem." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_USERSOCK>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Reserved for user-mode socket protocols." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_FIREWALL> (up to and including Linux 3.4)" +msgstr "" + +#. removed by commit d16cf20e2f2f13411eece7f7fb72c17d141c4a84 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Transport IPv4 packets from netfilter to user space. Used by I<ip_queue> " +"kernel module. After a long period of being declared obsolete (in favor of " +"the more advanced I<nfnetlink_queue> feature), B<NETLINK_FIREWALL> was " +"removed in Linux 3.5." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_SOCK_DIAG> (since Linux 3.3)" +msgstr "" + +#. commit 7f1fb60c4fc9fb29fbb406ac8c4cfb4e59e168d6 +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Query information about sockets of various protocol families from the kernel " +"(see B<sock_diag>(7))." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_INET_DIAG> (since Linux 2.6.14)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "An obsolete synonym for B<NETLINK_SOCK_DIAG>." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_NFLOG> (up to and including Linux 3.16)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Netfilter/iptables ULOG." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_XFRM>" +msgstr "" + +#. FIXME More details on NETLINK_XFRM needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "IPsec." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_SELINUX> (since Linux 2.6.4)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "SELinux event notifications." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_ISCSI> (since Linux 2.6.15)" +msgstr "" + +#. FIXME More details on NETLINK_ISCSI needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Open-iSCSI." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_AUDIT> (since Linux 2.6.6)" +msgstr "" + +#. FIXME More details on NETLINK_AUDIT needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Auditing." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_FIB_LOOKUP> (since Linux 2.6.13)" +msgstr "" + +#. FIXME More details on NETLINK_FIB_LOOKUP needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Access to FIB lookup from user space." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_CONNECTOR> (since Linux 2.6.14)" +msgstr "" + +#. commit baa293e9544bea71361950d071579f0e4d5713ed +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Kernel connector. See I<Documentation/driver-api/connector.rst> (or I</" +"Documentation/connector/connector.*> in Linux 5.2 and earlier) in the Linux " +"kernel source tree for further information." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_NETFILTER> (since Linux 2.6.14)" +msgstr "" + +#. FIXME More details on NETLINK_NETFILTER needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Netfilter subsystem." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_SCSITRANSPORT> (since Linux 2.6.19)" +msgstr "" + +#. commit 84314fd4740ad73550c76dee4a9578979d84af48 +#. FIXME More details on NETLINK_SCSITRANSPORT needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "SCSI Transports." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_RDMA> (since Linux 3.0)" +msgstr "" + +#. commit b2cbae2c248776d81cc265ff7d48405b6a4cc463 +#. FIXME More details on NETLINK_RDMA needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Infiniband RDMA." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_IP6_FW> (up to and including Linux 3.4)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Transport IPv6 packets from netfilter to user space. Used by I<ip6_queue> " +"kernel module." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_DNRTMSG>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "DECnet routing messages." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_KOBJECT_UEVENT> (since Linux 2.6.10)" +msgstr "" + +#. FIXME More details on NETLINK_KOBJECT_UEVENT needed. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Kernel messages to user space." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_GENERIC> (since Linux 2.6.15)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Generic netlink family for simplified netlink usage." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_CRYPTO> (since Linux 3.2)" +msgstr "" + +#. commit a38f7907b926e4c6c7d389ad96cc38cec2e5a9e9 +#. Author: Steffen Klassert <steffen.klassert@secunet.com> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Netlink interface to request information about ciphers registered with the " +"kernel crypto API as well as allow configuration of the kernel crypto API." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Netlink messages consist of a byte stream with one or multiple I<nlmsghdr> " +"headers and associated payload. The byte stream should be accessed only " +"with the standard B<NLMSG_*> macros. See B<netlink>(3) for further " +"information." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"In multipart messages (multiple I<nlmsghdr> headers with associated payload " +"in one byte stream) the first and all following headers have the " +"B<NLM_F_MULTI> flag set, except for the last header which has the type " +"B<NLMSG_DONE>." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "After each I<nlmsghdr> the payload follows." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"struct nlmsghdr {\n" +" __u32 nlmsg_len; /* Length of message including header */\n" +" __u16 nlmsg_type; /* Type of message content */\n" +" __u16 nlmsg_flags; /* Additional flags */\n" +" __u32 nlmsg_seq; /* Sequence number */\n" +" __u32 nlmsg_pid; /* Sender port ID */\n" +"};\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<nlmsg_type> can be one of the standard message types: B<NLMSG_NOOP> " +"message is to be ignored, B<NLMSG_ERROR> message signals an error and the " +"payload contains an I<nlmsgerr> structure, B<NLMSG_DONE> message terminates " +"a multipart message. Error messages get the original request appended, " +"unless the user requests to cap the error message, and get extra error data " +"if requested." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"struct nlmsgerr {\n" +" int error; /* Negative errno or 0 for acknowledgements */\n" +" struct nlmsghdr msg; /* Message header that caused the error */\n" +" /*\n" +" * followed by the message contents\n" +" * unless NETLINK_CAP_ACK was set\n" +" * or the ACK indicates success (error == 0).\n" +" * For example Generic Netlink message with attributes.\n" +" * message length is aligned with NLMSG_ALIGN()\n" +" */\n" +" /*\n" +" * followed by TLVs defined in enum nlmsgerr_attrs\n" +" * if NETLINK_EXT_ACK was set\n" +" */\n" +"};\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"A netlink family usually specifies more message types, see the appropriate " +"manual pages for that, for example, B<rtnetlink>(7) for B<NETLINK_ROUTE>." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Standard flag bits in I<nlmsg_flags>" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "_" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_REQUEST" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Must be set on all request messages." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_MULTI" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"The message is part of a multipart message terminated by\n" +"B<NLMSG_DONE>." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_ACK" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Request for an acknowledgement on success." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_ECHO" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Echo this request." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Additional flag bits for GET requests" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_ROOT" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Return the complete table instead of a single entry." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_MATCH" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"Return all entries matching criteria passed in message content.\n" +"Not implemented yet." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_ATOMIC" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Return an atomic snapshot of the table." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_DUMP" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"Convenience macro; equivalent to\n" +"(NLM_F_ROOT|NLM_F_MATCH)." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Note that B<NLM_F_ATOMIC> requires the B<CAP_NET_ADMIN> capability or an " +"effective UID of 0." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Additional flag bits for NEW requests" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_REPLACE" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Replace existing matching object." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_EXCL" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Don't replace if the object already exists." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_CREATE" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Create object if it doesn't already exist." +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NLM_F_APPEND" +msgstr "" + +#. type: tbl table +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Add to the end of the object list." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<nlmsg_seq> and I<nlmsg_pid> are used to track messages. I<nlmsg_pid> " +"shows the origin of the message. Note that there isn't a 1:1 relationship " +"between I<nlmsg_pid> and the PID of the process if the message originated " +"from a netlink socket. See the B<ADDRESS FORMATS> section for further " +"information." +msgstr "" + +#. FIXME Explain more about nlmsg_seq and nlmsg_pid. +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Both I<nlmsg_seq> and I<nlmsg_pid> are opaque to netlink core." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Netlink is not a reliable protocol. It tries its best to deliver a message " +"to its destination(s), but may drop messages when an out-of-memory condition " +"or other error occurs. For reliable transfer the sender can request an " +"acknowledgement from the receiver by setting the B<NLM_F_ACK> flag. An " +"acknowledgement is an B<NLMSG_ERROR> packet with the error field set to 0. " +"The application must generate acknowledgements for received messages " +"itself. The kernel tries to send an B<NLMSG_ERROR> message for every failed " +"packet. A user process should follow this convention too." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"However, reliable transmissions from kernel to user are impossible in any " +"case. The kernel can't send a netlink message if the socket buffer is full: " +"the message will be dropped and the kernel and the user-space process will " +"no longer have the same view of kernel state. It is up to the application " +"to detect when this happens (via the B<ENOBUFS> error returned by " +"B<recvmsg>(2)) and resynchronize." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Address formats" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The I<sockaddr_nl> structure describes a netlink client in user space or in " +"the kernel. A I<sockaddr_nl> can be either unicast (only sent to one peer) " +"or sent to netlink multicast groups (I<nl_groups> not equal 0)." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "" +"struct sockaddr_nl {\n" +" sa_family_t nl_family; /* AF_NETLINK */\n" +" unsigned short nl_pad; /* Zero */\n" +" pid_t nl_pid; /* Port ID */\n" +" __u32 nl_groups; /* Multicast groups mask */\n" +"};\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<nl_pid> is the unicast address of netlink socket. It's always 0 if the " +"destination is in the kernel. For a user-space process, I<nl_pid> is " +"usually the PID of the process owning the destination socket. However, " +"I<nl_pid> identifies a netlink socket, not a process. If a process owns " +"several netlink sockets, then I<nl_pid> can be equal to the process ID only " +"for at most one socket. There are two ways to assign I<nl_pid> to a netlink " +"socket. If the application sets I<nl_pid> before calling B<bind>(2), then " +"it is up to the application to make sure that I<nl_pid> is unique. If the " +"application sets it to 0, the kernel takes care of assigning it. The kernel " +"assigns the process ID to the first netlink socket the process opens and " +"assigns a unique I<nl_pid> to every netlink socket that the process " +"subsequently creates." +msgstr "" + +#. commit d629b836d151d43332492651dd841d32e57ebe3b +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"I<nl_groups> is a bit mask with every bit representing a netlink group " +"number. Each netlink family has a set of 32 multicast groups. When " +"B<bind>(2) is called on the socket, the I<nl_groups> field in the " +"I<sockaddr_nl> should be set to a bit mask of the groups which it wishes to " +"listen to. The default value for this field is zero which means that no " +"multicasts will be received. A socket may multicast messages to any of the " +"multicast groups by setting I<nl_groups> to a bit mask of the groups it " +"wishes to send to when it calls B<sendmsg>(2) or does a B<connect>(2). " +"Only processes with an effective UID of 0 or the B<CAP_NET_ADMIN> capability " +"may send or listen to a netlink multicast group. Since Linux 2.6.13, " +"messages can't be broadcast to multiple groups. Any replies to a message " +"received for a multicast group should be sent back to the sending PID and " +"the multicast group. Some Linux kernel subsystems may additionally allow " +"other users to send and/or receive messages. As at Linux 3.0, the " +"B<NETLINK_KOBJECT_UEVENT>, B<NETLINK_GENERIC>, B<NETLINK_ROUTE>, and " +"B<NETLINK_SELINUX> groups allow other users to receive messages. No groups " +"allow other users to send messages." +msgstr "" + +#. type: SS +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "Socket options" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"To set or get a netlink socket option, call B<getsockopt>(2) to read or " +"B<setsockopt>(2) to write the option with the option level argument set to " +"B<SOL_NETLINK>. Unless otherwise noted, I<optval> is a pointer to an I<int>." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_PKTINFO> (since Linux 2.6.14)" +msgstr "" + +#. commit 9a4595bc7e67962f13232ee55a64e063062c3a99 +#. Author: Patrick McHardy <kaber@trash.net> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Enable B<nl_pktinfo> control messages for received packets to get the " +"extended destination group number." +msgstr "" + +#. type: TP +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "B<NETLINK_ADD_MEMBERSHIP>" +msgstr "" + +#. type: TQ +#: archlinux fedora-40 fedora-rawhide mageia-cauldron +#, no-wrap +msgid "B<NETLINK_DROP_MEMBERSHIP> (since Linux 2.6.14)" +msgstr "" + +#. commit 9a4595bc7e67962f13232ee55a64e063062c3a99 +#. Author: Patrick McHardy <kaber@trash.net> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "Join/leave a group specified by I<optval>." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_LIST_MEMBERSHIPS> (since Linux 4.2)" +msgstr "" + +#. commit b42be38b2778eda2237fc759e55e3b698b05b315 +#. Author: David Herrmann <dh.herrmann@gmail.com> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Retrieve all groups a socket is a member of. I<optval> is a pointer to " +"B<__u32> and I<optlen> is the size of the array. The array is filled with " +"the full membership set of the socket, and the required array size is " +"returned in I<optlen>." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_BROADCAST_ERROR> (since Linux 2.6.30)" +msgstr "" + +#. commit be0c22a46cfb79ab2342bb28fde99afa94ef868e +#. Author: Pablo Neira Ayuso <pablo@netfilter.org> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"When not set, B<netlink_broadcast()> only reports B<ESRCH> errors and " +"silently ignore B<ENOBUFS> errors." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_NO_ENOBUFS> (since Linux 2.6.30)" +msgstr "" + +#. commit 38938bfe3489394e2eed5e40c9bb8f66a2ce1405 +#. Author: Pablo Neira Ayuso <pablo@netfilter.org> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"This flag can be used by unicast and broadcast listeners to avoid receiving " +"B<ENOBUFS> errors." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_LISTEN_ALL_NSID> (since Linux 4.2)" +msgstr "" + +#. commit 59324cf35aba5336b611074028777838a963d03b +#. Author: Nicolas Dichtel <nicolas.dichtel@6wind.com> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"When set, this socket will receive netlink notifications from all network " +"namespaces that have an I<nsid> assigned into the network namespace where " +"the socket has been opened. The I<nsid> is sent to user space via an " +"ancillary data." +msgstr "" + +#. type: TP +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_CAP_ACK> (since Linux 4.3)" +msgstr "" + +#. commit 0a6a3a23ea6efde079a5b77688541a98bf202721 +#. Author: Christophe Ricard <christophe.ricard@gmail.com> +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The kernel may fail to allocate the necessary room for the acknowledgement " +"message back to user space. This option trims off the payload of the " +"original netlink message. The netlink message header is still included, so " +"the user can guess from the sequence number which message triggered the " +"acknowledgement." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "VERSIONS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "The socket interface to netlink first appeared Linux 2.2." +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"Linux 2.0 supported a more primitive device-based netlink interface (which " +"is still available as a compatibility option). This obsolete interface is " +"not described here." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "NOTES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"It is often better to use netlink via I<libnetlink> or I<libnl> than via the " +"low-level kernel interface." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "BUGS" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "This manual page is not complete." +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "EXAMPLES" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The following example creates a B<NETLINK_ROUTE> netlink socket which will " +"listen to the B<RTMGRP_LINK> (network interface create/delete/up/down " +"events) and B<RTMGRP_IPV4_IFADDR> (IPv4 addresses add/delete events) " +"multicast groups." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid "" +"struct sockaddr_nl sa;\n" +"\\&\n" +"memset(&sa, 0, sizeof(sa));\n" +"sa.nl_family = AF_NETLINK;\n" +"sa.nl_groups = RTMGRP_LINK | RTMGRP_IPV4_IFADDR;\n" +"\\&\n" +"fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE);\n" +"bind(fd, (struct sockaddr *) &sa, sizeof(sa));\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"The next example demonstrates how to send a netlink message to the kernel " +"(pid 0). Note that the application must take care of message sequence " +"numbers in order to reliably track acknowledgements." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid "" +"struct nlmsghdr *nh; /* The nlmsghdr with payload to send */\n" +"struct sockaddr_nl sa;\n" +"struct iovec iov = { nh, nh-E<gt>nlmsg_len };\n" +"struct msghdr msg;\n" +"\\&\n" +"msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n" +"memset(&sa, 0, sizeof(sa));\n" +"sa.nl_family = AF_NETLINK;\n" +"nh-E<gt>nlmsg_pid = 0;\n" +"nh-E<gt>nlmsg_seq = ++sequence_number;\n" +"/* Request an ack from kernel by setting NLM_F_ACK */\n" +"nh-E<gt>nlmsg_flags |= NLM_F_ACK;\n" +"\\&\n" +"sendmsg(fd, &msg, 0);\n" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "And the last example is about reading netlink message." +msgstr "" + +#. type: Plain text +#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron +#: opensuse-tumbleweed +#, no-wrap +msgid "" +"int len;\n" +"/* 8192 to avoid message truncation on platforms with\n" +" page size E<gt> 4096 */\n" +"struct nlmsghdr buf[8192/sizeof(struct nlmsghdr)];\n" +"struct iovec iov = { buf, sizeof(buf) };\n" +"struct sockaddr_nl sa;\n" +"struct msghdr msg;\n" +"struct nlmsghdr *nh;\n" +"\\&\n" +"msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n" +"len = recvmsg(fd, &msg, 0);\n" +"\\&\n" +"for (nh = (struct nlmsghdr *) buf; NLMSG_OK (nh, len);\n" +" nh = NLMSG_NEXT (nh, len)) {\n" +" /* The end of multipart message */\n" +" if (nh-E<gt>nlmsg_type == NLMSG_DONE)\n" +" return;\n" +"\\&\n" +" if (nh-E<gt>nlmsg_type == NLMSG_ERROR)\n" +" /* Do some error handling */\n" +" ...\n" +"\\&\n" +" /* Continue with parsing payload */\n" +" ...\n" +"}\n" +msgstr "" + +#. type: SH +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "SEE ALSO" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"B<cmsg>(3), B<netlink>(3), B<capabilities>(7), B<rtnetlink>(7), " +"B<sock_diag>(7)" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"E<.UR ftp://ftp.inr.ac.ru\\:/ip-routing\\:/iproute2*> information about " +"libnetlink E<.UE>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "" +"E<.UR http://www.infradead.org\\:/\\[ti]tgr\\:/libnl/> information about " +"libnl E<.UE>" +msgstr "" + +#. type: Plain text +#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide +#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed +msgid "RFC 3549 \"Linux Netlink as an IP Services Protocol\"" +msgstr "" + +#. type: TH +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "2023-02-05" +msgstr "" + +#. type: TH +#: debian-bookworm +#, no-wrap +msgid "Linux man-pages 6.03" +msgstr "" + +#. type: TP +#: debian-bookworm debian-unstable opensuse-leap-15-6 opensuse-tumbleweed +#, no-wrap +msgid "B<NETLINK_ADD_MEMBERSHIP>,\\ B<NETLINK_DROP_MEMBERSHIP> (since Linux 2.6.14)" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "struct sockaddr_nl sa;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"memset(&sa, 0, sizeof(sa));\n" +"sa.nl_family = AF_NETLINK;\n" +"sa.nl_groups = RTMGRP_LINK | RTMGRP_IPV4_IFADDR;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_ROUTE);\n" +"bind(fd, (struct sockaddr *) &sa, sizeof(sa));\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"struct nlmsghdr *nh; /* The nlmsghdr with payload to send */\n" +"struct sockaddr_nl sa;\n" +"struct iovec iov = { nh, nh-E<gt>nlmsg_len };\n" +"struct msghdr msg;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n" +"memset(&sa, 0, sizeof(sa));\n" +"sa.nl_family = AF_NETLINK;\n" +"nh-E<gt>nlmsg_pid = 0;\n" +"nh-E<gt>nlmsg_seq = ++sequence_number;\n" +"/* Request an ack from kernel by setting NLM_F_ACK */\n" +"nh-E<gt>nlmsg_flags |= NLM_F_ACK;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "sendmsg(fd, &msg, 0);\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"int len;\n" +"/* 8192 to avoid message truncation on platforms with\n" +" page size E<gt> 4096 */\n" +"struct nlmsghdr buf[8192/sizeof(struct nlmsghdr)];\n" +"struct iovec iov = { buf, sizeof(buf) };\n" +"struct sockaddr_nl sa;\n" +"struct msghdr msg;\n" +"struct nlmsghdr *nh;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"msg = { &sa, sizeof(sa), &iov, 1, NULL, 0, 0 };\n" +"len = recvmsg(fd, &msg, 0);\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +"for (nh = (struct nlmsghdr *) buf; NLMSG_OK (nh, len);\n" +" nh = NLMSG_NEXT (nh, len)) {\n" +" /* The end of multipart message */\n" +" if (nh-E<gt>nlmsg_type == NLMSG_DONE)\n" +" return;\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +" if (nh-E<gt>nlmsg_type == NLMSG_ERROR)\n" +" /* Do some error handling */\n" +" ...\n" +msgstr "" + +#. type: Plain text +#: debian-bookworm opensuse-leap-15-6 +#, no-wrap +msgid "" +" /* Continue with parsing payload */\n" +" ...\n" +"}\n" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "2023-07-30" +msgstr "" + +#. type: TH +#: debian-unstable opensuse-tumbleweed +#, no-wrap +msgid "Linux man-pages 6.05.01" +msgstr "" + +#. type: TH +#: opensuse-leap-15-6 +#, no-wrap +msgid "Linux man-pages 6.04" +msgstr "" |