EMISSION :
 
fdesc = open(nom_fichier, O_RDONLY);
while((ret_read = read(fdesc, tampon_envoi, sizeof(tampon_envoi))) > 0)
  {
    ret_send = send(desc, tampon_envoi, ret_read, 0);
    if(ret_send == ERREUR)
    {
      cout<<"erreur send : "<<strerror(errno)<<endl;
      exit(0);
    }
  }
 
 
RECEPTION :
  fdesc = creat(fichier, S_IRUSR|S_IWUSR);
  nb_octet_recu = 0;
  do
  {
    ret_recv = recv(desc, tampon_reception, sizeof(tampon_reception), 0);
    if(ret_recv < 0)
    {
      cout<<"erreur recv() : "<<strerror(errno)<<endl;
      close(desc);
      exit(0);
    }
    tampon[ret_recv] = 0;
 
    if(write(fdesc, tampon_reception, ret_recv) == ERREUR)
    {
      cout<<"erreur lors de l'écriture dans le fichier "<<fichier<<" : "<<strerror(errno)<<endl;
      close(desc);
      close(fdesc);
      exit(0);
    }
    nb_octet_recu += ret_recv;
  }while(ret_recv && (taille_inconnue || (nb_octet_recu < taille_fichier)));