# French translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Christophe Blaess , 1996-2003. # Stéphan Rafin , 2002. # Thierry Vignaud , 1999,2002. # François Micaux, 2002. # Alain Portal , 2003-2008. # Jean-Philippe Guérard , 2005-2006. # Jean-Luc Coulon (f5ibh) , 2006-2007. # Julien Cristau , 2006-2007. # Thomas Huriaux , 2006-2008. # Nicolas François , 2006-2008. # Florentin Duneau , 2006-2010. # Simon Paillard , 2006, 2013. # Denis Barbier , 2006,2010. # David Prévot , 2010, 2013, 2014. # Cédric Boutillier , 2011, 2012, 2013. # Frédéric Hantrais , 2013, 2014. # Jean-Philippe MENGUAL , 2021-2024. msgid "" msgstr "" "Project-Id-Version: manpages-l10n 4.21.0\n" "POT-Creation-Date: 2024-06-01 06:15+0200\n" "PO-Revision-Date: 2024-02-25 17:09+0100\n" "Last-Translator: Jean-Philippe MENGUAL \n" "Language-Team: French \n" "Language: fr\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: Lokalize 22.12.3\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "recvmmsg" msgstr "recvmmsg" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 mai 2024" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Pages du manuel 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 "NOM" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "recvmmsg - receive multiple messages on a socket" msgstr "recvmmsg - Recevoir plusieurs message sur un socket" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "BIBLIOTHÈQUE" #. 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 "Bibliothèque C standard (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 "SYNOPSIS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n" "B<#include Esys/socket.hE>\n" msgstr "" "B<#define _GNU_SOURCE> /* Consultez feature_test_macros(7) */\n" "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 #, no-wrap msgid "" "BIB<, struct mmsghdr *>IB<, unsigned int >IB<,>\n" "B< int >IB<, struct timespec *>IB<);>\n" msgstr "" "BIB<, struct mmsghdr *>IB<, unsigned int >IB<,>\n" "B< int >IB<, struct timespec *>IB<);>\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 "DESCRIPTION" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call is an extension of B(2) that allows " "the caller to receive multiple messages from a socket using a single system " "call. (This has performance benefits for some applications.) A further " "extension over B(2) is support for a timeout on the receive " "operation." msgstr "" "L'appel système B() est une extension de B(2) qui permet " "à l'appelant de recevoir plusieurs messages d'un socket en utilisant un seul " "appel système. (Cela améliore les performances pour certaines applications.) " "Une autre propriété de ce cette extension de B(2) est la gestion " "d'une temporisation pour l'opération de réception." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is the file descriptor of the socket to receive data " "from." msgstr "" "Le paramètre I est le descripteur de fichier de le socket émetteur." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument is a pointer to an array of I structures. " "The size of this array is specified in I." msgstr "" "L'argument I est un pointeur vers un tableau de structures " "I. La taille de ce tableau est précisée dans I." #. 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 in Isys/socket.hE> as:" msgstr "" "La structure I est définie dans Isys/socket.hE> comme " "ceci\\ :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "struct mmsghdr {\n" " struct msghdr msg_hdr; /* Message header */\n" " unsigned int msg_len; /* Number of received bytes for header */\n" "};\n" msgstr "" "struct mmsghdr {\n" " struct msghdr msg_hdr; /* En-tête du message */\n" " unsigned int msg_len; /* Nombre d'octets reçus pour l'en-tête */\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I field is a I structure, as described in " "B(2). The I field is the number of bytes returned for the " "message in the entry. This field has the same value as the return value of " "a single B(2) on the header." msgstr "" "Le champ I est une structure I, conformément à " "B(2). Le champ I est le nombre d'octets retourné par le " "message dans l'entrée. Ce champ a la même valeur que la valeur de retour de " "la simple commande B(2) sur l'en-tête." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument contains flags ORed together. The flags are the same " "as documented for B(2), with the following addition:" msgstr "" "L'argument I contient le OU binaire de la collection des attributs. " "Les attributs sont ceux documentés pour B(2), plus :" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.34)" msgstr "B (depuis Linux 2.6.34)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Turns on B after the first message has been received." msgstr "Activer B après le premier message reçu." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument points to a I (see " "B(2)) defining a timeout (seconds plus nanoseconds) for the " "receive operation (I). (This interval will be rounded up to " "the system clock granularity, and kernel scheduling delays mean that the " "blocking interval may overrun by a small amount.) If I is NULL, " "then the operation blocks indefinitely." msgstr "" "L'argument I est un pointeur vers une I (consultez " "B(2)) définissant la temporisation (en secondes et " "nanosecondes) pour l'opération de réception (mais consultez la section " "BOGUES !). Cet intervalle sera arrondi à la granularité de l'horloge " "système, et peut être légèrement modifié à cause des délais d'ordonnancement " "du noyau. Si I est le pointeur nul, l'opération se bloque " "indéfiniment." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A blocking B() call blocks until I messages have been " "received or until the timeout expires. A nonblocking call reads as many " "messages as are available (up to the limit specified by I) and " "returns immediately." msgstr "" "Un appel bloquant B() bloque jusqu'à la réception de I " "messages ou l'expiration de la temporisation. Un appel non bloquant lit " "autant de messages que disponibles (jusqu'à la limite indiquée par I) " "et retourne immédiatement." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On return from B(), successive elements of I are updated " "to contain information about each received message: I contains the " "size of the received message; the subfields of I are updated as " "described in B(2). The return value of the call indicates the " "number of elements of I that have been updated." msgstr "" "Au retour de B(), les éléments successifs de I sont mis à " "jour pour contenir l'information concernant chaque message reçu : les champs " "secondaires de I sont mis à jour conformément à B(2). La " "valeur de retour de l'appel indique le nombre d'éléments de I mis à " "jour." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "VALEUR RENVOYÉE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On success, B() returns the number of messages received in " "I; on error, -1 is returned, and I is set to indicate the " "error." msgstr "" "En cas du succès, B() retourne le nombre de messages reçus dans " "I ; Dans le cas contraire, il renvoie -1 et remplit I avec le " "code d'erreur." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ERRORS" msgstr "ERREURS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Errors are as for B(2). In addition, the following error can occur:" msgstr "" "Les erreurs sont les mêmes que pour B(2), plus l'erreur suivante :" #. 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 "I is invalid." msgstr "I n'est pas valable." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "See also BUGS." msgstr "Voir aussi BOGUES." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "STANDARDS" #. 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 "HISTORIQUE" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "Linux 2.6.33, glibc 2.12." msgstr "Linux 2.6.33, glibc 2.12." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "BOGUES" #. FIXME . https://bugzilla.kernel.org/show_bug.cgi?id=75371 #. http://thread.gmane.org/gmane.linux.man/5677 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I argument does not work as intended. The timeout is checked " "only after the receipt of each datagram, so that if up to I " "datagrams are received before the timeout expires, but then no further " "datagrams are received, the call will block forever." msgstr "" "L'argument I n'a pas l'effet que l'on pourrait attendre. La non-" "expiration du timeout est vérifiée après la réception de chaque datagramme, " "de sorte que si moins de I datagrammes sont reçus avant l'expiration " "du timeout, mais qu'aucun datagramme n'est reçu ensuite, l'appel restera " "bloqué indéfiniment. " #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If an error occurs after at least one message has been received, the call " "succeeds, and returns the number of messages received. The error code is " "expected to be returned on a subsequent call to B(). In the " "current implementation, however, the error code can be overwritten in the " "meantime by an unrelated network event on a socket, for example an incoming " "ICMP packet." msgstr "" "Si une erreur survient après qu'au moins un message ait été reçu, l'appel " "réussit et renvoie le nombre de messages reçus. Le code d'erreur est prévu " "pour être renvoyé lors de l'appel suivant à B(). Cependant, dans " "l'implémentation actuelle, le code d'erreur peut être émis en même temps par " "un événement réseau non lié sur un socket, comme un paquet ICMP entrant." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "EXEMPLES" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following program uses B() to receive multiple messages on a " "socket and stores them in multiple buffers. The call returns if all buffers " "are filled or if the timeout specified has expired." msgstr "" "Le programme suivant utilise B() pour recevoir plusieurs messages " "sur un socket et les stocker dans plusieurs tampons. L'appel termine si tous " "les tampons sont remplis ou si le délai indiqué est dépassé." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following snippet periodically generates UDP datagrams containing a " "random number:" msgstr "" "Le morceau de code suivant engendre périodiquement des datagrammes UDP " "contenant un nombre aléatoire :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "$B< while true; do echo $RANDOM E /dev/udp/127.0.0.1/1234;>\n" "B\n" msgstr "" "$B< while true; do echo $RANDOM E /dev/udp/127.0.0.1/1234;>\n" "B\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "These datagrams are read by the example application, which can give the " "following output:" msgstr "" "Ces datagrammes sont lus par le programme ci-dessous, qui peut par exemple " "afficher la sortie suivante :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "$B< ./a.out>\n" "5 messages received\n" "1 11782\n" "2 11345\n" "3 304\n" "4 13514\n" "5 28421\n" msgstr "" "$B< ./a.out>\n" "5 messages reçus\n" "1 11782\n" "2 11345\n" "3 304\n" "4 13514\n" "5 28421\n" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Program source" msgstr "Source du programme" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Earpa/inet.hE\n" "#include Enetinet/in.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/socket.hE\n" "#include Etime.hE\n" "\\&\n" "int\n" "main(void)\n" "{\n" "#define VLEN 10\n" "#define BUFSIZE 200\n" "#define TIMEOUT 1\n" " int sockfd, retval;\n" " char bufs[VLEN][BUFSIZE+1];\n" " struct iovec iovecs[VLEN];\n" " struct mmsghdr msgs[VLEN];\n" " struct timespec timeout;\n" " struct sockaddr_in addr;\n" "\\&\n" " sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n" " if (sockfd == -1) {\n" " perror(\"socket()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " addr.sin_family = AF_INET;\n" " addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n" " addr.sin_port = htons(1234);\n" " if (bind(sockfd, (struct sockaddr *) &addr, sizeof(addr)) == -1) {\n" " perror(\"bind()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " memset(msgs, 0, sizeof(msgs));\n" " for (size_t i = 0; i E VLEN; i++) {\n" " iovecs[i].iov_base = bufs[i];\n" " iovecs[i].iov_len = BUFSIZE;\n" " msgs[i].msg_hdr.msg_iov = &iovecs[i];\n" " msgs[i].msg_hdr.msg_iovlen = 1;\n" " }\n" "\\&\n" " timeout.tv_sec = TIMEOUT;\n" " timeout.tv_nsec = 0;\n" "\\&\n" " retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n" " if (retval == -1) {\n" " perror(\"recvmmsg()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " printf(\"%d messages received\\en\", retval);\n" " for (size_t i = 0; i E retval; i++) {\n" " bufs[i][msgs[i].msg_len] = 0;\n" " printf(\"%zu %s\", i+1, bufs[i]);\n" " }\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" "#define _GNU_SOURCE\n" "#include Earpa/inet.hE\n" "#include Enetinet/in.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/socket.hE\n" "#include Etime.hE\n" "\\&\n" "int\n" "main(void)\n" "{\n" "#define VLEN 10\n" "#define BUFSIZE 200\n" "#define TIMEOUT 1\n" " int sockfd, retval;\n" " char bufs[VLEN][BUFSIZE+1];\n" " struct iovec iovecs[VLEN];\n" " struct mmsghdr msgs[VLEN];\n" " struct timespec timeout;\n" " struct sockaddr_in addr;\n" "\\&\n" " sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n" " if (sockfd == -1) {\n" " perror(\"socket()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " addr.sin_family = AF_INET;\n" " addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n" " addr.sin_port = htons(1234);\n" " if (bind(sockfd, (struct sockaddr *) &addr, sizeof(addr)) == -1) {\n" " perror(\"bind()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " memset(msgs, 0, sizeof(msgs));\n" " for (size_t i = 0; i E VLEN; i++) {\n" " iovecs[i].iov_base = bufs[i];\n" " iovecs[i].iov_len = BUFSIZE;\n" " msgs[i].msg_hdr.msg_iov = &iovecs[i];\n" " msgs[i].msg_hdr.msg_iovlen = 1;\n" " }\n" "\\&\n" " timeout.tv_sec = TIMEOUT;\n" " timeout.tv_nsec = 0;\n" "\\&\n" " retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n" " if (retval == -1) {\n" " perror(\"recvmmsg()\");\n" " exit(EXIT_FAILURE);\n" " }\n" "\\&\n" " printf(\"%d messages reçus\\en\", retval);\n" " for (size_t i = 0; i E retval; i++) {\n" " bufs[i][msgs[i].msg_len] = 0;\n" " printf(\"%zu %s\", i+1, bufs[i]);\n" " }\n" " exit(EXIT_SUCCESS);\n" "}\n" #. SRC END #. 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 "VOIR AUSSI" #. 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), B(2), B(2), " "B(2), B(7)" msgstr "" "B(2), B(2), B(2), B(2), " "B(2), B(7)" #. type: TH #: debian-bookworm #, no-wrap msgid "2022-12-04" msgstr "4 décembre 2022" #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Pages du manuel de Linux 6.03" #. type: SH #: debian-bookworm #, no-wrap msgid "VERSIONS" msgstr "VERSIONS" #. type: Plain text #: debian-bookworm msgid "" "The B() system call was added in Linux 2.6.33. Support in glibc " "was added in glibc 2.12." msgstr "" "L'appel système B() a été ajouté dans Linux 2.6.33. La prise en " "charge dans la glibc a été ajoutée dans la glibc 2.12." #. type: Plain text #: debian-bookworm msgid "B() is Linux-specific." msgstr "B() est spécifique à Linux." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#define _GNU_SOURCE\n" "#include Earpa/inet.hE\n" "#include Enetinet/in.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/socket.hE\n" "#include Etime.hE\n" msgstr "" "#define _GNU_SOURCE\n" "#include Earpa/inet.hE\n" "#include Enetinet/in.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Estring.hE\n" "#include Esys/socket.hE\n" "#include Etime.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(void)\n" "{\n" "#define VLEN 10\n" "#define BUFSIZE 200\n" "#define TIMEOUT 1\n" " int sockfd, retval;\n" " char bufs[VLEN][BUFSIZE+1];\n" " struct iovec iovecs[VLEN];\n" " struct mmsghdr msgs[VLEN];\n" " struct timespec timeout;\n" " struct sockaddr_in addr;\n" msgstr "" "int\n" "main(void)\n" "{\n" "#define VLEN 10\n" "#define BUFSIZE 200\n" "#define TIMEOUT 1\n" " int sockfd, retval;\n" " char bufs[VLEN][BUFSIZE+1];\n" " struct iovec iovecs[VLEN];\n" " struct mmsghdr msgs[VLEN];\n" " struct timespec timeout;\n" " struct sockaddr_in addr;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n" " if (sockfd == -1) {\n" " perror(\"socket()\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " sockfd = socket(AF_INET, SOCK_DGRAM, 0);\n" " if (sockfd == -1) {\n" " perror(\"socket()\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " addr.sin_family = AF_INET;\n" " addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n" " addr.sin_port = htons(1234);\n" " if (bind(sockfd, (struct sockaddr *) &addr, sizeof(addr)) == -1) {\n" " perror(\"bind()\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " addr.sin_family = AF_INET;\n" " addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);\n" " addr.sin_port = htons(1234);\n" " if (bind(sockfd, (struct sockaddr *) &addr, sizeof(addr)) == -1) {\n" " perror(\"bind()\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " memset(msgs, 0, sizeof(msgs));\n" " for (size_t i = 0; i E VLEN; i++) {\n" " iovecs[i].iov_base = bufs[i];\n" " iovecs[i].iov_len = BUFSIZE;\n" " msgs[i].msg_hdr.msg_iov = &iovecs[i];\n" " msgs[i].msg_hdr.msg_iovlen = 1;\n" " }\n" msgstr "" " memset(msgs, 0, sizeof(msgs));\n" " for (size_t i = 0; i E VLEN; i++) {\n" " iovecs[i].iov_base = bufs[i];\n" " iovecs[i].iov_len = BUFSIZE;\n" " msgs[i].msg_hdr.msg_iov = &iovecs[i];\n" " msgs[i].msg_hdr.msg_iovlen = 1;\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " timeout.tv_sec = TIMEOUT;\n" " timeout.tv_nsec = 0;\n" msgstr "" " timeout.tv_sec = TIMEOUT;\n" " timeout.tv_nsec = 0;\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " retval = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n" " if (retval == -1) {\n" " perror(\"recvmmsg()\");\n" " exit(EXIT_FAILURE);\n" " }\n" msgstr "" " resultat = recvmmsg(sockfd, msgs, VLEN, 0, &timeout);\n" " if (resultat == -1) {\n" " perror(\"recvmmsg()\");\n" " exit(EXIT_FAILURE);\n" " }\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " printf(\"%d messages received\\en\", retval);\n" " for (size_t i = 0; i E retval; i++) {\n" " bufs[i][msgs[i].msg_len] = 0;\n" " printf(\"%zu %s\", i+1, bufs[i]);\n" " }\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " printf(\"%d messages reçus\\en\", retval);\n" " for (size_t i = 0; i E retval; i++) {\n" " bufs[i][msgs[i].msg_len] = 0;\n" " printf(\"%zu %s\", i+1, bufs[i]);\n" " }\n" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 octobre 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Pages du manuel de Linux 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Pages du manuel de Linux 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 mars 2023" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Pages du manuel de Linux 6.04" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Pages du manuel de Linux (non publiées)"