gets(3) | Library Functions Manual | gets(3) |
NAAM
gets - invoer van strings van standaardinvoer (AFGEKEURD)
BIBLIOTHEEK
Standard C bibliotheek (libc, -lc)
SAMENVATTING
#include <stdio.h>
[[afgekeurd]] char *gets(char *s);
BESCHRIJVING
Gebruik deze functie nooit.
gets() leest een regel van stdin in de buffer verwezen naar door s tot óf een afsluitende nieuweregel óf EOF, wat vervangen wordt door een nul byte ('\0'. Geen test op buffer-overloop wordt uitgevoerd (zie BUGS onder).
EIND WAARDE
gets() retourneert s bij slagen, of NULL bij een fout of wanneer einde van bestand optreedt terwijl geen tekens gelezen werden. Hoewel er, door het ontbreken van de controle op buffer overloop, er geen garanties zijn dat de functie überhaupt eindigt.
ATTRIBUTEN
Voor een uitleg van de termen in deze sectie, zie attributes(7).
Interface | Attribuut | Waarde |
gets() | Thread veiligheid | MT-Safe |
VOLDOET AAN
POSIX.1-2008.
GESCHIEDENIS
C89, POSIX.1-2001.
LSB keurt gets() af. POSIX.1-2008 markeert gets() als overbodig. ISO C11 verwijderde de specificatie van gets() uit de taal C, en vanaf versie 2.16, glibc is de functie declaratie uit de header bestanden verwijderd zodra de _ISOC11_SOURCE feature test macro is gedefinieerd.
BUGS
Gebruik nooit gets(). Omdat het onmogelijk is om erachter te komen - zonder de gegevens van te voren te kennen - hoeveel karakters gets() zal gaan lezen, en omdat gets() doorgaat met opslaan van karakters na het einde van de buffer, is het extreem gevaarlijk bij gebruik. Het is gebruikt om computer beveiliging te breken. Gebruik fgets() inplaats hiervan.
Voor meer informatie, zie CWE-242 (aka "Use of Inherently Dangerous Function") at http://cwe.mitre.org/data/definitions/242.html
ZIE OOK
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)
VERTALING
De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema <joshb@xs4all.nl>, Mario Blättermann <mario.blaettermann@gmail.com> en Luc Castermans <luc.castermans@gmail.com>
Deze vertaling is vrije documentatie; lees de GNU General Public License Version 3 of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID.
Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar debian-l10n-dutch@lists.debian.org.
2 mei 2024 | Linux man-pages 6.8 |