Man page - secure_getenv(3)

Packages contains this manual

Available languages:

en fr pl ja ru ro de

Manual

getenv

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ATTRIBUTS
STANDARDS
HISTORIQUE
NOTES
VOIR AUSSI
TRADUCTION

NOM

getenv, secure_getenv - Lire une variable d’environnement

BIBLIOTHÈQUE

BibliothĂšque C standard ( libc , -lc )

SYNOPSIS

#include <stdlib.h>

char *getenv(const char * name );
char *secure_getenv(const char *
name );

Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros (7)) :

secure_getenv () :
_GNU_SOURCE

DESCRIPTION

La fonction getenv () recherche dans la liste des variables d’environnement une variable nommĂ©e name , et renvoie un pointeur sur la chaĂźne value correspondante.

La fonction secure_getenv () spĂ©cifique Ă  GNU est simplement comme getenv (), Ă  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é :

-

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) ;

-

le bit de capacité effective a été défini sur le fichier exécutable ;

-

le processus a une capacité non vide permise définie.

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 secure_getenv () 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.

VALEUR RENVOYÉE

La fonction getenv () renvoie un pointeur sur la valeur correspondante de l’environnement ou NULL s’il n’y a pas de correspondance.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes (7).

Image grohtml-3893553-1.png

STANDARDS

getenv ()

C11, POSIX.1-2008.

secure_getenv ()

GNU.

HISTORIQUE

getenv ()

POSIX.1-2001, C89, C99, SVr4, 4.3BSD.

secure_getenv ()

glibc 2.17.

NOTES

Les chaünes dans la liste des variables d’environnement sont de la forme nom=valeur .

Telle qu’elle est gĂ©nĂ©ralement implĂ©mentĂ©e, getenv () 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.

L’implĂ©mentation de getenv () ne nĂ©cessite pas qu’elle soit rĂ©entrante. La chaĂźne pointĂ©e par la valeur de retour de getenv () peut ĂȘtre allouĂ©e statiquement et peut ĂȘtre modifiĂ©e par un appel ultĂ©rieur Ă  getenv (), putenv (3), setenv (3) ou unsetenv (3).

Le mode « secure execution » (exĂ©cution sĂ©curisĂ©e) de secure_getenv () est contrĂŽlĂ© par l’attribut AT_SECURE contenu dans le vecteur auxiliaire passĂ© du noyau Ă  l’espace utilisateur.

VOIR AUSSI

clearenv (3), getauxval (3), putenv (3), setenv (3), unsetenv (3), capabilities (7), environ (7)

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@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@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@lists.debian.org .