'recvall() -> str
Receives data until EOF is reached.'

def recvall(self, timeout=Timeout.forever):

    with self.waitfor('Receiving    all    data') as h:
        l = len(self.buffer)
        with self.local(timeout):
            try:
                while True:
                    l = misc.size(len(self.buffer))
                    h.status(l)
                    if (not self._fillbuffer()):
                        break
            except EOFError:
                pass
        h.success(('Done    (%s)' % l))
    self.close()
    return self.buffer.get()
