ott valami más hiba lesz. Ha 0 byte érkezik, hiba nélkül (vagyis a visszatérési érték >= 0), akkor az bizony socket close. Nézd át a kódod, illetve kérdés: read, recv, recvfrom stb. parancsot használsz olvasáshoz?