STRCPY(3)          Manuel du programmeur Linux          STRCPY(3)


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 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.

BUGS
       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 car­
       actè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)


TRADUCTION
       Christophe Blaess, 1997.






GNU                      25 Janvier 1997                        1