Ciao,
ci sono alcune osservazioni da fare sul codice. Purtroppo sono parziali poiche' non si sa come e' fatto il resto.
1 - Come hai strutturato il server? E' una applicazione multitask/multithread?
Se e' una applicazione a thread singolo, come gestisci il fatto che, in uscita dal loop infinito, non vengono gestite ulteriori connessioni?
2 - Analogamente al punto sopra: quante copie di socketparent hai in circolo?
3 - Quando spedisci la scritta di benvenuto non spedisci il relativo terminatore. Tutto fa pensare che la stessa tecnica sia usata anche nel client. In tal caso ti esponi ad un crash random. Quando ricevi qualcosa, per esempio, lo vai a stampare con la printf() e questo e' sufficiente a produrre crash o funzionamenti "strani";
4 - Ricorda che stai usando uno stream: potresti non ricevere tutti i dati in una volta sola, anche se la stringa e' corta!
Prova a chiarire questi passaggi e posta ancora
Sottovento
__________________
In God we trust; all others bring data
|