Provided by: manpages-fr-dev_4.26.0-1_all bug

NOM

       gets - Récupérer une chaîne sur l'entrée standard (OBSOLÈTE)

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <stdio.h>

       [[obsolète]] char *gets(char *s);

DESCRIPTION

       Ne jamais utiliser cette fonction.

       gets()  lit  une  ligne  depuis stdin et la place dans le tampon pointé par s jusqu'à atteindre un retour
       chariot, ou EOF, qu'il remplace par un octet NULL (« \0 »). Il n'y a pas de vérification  de  débordement
       de tampon (voir la section des BOGUES plus bas).

VALEUR RENVOYÉE

       gets()  renvoie  le  pointeur  s  en  cas  de succès et NULL en cas d'erreur, ou si la fin de fichier est
       atteinte avant d'avoir pu lire au moins un caractère. Cependant, le débordement  de  tampon  n'étant  pas
       surveillé, il ne peut pas y avoir de certitude que la fonction renvoie quelque chose.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).
       ┌──────────────────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │ InterfaceAttributValeur  │
       ├──────────────────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │ gets()                                                               │ Sécurité des threads │ MT-Safe │
       └──────────────────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       C89, POSIX.1-2001.

       LSB  déconseille l'utilisation de gets(). POSIX.1-2008 marque gets() comme étant obsolète. ISO C11 retire
       la spécification de gets() du langage C et, depuis la glibc 2.16, les fichiers d'en-tête glibc n'exposent
       pas la déclaration de fonction si la macro de test de fonctionnalités _ISOC11_SOURCE est définie.

BOGUES

       N'utilisez jamais gets(). Comme il est impossible de savoir à l'avance combien de caractères  seront  lus
       par  gets(),  et  comme  celui-ci  écrira  tous les caractères lus, même s'ils débordent du tampon, cette
       fonction est extrêmement dangereuse à utiliser. On a déjà utilisé ce  dysfonctionnement  pour  créer  des
       trous de sécurité. UTILISEZ TOUJOURS fgets() À LA PLACE DE gets().

       Pour  plus d'informations, consultez CWE-242 (document intitulé sous le nom « Use of Inherently Dangerous
       Function ») à l'adresse http://cwe.mitre.org/data/definitions/242.html

VOIR AUSSI

       read(2), write(2), ferror(3), fgetc(3), fgets(3), fgetwc(3),  fgetws(3),  fopen(3),  fread(3),  fseek(3),
       getline(3), getwchar(3), puts(3), scanf(3), ungetwc(3), unlocked_stdio(3), feature_test_macros(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>,    David    Prévot
       <david@tilapin.org> et Frédéric Hantrais <fhantrais@gmail.com>

       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.

Pages du manuel de Linux 6.9.1                    15 juin 2024                                           gets(3)