self._sock is required because the first line of reinit() asks "if not self._sock"