.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 1993, David Metcalfe .\" Copyright 2007-2012, Michael Kerrisk .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getenv 3 "8 février 2026" "Linux man\-pages 6.18" .SH NOM getenv, secure_getenv \- Lire une variable d'environnement .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP,\ \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP .P \fBchar *getenv(const char *\fP\fIname\fP\fB);\fP \fBchar *secure_getenv(const char *\fP\fIname\fP\fB);\fP .fi .P .RS -4 Exigences de macros de test de fonctionnalités pour la glibc (consulter \fBfeature_test_macros\fP(7)) : .RE .P \fBsecure_getenv\fP() : .nf _GNU_SOURCE .fi .SH DESCRIPTION La fonction \fBgetenv\fP() recherche dans la liste des variables d'environnement une variable nommée \fIname\fP, et renvoie un pointeur sur la chaîne \fIvalue\fP correspondante. .P The \fBsecure_getenv\fP() function is just like \fBgetenv\fP() except that it returns NULL in cases where "secure execution" is required. Secure execution is required if one of the following conditions was true when the program run by the calling process was loaded: .IP \- 3 l'UID effectif du processus ne correspondait pas à son UID réel, ou le GID effectif du processus ne correspondait pas à son GID réel (c'est typiquement le cas lors de l'exécution d'un programme Set\-UID ou Set\-GID) ; .IP \- le bit de capacité effective a été défini sur le fichier exécutable ; .IP \- le processus a une capacité non vide permise définie. .P L'exécution sécurisée pourrait aussi être nécessaire si elle est déclenchée par certains modules de sécurité Linux. .P La fonction \fBsecure_getenv\fP() a pour but d'être utilisée dans les bibliothèques polyvalentes pour éviter les vulnérabilités qui pourraient survenir si des programmes Set\-UID ou Set\-GID faisaient accidentellement confiance à l'environnement. .SH "VALEUR RENVOYÉE" La fonction \fBgetenv\fP() renvoie un pointeur sur la valeur correspondante de l'environnement ou NULL s'il n'y a pas de correspondance. .SH ATTRIBUTS Pour une explication des termes utilisés dans cette section, consulter \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interface Attribut Valeur T{ .na .nh \fBgetenv\fP(), \fBsecure_getenv\fP() T} Sécurité des threads MT\-Safe env .TE .SH NORMES .TP \fBgetenv\fP() C11, POSIX.1\-2008. .TP \fBsecure_getenv\fP() POSIX.1\-2024. .SH HISTORIQUE .TP \fBgetenv\fP() POSIX.1\-2001, C89, C99, SVr4, 4.3BSD. .TP \fBsecure_getenv\fP() POSIX.1\-2024, glibc 2.17. .SH NOTES Les chaînes dans la liste des variables d'environnement sont de la forme \fInom=valeur\fP. .P Telle qu'elle est généralement implémentée, \fBgetenv\fP() renvoie un pointeur vers une chaîne de la liste d'environnement. L'appelant doit faire attention à ne pas modifier cette chaîne car cela modifierait l'environnement du processus. .P L'implémentation de \fBgetenv\fP() ne nécessite pas qu'elle soit réentrante. La chaîne pointée par la valeur de retour de \fBgetenv\fP() peut être allouée statiquement et peut être modifiée par un appel ultérieur à \fBgetenv\fP(), \fBputenv\fP(3), \fBsetenv\fP(3) ou \fBunsetenv\fP(3). .P Le mode « secure execution » (exécution sécurisée) de \fBsecure_getenv\fP() est contrôlé par l'attribut \fBAT_SECURE\fP contenu dans le vecteur auxiliaire passé du noyau à l'espace utilisateur. .SH "VOIR AUSSI" \fBclearenv\fP(3), \fBgetauxval\fP(3), \fBputenv\fP(3), \fBsetenv\fP(3), \fBunsetenv\fP(3), \fBcapabilities\fP(7), \fBenviron\fP(7) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier et David Prévot . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .