Lecture de la référence POSIX pour socket send
à l'adresse http://pubs.opengroup.org/onlinepubs/009695399/functions/send.html Je me demande ce qu'ils entendent exactement par "octet" - sa signification traditionnelle/historique, sa signification implicite/populaire, ou quelque chose d'entièrement différent ? Je suis en train de développer un programme client-serveur de protocole réseau binaire supporté par TCP/IP, et je voudrais déclarer correctement mon tampon que j'utilise pour transmettre à recv
et être capable de décompacter correctement ses données.
Oui, je sais qu'il s'agit d'une question presque hypothétique et qu'il y a probablement une chance sur un million de rencontrer des problèmes réels, mais mieux vaut prévenir que guérir, je suppose.
Alors, est-ce que les gars de POSIX veulent vraiment parler d'octets, ou est-ce qu'ils sous-entendent que pour les plateformes où un octet est disons de 7 bits, send
traitera des tableaux d'une granularité de 7*N ? Ou peut-être transférera-t-il simplement toutes les données, bit par bit (granularité de la taille) ? (7 * n_bytes)
bits) ? Je veux dire, puisqu'il s'attend à un void *
tampon...
Quelle déclaration pour mon recv
Le tampon serait le plus stable sur les architectures et les compilateurs ?
J'utilise GCC avec les drapeaux suivants (C99, POSIX) :
cc -g -Wall -Wextra -std=c99 -pedantic -fexec-charset=ISO-8859-1 -DDEBUG -D_POSIX_C_SOURCE