Provided by: manpages-fr_1.67.0-1_all bug

NOM

       strcpy, strncpy - Copier une chaîne.

SYNOPSIS

       #include <string.h>

       char *strcpy (char *dest, const char *src);

       char *strncpy (char *dest, const char *src, size_t n);

DESCRIPTION

       La  fonction  strcpy()  copie  la  chaîne pointée par src (y compris le
       caractère « \0 » final) dans la chaîne  pointée  par  dest.   Les  deux
       chaînes  ne  doivent  pas se chevaucher. La chaîne dest doit être assez
       grande pour accueillir la copie.

       La fonction strncpy() est identique, sauf  que  seuls  les  n  premiers
       octets  de src sont copiés. Ainsi, s’il n’y a pas de caractère nul dans
       les n premiers octets de src, la  chaîne  résultante  ne  disposera  de
       caractère nul final.

       Dans  le  cas  où la longueur de src est inférieure à n, la fin de dest
       sera remplie avec des caractères nuls.

VALEUR RENVOYÉE

       Les fonctions strcpy() et strncpy() renvoient un pointeur sur la chaîne
       destination dest.

BOGUES

       Si  la  chaîne  destination de strcpy() n’est pas assez grande (c’est à
       dire si le programmeur est stupide ou paresseux et n’a pas  verifié  la
       taille avant la copie) tout peut arriver !  Le débordement de chaîne de
       caractères de longueur fixée est l’une  des  techniques  préférées  des
       pirates.  Les  caractères  en  excès peuvent en effet déborder dans une
       zone de code ou de pile, et être interprétés  comme  des  instructions,
       qui  seront  exécutées  avec  l’UID du programme.  Il s’agit d’un moyen
       classique d’obtenir un  accès  « root »  avec  les  programmes  Set-UID
       système.

CONFORMITÉ

       SVID 3, POSIX, BSD 4.3, ISO 9899

VOIR AUSSI

       bcopy(3), memccpy(3), memcpy(3), memmove(3), wcscpy(3), wcsncpy(3)

TRADUCTION

       Christophe Blaess, 1996-2003.