summaryrefslogtreecommitdiffstats
path: root/po/fr/man3/dl_iterate_phdr.3.po
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /po/fr/man3/dl_iterate_phdr.3.po
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/fr/man3/dl_iterate_phdr.3.po')
-rw-r--r--po/fr/man3/dl_iterate_phdr.3.po1046
1 files changed, 1046 insertions, 0 deletions
diff --git a/po/fr/man3/dl_iterate_phdr.3.po b/po/fr/man3/dl_iterate_phdr.3.po
new file mode 100644
index 00000000..752afb61
--- /dev/null
+++ b/po/fr/man3/dl_iterate_phdr.3.po
@@ -0,0 +1,1046 @@
+# French translation of manpages
+# This file is distributed under the same license as the manpages-l10n package.
+# Copyright © of this file:
+# Christophe Blaess <https://www.blaess.fr/christophe/>, 1996-2003.
+# Stéphan Rafin <stephan.rafin@laposte.net>, 2002.
+# Thierry Vignaud <tvignaud@mandriva.com>, 1999, 2002.
+# François Micaux, 2002.
+# Alain Portal <aportal@univ-montp2.fr>, 2003-2008.
+# Jean-Philippe Guérard <fevrier@tigreraye.org>, 2005-2006.
+# Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, 2006-2007.
+# Julien Cristau <jcristau@debian.org>, 2006-2007.
+# Thomas Huriaux <thomas.huriaux@gmail.com>, 2006-2008.
+# Nicolas François <nicolas.francois@centraliens.net>, 2006-2008.
+# Florentin Duneau <fduneau@gmail.com>, 2006-2010.
+# Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, 2006, 2013.
+# Denis Barbier <barbier@debian.org>, 2006, 2010.
+# David Prévot <david@tilapin.org>, 2010, 2012, 2013.
+# Grégoire Scano <gregoire.scano@malloc.fr>, 2021.
+msgid ""
+msgstr ""
+"Project-Id-Version: manpages-l10n 4.21.0\n"
+"POT-Creation-Date: 2024-03-01 16:55+0100\n"
+"PO-Revision-Date: 2024-03-14 01:47+0100\n"
+"Last-Translator: Grégoire Scano <gregoire.scano@malloc.fr>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\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 "dl_iterate_phdr"
+msgstr "dl_iterate_phdr"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr "31 octobre 2023"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr "Pages du manuel de Linux 6.06"
+
+#. 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 "dl_iterate_phdr - walk through list of shared objects"
+msgstr "dl_iterate_phdr – Parcourir une liste d'objets partagés"
+
+#. 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<libc>, I<-lc>)"
+msgstr "Bibliothèque C standard (I<libc>, 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 E<lt>link.hE<gt>>\n"
+msgstr ""
+"B<#define _GNU_SOURCE> /* Consultez feature_test_macros(7) */\n"
+"B<#include E<lt>link.hE<gt>>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"B<int dl_iterate_phdr(>\n"
+"B< int (*>I<callback>B<)(struct dl_phdr_info *>I<info>B<,>\n"
+"B< size_t >I<size>B<, void *>I<data>B<),>\n"
+"B< void *>I<data>B<);>\n"
+msgstr ""
+"B<int dl_iterate_phdr(>\n"
+"B< int (*>I<callback>B<)(struct dl_phdr_info *>I<info>B<,>\n"
+"B< size_t >I<size>B<, void *>I<data>B<),>\n"
+"B< void *>I<data>B<);>\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<dl_iterate_phdr>() function allows an application to inquire at run "
+"time to find out which shared objects it has loaded, and the order in which "
+"they were loaded."
+msgstr ""
+"La fonction B<dl_iterate_phdr>() permet à une application de s'informer, "
+"lors de son exécution, des objets partagés qu'elle a chargés et de l'ordre "
+"dans lequel ils ont été chargés."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The B<dl_iterate_phdr>() function walks through the list of an "
+"application's shared objects and calls the function I<callback> once for "
+"each object, until either all shared objects have been processed or "
+"I<callback> returns a nonzero value."
+msgstr ""
+"La fonction B<dl_iterate_phdr>() parcourt la liste des objets partagés par "
+"une application et appelle la fonction I<callback> sur chaque objet jusqu'à "
+"ce que tous les objets partagés aient été traités ou que la fonction "
+"I<callback> ait renvoyé une valeur non nulle."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Each call to I<callback> receives three arguments: I<info>, which is a "
+"pointer to a structure containing information about the shared object; "
+"I<size>, which is the size of the structure pointed to by I<info>; and "
+"I<data>, which is a copy of whatever value was passed by the calling program "
+"as the second argument (also named I<data>) in the call to "
+"B<dl_iterate_phdr>()."
+msgstr ""
+"Chaque appel de I<callback> prend trois paramètres\\ : I<info> qui est un "
+"pointeur vers une structure contenant des informations sur les objets "
+"partagés\\ ; I<size> qui est la taille de la structure pointée par "
+"I<info>\\ ; et I<data> qui est une copie de toute valeur qui est passée par "
+"le programme appelant dans le second argument (également nommé I<data>) lors "
+"de l'appel de B<dl_iterate_phdr>()."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The I<info> argument is a structure of the following type:"
+msgstr "L'argument I<info> est une structure du type suivant\\ :"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"struct dl_phdr_info {\n"
+" ElfW(Addr) dlpi_addr; /* Base address of object */\n"
+" const char *dlpi_name; /* (Null-terminated) name of\n"
+" object */\n"
+" const ElfW(Phdr) *dlpi_phdr; /* Pointer to array of\n"
+" ELF program headers\n"
+" for this object */\n"
+" ElfW(Half) dlpi_phnum; /* # of items in I<dlpi_phdr> */\n"
+"\\&\n"
+" /* The following fields were added in glibc 2.4, after the first\n"
+" version of this structure was available. Check the I<size>\n"
+" argument passed to the dl_iterate_phdr callback to determine\n"
+" whether or not each later member is available. */\n"
+"\\&\n"
+" unsigned long long dlpi_adds;\n"
+" /* Incremented when a new object may\n"
+" have been added */\n"
+" unsigned long long dlpi_subs;\n"
+" /* Incremented when an object may\n"
+" have been removed */\n"
+" size_t dlpi_tls_modid;\n"
+" /* If there is a PT_TLS segment, its module\n"
+" ID as used in TLS relocations, else zero */\n"
+" void *dlpi_tls_data;\n"
+" /* The address of the calling thread\\[aq]s instance\n"
+" of this module\\[aq]s PT_TLS segment, if it has\n"
+" one and it has been allocated in the calling\n"
+" thread, otherwise a null pointer */\n"
+"};\n"
+msgstr ""
+"struct dl_phdr_info {\n"
+" ElfW(Addr) dlpi_addr; /* Adresse de base de l'objet */\n"
+" const char *dlpi_name; /* Nom de l'objet (terminé par\n"
+" l'octet NULL final */\n"
+" const ElfW(Phdr) *dlpi_phdr; /* Pointeur vers un tableau des\n"
+" en-têtes ELF du programme\n"
+" de cet objet */\n"
+" ElfW(Half) dlpi_phnum; /* Nombre d'éléments dans \n"
+" I<dlpi_phdr> */\n"
+"\\&\n"
+" /* Les champs suivants ont été ajoutés dans la version 2.4 de la glibc, après\n"
+" que la première version de cette structure a été disponible. Vérifier\n"
+" le paramètre I<size> passé à l'appel dl_iterate_phdr pour déterminer\n"
+" si le dernier membre est ou non disponible. */\n"
+"\\&\n"
+" unsigned long long dlpi_adds;\n"
+" /* Incrémenté lorsqu'un nouvel objet\n"
+" peut avoir été ajouté. */\n"
+" unsigned long long dlpi_subs;\n"
+" /* Incrémenté lorsqu'un objet peut\n"
+" avoir été supprimé. */\n"
+" size_t dlpi_tls_modid;\n"
+" /* S'il y a un segment PT_TLS, son ID de module comme\n"
+" utilisé par les relocalisations TLS, zéro sinon. */\n"
+" void *dlpi_tls_data;\n"
+" /* L'adresse dans l'instance du thread appelant\n"
+" de ce segment PT_TLS du module, s'il en a un\n"
+" et s'il a été alloué dans le thread appelant,\n"
+" un pointeur NULL sinon. */\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<ElfW>() macro definition turns its argument into the name of an ELF "
+"data type suitable for the hardware architecture. For example, on a 32-bit "
+"platform, I<ElfW(Addr)> yields the data type name I<Elf32_Addr>. Further "
+"information on these types can be found in the I<E<lt>elf.hE<gt>> and "
+"I<E<lt>link.hE<gt>> header files.)"
+msgstr ""
+"La macro I<ElfW>() convertit son argument en un nom de type de données ELF "
+"adapté à l'architecture matérielle. Par exemple, sur un système 32 bits, "
+"ElfW(Addr) produit le type de données nommé Elf32_Addr. Des informations "
+"supplémentaires sur ces types peuvent être trouvées dans les fichiers d'en-"
+"tête I<E<lt>elf.hE<gt>> et I<E<lt>link.hE<gt>>."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<dlpi_addr> field indicates the base address of the shared object (i."
+"e., the difference between the virtual memory address of the shared object "
+"and the offset of that object in the file from which it was loaded). The "
+"I<dlpi_name> field is a null-terminated string giving the pathname from "
+"which the shared object was loaded."
+msgstr ""
+"Le champ I<dlpi_addr> indique l'adresse de base de l'objet partagé (la "
+"différence entre l'adresse en mémoire virtuelle de l'objet partagé et le "
+"décalage avec cet objet dans le fichier depuis lequel il a été chargé). Le "
+"champ I<dlpi_name> est une chaîne de caractères terminée par un caractère "
+"nul indiquant le chemin à partir duquel l'objet partagé a été chargé."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"To understand the meaning of the I<dlpi_phdr> and I<dlpi_phnum> fields, we "
+"need to be aware that an ELF shared object consists of a number of segments, "
+"each of which has a corresponding program header describing the segment. "
+"The I<dlpi_phdr> field is a pointer to an array of the program headers for "
+"this shared object. The I<dlpi_phnum> field indicates the size of this "
+"array."
+msgstr ""
+"Pour comprendre le sens des champs I<dlpi_phdr> et I<dlpi_phnum>, il faut se "
+"rendre compte que les objets partagés ELF sont constitué d'un certain nombre "
+"de segments, chacun d'eux possédant un en-tête décrivant le segment. Le "
+"champ I<dlpi_phdr> est un pointeur vers un tableau des en-têtes du programme "
+"de cet objet partagé. Le champ I<dlpi_phnum> est la taille de ce tableau."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "These program headers are structures of the following form:"
+msgstr "Ces en-têtes de programme sont structurés sous la forme suivantes\\ :"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"typedef struct {\n"
+" Elf32_Word p_type; /* Segment type */\n"
+" Elf32_Off p_offset; /* Segment file offset */\n"
+" Elf32_Addr p_vaddr; /* Segment virtual address */\n"
+" Elf32_Addr p_paddr; /* Segment physical address */\n"
+" Elf32_Word p_filesz; /* Segment size in file */\n"
+" Elf32_Word p_memsz; /* Segment size in memory */\n"
+" Elf32_Word p_flags; /* Segment flags */\n"
+" Elf32_Word p_align; /* Segment alignment */\n"
+"} Elf32_Phdr;\n"
+msgstr ""
+"typedef struct\n"
+" {\n"
+" Elf32_Word p_type; /* Type de segment */\n"
+" Elf32_Off p_offset; /* Décalage du fichier de segment (?) */\n"
+" Elf32_Addr p_vaddr; /* Adresse virtuelle du segment */\n"
+" Elf32_Addr p_paddr; /* Adresse physique du segment */\n"
+" Elf32_Word p_filesz; /* Taille du segment dans le fichier */\n"
+" Elf32_Word p_memsz; /* Taille du segment en mémoire */\n"
+" Elf32_Word p_flags; /* Drapeau du segment */\n"
+" Elf32_Word p_align; /* Alignement du segment */\n"
+"} Elf32_Phdr;\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Note that we can calculate the location of a particular program header, "
+"I<x>, in virtual memory using the formula:"
+msgstr ""
+"Notez que la position en mémoire virtuelle d'un en-tête de programme, I<x>, "
+"est calculée avec la formule suivante\\ :"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "addr == info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[x].p_vaddr;\n"
+msgstr "addr == info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[x].p_vaddr;\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Possible values for I<p_type> include the following (see I<E<lt>elf.hE<gt>> "
+"for further details):"
+msgstr ""
+"Les valeurs possibles pour I<p_type> incluent les suivantes (voir I<E<lt>elf."
+"hE<gt>> pour plus de détails) :"
+
+#. For PT_GNU_STACK, see http://www.airs.com/blog/archives/518
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"#define PT_LOAD 1 /* Loadable program segment */\n"
+"#define PT_DYNAMIC 2 /* Dynamic linking information */\n"
+"#define PT_INTERP 3 /* Program interpreter */\n"
+"#define PT_NOTE 4 /* Auxiliary information */\n"
+"#define PT_SHLIB 5 /* Reserved */\n"
+"#define PT_PHDR 6 /* Entry for header table itself */\n"
+"#define PT_TLS 7 /* Thread-local storage segment */\n"
+"#define PT_GNU_EH_FRAME 0x6474e550 /* GCC .eh_frame_hdr segment */\n"
+"#define PT_GNU_STACK 0x6474e551 /* Indicates stack executability */\n"
+"#define PT_GNU_RELRO 0x6474e552 /* Read-only after relocation */\n"
+msgstr ""
+"#define PT_LOAD 1 /* Segment de programme chargeable */\n"
+"#define PT_DYNAMIC 2 /* Information d'édition de liens dynamiques */\n"
+"#define PT_INTERP 3 /* Interpréteur de programme */\n"
+"#define PT_NOTE 4 /* Information auxiliaire */\n"
+"#define PT_SHLIB 5 /* Réservé */\n"
+"#define PT_PHDR 6 /* Entrée pour la table d'en-tête elle même */\n"
+"#define PT_TLS 7 /* Segment de stockage local au thread */\n"
+"#define PT_GNU_EH_FRAME 0x6474e550 /* Segment GCC .eh_frame_hdr */\n"
+"#define PT_GNU_STACK 0x6474e551 /* Indique l'exécutabilité de la pile */\n"
+"#define PT_GNU_RELRO 0x6474e552 /* Lecture seule après relocalisation */\n"
+
+#. 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 ""
+"The B<dl_iterate_phdr>() function returns whatever value was returned by "
+"the last call to I<callback>."
+msgstr ""
+"La fonction B<dl_iterate_phdr>() renvoie n'importe quelle valeur renvoyée "
+"par le dernier appel à I<callback>."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "ATTRIBUTS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For an explanation of the terms used in this section, see B<attributes>(7)."
+msgstr ""
+"Pour une explication des termes utilisés dans cette section, consulter "
+"B<attributes>(7)."
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Interface"
+msgstr "Interface"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Attribute"
+msgstr "Attribut"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Value"
+msgstr "Valeur"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".na\n"
+msgstr ".na\n"
+
+#. type: tbl table
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ".nh\n"
+msgstr ".nh\n"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<dl_iterate_phdr>()"
+msgstr "B<dl_iterate_phdr>()"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Thread safety"
+msgstr "Sécurité des threads"
+
+#. type: tbl table
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "MT-Safe"
+msgstr "MT-Safe"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "VERSIONS"
+msgstr "VERSIONS"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Various other systems provide a version of this function, although details "
+"of the returned I<dl_phdr_info> structure differ. On the BSDs and Solaris, "
+"the structure includes the fields I<dlpi_addr>, I<dlpi_name>, I<dlpi_phdr>, "
+"and I<dlpi_phnum> in addition to other implementation-specific fields."
+msgstr ""
+"De nombreux autres systèmes fournissent une version de cette fonction bien "
+"que les détails de la structure I<dl_phdr_info> soient différents. Sur les "
+"BSD et Solaris, la structure inclut les champs I<dlpi_addr>, I<dlpi_name>, "
+"I<dlpi_phdr> et I<dlpi_phnum> en plus d'autres champs spécifiques à chaque "
+"implémentation."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Future versions of the C library may add further fields to the "
+"I<dl_phdr_info> structure; in that event, the I<size> argument provides a "
+"mechanism for the callback function to discover whether it is running on a "
+"system with added fields."
+msgstr ""
+"Les futures versions de la bibliothèque C peuvent ajouter d'autres champs à "
+"la structure I<dl_phdr_info> ; dans ce cas, l'argument I<size> fournit un "
+"mécanisme pour que la fonction appelée sache si elle est exécutée sur un "
+"système possédant des champs supplémentaires."
+
+#. 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 "None."
+msgstr "Aucune."
+
+#. 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 "glibc 2.2.4."
+msgstr "glibc 2.2.4."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr "NOTES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The first object visited by I<callback> is the main program. For the main "
+"program, the I<dlpi_name> field will be an empty string."
+msgstr ""
+"Le premier objet visité par I<callback> est le programme principal. Pour ce "
+"programme, le champ I<dlpi_name> est une chaîne de caractères vide."
+
+#. 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 displays a list of pathnames of the shared objects it "
+"has loaded. For each shared object, the program lists some information "
+"(virtual address, size, flags, and type) for each of the objects ELF "
+"segments."
+msgstr ""
+"Le programme suivant affiche la liste des chemins des objets partagés qu'il "
+"a chargé. Pour chaque objet partagé, le programme liste plusieurs "
+"informations (adresse virtuelle, taille, drapeaux et type) pour chacun des "
+"segments des objets ELF."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The following shell session demonstrates the output produced by the program "
+"on an x86-64 system. The first shared object for which output is displayed "
+"(where the name is an empty string) is the main program."
+msgstr ""
+"La session shell suivante montre la sortie produite sur un système x86-64. "
+"Le premier objet partagé pour lequel une sortie est affichée (où le nom est "
+"une chaîne de caractères vide) est le programme principal."
+
+#. 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"
+"Name: \"\" (9 segments)\n"
+" 0: [ 0x400040; memsz: 1f8] flags: 0x5; PT_PHDR\n"
+" 1: [ 0x400238; memsz: 1c] flags: 0x4; PT_INTERP\n"
+" 2: [ 0x400000; memsz: ac4] flags: 0x5; PT_LOAD\n"
+" 3: [ 0x600e10; memsz: 240] flags: 0x6; PT_LOAD\n"
+" 4: [ 0x600e28; memsz: 1d0] flags: 0x6; PT_DYNAMIC\n"
+" 5: [ 0x400254; memsz: 44] flags: 0x4; PT_NOTE\n"
+" 6: [ 0x400970; memsz: 3c] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 7: [ (nil); memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 8: [ 0x600e10; memsz: 1f0] flags: 0x4; PT_GNU_RELRO\n"
+"Name: \"linux-vdso.so.1\" (4 segments)\n"
+" 0: [0x7ffc6edd1000; memsz: e89] flags: 0x5; PT_LOAD\n"
+" 1: [0x7ffc6edd1360; memsz: 110] flags: 0x4; PT_DYNAMIC\n"
+" 2: [0x7ffc6edd17b0; memsz: 3c] flags: 0x4; PT_NOTE\n"
+" 3: [0x7ffc6edd17ec; memsz: 3c] flags: 0x4; PT_GNU_EH_FRAME\n"
+"Name: \"/lib64/libc.so.6\" (10 segments)\n"
+" 0: [0x7f55712ce040; memsz: 230] flags: 0x5; PT_PHDR\n"
+" 1: [0x7f557145b980; memsz: 1c] flags: 0x4; PT_INTERP\n"
+" 2: [0x7f55712ce000; memsz: 1b6a5c] flags: 0x5; PT_LOAD\n"
+" 3: [0x7f55716857a0; memsz: 9240] flags: 0x6; PT_LOAD\n"
+" 4: [0x7f5571688b80; memsz: 1f0] flags: 0x6; PT_DYNAMIC\n"
+" 5: [0x7f55712ce270; memsz: 44] flags: 0x4; PT_NOTE\n"
+" 6: [0x7f55716857a0; memsz: 78] flags: 0x4; PT_TLS\n"
+" 7: [0x7f557145b99c; memsz: 544c] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 8: [0x7f55712ce000; memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 9: [0x7f55716857a0; memsz: 3860] flags: 0x4; PT_GNU_RELRO\n"
+"Name: \"/lib64/ld-linux-x86-64.so.2\" (7 segments)\n"
+" 0: [0x7f557168f000; memsz: 20828] flags: 0x5; PT_LOAD\n"
+" 1: [0x7f55718afba0; memsz: 15a8] flags: 0x6; PT_LOAD\n"
+" 2: [0x7f55718afe10; memsz: 190] flags: 0x6; PT_DYNAMIC\n"
+" 3: [0x7f557168f1c8; memsz: 24] flags: 0x4; PT_NOTE\n"
+" 4: [0x7f55716acec4; memsz: 604] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 5: [0x7f557168f000; memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 6: [0x7f55718afba0; memsz: 460] flags: 0x4; PT_GNU_RELRO\n"
+msgstr ""
+"$ B<./a.out>\n"
+"Name: \"\" (9 segments)\n"
+" 0: [ 0x400040; memsz: 1f8] flags: 0x5; PT_PHDR\n"
+" 1: [ 0x400238; memsz: 1c] flags: 0x4; PT_INTERP\n"
+" 2: [ 0x400000; memsz: ac4] flags: 0x5; PT_LOAD\n"
+" 3: [ 0x600e10; memsz: 240] flags: 0x6; PT_LOAD\n"
+" 4: [ 0x600e28; memsz: 1d0] flags: 0x6; PT_DYNAMIC\n"
+" 5: [ 0x400254; memsz: 44] flags: 0x4; PT_NOTE\n"
+" 6: [ 0x400970; memsz: 3c] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 7: [ (nil); memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 8: [ 0x600e10; memsz: 1f0] flags: 0x4; PT_GNU_RELRO\n"
+"Name: \"linux-vdso.so.1\" (4 segments)\n"
+" 0: [0x7ffc6edd1000; memsz: e89] flags: 0x5; PT_LOAD\n"
+" 1: [0x7ffc6edd1360; memsz: 110] flags: 0x4; PT_DYNAMIC\n"
+" 2: [0x7ffc6edd17b0; memsz: 3c] flags: 0x4; PT_NOTE\n"
+" 3: [0x7ffc6edd17ec; memsz: 3c] flags: 0x4; PT_GNU_EH_FRAME\n"
+"Name: \"/lib64/libc.so.6\" (10 segments)\n"
+" 0: [0x7f55712ce040; memsz: 230] flags: 0x5; PT_PHDR\n"
+" 1: [0x7f557145b980; memsz: 1c] flags: 0x4; PT_INTERP\n"
+" 2: [0x7f55712ce000; memsz: 1b6a5c] flags: 0x5; PT_LOAD\n"
+" 3: [0x7f55716857a0; memsz: 9240] flags: 0x6; PT_LOAD\n"
+" 4: [0x7f5571688b80; memsz: 1f0] flags: 0x6; PT_DYNAMIC\n"
+" 5: [0x7f55712ce270; memsz: 44] flags: 0x4; PT_NOTE\n"
+" 6: [0x7f55716857a0; memsz: 78] flags: 0x4; PT_TLS\n"
+" 7: [0x7f557145b99c; memsz: 544c] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 8: [0x7f55712ce000; memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 9: [0x7f55716857a0; memsz: 3860] flags: 0x4; PT_GNU_RELRO\n"
+"Name: \"/lib64/ld-linux-x86-64.so.2\" (7 segments)\n"
+" 0: [0x7f557168f000; memsz: 20828] flags: 0x5; PT_LOAD\n"
+" 1: [0x7f55718afba0; memsz: 15a8] flags: 0x6; PT_LOAD\n"
+" 2: [0x7f55718afe10; memsz: 190] flags: 0x6; PT_DYNAMIC\n"
+" 3: [0x7f557168f1c8; memsz: 24] flags: 0x4; PT_NOTE\n"
+" 4: [0x7f55716acec4; memsz: 604] flags: 0x4; PT_GNU_EH_FRAME\n"
+" 5: [0x7f557168f000; memsz: 0] flags: 0x6; PT_GNU_STACK\n"
+" 6: [0x7f55718afba0; memsz: 460] flags: 0x4; PT_GNU_RELRO\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 E<lt>link.hE<gt>\n"
+"#include E<lt>stdint.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"\\&\n"
+"static int\n"
+"callback(struct dl_phdr_info *info, size_t size, void *data)\n"
+"{\n"
+" char *type;\n"
+" int p_type;\n"
+"\\&\n"
+" printf(\"Name: \\e\"%s\\e\" (%d segments)\\en\", info-E<gt>dlpi_name,\n"
+" info-E<gt>dlpi_phnum);\n"
+"\\&\n"
+" for (size_t j = 0; j E<lt> info-E<gt>dlpi_phnum; j++) {\n"
+" p_type = info-E<gt>dlpi_phdr[j].p_type;\n"
+" type = (p_type == PT_LOAD) ? \"PT_LOAD\" :\n"
+" (p_type == PT_DYNAMIC) ? \"PT_DYNAMIC\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_NOTE) ? \"PT_NOTE\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_PHDR) ? \"PT_PHDR\" :\n"
+" (p_type == PT_TLS) ? \"PT_TLS\" :\n"
+" (p_type == PT_GNU_EH_FRAME) ? \"PT_GNU_EH_FRAME\" :\n"
+" (p_type == PT_GNU_STACK) ? \"PT_GNU_STACK\" :\n"
+" (p_type == PT_GNU_RELRO) ? \"PT_GNU_RELRO\" : NULL;\n"
+"\\&\n"
+" printf(\" %2zu: [%14p; memsz:%7jx] flags: %#jx; \", j,\n"
+" (void *) (info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[j].p_vaddr),\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_memsz,\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_flags);\n"
+" if (type != NULL)\n"
+" printf(\"%s\\en\", type);\n"
+" else\n"
+" printf(\"[other (%#x)]\\en\", p_type);\n"
+" }\n"
+"\\&\n"
+" return 0;\n"
+"}\n"
+"\\&\n"
+"int\n"
+"main(void)\n"
+"{\n"
+" dl_iterate_phdr(callback, NULL);\n"
+"\\&\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>link.hE<gt>\n"
+"#include E<lt>stdint.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"\\&\n"
+"static int\n"
+"callback(struct dl_phdr_info *info, size_t size, void *data)\n"
+"{\n"
+" char *type;\n"
+" int p_type;\n"
+"\\&\n"
+" printf(\"Nom : \\e\"%s\\e\" (%d segments)\\en\", info-E<gt>dlpi_name,\n"
+" info-E<gt>dlpi_phnum);\n"
+"\\&\n"
+" for (size_t j = 0; j E<lt> info-E<gt>dlpi_phnum; j++) {\n"
+" p_type = info-E<gt>dlpi_phdr[j].p_type;\n"
+" type = (p_type == PT_LOAD) ? \"PT_LOAD\" :\n"
+" (p_type == PT_DYNAMIC) ? \"PT_DYNAMIC\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_NOTE) ? \"PT_NOTE\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_PHDR) ? \"PT_PHDR\" :\n"
+" (p_type == PT_TLS) ? \"PT_TLS\" :\n"
+" (p_type == PT_GNU_EH_FRAME) ? \"PT_GNU_EH_FRAME\" :\n"
+" (p_type == PT_GNU_STACK) ? \"PT_GNU_STACK\" :\n"
+" (p_type == PT_GNU_RELRO) ? \"PT_GNU_RELRO\" : NULL;\n"
+"\\&\n"
+" printf(\" %2zu: [%14p; memsz:%7jx] flags: %#jx; \", j,\n"
+" (void *) (info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[j].p_vaddr),\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_memsz,\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_flags);\n"
+" if (type != NULL)\n"
+" printf(\"%s\\en\", type);\n"
+" else\n"
+" printf(\"[other (%#x)]\\en\", p_type);\n"
+" }\n"
+"\\&\n"
+" return 0;\n"
+"}\n"
+"\\&\n"
+"int\n"
+"main(void)\n"
+"{\n"
+" dl_iterate_phdr(callback, NULL);\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<ldd>(1), B<objdump>(1), B<readelf>(1), B<dladdr>(3), B<dlopen>(3), "
+"B<elf>(5), B<ld.so>(8)"
+msgstr ""
+"B<ldd>(1), B<objdump>(1), B<readelf>(1), B<dladdr>(3), B<dlopen>(3), "
+"B<elf>(5), B<ld.so>(8)"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"I<Executable and Linking Format Specification>, available at various "
+"locations online."
+msgstr ""
+"« I<Executable and Linking Format Specification> » disponible en ligne à "
+"divers endroits."
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr "5 février 2023"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr "Pages du manuel de Linux 6.03"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"struct dl_phdr_info {\n"
+" ElfW(Addr) dlpi_addr; /* Base address of object */\n"
+" const char *dlpi_name; /* (Null-terminated) name of\n"
+" object */\n"
+" const ElfW(Phdr) *dlpi_phdr; /* Pointer to array of\n"
+" ELF program headers\n"
+" for this object */\n"
+" ElfW(Half) dlpi_phnum; /* # of items in I<dlpi_phdr> */\n"
+msgstr ""
+"struct dl_phdr_info {\n"
+" ElfW(Addr) dlpi_addr; /* Adresse de base de l'objet */\n"
+" const char *dlpi_name; /* Nom de l'objet (terminé par\n"
+" l'octet NULL final */\n"
+" const ElfW(Phdr) *dlpi_phdr; /* Pointeur vers un tableau des\n"
+" en-têtes ELF du programme\n"
+" de cet objet */\n"
+" ElfW(Half) dlpi_phnum; /* Nombre d'éléments dans \n"
+" I<dlpi_phdr> */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* The following fields were added in glibc 2.4, after the first\n"
+" version of this structure was available. Check the I<size>\n"
+" argument passed to the dl_iterate_phdr callback to determine\n"
+" whether or not each later member is available. */\n"
+msgstr ""
+" /* Les champs suivants ont été ajoutés dans la version 2.4 de la glibc, après\n"
+" que la première version de cette structure a été disponible. Vérifier\n"
+" le paramètre I<size> passé à l'appel dl_iterate_phdr pour déterminer\n"
+" si le dernier membre est ou non disponible. */\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" unsigned long long dlpi_adds;\n"
+" /* Incremented when a new object may\n"
+" have been added */\n"
+" unsigned long long dlpi_subs;\n"
+" /* Incremented when an object may\n"
+" have been removed */\n"
+" size_t dlpi_tls_modid;\n"
+" /* If there is a PT_TLS segment, its module\n"
+" ID as used in TLS relocations, else zero */\n"
+" void *dlpi_tls_data;\n"
+" /* The address of the calling thread\\[aq]s instance\n"
+" of this module\\[aq]s PT_TLS segment, if it has\n"
+" one and it has been allocated in the calling\n"
+" thread, otherwise a null pointer */\n"
+"};\n"
+msgstr ""
+" unsigned long long dlpi_adds;\n"
+" /* Incrémenté lorsqu'un nouvel objet\n"
+" peut avoir été ajouté. */\n"
+" unsigned long long dlpi_subs;\n"
+" /* Incrémenté lorsqu'un objet peut\n"
+" avoir été supprimé. */\n"
+" size_t dlpi_tls_modid;\n"
+" /* S'il y a un segment PT_TLS, son ID de module comme\n"
+" utilisé par les relocalisations TLS, zéro sinon. */\n"
+" void *dlpi_tls_data;\n"
+" /* L'adresse dans l'instance du thread appelant\n"
+" de ce segment PT_TLS du module, s'il en a un\n"
+" et s'il a été alloué dans le thread appelant,\n"
+" un pointeur NULL sinon. */\n"
+"};\n"
+
+#. type: Plain text
+#: debian-bookworm
+msgid "B<dl_iterate_phdr>() has been supported since glibc 2.2.4."
+msgstr "B<dl_iterate_phdr>() est géré depuis la glibc 2.2.4."
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"The B<dl_iterate_phdr>() function is not specified in any standard. "
+"Various other systems provide a version of this function, although details "
+"of the returned I<dl_phdr_info> structure differ. On the BSDs and Solaris, "
+"the structure includes the fields I<dlpi_addr>, I<dlpi_name>, I<dlpi_phdr>, "
+"and I<dlpi_phnum> in addition to other implementation-specific fields."
+msgstr ""
+"La fonction B<dl_iterate_phdr>() n'est spécifiée par aucune norme. De "
+"nombreux autres systèmes fournissent une version de cette fonction bien que "
+"les détails de la structure I<dl_phdr_info> soient différents. Sur les BSD "
+"et Solaris, la structure inclut les champs I<dlpi_addr>, I<dlpi_name>, "
+"I<dlpi_phdr> et I<dlpi_phnum> en plus d'autres champs spécifiques à chaque "
+"implémentation."
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>link.hE<gt>\n"
+"#include E<lt>stdint.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+msgstr ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>link.hE<gt>\n"
+"#include E<lt>stdint.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"static int\n"
+"callback(struct dl_phdr_info *info, size_t size, void *data)\n"
+"{\n"
+" char *type;\n"
+" int p_type;\n"
+msgstr ""
+"static int\n"
+"callback(struct dl_phdr_info *info, size_t size, void *data)\n"
+"{\n"
+" char *type;\n"
+" int p_type;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" printf(\"Name: \\e\"%s\\e\" (%d segments)\\en\", info-E<gt>dlpi_name,\n"
+" info-E<gt>dlpi_phnum);\n"
+msgstr ""
+" printf(\"Nom : \\e\"%s\\e\" (%d segments)\\en\", info-E<gt>dlpi_name,\n"
+" info-E<gt>dlpi_phnum);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" for (size_t j = 0; j E<lt> info-E<gt>dlpi_phnum; j++) {\n"
+" p_type = info-E<gt>dlpi_phdr[j].p_type;\n"
+" type = (p_type == PT_LOAD) ? \"PT_LOAD\" :\n"
+" (p_type == PT_DYNAMIC) ? \"PT_DYNAMIC\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_NOTE) ? \"PT_NOTE\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_PHDR) ? \"PT_PHDR\" :\n"
+" (p_type == PT_TLS) ? \"PT_TLS\" :\n"
+" (p_type == PT_GNU_EH_FRAME) ? \"PT_GNU_EH_FRAME\" :\n"
+" (p_type == PT_GNU_STACK) ? \"PT_GNU_STACK\" :\n"
+" (p_type == PT_GNU_RELRO) ? \"PT_GNU_RELRO\" : NULL;\n"
+msgstr ""
+" for (size_t j = 0; j E<lt> info-E<gt>dlpi_phnum; j++) {\n"
+" p_type = info-E<gt>dlpi_phdr[j].p_type;\n"
+" type = (p_type == PT_LOAD) ? \"PT_LOAD\" :\n"
+" (p_type == PT_DYNAMIC) ? \"PT_DYNAMIC\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_NOTE) ? \"PT_NOTE\" :\n"
+" (p_type == PT_INTERP) ? \"PT_INTERP\" :\n"
+" (p_type == PT_PHDR) ? \"PT_PHDR\" :\n"
+" (p_type == PT_TLS) ? \"PT_TLS\" :\n"
+" (p_type == PT_GNU_EH_FRAME) ? \"PT_GNU_EH_FRAME\" :\n"
+" (p_type == PT_GNU_STACK) ? \"PT_GNU_STACK\" :\n"
+" (p_type == PT_GNU_RELRO) ? \"PT_GNU_RELRO\" : NULL;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" printf(\" %2zu: [%14p; memsz:%7jx] flags: %#jx; \", j,\n"
+" (void *) (info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[j].p_vaddr),\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_memsz,\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_flags);\n"
+" if (type != NULL)\n"
+" printf(\"%s\\en\", type);\n"
+" else\n"
+" printf(\"[other (%#x)]\\en\", p_type);\n"
+" }\n"
+msgstr ""
+" printf(\" %2zu : [%14p ; taille mémoire :%7jx] drapeaux : %#jx; \", j,\n"
+" (void *) (info-E<gt>dlpi_addr + info-E<gt>dlpi_phdr[j].p_vaddr),\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_memsz,\n"
+" (uintmax_t) info-E<gt>dlpi_phdr[j].p_flags);\n"
+" if (type != NULL)\n"
+" printf(\"%s\\en\", type);\n"
+" else\n"
+" printf(\"[autre (%#x)]\\en\", p_type);\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" return 0;\n"
+"}\n"
+msgstr ""
+" return 0;\n"
+"}\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"int\n"
+"main(void)\n"
+"{\n"
+" dl_iterate_phdr(callback, NULL);\n"
+msgstr ""
+"int\n"
+"main(void)\n"
+"{\n"
+" dl_iterate_phdr(callback, NULL);\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-20"
+msgstr "20 juillet 2023"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr "Pages du manuel de Linux 6.05.01"
+
+#. 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"