> shutdown(4, 1 /* send */) = 0 > accept(3, The shutdown shows that you do not close the socket completely, but only shutdown the send side. This may be your problem.
Anyway, it sounds like you have a general socket programming problem. Please take it to an appropriate forum, like one of the Unix programming newsgroups. Dealing with it here is severely off-topic. I will not write more messages. best regards Patrick