# 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-2014.
# Denis Barbier , 2006, 2010.
# David Prévot , 2010-2014.
# Jean-Philippe MENGUAL , 2021-2023.
# Jean-Pierre Giraud , 2023-2024.
msgid ""
msgstr ""
"Project-Id-Version: manpages-l10n 4.22.0\n"
"POT-Creation-Date: 2024-06-01 06:20+0200\n"
"PO-Revision-Date: 2024-06-02 11:09+0200\n"
"Last-Translator: Jean-Pierre Giraud \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 "seccomp"
msgstr "seccomp"
#. 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 "seccomp - operate on Secure Computing state of the process"
msgstr ""
"seccomp - Agir sur l'état de calcul sécurisé (Secure Computing State) du "
"processus"
#. 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"
#. Kees Cook noted: Anything that uses SECCOMP_RET_TRACE returns will
#. need
#. 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 Elinux/seccomp.hE> /* Definition of B constants */\n"
"B<#include Elinux/filter.hE> /* Definition of B */\n"
"B<#include Elinux/audit.hE> /* Definition of B constants */\n"
"B<#include Elinux/signal.hE> /* Definition of B constants */\n"
"B<#include Esys/ptrace.hE> /* Definition of B constants */\n"
"B<#include Esys/syscall.hE> /* Definition of B constants */\n"
"B<#include Eunistd.hE>\n"
msgstr ""
"B<#include Elinux/seccomp.hE> /* Définition des constantes B */\n"
"B<#include Elinux/filter.hE> /* Définition de B */\n"
"B<#include Elinux/audit.hE> /* Définition des constantes B */\n"
"B<#include Elinux/signal.hE> /* Définition des constantes B */\n"
"B<#include Esys/ptrace.hE> /* Définition des constantes B */\n"
"B<#include Esys/syscall.hE> /* Définition des constantes B */\n"
"B<#include Eunistd.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<, unsigned int >IB<,>\n"
"B< void *>IB<);>\n"
msgstr ""
"BIB<, unsigned int >IB<,>\n"
"B< void *>IB<);>\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"I: glibc provides no wrapper for B(), necessitating the use "
"of B(2)."
msgstr ""
"I : la glibc ne fournit pas d'enveloppe pour B(), "
"imposant l'utilisation de B(2)."
#. 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 operates on the Secure Computing (seccomp) "
"state of the calling process."
msgstr ""
"L'appel système B() agit sur l'état de calcul sécurisé (seccomp) du "
"processus appelant."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "Currently, Linux supports the following I values:"
msgstr "Actuellement, Linux gère les valeurs d'I suivantes :"
#. 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 ""
"The only system calls that the calling thread is permitted to make are "
"B(2), B(2), B<_exit>(2) (but not B(2)), and "
"B(2). Other system calls result in the termination of the "
"calling thread, or termination of the entire process with the B "
"signal when there is only one thread. Strict secure computing mode is "
"useful for number-crunching applications that may need to execute untrusted "
"byte code, perhaps obtained by reading from a pipe or socket."
msgstr ""
"Les seuls appels système que le thread appelant est autorisé à faire sont "
"B(2), B(2), B<_exit>(2) (mais pas B(2)) et "
"B(2). Les autres appels système aboutissent à la fin du thread "
"appelant ou à la fin du processus complet avec le signal B quand il "
"n'y a qu'un seul thread. Le mode de calcul sécurisé strict est utile pour "
"les applications de traitement de nombres qui peuvent avoir besoin "
"d'exécuter un code à octets non fiable, obtenu peut-être en lisant un tube "
"ou un socket."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Note that although the calling thread can no longer call B(2), "
"it can use B(2) to block all signals apart from B and "
"B. This means that B(2) (for example) is not sufficient "
"for restricting the process's execution time. Instead, to reliably "
"terminate the process, B must be used. This can be done by using "
"B(2) with B and I set to "
"B, or by using B(2) to set the hard limit for "
"B."
msgstr ""
"Remarquez que si le thread appelant ne peut plus appeler B(2), "
"il peut utiliser B(2) pour bloquer tous les signaux, sauf ceux "
"provenant de B et de B. Cela veut dire que B(2) "
"(par exemple) n'est pas suffisant pour restreindre la durée d'exécution d'un "
"processus. Pour terminer de manière fiable un processus, B doit "
"être utilisé. On peut le faire en utilisant B(2) avec "
"B et I positionné à B ou en utilisant "
"B(2) pour positionner la limite ferme de B."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"This operation is available only if the kernel is configured with "
"B enabled."
msgstr ""
"Cette fonctionnalité n'est disponible que si le noyau a été construit avec "
"l'option B activée."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "The value of I must be 0, and I must be NULL."
msgstr "La valeur de I doit être de B<0> et I doit être NULL."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "This operation is functionally identical to the call:"
msgstr "Cette opération est fonctionnellement identique à l'appel :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "prctl(PR_SET_SECCOMP, SECCOMP_MODE_STRICT);\n"
msgstr "prctl(PR_SET_SECCOMP, SECCOMP_MODE_STRICT);\n"
#. 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 ""
"The system calls allowed are defined by a pointer to a Berkeley Packet "
"Filter (BPF) passed via I. This argument is a pointer to a I; it can be designed to filter arbitrary system calls and system "
"call arguments. If the filter is invalid, B() fails, returning "
"B in I."
msgstr ""
"Les appels système autorisés sont définis par un pointeur vers un filtre "
"Berkeley Packet (BPF) fourni à l'aide de I. Ce paramètre est un "
"pointeur vers une I ; il peut être conçu pour filtrer "
"des appels système de votre choix ainsi que des paramètres d'appel système. "
"Si le filtre n'est pas valable, B() échoue en renvoyant B "
"dans I."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"If B(2) or B(2) is allowed by the filter, any child processes "
"will be constrained to the same system call filters as the parent. If "
"B(2) is allowed, the existing filters will be preserved across a "
"call to B(2)."
msgstr ""
"Si B(2) ou B(2) est autorisé par le filtre, les processus "
"enfant seront contraints par les mêmes filtres d'appel système que leur "
"parent. Si B(2) est autorisé, les filtres existants seront préservés "
"lors d'un appel à B(2)."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"In order to use the B operation, either the calling "
"thread must have the B capability in its user namespace, or "
"the thread must already have the I bit set. If that bit was "
"not already set by an ancestor of this thread, the thread must make the "
"following call:"
msgstr ""
"Pour utiliser l'opération B, soit le thread "
"appelant doit avoir la capacité B dans son espace de noms "
"utilisateur, soit il doit avoir déjà le bit I défini. Si ce "
"bit n'a pas déjà été positionné par un ascendant du thread, le thread doit "
"effectuer l'appel suivant :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "prctl(PR_SET_NO_NEW_PRIVS, 1);\n"
msgstr "prctl(PR_SET_NO_NEW_PRIVS, 1);\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Otherwise, the B operation fails and returns "
"B in I. This requirement ensures that an unprivileged "
"process cannot apply a malicious filter and then invoke a set-user-ID or "
"other privileged program using B(2), thus potentially compromising "
"that program. (Such a malicious filter might, for example, cause an attempt "
"to use B(2) to set the caller's user IDs to nonzero values to "
"instead return 0 without actually making the system call. Thus, the program "
"might be tricked into retaining superuser privileges in circumstances where "
"it is possible to influence it to do dangerous things because it did not "
"actually drop privileges.)"
msgstr ""
"Sinon, l'opération B échoue et renvoie B "
"dans I. Cette exigence garantit qu'un processus non privilégié ne "
"peut pas appliquer un filtre malveillant et appeler un programme set-user-ID "
"ou avec d'autres privilèges en utilisant B(2), compromettant ainsi "
"le programme (un tel filtre malveillant pourrait, par exemple, conduire "
"B(2) à essayer de définir les identifiants utilisateur de l'appelant "
"à des valeurs non nulles pour renvoyer plutôt B<0> sans faire d'appel "
"système. Ainsi, le programme pourrait être bidouillé pour garder les "
"privilèges du super-utilisateur à des moments où il est possible de "
"l'influencer pour faire des choses dangereuses vu qu'il n'a pas abandonné "
"ses privilèges)."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"If B(2) or B() is allowed by the attached filter, further "
"filters may be added. This will increase evaluation time, but allows for "
"further reduction of the attack surface during execution of a thread."
msgstr ""
"Si B(2) ou B() est autorisé par le filtre rattaché, d'autres "
"filtres peuvent être ajoutés. Cela augmentera le temps d'évaluation mais "
"permet d'autres réductions de la surface d'attaque lors de l'exécution d'un "
"thread."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The B operation is available only if the kernel is "
"configured with B enabled."
msgstr ""
"L'opération B n'est disponible que si le noyau a "
"été configuré avec B."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When I is 0, this operation is functionally identical to the call:"
msgstr ""
"Quand I vaut B<0>, cette opération est fonctionnellement identique à "
"l'appel :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, args);\n"
msgstr "prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, args);\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "The recognized I are:"
msgstr "Les paramètres reconnus de I sont :"
#. 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 4.14)"
msgstr "B (depuis Linux 4.14)"
#. commit e66a39977985b1e69e17c4042cb290768eca9b02
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"All filter return actions except B should be logged. An "
"administrator may override this filter flag by preventing specific actions "
"from being logged via the I file."
msgstr ""
"Toutes les actions de renvoi des filtres, sauf B, doivent "
"être journalisées. Un administrateur peut outrepasser cet attribut de filtre "
"en empêchant des actions spécifiques d'être journalisées à l'aide du fichier "
"I."
#. 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 5.0)"
msgstr "B (depuis Linux 5.0)"
#. commit 6a21cc50f0c7f87dae5259f6cfefe024412313f6
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"After successfully installing the filter program, return a new user-space "
"notification file descriptor. (The close-on-exec flag is set for the file "
"descriptor.) When the filter returns B a "
"notification will be sent to this file descriptor."
msgstr ""
"Après une installation réussie du programme de filtrage, renvoyer un nouveau "
"descripteur de fichier de notification pour l'espace utilisateur. "
"(L'attribut close-on-exec est défini pour le descripteur de fichier.) Quand "
"le filtre renvoie B, une notification sera envoyée à "
"ce descripteur de fichier."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"At most one seccomp filter using the B "
"flag can be installed for a thread."
msgstr ""
"Pour un thread, au maximum un seul filtre de seccomp utilisant l'attribut "
"B peut être installé."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "See B(2) for further details."
msgstr "Consultez B(2) pour plus de détails."
#. 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 4.17)"
msgstr "B (depuis Linux 4.17)"
#. commit 00a02d0c502a06d15e07b857f8ff921e3e402675
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "Disable Speculative Store Bypass mitigation."
msgstr "Désactiver la mitigation Speculative Store Bypass."
#. 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 ""
"When adding a new filter, synchronize all other threads of the calling "
"process to the same seccomp filter tree. A \"filter tree\" is the ordered "
"list of filters attached to a thread. (Attaching identical filters in "
"separate B() calls results in different filters from this "
"perspective.)"
msgstr ""
"Lors de l'ajout d'un filtre, synchroniser tous les autres threads du "
"processus appelant avec la même arborescence de filtres seccomp. Une "
"« arborescence de filtres » est une liste ordonnée de filtres rattachée à un "
"thread (le rattachement de filtres identiques dans des appels B() "
"distincts génère différents filtres depuis cette perspective)."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"If any thread cannot synchronize to the same filter tree, the call will not "
"attach the new seccomp filter, and will fail, returning the first thread ID "
"found that cannot synchronize. Synchronization will fail if another thread "
"in the same process is in B or if it has attached new "
"seccomp filters to itself, diverging from the calling thread's filter tree."
msgstr ""
"Si aucun thread ne peut pas se synchroniser avec l'arborescence de filtres, "
"l'appel ne rattachera pas le nouveau filtre seccomp et échouera en renvoyant "
"le premier identifiant de thread qui n'a pas pu se synchroniser. La "
"synchronisation échouera si un autre thread du même processus est en "
"B ou si des nouveaux filtres seccomp lui sont rattachés "
"en propre, en décalage par rapport à l'arborescence de filtres du thread "
"appelant."
#. 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 4.14)"
msgstr "B (depuis Linux 4.14)"
#. commit d612b1fd8010d0d67b5287fe146b8b55bcbb8655
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Test to see if an action is supported by the kernel. This operation is "
"helpful to confirm that the kernel knows of a more recently added filter "
"return action since the kernel treats all unknown actions as "
"B."
msgstr ""
"Tester pour savoir si une action est prise en charge par le noyau. Cette "
"opération peut aider à confirmer que le noyau connaît l'action de renvoi "
"d'un filtre récemment ajouté puisque le noyau traite toutes les actions "
"inconnues comme des B."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The value of I must be 0, and I must be a pointer to an "
"unsigned 32-bit filter return action."
msgstr ""
"La valeur de I doit être de B<0> et I doit être un pointeur "
"vers une action de renvoi de filtre 32 bits non signé."
#. 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 5.0)"
msgstr "B (depuis Linux 5.O)"
#. commit 6a21cc50f0c7f87dae5259f6cfefe024412313f6
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Get the sizes of the seccomp user-space notification structures. Since "
"these structures may evolve and grow over time, this command can be used to "
"determine how much memory to allocate for sending and receiving "
"notifications."
msgstr ""
"Obtenir la taille des structures de notification de l'espace utilisateur de "
"seccomp. Comme ces structures peuvent évoluer et croître avec le temps, "
"cette commande peut être utilisée pour déterminer quelle quantité de mémoire "
"allouer pour envoyer et recevoir des notifications."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The value of I must be 0, and I must be a pointer to a I, which has the following form:"
msgstr ""
"La valeur de I doit être de B<0> et I doit être un pointeur "
"vers un I de la forme suivante :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"struct seccomp_notif_sizes\n"
" __u16 seccomp_notif; /* Size of notification structure */\n"
" __u16 seccomp_notif_resp; /* Size of response structure */\n"
" __u16 seccomp_data; /* Size of \\[aq]struct seccomp_data\\[aq] */\n"
"};\n"
msgstr ""
"struct seccomp_notif_sizes\n"
" __u16 seccomp_notif; /* Taille de la structure de notification */\n"
" __u16 seccomp_notif_resp; /* Taille de la structure de réponse */\n"
" __u16 seccomp_data; /* Taille de \\[aq]struct seccomp_data\\[aq] */\n"
"};\n"
#. type: SS
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid "Filters"
msgstr "Filtres"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When adding filters via B, I points to a "
"filter program:"
msgstr ""
"Lors de l'ajout d'un filtre à l'aide de B, I "
"pointe vers un programme de filtrage :"
#. 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_fprog {\n"
" unsigned short len; /* Number of BPF instructions */\n"
" struct sock_filter *filter; /* Pointer to array of\n"
" BPF instructions */\n"
"};\n"
msgstr ""
"struct sock_fprog {\n"
" unsigned short len; /* Nombre d'instructions BPF */\n"
" struct sock_filter *filter; /* Pointeur vers le tableau\n"
" d'instructions BPF */\n"
"};\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid "Each program must contain one or more BPF instructions:"
msgstr "Chaque programme doit contenir une ou plusieurs instructions BPF :"
#. 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_filter { /* Filter block */\n"
" __u16 code; /* Actual filter code */\n"
" __u8 jt; /* Jump true */\n"
" __u8 jf; /* Jump false */\n"
" __u32 k; /* Generic multiuse field */\n"
"};\n"
msgstr ""
"struct sock_filter { /* Filter block */\n"
" __u16 code; /* Code du filtre réel */\n"
" __u8 jt; /* Jump true (sauter le vrai) */\n"
" __u8 jf; /* Jump false (sauter le faux) */\n"
" __u32 k; /* Champ générique multiusages */\n"
"};\n"
#. Quoting Kees Cook:
#. If BPF even allows changing the data, it's not copied back to
#. the syscall when it runs. Anything wanting to do things like
#. that would need to use ptrace to catch the call and directly
#. modify the registers before continuing with the call.
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When executing the instructions, the BPF program operates on the system call "
"information made available (i.e., use the B addressing mode) as a "
"(read-only) buffer of the following form:"
msgstr ""
"Lors de l'exécution des instructions, le programme BPF agit sur les "
"informations de l'appel système qui sont rendues disponibles (c'est-à-dire "
"qu'il utilise le mode d'adressage B) en tant que tampon (en lecture "
"seule) ayant la forme suivante :"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
#, no-wrap
msgid ""
"struct seccomp_data {\n"
" int nr; /* System call number */\n"
" __u32 arch; /* AUDIT_ARCH_* value\n"
" (see Elinux/audit.hE) */\n"
" __u64 instruction_pointer; /* CPU instruction pointer */\n"
" __u64 args[6]; /* Up to 6 system call arguments */\n"
"};\n"
msgstr ""
"struct seccomp_data {\n"
" int nr; /* Numéro de l'appel système */\n"
" __u32 arch; /* Valeur AUDIT_ARCH_*\n"
" (voir Elinux/audit.hE) */\n"
" __u64 instruction_pointer; /* pointeur vers l'instruction du processeur */\n"
" __u64 args[6]; /* Jusqu'à 6 paramètres de l'appel système */\n"
"};\n"
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Because numbering of system calls varies between architectures and some "
"architectures (e.g., x86-64) allow user-space code to use the calling "
"conventions of multiple architectures (and the convention being used may "
"vary over the life of a process that uses B(2) to execute binaries "
"that employ the different conventions), it is usually necessary to verify "
"the value of the I field."
msgstr ""
"Comme la numérotation des appels système varie entre les architectures et "
"comme certaines (comme x86-64) autorisent du code de l'espace utilisateur à "
"utiliser les conventions de l'appelant d'autres architectures (et comme "
"cette convention peut varier pendant la vie d'un processus qui utilise "
"B(2) pour exécuter des binaires qui utilisent différentes "
"conventions), il est généralement nécessaire de vérifier la valeur du champ "
"I."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"It is strongly recommended to use an allow-list approach whenever possible "
"because such an approach is more robust and simple. A deny-list will have "
"to be updated whenever a potentially dangerous system call is added (or a "
"dangerous flag or option if those are deny-listed), and it is often possible "
"to alter the representation of a value without altering its meaning, leading "
"to a deny-list bypass. See also I below."
msgstr ""
"Il est fortement recommandé d'utiliser une approche par liste "
"d'autorisations autant que possible, parce qu'une telle approche est plus "
"robuste et plus simple. Une liste d'interdictions devra être mise à jour à "
"chaque fois qu'un appel système dangereux sera ajouté (ou un attribut ou une "
"option si elles font partie de la liste des interdictions) et il est souvent "
"possible de modifier la représentation d'une valeur sans changer sa "
"signification, conduisant à contourner la liste d'interdictions. Voir aussi "
"I ci-dessous."
#
#. As noted by Dave Drysdale in a note at the end of
#. https://lwn.net/Articles/604515/
#. One additional detail to point out for the x32 ABI case:
#. the syscall number gets a high bit set (__X32_SYSCALL_BIT),
#. to mark it as an x32 call.
#. If x32 support is included in the kernel, then __SYSCALL_MASK
#. will have a value that is not all-ones, and this will trigger
#. an extra instruction in system_call to mask off the extra bit,
#. so that the syscall table indexing still works.
#. 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 not unique for all calling conventions. The x86-64 ABI "
"and the x32 ABI both use B as I, and they run on "
"the same processors. Instead, the mask B<__X32_SYSCALL_BIT> is used on the "
"system call number to tell the two ABIs apart."
msgstr ""
"Le champ I n'est pas unique pour toutes les conventions d'appelant. "
"Les ABI x86-64 et x32 utilisent B en tant que I et "
"elles fonctionnent sur les mêmes processeurs. Au contraire, le masque "
"B<__X32_SYSCALL_BIT> est utilisé sur le numéro d'appel système pour parler "
"indépendamment aux deux ABI."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"This means that a policy must either deny all syscalls with "
"B<__X32_SYSCALL_BIT> or it must recognize syscalls with and without "
"B<__X32_SYSCALL_BIT> set. A list of system calls to be denied based on "
"I that does not also contain I values with B<__X32_SYSCALL_BIT> set "
"can be bypassed by a malicious program that sets B<__X32_SYSCALL_BIT>."
msgstr ""
"Cela veut dire qu'une politique peut soit interdire tous les appels système "
"avec B<__X32_SYSCALL_BIT>, soit elle doit les reconnaître avec le "
"positionnement ou pas de B<__X32_SYSCALL_BIT>. Une liste des appels système "
"à interdire qui s'appuie sur I et qui ne contient pas de valeurs I "
"où B<__X32_SYSCALL_BIT> est positionné peut être contournée par un programme "
"malveillant qui positionne B<__X32_SYSCALL_BIT>."
#. commit 6365b842aae4490ebfafadfc6bb27a6d3cc54757
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"Additionally, kernels prior to Linux 5.4 incorrectly permitted I in the "
"ranges 512-547 as well as the corresponding non-x32 syscalls ORed with "
"B<__X32_SYSCALL_BIT>. For example, I == 521 and I == (101 | "
"B<__X32_SYSCALL_BIT>) would result in invocations of B(2) with "
"potentially confused x32-vs-x86_64 semantics in the kernel. Policies "
"intended to work on kernels before Linux 5.4 must ensure that they deny or "
"otherwise correctly handle these system calls. On Linux 5.4 and newer, such "
"system calls will fail with the error B, without doing anything."
msgstr ""
"En outre, les noyaux précédant Linux 5.4 autorisaient à tort I dans les "
"intervalles 512–547 ainsi que les appels système non x32 correspondants "
"reliés (opération OU) avec B<__X32_SYSCALL_BIT>. Par exemple, I == 521 "
"et I == (101 | B<__X32_SYSCALL_BIT>) créeraient des appels B(2) "
"avec une sémantique potentiellement confondue entre x32 et x86_64 dans le "
"noyau. Les politiques prévues pour fonctionner sur des noyaux antérieurs à "
"Linux 5.4 doivent garantir qu'elles interdisent ou qu'elles gèrent "
"correctement ces appels système. Sur Linux 5.4 et plus récents, de tels "
"appels système échoueront avec une erreur B sans rien faire."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"The I field provides the address of the machine-"
"language instruction that performed the system call. This might be useful "
"in conjunction with the use of IpidI to perform checks based "
"on which region (mapping) of the program made the system call. (Probably, "
"it is wise to lock down the B(2) and B(2) system calls to "
"prevent the program from subverting such checks.)"
msgstr ""
"Le champ I fournit l'adresse de l'instruction en "
"langage machine qui a effectué l'appel système. Cela pourrait être utile "
"avec IpidI pour effectuer des vérifications à partir de la "
"région (projection) du programme qui a fait l'appel système (il est "
"probablement raisonnable de verrouiller les appels système B(2) et "
"B(2) pour empêcher le programme de contourner de telles "
"vérifications)."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"When checking values from I, keep in mind that arguments are often "
"silently truncated before being processed, but after the seccomp check. For "
"example, this happens if the i386 ABI is used on an x86-64 kernel: although "
"the kernel will normally not look beyond the 32 lowest bits of the "
"arguments, the values of the full 64-bit registers will be present in the "
"seccomp data. A less surprising example is that if the x86-64 ABI is used "
"to perform a system call that takes an argument of type I, the more-"
"significant half of the argument register is ignored by the system call, but "
"visible in the seccomp data."
msgstr ""
"Lors de la vérification des valeurs de I, gardez en tête que les "
"paramètres sont souvent tronqués silencieusement avant d'être traités mais "
"après la vérification seccomp. Cela arrive par exemple si l'ABI i386 est "
"utilisée sur un noyau x86-64 : bien que le noyau n'ira normalement pas "
"regarder au-delà des 32 bits les plus faibles des paramètres, les valeurs "
"des registres 64 bits complets seront présentes dans les données de seccomp. "
"Un exemple moins surprenant est que si l'ABI x86-64 est utilisée pour "
"effectuer un appel système prenant un paramètre de type I, la moitié du "
"registre du paramètre la plus significative est ignorée par l'appel système "
"mais visible dans les données de seccomp."
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"A seccomp filter returns a 32-bit value consisting of two parts: the most "
"significant 16 bits (corresponding to the mask defined by the constant "
"B) contain one of the \"action\" values listed "
"below; the least significant 16-bits (defined by the constant "
"B) are \"data\" to be associated with this return value."
msgstr ""
"Un filtre seccomp renvoie une valeur 32 bits en deux parties : la plus "
"significative, de 16 bits (correspondant au masque défini par la constante "
"B), contient une des valeurs « action » listée ci-"
"dessous ; la moins significative, de 16 bits (définie par la constante "
"B), contient des « data » à associer à ce code de retour."
#
#. From an Aug 2015 conversation with Kees Cook where I asked why *all*
#. filters are applied even if one of the early filters returns
#. SECCOMP_RET_KILL:
#. It's just because it would be an optimization that would only speed up
#. the RET_KILL case, but it's the uncommon one and the one that doesn't
#. benefit meaningfully from such a change (you need to kill the process
#. really quickly?). We would speed up killing a program at the (albeit
#. tiny) expense to all other filtered programs. Best to keep the filter
#. execution logic clear, simple, and as fast as possible for all
#. filters.
#. type: Plain text
#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
msgid ""
"If multiple filters exist, they are I executed, in reverse order of "
"their addition to the filter tree\\[em]that is, the most recently installed "
"filter is executed first. (Note that all filters will be called even if one "
"of the earlier filters returns B