add socket helper function _exact_receive()