chat : client : disconnect.c - owanesh/unifi-eos GitHub Wiki
void disconnect() {
/*
* 1) Invia messaggio di disconnessione al server
* 2) chiude la connessione con fdClientPipe e fdServerPipe
* 3) libera l'eventuale memoria dei messaggi non letti
* 4) torna al menu' principale
*/
char msg[50];
sprintf(msg, "DISCONNECT %d", getpid());
int length = strlen(msg) + 1; //+1 per '\0'
write(fdServerPipe, msg, length);
//il server si occupera' della mia cancellazione dalla lista
close(fdClientPipe);
close(fdServerPipe);
if (messages != NULL) {
int i = 0;
for (; i < totalMessages; i++)
free(messages[i]);
free(messages);
}
messages = NULL;
countMessages = 0;
totalMessages = 0;
}