.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk) .\" and Copyright (C) 2007, 2012 Michael Kerrisk .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" References consulted: .\" Linux libc source code .\" Lewine's "POSIX Programmer's Guide" (O'Reilly & Associates, 1991) .\" 386BSD man pages .\" Modified Sat Jul 24 19:30:29 1993 by Rik Faith (faith@cs.unc.edu) .\" Modified Fri Feb 14 21:47:50 1997 by Andries Brouwer (aeb@cwi.nl) .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH GETENV 3 "14 août 2012" GNU "Manuel du programmeur Linux" .SH NOM getenv, secure_getenv \- Lire une variable d'environnement .SH SYNOPSIS .nf \fB#include \fP .sp \fBchar *getenv(const char *\fP\fIname\fP\fB);\fP \fBchar *secure_getenv(const char *\fP\fIname\fP\fB);\fP .fi .sp .in -4n Exigences de macros de test de fonctionnalités pour la glibc (consultez \fBfeature_test_macros\fP(7))\ : .in .sp \fBsecure_getenv\fP(): _GNU_SOURCE .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. La fonction \fBsecure_getenv\fP() spécifique à GNU est simplement comme \fBgetenv\fP(), à la différence qu'elle renvoie NULL dans les cas où «\ secure execution\ » (exécution sécurisée) est nécessaire. L'exécution sécurisée est nécessaire si l'une des conditions suivantes était vraie quand le programme exécuté pour le processus appelant a été chargé\ : .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. .PP L'exécution sécurisée pourrait aussi être nécessaire si elle est déclenchée par certains modules de sécurité Linux. 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, dans l'environnement du processus, ou NULL s'il n'y a pas de correspondance. .SH VERSIONS \fBsecure_getenv\fP() a été introduite dans la glibc dans sa version\ 2.17. .SH CONFORMITÉ \fBgetenv\fP()\ : SVr4, POSIX.1\-2001, BSD\ 4.3, C89, C99. \fBsecure_getenv\fP() est une extension GNU. .SH NOTES Les chaînes dans la liste des variables d'environnement sont de la forme \fInom=valeur\fP. 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 de ne pas modifier cette chaîne car cela modifierait l'environnement du processus. 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). 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) .SH COLOPHON Cette page fait partie de la publication 3.65 du projet \fIman\-pages\fP Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse \%http://www.kernel.org/doc/man\-pages/. .SH TRADUCTION Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a par l'équipe de traduction francophone au sein du projet perkamon . .PP Christophe Blaess (1996-2003), Alain Portal (2003-2006). Florentin Duneau et l'équipe francophone de traduction de Debian\ (2006-2009). .PP Veuillez signaler toute erreur de traduction en écrivant à ou par un rapport de bogue sur le paquet \fBmanpages\-fr\fR. .PP Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande «\ \fBman\ \-L C\fR \fI
\fR\ \fI\fR\ ».