La write prende in ingresso un void* , dunque se buffer è una variabile di tipo char, è necessario che alla write sia passata come &buffer. "msg" è una struttura da me definita, dichiarata come
e passata alla funzione in questione come puntatore, dunque l'uso di &msg è essenziale.codice:typedef struct { /** tipo del messaggio */ char type; /** lunghezza messaggio in byte */ unsigned int length; /** buffer messaggio */ char buffer[MAXBUF]; } message_t;
Resta il fatto che la scrittura viene effettuata correttamente e senza errori, è in lettura che sorgono i problemi, come dicevo prima, non riesco a leggere correttamente l'intero contenuto nella prima parte del buffer.