NOM
feature_test_macros - Macros de test de fonctionnalités
DESCRIPTION
Les macros de test de fonctionnalités permettent au programmeur de contrôler quelles définitions sont exposées par les fichiers d’en-têtes système lorsqu’un programme est compilé.
NOTE: In order to be effective, a feature test macro must be defined before including any header files. This can be done either in the compilation command (cc -DMACRO=value) or by defining the macro within the source code before including any headers. The requirement that the macro must be defined before including any header file exists because header files may freely include one another. Thus, for example, in the following lines, defining the _GNU_SOURCE macro may have no effect because the header <abc.h> itself includes <xyz.h> (POSIX explicitly allows this):
#include <abc.h> #define _GNU_SOURCE #include <xys.h>
Some feature test macros are useful for creating portable applications, by preventing nonstandard definitions from being exposed. Other macros can be used to expose nonstandard definitions that are not exposed by default.
The precise effects of each of the feature test macros described below can be ascertained by inspecting the <features.h> header file. Note: applications do not need to directly include <features.h>; indeed, doing so is actively discouraged. See NOTES.
Spécification
des exigences de macro de test de fonctionnalité dans
les pages de manuel
Quand une fonction nécessite qu’une macro de
test de fonctionnalité soit définie, la
section SYNOPSIS de la page de manuel comprend
généralement une note de la forme suivante
(exemple pris dans la page de manuel
acct(2)) :
#include <unistd.h>
int acct(const char *filename);
Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :
acct() : _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE < 500)
Les doubles barres || signifient que pour obtenir la déclaration de acct(2) depuis <unistd.h>, une des définitions de macros doit être utilisée avant d’inclure les fichiers d’en-tête :
#define _BSD_SOURCE #define _XOPEN_SOURCE /* ou toute valeur < 500 */
Autrement, les définitions équivalentes peuvent être faites lors de l’appel au compilateur :
cc -D_BSD_SOURCE cc -D_XOPEN_SOURCE # Ou toute valeur < 500
Veuillez noter que, comme décrit ci-dessous, certaines macros de test de fonctionnalité sont définies par défaut, et il n’est donc pas toujours nécessaire de spécifier explicitement les macros indiquées dans le SYNOPSIS.
Dans certains cas, les pages de manuel utilisent des raccourcis pour exprimer la nécessité de certaines macros de test (exemple tiré de readahead(2)) :
#define
_GNU_SOURCE
#include <fcntl.h>
ssize_t readahead(int fd, off64_t *offset, size_t count);
Ce format est utilisé dans les cas où seule une macro de test de fonctionnalité peut être utilisée pour exposer la déclaration de la fonction et quand cette macro n’est pas définie par défaut.
Macros de
test de fonctionnalités comprises par la glibc
The paragraphs below explain how feature test macros are
handled in Linux glibc 2.x, x > 0.
First, though a summary of a few details for the impatient:
* |
The macros that you most likely need to use in modern source code are _POSIX_C_SOURCE (for definitions from various versions of POSIX.1), _XOPEN_SOURCE (for definitions from various versions of SUS), _GNU_SOURCE (for GNU and/or Linux specific stuff), and _DEFAULT_SOURCE (to get definitions that would normally be provided by default). | ||
* |
Certain macros are defined with default values. Thus, although one or more macros may be indicated as being required in the SYNOPSIS of a man page, it may not be necessary to define them explicitly. Full details of the defaults are given later in this man page. | ||
* |
Defining _XOPEN_SOURCE with a value of 600 or greater produces the same effects as defining _POSIX_C_SOURCE with a value of 200112L or greater. Where one sees |
_POSIX_C_SOURCE >= 200112L
in the feature test macro requirements in the SYNOPSIS of a man page, it is implicit that the following has the same effect:
_XOPEN_SOURCE >= 600
* |
Defining _XOPEN_SOURCE with a value of 700 or greater produces the same effects as defining _POSIX_C_SOURCE with a value of 200809L or greater. Where one sees |
_POSIX_C_SOURCE >= 200809L
in the feature test macro requirements in the SYNOPSIS of a man page, it is implicit that the following has the same effect:
_XOPEN_SOURCE >= 700
La glibc de
Linux comprend les macros de test de fonctionnalité
suivantes :
__STRICT_ANSI__
La norme C ISO. Cette macro est définie implicitement par gcc(1) lors des appels avec, par exemple, l’option -std=c99 ou -ansi.
_POSIX_C_SOURCE
Si cette macro est définie, les en-têtes exposent les définitions suivantes :
• |
La valeur 1 expose les définitions conformes avec POSIX.1-1990 et le C ISO (1990). | ||
• |
Les valeurs supérieures ou égales à 2 exposent en plus les définitions de POSIX.2-1992. | ||
• |
Les valeurs supérieures ou égales à 199309L exposent en plus les définitions de POSIX.1b (extensions temps-réel). | ||
• |
Les valeurs supérieures ou égales à 199506L exposent en plus les définitions de POSIX.1c (threads). | ||
• |
(Since glibc 2.3.3) The value 200112L or greater additionally exposes definitions corresponding to the POSIX.1-2001 base specification (excluding the XSI extension). This value also causes C95 (since glibc 2.12) and C99 (since glibc 2.10) features to be exposed (in other words, the equivalent of defining _ISOC99_SOURCE). | ||
• |
(Depuis la glibc 2.10) Les valeurs supérieures ou égales à 200809L exposent de plus les définitions correspondantes à la spécification de base POSIX.1-2008 (sans l’extension XSI). |
_POSIX_SOURCE
Définir cette macro obsolète (quelle que soit sa valeur) est équivalent à définir _POSIX_C_SOURCE à la valeur 1.
Since this macro is obsolete, its usage is generally not documented when discussing feature test macro requirements in the man pages.
_XOPEN_SOURCE
Si cette macro est définie, les en-têtes exposent les définitions suivantes :
• |
Si elle est définie, quelle que soit sa valeur, les définitions de POSIX.1, POSIX.2 et XPG4 sont fournies. | ||
• |
Les valeurs supérieures ou égales à 500 fournissent les définitions de SUSv2 (UNIX 98). | ||
• |
(Depuis la glibc 2.2) Les valeurs supérieures ou égales à 600 les définitions de SUSv3 (UNIX 03, c’est-à-dire la spécification de base POSIX.1-2001 plus l’extension XSI) et de C99 sont exposées en plus des précédentes. | ||
• |
(Depuis la glibc 2.10) Les valeurs supérieures ou égales à 700 exposents les définitions de SUSv4 (c’est-à-dire la spécification de base POSIX.1-2008 plus l’extension XSI). |
If __STRICT_ANSI__ is not defined, or _XOPEN_SOURCE is defined with a value greater than or equal to 500 and neither _POSIX_SOURCE nor _POSIX_C_SOURCE is explicitly defined, then the following macros are implicitly defined:
• |
_POSIX_SOURCE est définie à la valeur 1. |
|||
• |
_POSIX_SOURCE est définie d’après la valeur de _XOPEN_SOURCE : |
_XOPEN_SOURCE < 500
_POSIX_C_SOURCE est définie à la valeur 2.
500 <= _XOPEN_SOURCE < 600
_POSIX_C_SOURCE est définie à la valeur 199506L.
600 <= _XOPEN_SOURCE < 700
_POSIX_C_SOURCE est définie à la valeur 200112L.
700 <= _XOPEN_SOURCE (depuis la glibc 2.10)
_POSIX_C_SOURCE est définie à la valeur 200809L.
In addition, defining _XOPEN_SOURCE with a value of 500 or greater produces the same effects as defining _XOPEN_SOURCE_EXTENDED.
_XOPEN_SOURCE_EXTENDED
If this macro is defined, and _XOPEN_SOURCE is defined, then expose definitions corresponding to the XPG4v2 (SUSv1) UNIX extensions (UNIX 95). Defining _XOPEN_SOURCE with a value of 500 or more also produces the same effect as defining _XOPEN_SOURCE_EXTENDED. Use of _XOPEN_SOURCE_EXTENDED in new source code should be avoided.
Since defining _XOPEN_SOURCE with a value of 500 or more has the same effect as defining _XOPEN_SOURCE_EXTENDED, the latter (obsolete) feature test macro is generally not described in the SYNOPSIS in man pages.
_ISOC99_SOURCE (depuis la glibc 2.1.3)
Exposer des déclarations cohérentes avec la norme ISO C99.
Les versions antérieures de la glibc 2.1.x reconnaissaient une macro équivalent appelée _ISOC9X_SOURCE (parce que la norme C99 n’était pas finalisée). Même si l’utilisation de cette dernière macro est à proscrire, la glibc continue à la reconnaître pour des raisons de compatibilité ascendante.
Si _ISOC99_SOURCE est définie, les définitions du premier amendement au C ISO (1990) (aussi appelé C95) sont aussi exposées. La première modification de C95 était la prise en charge des jeux de caractères internationaux.
Invoking the C compiler with the option -std=c99 produces the same effects as defining this macro.
_ISOC11_SOURCE (depuis la glibc 2.16)
Exposer des déclarations cohérentes avec la norme ISO C11. La définition de cette marco active également les fonctionnalités C99 et C95 (comme _ISOC99_SOURCE).
Invoking the C compiler with the option -std=c11 produces the same effects as defining this macro.
_LARGEFILE64_SOURCE
Exposer les définitions pour l’API alternative définie par le LFS (« Large File Summit ») comme une extension de transition pour la « Single UNIX Specification ». Veuillez vous référer à http://opengroup.org/platform/lfs.html">http://opengroup.org/platform/lfs.html. L’API alternative consiste en un jeu de nouveaux objets (c’est-à-dire des fonctions et types) dont le nom en suffixé de « 64 » (par exemple off64_t pour off_t, lseek64() pour lseek(), etc.). Les nouveaux programmes ne devraient pas utiliser cette macro ; à la place, _FILE_OFFSET_BITS=64 devrait être utilisée.
_LARGEFILE_SOURCE
This macro was historically used to expose certain functions (specifically fseeko(3) and ftello(3)) that address limitations of earlier APIs (fseek(3) and ftell(3)) that use long int for file offsets. This macro is implicitly defined if _XOPEN_SOURCE is defined with a value greater than or equal to 500. New programs should not employ this macro; defining _XOPEN_SOURCE as just described or defining _FILE_OFFSET_BITS with the value 64 is the preferred mechanism to achieve the same result.
_FILE_OFFSET_BITS
Définir cette macro à la valeur 64 convertit automatiquement les références aux fonctions et types de données 32 bits liés aux E/S sur les fichiers et aux opérations sur le système de fichiers en références à leurs équivalents 64 bits. C’est utile pour les E/S sur des gros fichiers (> 2 gigaoctets) sur les systèmes 32 bits. Cette macro permet aux programmes correctement écrits d’utiliser de gros fichiers avec seulement une recompilation.
Les systèmes 64 bits permettent d’office d’utiliser des fichiers de taille supérieure à 2 gigaoctets, et sur ces système cette macro n’a aucun effet.
_BSD_SOURCE (obsolète depuis la glibc 2.20)
Si cette macro est définie, les définitions héritées de BSD sont exposées par les en-têtes.
Jusqu’à la glibc 2.18 inclue, les définitions BSD sont préférées dans les situations où les normes sont en conflit, sauf si au moins une des macros _SVID_SOURCE, _POSIX_SOURCE, _POSIX_C_SOURCE, _XOPEN_SOURCE, _XOPEN_SOURCE_EXTENDED ou _GNU_SOURCE est définie, auquel cas les définitions BSD sont défavorisées. Depuis la glibc 2.19, _BSD_SOURCE ne force plus la préférence des définitions BSD en cas de conflit.
Depuis la glibc 2.20, cette macro est obsolète. Sa définition a le même effet que la définition de _DEFAULT_SOURCE, mais génère un avertissement de compilation (à moins que _DEFAULT_SOURCE soit également définie). Utilisez _DEFAULT_SOURCE à la place. Pour permettre au code nécessitant _BSD_SOURCE dans glibc 2.19 et versions antérieures, et _DEFAULT_SOURCE dans glibc 2.20 et version suivantes, de compiler sans avertissement, définissez à la fois _BSD_SOURCE et _DEFAULT_SOURCE.
_SVID_SOURCE (obsolète depuis la glibc 2.20)
Si cette macro est définie (quelle que soit sa valeur), les en-têtes exposent les définitions héritées de System V. (SVID == System V Interface Definition ; consultez standards(7).)
Depuis la glibc 2.20, cette macro est obsolète de la même manière que _BSD_SOURCE.
_DEFAULT_SOURCE (depuis la glibc 2.19)
Cette macro peut être définie pour s’assurer que les définitions par « défaut » sont fournies même si les valeurs par défaut avaient été désactivées, comme cela arrive quand les macros individuelles sont définies explicitement ou quand le compilateur est appelé dans un de ses modes « normalisés » (par exemple cc -std=c99).Définir _DEFAULT_SOURCE n’a aucun effet sans définir d’autre macro individuelle ou invoquer le compilateur dans un de ses modes « normalisés ».
The "default" definitions comprise those required by POSIX.1-2008 and ISO C99, as well as various definitions originally derived from BSD and System V. On glibc 2.19 and earlier, these defaults were approximately equivalent to explicitly defining the following:
cc -D_BSD_SOURCE -D_SVID_SOURCE -D_POSIX_C_SOURCE=200809
_ATFILE_SOURCE (depuis la glibc 2.4)
Si cette macro est définie (quelle que soit sa valeur), les en-têtes exposent les définitions d’une série de fonction avec le suffixe « at » ; consultez openat(2). Depuis glibc 2.10, cette macro est aussi définie de manière implicite si _POSIX_C_SOURCE est définie avec une valeur supérieure ou égale à 200809L.
_GNU_SOURCE
Définir cette macro (avec n’importe quelle valeur) définit implicitement _ATFILE_SOURCE, _LARGEFILE64_SOURCE, _ISOC99_SOURCE, _XOPEN_SOURCE_EXTENDED, _POSIX_SOURCE, _POSIX_C_SOURCE avec la valeur 200809L (200112L dans les versions de la glibc antérieures à 2.10 ; 199506L dans les versions de la glibc antérieures à 2.5 ; 199309L dans les versions de la glibc antérieures à 2.1), et _XOPEN_SOURCE avec la valeur 700 (600 dans les versions de la glibc antérieures à 2.10 ; 500 dans les versions de la glibc antérieures à 2.2). De plus, de nombreuses extensions spécifiques GNU sont exposées.
Depuis glibc 2.19, définir _GNU_SOURCE provoque la définition implicite de _DEFAULT_SOURCE. Dans les versions antérieures à 2.20, définir _GNU_SOURCE provoque la définition implicite de _BSD_SOURCE et _SVID_SOURCE.
_REENTRANT
Historically, on various C libraries it was necessary to define this macro in all multithreaded code. (Some C libraries may still require this.) In glibc, this macro also exposed definitions of certain reentrant functions.
However, glibc has been thread-safe by default for many years; since glibc 2.3, the only effect of defining _REENTRANT has been to enable one or two of the same declarations that are also enabled by defining _POSIX_C_SOURCE with a value of 199606L or greater.
_REENTRANT is now obsolete. In glibc 2.25 and later, defining _REENTRANT is equivalent to defining _POSIX_C_SOURCE with the value 199606L. If a higher POSIX conformance level is selected by any other means (such as _POSIX_C_SOURCE itself, _XOPEN_SOURCE, _DEFAULT_SOURCE, or _GNU_SOURCE), then defining _REENTRANT has no effect.
This macro is automatically defined if one compiles with cc -pthread.
_THREAD_SAFE
Synonym for the (deprecated) _REENTRANT, provided for compatibility with some other implementations.
_FORTIFY_SOURCE (depuis la glibc 2.3.4)
Defining this macro causes some lightweight checks to be performed to detect some buffer overflow errors when employing various string and memory manipulation functions (for example, memcpy(3), memset(3), stpcpy(3), strcpy(3), strncpy(3), strcat(3), strncat(3), sprintf(3), snprintf(3), vsprintf(3), vsnprintf(3), gets(3), and wide character variants thereof). For some functions, argument consistency is checked; for example, a check is made that open(2) has been supplied with a mode argument when the specified flags include O_CREAT. Not all problems are detected, just some common cases.
If _FORTIFY_SOURCE is set to 1, with compiler optimization level 1 (gcc -O1) and above, checks that shouldn’t change the behavior of conforming programs are performed. With _FORTIFY_SOURCE set to 2, some more checking is added, but some conforming programs might fail.
Some of the checks can be performed at compile time (via macros logic implemented in header files), and result in compiler warnings; other checks take place at run time, and result in a run-time error if the check fails.
L’utilisation de cette macro nécessite une gestion par le compilateur, qui est disponible dans gcc(1) depuis la version 4.0.
Définitions
par défaut, définitions implicites et
combinaison de définitions
Si aucune macro de test de fonctionnalité n’est
définie explicitement, alors les macros de test
suivantes sont définies par défaut :
_BSD_SOURCE (dans la glibc 2.19 et avant),
_SVID_SOURCE (dans la glibc 2.19 et avant),
_DEFAULT_SOURCE (depuis glibc 2.19),
_POSIX_SOURCE et _POSIX_C_SOURCE=200809L
(200112L dans les versions de la glibc antérieures
à 2.10 ; 199506L dans les versions de la glibc
antérieures à 2.4 ; 199309L dans les
versions de la glibc antérieures à ).
Si une des macros __STRICT_ANSI__, _ISOC99_SOURCE, _POSIX_SOURCE, _POSIX_C_SOURCE, _XOPEN_SOURCE, _XOPEN_SOURCE_EXTENDED, _BSD_SOURCE (dans la glibc 2.19 et avant) ou _SVID_SOURCE (dans la glibc 2.19 et avant) est définie explicitement, alors _BSD_SOURCE et _SVID_SOURCE ne sont pas définies par défaut.
Si ni _POSIX_SOURCE ni _POSIX_C_SOURCE ne sont définies explicitement et que soit __STRICT_ANSI__ n’est pas définie soit _XOPEN_SOURCE est définie à une valeur supérieure ou égale à 500, alors
* |
_POSIX_SOURCE est définie à la valeur 1 ; et | ||
* |
_POSIX_C_SOURCE est définie avec une des valeurs suivantes : |
•
2, si _XOPEN_SOURCE est définie avec une valeur inférieure à 500 ; | |||
• |
199506L, si _XOPEN_SOURCE est définie à une valeur supérieure ou égale à 500 et inférieure à 600 ; ou | ||
• |
(Depuis la glibc 2.4) 200112L, si _XOPEN_SOURCE est définie à une valeur supérieure ou égale à 600 et inférieure à 700. | ||
• |
(Depuis la glibc 2.10) 200809L, si _XOPEN_SOURCE est définie à une valeur supérieure ou égale à 700. | ||
• |
Les versions plus anciennes de la glibc ne connaissent pas les valeurs 200112L et 200809L pour _POSIX_C_SOURCE, et la configuration de cette macro dépendra de la version de la glibc. | ||
• |
Si _XOPEN_SOURCE n’est pas défini, alors la configuration de _POSIX_C_SOURCE dépend de la version de la glibc : 199506L pour les version de la glibc antérieures à 2.4 ; 200112L pour les glibc 2.4 à 2.9 ; et 200809L depuis la glibc 2.10. |
Plusieurs macros peuvent être définies ; les résultats sont additifs.
CONFORMITÉ
POSIX.1 specifies _POSIX_C_SOURCE, _POSIX_SOURCE, and _XOPEN_SOURCE.
_XOPEN_SOURCE_EXTENDED was specified by XPG4v2 (aka SUSv1), but is not present in SUSv2 and later. _FILE_OFFSET_BITS is not specified by any standard, but is employed on some other implementations.
_BSD_SOURCE, _SVID_SOURCE, _DEFAULT_SOURCE, _ATFILE_SOURCE, _GNU_SOURCE, _FORTIFY_SOURCE, _REENTRANT et _THREAD_SAFE sont spécifiques à Linux (glibc).
NOTES
<features.h> est un fichier d’en-tête spécifique à Linux/glibc. D’autres systèmes ont un fichier similaire, mais typiquement sous un nom différent. Ce fichier est inclus automatiquement par les autres en-têtes si nécessaire : il n’est pas nécessaire de l’inclure explicitement pour utiliser les macros de test de fonctionnalité.
Selon quelles macros de test de fonctionnalité ci-dessus sont définies, <features.h> définit diverses autres macros qui sont testées par les en-têtes de la glibc. Ces macros ont des noms préfixés par deux caractères underscore (par exemple __USE_MISC). Les programmes ne doivent jamais définir ces macros directement ; ils doivent utiliser les macros de test de fonctionnalité de la liste précédente.
EXEMPLES
Le programme ci-dessous peut être utilisé pour explorer comment les différentes macros de test de fonctionnalités sont configurées en fonction de la version de la glibc et quelle macros sont explicitement définies. L’exécution qui suit dans un interpréteur de commandes, sur un système avec la glibc 2.10, montre quelques exemples de ce qu’on peut voir :
$
cc ftm.c
$ ./a.out
_POSIX_SOURCE définie _POSIX_C_SOURCE définie : 200809L _BSD_SOURCE définie _SVID_SOURCE définie _ATFILE_SOURCE définie $ cc -D_XOPEN_SOURCE=500 ftm.c $ ./a.out _POSIX_SOURCE définie _POSIX_C_SOURCE définie : 199506L _XOPEN_SOURCE définie : 500 $ cc -D_GNU_SOURCE ftm.c $ ./a.out _POSIX_SOURCE définie _POSIX_C_SOURCE définie : 200809L _ISOC99_SOURCE définie _XOPEN_SOURCE définie : 700 _XOPEN_SOURCE_EXTENDED définie _LARGEFILE64_SOURCE définie _BSD_SOURCE définie _SVID_SOURCE définie _ATFILE_SOURCE définie _GNU_SOURCE définie
Source du programme
/* ftm.c */ #include <stdio.h> #include <unistd.h> #include <stdlib.h> int main(int argc, char *argv[]) { #ifdef _POSIX_SOURCE printf("_POSIX_SOURCE définie\n"); #endif #ifdef _POSIX_C_SOURCE printf("_POSIX_C_SOURCE définie : %ldL\n", (long) _POSIX_C_SOURCE); #endif #ifdef _ISOC99_SOURCE printf("_ISOC99_SOURCE définie\n"); #endif #ifdef _ISOC11_SOURCE printf("_ISOC11_SOURCE définie\n"); #endif #ifdef _XOPEN_SOURCE printf("_XOPEN_SOURCE définie : %d\n", _XOPEN_SOURCE); #endif #ifdef _XOPEN_SOURCE_EXTENDED printf("_XOPEN_SOURCE_EXTENDED définie\n"); #endif #ifdef _LARGEFILE64_SOURCE printf("_LARGEFILE64_SOURCE définie\n"); #endif #ifdef _FILE_OFFSET_BITS printf("_FILE_OFFSET_BITS définie : %d\n", _FILE_OFFSET_BITS); #endif #ifdef _BSD_SOURCE printf("_BSD_SOURCE définie\n"); #endif #ifdef _SVID_SOURCE printf("_SVID_SOURCE définie\n"); #endif #ifdef _DEFAULT_SOURCE printf("_DEFAULT_SOURCE définie\n"); #endif #ifdef _ATFILE_SOURCE printf("_ATFILE_SOURCE définie\n"); #endif #ifdef _GNU_SOURCE printf("_GNU_SOURCE définie\n"); #endif #ifdef _REENTRANT printf("_REENTRANT définie\n"); #endif #ifdef _THREAD_SAFE printf("_THREAD_SAFE définie\n"); #endif #ifdef _FORTIFY_SOURCE printf("_FORTIFY_SOURCE définie\n"); #endif exit(EXIT_SUCCESS); }
VOIR AUSSI
La section « Feature Test Macros » de info libc.
/usr/include/features.h
COLOPHON
Cette page fait partie de la publication 5.07 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies et la dernière version de cette page, peuvent être trouvées à l’adresse https://www.kernel.org/doc/man-pages/.
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin [AT] laposte.net>, Thierry Vignaud <tvignaud [AT] mandriva.com>, François Micaux, Alain Portal <aportal [AT] univ-montp2.fr>, Jean-Philippe Guérard <fevrier [AT] tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon [AT] wanadoo.fr>, Julien Cristau <jcristau [AT] debian.org>, Thomas Huriaux <thomas.huriaux [AT] gmail.com>, Nicolas François <nicolas.francois [AT] centraliens.net>, Florentin Duneau <fduneau [AT] gmail.com>, Simon Paillard <simon.paillard [AT] resel.fr>, Denis Barbier <barbier [AT] debian.org> et David Prévot <david [AT] tilapin.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n’y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à <debian-l10n-french [AT] lists.org>.