Provided by: manpages-fr-dev_4.21.0-2_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

       C99, 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  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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⟩.