# Brazilian Portuguese translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Paulo César Mendes , 2000. # André Luiz Fassone , 2000. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 05:45+0200\n" "PO-Revision-Date: 2000-06-02 19:20-0300\n" "Last-Translator: André Luiz Fassone \n" "Language-Team: Brazilian Portuguese \n" "Language: pt_BR\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" "X-Generator: Virtaal 1.0.0-beta1\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "CMSG" msgstr "CMSG" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 maio 2024" #. type: TH #: archlinux debian-unstable #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.7" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NOME" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - access ancillary data" msgstr "" "CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR - accesso a dados " "ancilares" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "BIBLIOTECA" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Standard C library (I, I<-lc>)" msgstr "Biblioteca C Padrão (I, I<-lc>)" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "SINOPSE" #. 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" msgstr "B<#include Esys/socket.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "B<#include Esys/socket.hE>\n" #| "BIB<);>\n" #| "BIB< ,>\n" #| "B< struct cmsghdr *>cmsgB<);>\n" #| "BIB<);>\n" #| "BIB<);>\n" #| "BIB<);>\n" #| "BIB<);>\n" msgid "" "BIB<);>\n" "BIB<,>\n" "B< struct cmsghdr *>cmsgB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" msgstr "" "B<#include Esys/socket.hE>\n" "BIB<);>\n" "BIB< ,>\n" "B< struct cmsghdr *>cmsgB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "DESCRIÇÃO" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "These macros are used to create and access control messages (also called " "ancillary data) that are not a part of the socket payload. This control " "information may include the interface the packet was received on, various " "rarely used header fields, an extended error description, a set of file " "descriptors, or UNIX credentials. For instance, control messages can be " "used to send additional header fields such as IP options. Ancillary data is " "sent by calling B(2) and received by calling B(2). See " "their manual pages for more information." msgstr "" "Estas macros servem para criar e acessar mensagens de controle (também " "chamadas dados ancilares) que não são parte do conteúdo do 'socket'. Esta " "informação pode incluir a interface onde o pacote foi recebido, uma " "miscelânea de cabeçalhos raramente usados, uma descrição de erro mais " "detalhada, um conjunto de descritores de arquivo ou credenciais UNIX. Por " "exemplo, pode se usar mensagens de controle para enviar campos de cabeçalho " "adicionais tais como opções IP. Os dados são enviados com B(2) e " "recebidos com B(2). Veja as manpages para mais informações." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "Ancillary data is a sequence of B structures with " #| "appended data. This sequence should only be accessed using the macros " #| "described in this manual page and never directly. See the specific " #| "protocol man pages for the available control message types. The maximum " #| "ancillary buffer size allowed per socket can be set using the B sysctl; see B(7)." msgid "" "Ancillary data is a sequence of I structures with appended data. " "See the specific protocol man pages for the available control message " "types. The maximum ancillary buffer size allowed per socket can be set " "using I; see B(7)." msgstr "" "Os dados ancilares consistem numa seqüência de B seguidas de " "dados adicionais, que devem ser acessadas apenas com as macros descritas " "nesta manpage e não diretamente. Veja os tipos de mensagens de controle nas " "páginas de manuais dos protocolos. O tamanho máximo do 'buffer' auxiliar do " "'socket' pode ser definido com B do sysctl. Ver " "B(7)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The I structure 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 #, fuzzy, no-wrap #| msgid "" #| "struct cmsghdr {\n" #| "\tsocklen_t\tcmsg_len;\t/* data byte count, including header */\n" #| "\tint\tcmsg_level;\t/* originating protocol */\n" #| "\tint\tcmsg_type;\t/* protocol-specific type */\n" #| "/* followed by unsigned char\tcmsg_data[]; */\n" #| "};\n" msgid "" "struct cmsghdr {\n" " size_t cmsg_len; /* Data byte count, including header\n" " (type is socklen_t in POSIX) */\n" " int cmsg_level; /* Originating protocol */\n" " int cmsg_type; /* Protocol-specific type */\n" "/* followed by\n" " unsigned char cmsg_data[]; */\n" "};\n" msgstr "" "struct cmsghdr {\n" "\tsocklen_t\tcmsg_len;\t/* total de bytes de dados, incluindo o cabeçalho */\n" "\tint\tcmsg_level;\t/* protocolo original */\n" "\tint\tcmsg_type;\t/* tipo protocolo-específico */\n" "/* followed by unsigned char\tcmsg_data[]; */\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The sequence of I structures should never be accessed directly. " "Instead, use only the following macros:" 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 "B()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "B returns a pointer to the first B in the " #| "ancillary data buffer associated with the passed B." msgid "" "returns a pointer to the first I in the ancillary data buffer " "associated with the passed I. It returns NULL if there isn't enough " "space for a I in the buffer." msgstr "" "B retorna um ponteiro para o primeiro B do 'buffer' " "ancilar associado ao B." #. #-#-#-#-# archlinux: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# debian-bookworm: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TP #. #-#-#-#-# debian-unstable: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-40: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-rawhide: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# mageia-cauldron: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-leap-15-6: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-tumbleweed: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the next valid I after the passed I. It returns " "NULL when there isn't enough space left in the buffer." msgstr "" "retorna o próximo I válido depois do I. indicado, e " "retorna NULO se não houver mais espaço suficiente no 'buffer'." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When initializing a buffer that will contain a series of I " "structures (e.g., to be sent with B(2)), that buffer should first " "be zero-initialized to ensure the correct operation of 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 "B()," #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "given a length, returns it including the required alignment. This is a " "constant expression." msgstr "" "dado um tamanho, retorna-o incluindo o alinhamento requerido. Isto é uma " "expressão constante." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the number of bytes an ancillary element with payload of the passed " "data length occupies. This is a constant expression." msgstr "" "retorna o número de bytes de um elemento acessório com um conteúdo do " "comprimento indicado. Esta expressão é constante." #. #-#-#-#-# archlinux: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# debian-bookworm: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TP #. #-#-#-#-# debian-unstable: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-40: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-rawhide: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# mageia-cauldron: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-leap-15-6: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-tumbleweed: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns a pointer to the data portion of a I. The pointer returned " "cannot be assumed to be suitably aligned for accessing arbitrary payload " "data types. Applications should not cast it to a pointer type matching the " "payload, but should instead use B(3) to copy data to or from a " "suitably declared object." msgstr "" #. #-#-#-#-# archlinux: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# debian-bookworm: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TP #. #-#-#-#-# debian-unstable: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-40: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# fedora-rawhide: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# mageia-cauldron: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-leap-15-6: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #. #-#-#-#-# opensuse-tumbleweed: cmsg.3.pot (PACKAGE VERSION) #-#-#-#-# #. type: TQ #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B()" msgstr "B()" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "returns the value to store in the I member of the I " "structure, taking into account any necessary alignment. It takes the data " "length as an argument. This is a constant expression." msgstr "" "retorna o valor do membro I do struct I considerando " "qualquer alinhamento necessário. Ela pega o tamanho como argumento. Esta " "expressão é constante." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "To create ancillary data, first initialize the I member of " "the I with the length of the control message buffer. Use " "B() on the I to get the first control message and " "B() to get all subsequent ones. In each control message, " "initialize I (with B()), the other I header " "fields, and the data portion using B(). Finally, the " "I field of the I should be set to the sum of the " "B() of the length of all control messages in the buffer. For " "more information on the I, see B(2)." msgstr "" "Para criar dados ancilares, inicialize o membro I do " "I com o comprimento do 'buffer' de mensagem de controle. Use " "B() no I para recuperar a primeira mensagem de " "controle e B() para as seguintes. Para cada mensagem de " "controle, inicialize I (com B()), e os outros I " "campos e a porção de dados com B(). No final, o campo " "I de B deve ter a soma dos comprimentos de todas as " "mensagens de controle B() do 'buffer'. Para mais informações " "sobre o I, veja B(2)." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "VERSIONS" msgstr "VERSÕES" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "For portability, ancillary data should be accessed using only the macros " #| "described here. B() is a Linux extension and should not be " #| "used in portable programs." msgid "" "For portability, ancillary data should be accessed using only the macros " "described here." msgstr "" "Os dados ancilares devem ser acessados apenas com as macros definidas aqui " "para manter a portabilidade. B() é uma extensão linux, e deve " "ser evitada em programas portáveis." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "In Linux, B, B, and B are constant " #| "expressions (assuming their argument is constant) - this could be used to " #| "declare the size of global variables. This may be not portable, however." msgid "" "In Linux, B(), B(), and B() are constant " "expressions (assuming their argument is constant), meaning that these values " "can be used to declare the size of global variables. This may not be " "portable, however." msgstr "" "No Linux, B, B e B são constantes (se " "receberem um argumento constante), e podem ser usados para declarar o " "tamanho de variáveis globais. Isto pode, no entanto, não ser portável." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "PADRÕES" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "POSIX.1-2008." msgstr "POSIX.1-2008." #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "B()," msgid "B()" msgstr "B()," #. 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-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "HISTÓRICO" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "This ancillary data model conforms to the POSIX.1003.1g draft, 4.4BSD-" #| "Lite, the IPv6 advanced API described in RFC2292 and the Single Unix " #| "specification v2. B is a Linux extension." msgid "" "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the " "IPv6 advanced API described in RFC\\ 2292 and SUSv2." msgstr "" "O modelo de dados ancilares segue o rascunho POSIX.1003.1g, BSD Lite 4.4, a " "API IPv6 avançada descrita no RFC2292 e a SUSv2. B é uma " "extensão linux." #. https://www.austingroupbugs.net/view.php?id=978#c3242 #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() and B() will be included in the next POSIX " "release (Issue 8)." 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 "EXEMPLOS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This code looks for the B option in a received ancillary buffer:" msgstr "Este código procura a opção B num 'buffer' ancilar recebido:" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "" #| "/* Receive auxiliary data in msgh */ \n" #| "for (cmsg = CMSG_FIRSTHDR(&msgh); \n" #| " cmsg != NULL; \n" #| " cmsg = CMSG_NXTHDR(&msgh,cmsg) {\n" #| "\tif (cmsg-Ecmsg_level == SOL_IP \n" #| "\t && cmsg-Ecmsg_type == IP_TTL) { \n" #| "\t\tttlptr = (int *) CMSG_DATA(cmsg);\n" #| "\t\treceived_ttl = *ttlptr; \n" #| "\t\tbreak;\n" #| "\t}\n" #| "}\n" #| "if (cmsg == NULL) {\n" #| "\t/*\n" #| "\t * Error: IP_TTL not enabled or small buffer\n" #| "\t * or I/O error.\n" #| "\t */ \n" #| "} \n" msgid "" "struct msghdr msgh;\n" "struct cmsghdr *cmsg;\n" "int received_ttl;\n" "\\&\n" "/* Receive auxiliary data in msgh */\n" "\\&\n" "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n" " cmsg = CMSG_NXTHDR(&msgh, cmsg)) {\n" " if (cmsg-Ecmsg_level == IPPROTO_IP\n" " && cmsg-Ecmsg_type == IP_TTL) {\n" " memcpy(&receive_ttl, CMSG_DATA(cmsg), sizeof(received_ttl));\n" " break;\n" " }\n" "}\n" "\\&\n" "if (cmsg == NULL) {\n" " /* Error: IP_TTL not enabled or small buffer or I/O error */\n" "}\n" msgstr "" "/* Receber dados ancilares em msgh */ \n" "for (cmsg = CMSG_FIRSTHDR(&msgh); \n" " cmsg != NULL; \n" " cmsg = CMSG_NXTHDR(&msgh,cmsg) {\n" "\tif (cmsg-Ecmsg_level == SOL_IP \n" "\t && cmsg-Ecmsg_type == IP_TTL) { \n" "\t\tttlptr = (int *) CMSG_DATA(cmsg);\n" "\t\treceived_ttl = *ttlptr; \n" "\t\tbreak;\n" "\t}\n" "}\n" "if (cmsg == NULL) {\n" "\t/*\n" "\t * Erro: IP_TTL desabilitado ou 'buffer' muito curto\n" "\t * ou erro de E/S.\n" "\t */ \n" "} \n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The code below passes an array of file descriptors over a Unix socket " #| "using B:" msgid "" "The code below passes an array of file descriptors over a UNIX domain socket " "using B:" msgstr "" "O código abaixo transmite um 'array' de descritores de arquivo através de um " "'socket' Unix usando B:" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "struct msghdr msg = { 0 };\n" "struct cmsghdr *cmsg;\n" "int myfds[NUM_FD]; /* Contains the file descriptors to pass */\n" "char iobuf[1];\n" "struct iovec io = {\n" " .iov_base = iobuf,\n" " .iov_len = sizeof(iobuf)\n" "};\n" "union { /* Ancillary data buffer, wrapped in a union\n" " in order to ensure it is suitably aligned */\n" " char buf[CMSG_SPACE(sizeof(myfds))];\n" " struct cmsghdr align;\n" "} u;\n" "\\&\n" "msg.msg_iov = &io;\n" "msg.msg_iovlen = 1;\n" "msg.msg_control = u.buf;\n" "msg.msg_controllen = sizeof(u.buf);\n" "cmsg = CMSG_FIRSTHDR(&msg);\n" "cmsg-Ecmsg_level = SOL_SOCKET;\n" "cmsg-Ecmsg_type = SCM_RIGHTS;\n" "cmsg-Ecmsg_len = CMSG_LEN(sizeof(myfds));\n" "memcpy(CMSG_DATA(cmsg), myfds, sizeof(myfds));\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "" #| "The code below passes an array of file descriptors over a Unix socket " #| "using B:" msgid "" "For a complete code example that shows passing of file descriptors over a " "UNIX domain socket, see B(2)." msgstr "" "O código abaixo transmite um 'array' de descritores de arquivo através de um " "'socket' Unix usando B:" #. 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 "VEJA TAMBÉM" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B(2), B(2)" msgstr "B(2), B(2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "RFC\\ 2292" msgstr "RFC\\ 2292" #. type: TH #: debian-bookworm #, no-wrap msgid "2022-10-29" msgstr "29 outubro 2022" #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. https://www.austingroupbugs.net/view.php?id=978#c3242 #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "" #| "This ancillary data model conforms to the POSIX.1003.1g draft, 4.4BSD-" #| "Lite, the IPv6 advanced API described in RFC2292 and the Single Unix " #| "specification v2. B is a Linux extension." msgid "" "This ancillary data model conforms to the POSIX.1g draft, 4.4BSD-Lite, the " "IPv6 advanced API described in RFC\\ 2292 and SUSv2. B(), " "B(), and B() are specified in POSIX.1-2008. " "B() and B() will be included in the next POSIX " "release (Issue 8)." msgstr "" "O modelo de dados ancilares segue o rascunho POSIX.1003.1g, BSD Lite 4.4, a " "API IPv6 avançada descrita no RFC2292 e a SUSv2. B é uma " "extensão linux." #. type: Plain text #: debian-bookworm msgid "B() is a Linux extension." msgstr "" #. type: SH #: debian-bookworm #, no-wrap msgid "NOTES" msgstr "NOTAS" #. type: Plain text #: debian-bookworm msgid "" "For portability, ancillary data should be accessed using only the macros " "described here. B() is a Linux extension and should not be " "used in portable programs." msgstr "" "Os dados ancilares devem ser acessados apenas com as macros definidas aqui " "para manter a portabilidade. B() é uma extensão linux, e deve " "ser evitada em programas portáveis." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "struct msghdr msgh;\n" "struct cmsghdr *cmsg;\n" "int received_ttl;\n" msgstr "" "struct msghdr msgh;\n" "struct cmsghdr *cmsg;\n" "int received_ttl;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "/* Receive auxiliary data in msgh */\n" msgstr "/* Receber dados ancilares em msgh */\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| "/* Receive auxiliary data in msgh */ \n" #| "for (cmsg = CMSG_FIRSTHDR(&msgh); \n" #| " cmsg != NULL; \n" #| " cmsg = CMSG_NXTHDR(&msgh,cmsg) {\n" #| "\tif (cmsg-Ecmsg_level == SOL_IP \n" #| "\t && cmsg-Ecmsg_type == IP_TTL) { \n" #| "\t\tttlptr = (int *) CMSG_DATA(cmsg);\n" #| "\t\treceived_ttl = *ttlptr; \n" #| "\t\tbreak;\n" #| "\t}\n" #| "}\n" #| "if (cmsg == NULL) {\n" #| "\t/*\n" #| "\t * Error: IP_TTL not enabled or small buffer\n" #| "\t * or I/O error.\n" #| "\t */ \n" #| "} \n" msgid "" "for (cmsg = CMSG_FIRSTHDR(&msgh); cmsg != NULL;\n" " cmsg = CMSG_NXTHDR(&msgh, cmsg)) {\n" " if (cmsg-Ecmsg_level == IPPROTO_IP\n" " && cmsg-Ecmsg_type == IP_TTL) {\n" " memcpy(&receive_ttl, CMSG_DATA(cmsg), sizeof(received_ttl));\n" " break;\n" " }\n" "}\n" msgstr "" "/* Receber dados ancilares em msgh */ \n" "for (cmsg = CMSG_FIRSTHDR(&msgh); \n" " cmsg != NULL; \n" " cmsg = CMSG_NXTHDR(&msgh,cmsg) {\n" "\tif (cmsg-Ecmsg_level == SOL_IP \n" "\t && cmsg-Ecmsg_type == IP_TTL) { \n" "\t\tttlptr = (int *) CMSG_DATA(cmsg);\n" "\t\treceived_ttl = *ttlptr; \n" "\t\tbreak;\n" "\t}\n" "}\n" "if (cmsg == NULL) {\n" "\t/*\n" "\t * Erro: IP_TTL desabilitado ou 'buffer' muito curto\n" "\t * ou erro de E/S.\n" "\t */ \n" "} \n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "if (cmsg == NULL) {\n" " /* Error: IP_TTL not enabled or small buffer or I/O error */\n" "}\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "struct msghdr msg = { 0 };\n" "struct cmsghdr *cmsg;\n" "int myfds[NUM_FD]; /* Contains the file descriptors to pass */\n" "char iobuf[1];\n" "struct iovec io = {\n" " .iov_base = iobuf,\n" " .iov_len = sizeof(iobuf)\n" "};\n" "union { /* Ancillary data buffer, wrapped in a union\n" " in order to ensure it is suitably aligned */\n" " char buf[CMSG_SPACE(sizeof(myfds))];\n" " struct cmsghdr align;\n" "} u;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, fuzzy, no-wrap #| msgid "" #| "msg.msg_control = buf; \n" #| "msg.msg_controllen = sizeof buf;\n" #| "cmsg = CMSG_FIRSTHDR(&msg); \n" #| "cmsg-Ecmsg_level = SOL_SOCKET;\n" #| "cmsg-Ecmsg_type = SCM_RIGHTS;\n" #| "cmsg-Ecmsg_len = CMSG_LEN(sizeof(int) * NUM_FD); \n" #| "/* Initialize the payload: */ \n" #| "fdptr = (int *)CMSG_DATA(cmsg); \n" #| "memcpy(fdptr, myfds, NUM_FD * sizeof(int)); \n" #| "/* Sum of the length of all control messages in the buffer: */ \n" #| "msg.msg_controllen = cmsg-Ecmsg_len;\n" msgid "" "msg.msg_iov = &io;\n" "msg.msg_iovlen = 1;\n" "msg.msg_control = u.buf;\n" "msg.msg_controllen = sizeof(u.buf);\n" "cmsg = CMSG_FIRSTHDR(&msg);\n" "cmsg-Ecmsg_level = SOL_SOCKET;\n" "cmsg-Ecmsg_type = SCM_RIGHTS;\n" "cmsg-Ecmsg_len = CMSG_LEN(sizeof(myfds));\n" "memcpy(CMSG_DATA(cmsg), myfds, sizeof(myfds));\n" msgstr "" "msg.msg_control = buf; \n" "msg.msg_controllen = sizeof buf;\n" "cmsg = CMSG_FIRSTHDR(&msg); \n" "cmsg-Ecmsg_level = SOL_SOCKET;\n" "cmsg-Ecmsg_type = SCM_RIGHTS;\n" "cmsg-Ecmsg_len = CMSG_LEN(sizeof(int) * NUM_FD); \n" "/* Inicializar o conteúdo: */ \n" "fdptr = (int *)CMSG_DATA(cmsg); \n" "memcpy(fdptr, myfds, NUM_FD * sizeof(int)); \n" "/* Soma dos comprimentos de todas as mensagens de controle no 'buffer': */ \n" "msg.msg_controllen = cmsg-Ecmsg_len;\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 outubro 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 março 2023" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"