fixed the blocking socket