# Spanish translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: msgid "" msgstr "" "Project-Id-Version: manpages-l10n 4.11.0\n" "POT-Creation-Date: 2024-06-01 06:23+0200\n" "PO-Revision-Date: 2021-09-03 21:25+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: Spanish \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "sock_diag" msgstr "" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 Mayo 2024" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Páginas de Manual de Linux 6.8" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NOMBRE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "sock_diag - obtaining information about sockets" 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 "SINOPSIS" #. 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 Esys/socket.hE>\n" "B<#include Elinux/sock_diag.hE>\n" "B<#include Elinux/unix_diag.hE> /* for UNIX domain sockets */\n" "B<#include Elinux/inet_diag.hE> /* for IPv4 and IPv6 sockets */\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 "BIB<, NETLINK_SOCK_DIAG);>\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 "DESCRIPCIÓN" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The sock_diag netlink subsystem provides a mechanism for obtaining " "information about sockets of various address families from the kernel. This " "subsystem can be used to obtain information about individual sockets or " "request a list of sockets." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In the request, the caller can specify additional information it would like " "to obtain about the socket, for example, memory information or information " "specific to the address family." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When requesting a list of sockets, the caller can specify filters that would " "be applied by the kernel to select a subset of sockets to report. For now, " "there is only the ability to filter sockets by state (connected, listening, " "and so on.)" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that sock_diag reports only those sockets that have a name; that is, " "either sockets bound explicitly with B(2) or sockets that were " "automatically bound to an address (e.g., by B(2)). This is the " "same set of sockets that is available via I, I, I, and so on." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Request" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The request starts with a I header described in " "B(7) with I field set to B. It " "is followed by a header specific to the address family that starts with a " "common part shared by all address families:" 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 sock_diag_req {\n" " __u8 sdiag_family;\n" " __u8 sdiag_protocol;\n" "};\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The fields of this structure are as follows:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "An address family. It should be set to the appropriate B constant." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Depends on I. It should be set to the appropriate " "B constant for B and B, and to 0 otherwise." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the I field of the I header has the " "B flag set, it means that a list of sockets is being requested; " "otherwise it is a query about an individual socket." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Response" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The response starts with a I header and is followed by an " "array of objects specific to the address family. The array is to be " "accessed with the standard B macros from the B(3) API." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Each object is the NLA (netlink attributes) list that is to be accessed with " "the B macros from B(3) API." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "UNIX domain sockets" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For UNIX domain sockets the request is represented in the following " "structure:" 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 unix_diag_req {\n" " __u8 sdiag_family;\n" " __u8 sdiag_protocol;\n" " __u16 pad;\n" " __u32 udiag_states;\n" " __u32 udiag_ino;\n" " __u32 udiag_show;\n" " __u32 udiag_cookie[2];\n" "};\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The address family; it should be set to B." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "These fields should be set to 0." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is a bit mask that defines a filter of sockets states. Only those " "sockets whose states are in this mask will be reported. Ignored when " "querying for an individual socket. Supported values are:" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "1 EE B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "1 EE B" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is an inode number when querying for an individual socket. Ignored " "when querying for a list of sockets." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is a set of flags defining what kind of information to report. Each " "requested kind of information is reported back as a netlink attribute as " "described below:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. The " "payload associated with this attribute is the pathname to which the socket " "was bound (a sequence of bytes up to B length)." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. The " "payload associated with this attribute is represented in the following " "structure:" 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 unix_diag_vfs {\n" " __u32 udiag_vfs_dev;\n" " __u32 udiag_vfs_ino;\n" "};\n" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The device number of the corresponding on-disk socket inode." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The inode number of the corresponding on-disk socket inode." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. The " "payload associated with this attribute is a __u32 value which is the peer's " "inode number. This attribute is reported for connected sockets only." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. The " "payload associated with this attribute is an array of __u32 values which are " "inode numbers of sockets that has passed the B(2) call, but hasn't " "been processed with B(2) yet. This attribute is reported for " "listening sockets only." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. The " "payload associated with this attribute is represented in the following " "structure:" 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 unix_diag_rqlen {\n" " __u32 udiag_rqueue;\n" " __u32 udiag_wqueue;\n" "};\n" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For listening sockets: the number of pending connections. The length of the " "array associated with the B response attribute is equal to " "this value." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For established sockets: the amount of data in incoming queue." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For listening sockets: the backlog length which equals to the value passed " "as the second argument to B(2)." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For established sockets: the amount of memory available for sending." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The attribute reported in answer to this request is B. " "The payload associated with this attribute is an array of __u32 values " "described below in the subsection \"Socket memory information\"." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following attributes are reported back without any specific request:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is __u8 value which represents " "bits of B(2) state." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is an array of opaque identifiers that could be used along with " "I to specify an individual socket. It is ignored when querying " "for a list of sockets, as well as when all its elements are set to -1." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The response to a query for UNIX domain sockets is represented as an array of" 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 unix_diag_msg {\n" " __u8 udiag_family;\n" " __u8 udiag_type;\n" " __u8 udiag_state;\n" " __u8 pad;\n" " __u32 udiag_ino;\n" " __u32 udiag_cookie[2];\n" "};\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "followed by netlink attributes." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This field has the same meaning as in I." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is set to one of B, B, or B." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This is set to one of B or B." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This field is set to 0." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This is the socket inode number." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is an array of opaque identifiers that could be used in subsequent " "queries." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "IPv4 and IPv6 sockets" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For IPv4 and IPv6 sockets, the request is represented in the following " "structure:" 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 inet_diag_req_v2 {\n" " __u8 sdiag_family;\n" " __u8 sdiag_protocol;\n" " __u8 idiag_ext;\n" " __u8 pad;\n" " __u32 idiag_states;\n" " struct inet_diag_sockid 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 "where I is defined as 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 inet_diag_sockid {\n" " __be16 idiag_sport;\n" " __be16 idiag_dport;\n" " __be32 idiag_src[4];\n" " __be32 idiag_dst[4];\n" " __u32 idiag_if;\n" " __u32 idiag_cookie[2];\n" "};\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The fields of I are as follows:" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This should be set to either B or B for IPv4 or IPv6 " "sockets respectively." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This should be set to one of B, B, or " "B." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is a set of flags defining what kind of extended information to " "report. Each requested kind of information is reported back as a netlink " "attribute as described below:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is a __u8 value which is the TOS " "of the socket." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is a __u8 value which is the " "TClass of the socket. IPv6 sockets only. For LISTEN and CLOSE sockets, " "this is followed by B attribute with associated __u8 " "payload value meaning whether the socket is IPv6-only or not." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is represented in the following " "structure:" 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 inet_diag_meminfo {\n" " __u32 idiag_rmem;\n" " __u32 idiag_wmem;\n" " __u32 idiag_fmem;\n" " __u32 idiag_tmem;\n" "};\n" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of data in the receive queue." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of data that is queued by TCP but not yet sent." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of memory scheduled for future use (TCP only)." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of data in send queue." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is an array of __u32 values " "described below in the subsection \"Socket memory 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" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is specific to the address " "family. For TCP sockets, it is an object of type I." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with this attribute is a string that describes the " "congestion control algorithm used. For TCP sockets only." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This should be set to 0." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is a bit mask that defines a filter of socket states. Only those " "sockets whose states are in this mask will be reported. Ignored when " "querying for an individual socket." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is a socket ID object that is used in dump requests, in queries about " "individual sockets, and is reported back in each response. Unlike UNIX " "domain sockets, IPv4 and IPv6 sockets are identified using addresses and " "ports. All values are in network byte order." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The fields of I are as follows:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The source port." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The destination port." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The source address." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The destination address." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The interface number the socket is bound to." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This is an array of opaque identifiers that could be used along with other " "fields of this structure to specify an individual socket. It is ignored " "when querying for a list of sockets, as well as when all its elements are " "set to -1." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The response to a query for IPv4 or IPv6 sockets is represented as an array " "of" msgstr "" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "struct inet_diag_msg {\n" " __u8 idiag_family;\n" " __u8 idiag_state;\n" " __u8 idiag_timer;\n" " __u8 idiag_retrans;\n" "\\&\n" " struct inet_diag_sockid id;\n" "\\&\n" " __u32 idiag_expires;\n" " __u32 idiag_rqueue;\n" " __u32 idiag_wqueue;\n" " __u32 idiag_uid;\n" " __u32 idiag_inode;\n" "};\n" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This is the same field as in I." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This denotes socket state as in I." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For TCP sockets, this field describes the type of timer that is currently " "active for the socket. It is set to one of the following constants:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<0>" msgstr "B<0>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "no timer is active" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<1>" msgstr "B<1>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "a retransmit timer" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<2>" msgstr "B<2>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "a keep-alive timer" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<3>" msgstr "B<3>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "a TIME_WAIT timer" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<4>" msgstr "B<4>" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "a zero window probe timer" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For non-TCP sockets, this field is set to 0." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For I values 1, 2, and 4, this field contains the number of " "retransmits. For other I values, this field is set to 0." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For TCP sockets that have an active timer, this field describes its " "expiration time in milliseconds. For other sockets, this field is set to 0." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For listening sockets: the number of pending connections." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For other sockets: the amount of data in the incoming queue." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For listening sockets: the backlog length." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "For other sockets: the amount of memory available for sending." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This is the socket owner UID." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I" msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Socket memory information" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The payload associated with B and B " "netlink attributes is an array of the following __u32 values:" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of data in receive queue." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The receive socket buffer as set by B." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The send socket buffer as set by B." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of data queued by TCP, but not yet sent." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The amount of memory allocated for the socket's service needs (e.g., socket " "filter)." msgstr "" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The amount of packets in the backlog (not yet processed)." 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 "VERSIONES" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B was introduced in Linux 2.6.14 and supported B " "and B sockets only. In Linux 3.3, it was renamed to " "B and extended to support B sockets." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B and B were introduced in Linux 3.6." msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "ESTÁNDARES" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Linux." msgstr "Linux." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "EJEMPLOS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following example program prints inode number, peer's inode number, and " "name of all UNIX domain sockets in the current namespace." msgstr "" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Eerrno.hE\n" "#include Estdio.hE\n" "#include Estring.hE\n" "#include Eunistd.hE\n" "#include Esys/socket.hE\n" "#include Esys/un.hE\n" "#include Elinux/netlink.hE\n" "#include Elinux/rtnetlink.hE\n" "#include Elinux/sock_diag.hE\n" "#include Elinux/unix_diag.hE\n" "\\&\n" "static int\n" "send_query(int fd)\n" "{\n" " struct sockaddr_nl nladdr = {\n" " .nl_family = AF_NETLINK\n" " };\n" " struct\n" " {\n" " struct nlmsghdr nlh;\n" " struct unix_diag_req udr;\n" " } req = {\n" " .nlh = {\n" " .nlmsg_len = sizeof(req),\n" " .nlmsg_type = SOCK_DIAG_BY_FAMILY,\n" " .nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP\n" " },\n" " .udr = {\n" " .sdiag_family = AF_UNIX,\n" " .udiag_states = -1,\n" " .udiag_show = UDIAG_SHOW_NAME | UDIAG_SHOW_PEER\n" " }\n" " };\n" " struct iovec iov = {\n" " .iov_base = &req,\n" " .iov_len = sizeof(req)\n" " };\n" " struct msghdr msg = {\n" " .msg_name = &nladdr,\n" " .msg_namelen = sizeof(nladdr),\n" " .msg_iov = &iov,\n" " .msg_iovlen = 1\n" " };\n" "\\&\n" " for (;;) {\n" " if (sendmsg(fd, &msg, 0) E 0) {\n" " if (errno == EINTR)\n" " continue;\n" "\\&\n" " perror(\"sendmsg\");\n" " return -1;\n" " }\n" "\\&\n" " return 0;\n" " }\n" "}\n" "\\&\n" "static int\n" "print_diag(const struct unix_diag_msg *diag, unsigned int len)\n" "{\n" " if (len E NLMSG_LENGTH(sizeof(*diag))) {\n" " fputs(\"short response\\en\", stderr);\n" " return -1;\n" " }\n" " if (diag-Eudiag_family != AF_UNIX) {\n" " fprintf(stderr, \"unexpected family %u\\en\", diag-Eudiag_family);\n" " return -1;\n" " }\n" "\\&\n" " unsigned int rta_len = len - NLMSG_LENGTH(sizeof(*diag));\n" " unsigned int peer = 0;\n" " size_t path_len = 0;\n" " char path[sizeof(((struct sockaddr_un *) 0)-Esun_path) + 1];\n" "\\&\n" " for (struct rtattr *attr = (struct rtattr *) (diag + 1);\n" " RTA_OK(attr, rta_len); attr = RTA_NEXT(attr, rta_len)) {\n" " switch (attr-Erta_type) {\n" " case UNIX_DIAG_NAME:\n" " if (!path_len) {\n" " path_len = RTA_PAYLOAD(attr);\n" " if (path_len E sizeof(path) - 1)\n" " path_len = sizeof(path) - 1;\n" " memcpy(path, RTA_DATA(attr), path_len);\n" " path[path_len] = \\[aq]\\e0\\[aq];\n" " }\n" " break;\n" "\\&\n" " case UNIX_DIAG_PEER:\n" " if (RTA_PAYLOAD(attr) E= sizeof(peer))\n" " peer = *(unsigned int *) RTA_DATA(attr);\n" " break;\n" " }\n" " }\n" "\\&\n" " printf(\"inode=%u\", diag-Eudiag_ino);\n" "\\&\n" " if (peer)\n" " printf(\", peer=%u\", peer);\n" "\\&\n" " if (path_len)\n" " printf(\", name=%s%s\", *path ? \"\" : \"@\",\n" " *path ? path : path + 1);\n" "\\&\n" " putchar(\\[aq]\\en\\[aq]);\n" " return 0;\n" "}\n" "\\&\n" "static int\n" "receive_responses(int fd)\n" "{\n" " long buf[8192 / sizeof(long)];\n" " struct sockaddr_nl nladdr;\n" " struct iovec iov = {\n" " .iov_base = buf,\n" " .iov_len = sizeof(buf)\n" " };\n" " int flags = 0;\n" "\\&\n" " for (;;) {\n" " struct msghdr msg = {\n" " .msg_name = &nladdr,\n" " .msg_namelen = sizeof(nladdr),\n" " .msg_iov = &iov,\n" " .msg_iovlen = 1\n" " };\n" "\\&\n" " ssize_t ret = recvmsg(fd, &msg, flags);\n" "\\&\n" " if (ret E 0) {\n" " if (errno == EINTR)\n" " continue;\n" "\\&\n" " perror(\"recvmsg\");\n" " return -1;\n" " }\n" " if (ret == 0)\n" " return 0;\n" "\\&\n" " if (nladdr.nl_family != AF_NETLINK) {\n" " fputs(\"!AF_NETLINK\\en\", stderr);\n" " return -1;\n" " }\n" "\\&\n" " const struct nlmsghdr *h = (struct nlmsghdr *) buf;\n" "\\&\n" " if (!NLMSG_OK(h, ret)) {\n" " fputs(\"!NLMSG_OK\\en\", stderr);\n" " return -1;\n" " }\n" "\\&\n" " for (; NLMSG_OK(h, ret); h = NLMSG_NEXT(h, ret)) {\n" " if (h-Enlmsg_type == NLMSG_DONE)\n" " return 0;\n" "\\&\n" " if (h-Enlmsg_type == NLMSG_ERROR) {\n" " const struct nlmsgerr *err = NLMSG_DATA(h);\n" "\\&\n" " if (h-Enlmsg_len E NLMSG_LENGTH(sizeof(*err))) {\n" " fputs(\"NLMSG_ERROR\\en\", stderr);\n" " } else {\n" " errno = -err-Eerror;\n" " perror(\"NLMSG_ERROR\");\n" " }\n" "\\&\n" " return -1;\n" " }\n" "\\&\n" " if (h-Enlmsg_type != SOCK_DIAG_BY_FAMILY) {\n" " fprintf(stderr, \"unexpected nlmsg_type %u\\en\",\n" " (unsigned) h-Enlmsg_type);\n" " return -1;\n" " }\n" "\\&\n" " if (print_diag(NLMSG_DATA(h), h-Enlmsg_len))\n" " return -1;\n" " }\n" " }\n" "}\n" "\\&\n" "int\n" "main(void)\n" "{\n" " int fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_SOCK_DIAG);\n" "\\&\n" " if (fd E 0) {\n" " perror(\"socket\");\n" " return 1;\n" " }\n" "\\&\n" " int ret = send_query(fd) || receive_responses(fd);\n" "\\&\n" " close(fd);\n" " return ret;\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 "VÉASE TAMBIÉN" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B(3), B(3), B(7), B(7)" msgstr "" #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5 Febrero 2023" #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Páginas de Manual de Linux 6.03" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "struct inet_diag_msg {\n" " __u8 idiag_family;\n" " __u8 idiag_state;\n" " __u8 idiag_timer;\n" " __u8 idiag_retrans;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " struct inet_diag_sockid id;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " __u32 idiag_expires;\n" " __u32 idiag_rqueue;\n" " __u32 idiag_wqueue;\n" " __u32 idiag_uid;\n" " __u32 idiag_inode;\n" "};\n" msgstr "" #. type: Plain text #: debian-bookworm msgid "The NETLINK_SOCK_DIAG API is Linux-specific." msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Eerrno.hE\n" "#include Estdio.hE\n" "#include Estring.hE\n" "#include Eunistd.hE\n" "#include Esys/socket.hE\n" "#include Esys/un.hE\n" "#include Elinux/netlink.hE\n" "#include Elinux/rtnetlink.hE\n" "#include Elinux/sock_diag.hE\n" "#include Elinux/unix_diag.hE\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static int\n" "send_query(int fd)\n" "{\n" " struct sockaddr_nl nladdr = {\n" " .nl_family = AF_NETLINK\n" " };\n" " struct\n" " {\n" " struct nlmsghdr nlh;\n" " struct unix_diag_req udr;\n" " } req = {\n" " .nlh = {\n" " .nlmsg_len = sizeof(req),\n" " .nlmsg_type = SOCK_DIAG_BY_FAMILY,\n" " .nlmsg_flags = NLM_F_REQUEST | NLM_F_DUMP\n" " },\n" " .udr = {\n" " .sdiag_family = AF_UNIX,\n" " .udiag_states = -1,\n" " .udiag_show = UDIAG_SHOW_NAME | UDIAG_SHOW_PEER\n" " }\n" " };\n" " struct iovec iov = {\n" " .iov_base = &req,\n" " .iov_len = sizeof(req)\n" " };\n" " struct msghdr msg = {\n" " .msg_name = &nladdr,\n" " .msg_namelen = sizeof(nladdr),\n" " .msg_iov = &iov,\n" " .msg_iovlen = 1\n" " };\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " for (;;) {\n" " if (sendmsg(fd, &msg, 0) E 0) {\n" " if (errno == EINTR)\n" " continue;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " perror(\"sendmsg\");\n" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " return 0;\n" " }\n" "}\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static int\n" "print_diag(const struct unix_diag_msg *diag, unsigned int len)\n" "{\n" " if (len E NLMSG_LENGTH(sizeof(*diag))) {\n" " fputs(\"short response\\en\", stderr);\n" " return -1;\n" " }\n" " if (diag-Eudiag_family != AF_UNIX) {\n" " fprintf(stderr, \"unexpected family %u\\en\", diag-Eudiag_family);\n" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " unsigned int rta_len = len - NLMSG_LENGTH(sizeof(*diag));\n" " unsigned int peer = 0;\n" " size_t path_len = 0;\n" " char path[sizeof(((struct sockaddr_un *) 0)-Esun_path) + 1];\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " for (struct rtattr *attr = (struct rtattr *) (diag + 1);\n" " RTA_OK(attr, rta_len); attr = RTA_NEXT(attr, rta_len)) {\n" " switch (attr-Erta_type) {\n" " case UNIX_DIAG_NAME:\n" " if (!path_len) {\n" " path_len = RTA_PAYLOAD(attr);\n" " if (path_len E sizeof(path) - 1)\n" " path_len = sizeof(path) - 1;\n" " memcpy(path, RTA_DATA(attr), path_len);\n" " path[path_len] = \\[aq]\\e0\\[aq];\n" " }\n" " break;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " case UNIX_DIAG_PEER:\n" " if (RTA_PAYLOAD(attr) E= sizeof(peer))\n" " peer = *(unsigned int *) RTA_DATA(attr);\n" " break;\n" " }\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " printf(\"inode=%u\", diag-Eudiag_ino);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (peer)\n" " printf(\", peer=%u\", peer);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (path_len)\n" " printf(\", name=%s%s\", *path ? \"\" : \"@\",\n" " *path ? path : path + 1);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " putchar(\\[aq]\\en\\[aq]);\n" " return 0;\n" "}\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "static int\n" "receive_responses(int fd)\n" "{\n" " long buf[8192 / sizeof(long)];\n" " struct sockaddr_nl nladdr;\n" " struct iovec iov = {\n" " .iov_base = buf,\n" " .iov_len = sizeof(buf)\n" " };\n" " int flags = 0;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " for (;;) {\n" " struct msghdr msg = {\n" " .msg_name = &nladdr,\n" " .msg_namelen = sizeof(nladdr),\n" " .msg_iov = &iov,\n" " .msg_iovlen = 1\n" " };\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " ssize_t ret = recvmsg(fd, &msg, flags);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (ret E 0) {\n" " if (errno == EINTR)\n" " continue;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " perror(\"recvmsg\");\n" " return -1;\n" " }\n" " if (ret == 0)\n" " return 0;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (nladdr.nl_family != AF_NETLINK) {\n" " fputs(\"!AF_NETLINK\\en\", stderr);\n" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " const struct nlmsghdr *h = (struct nlmsghdr *) buf;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (!NLMSG_OK(h, ret)) {\n" " fputs(\"!NLMSG_OK\\en\", stderr);\n" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " for (; NLMSG_OK(h, ret); h = NLMSG_NEXT(h, ret)) {\n" " if (h-Enlmsg_type == NLMSG_DONE)\n" " return 0;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (h-Enlmsg_type == NLMSG_ERROR) {\n" " const struct nlmsgerr *err = NLMSG_DATA(h);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (h-Enlmsg_len E NLMSG_LENGTH(sizeof(*err))) {\n" " fputs(\"NLMSG_ERROR\\en\", stderr);\n" " } else {\n" " errno = -err-Eerror;\n" " perror(\"NLMSG_ERROR\");\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (h-Enlmsg_type != SOCK_DIAG_BY_FAMILY) {\n" " fprintf(stderr, \"unexpected nlmsg_type %u\\en\",\n" " (unsigned) h-Enlmsg_type);\n" " return -1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (print_diag(NLMSG_DATA(h), h-Enlmsg_len))\n" " return -1;\n" " }\n" " }\n" "}\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(void)\n" "{\n" " int fd = socket(AF_NETLINK, SOCK_RAW, NETLINK_SOCK_DIAG);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " if (fd E 0) {\n" " perror(\"socket\");\n" " return 1;\n" " }\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " int ret = send_query(fd) || receive_responses(fd);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " close(fd);\n" " return ret;\n" "}\n" msgstr "" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 Octubre 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Páginas de Manual de Linux 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Páginas de Manual de Linux 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 Marzo 2023" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Páginas de Manual de Linux 6.04" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Páginas de Manual de Linux (no publicadas)"