'Retrieve a list of shared resources on remote server.
:param integer/float timeout: Number of seconds that pysmb will wait before raising *SMBTimeout* via the returned *Deferred* instance\'s *errback* method.
:return: A *twisted.internet.defer.Deferred* instance. The callback function will be called with a list of :doc:`smb.base.SharedDevice<smb_SharedDevice>` instances.'

def listShares(self, timeout=30):

    if (not self.instance):
        raise NotConnectedError('Not    connected    to    server')
    d = defer.Deferred()
    self.instance._listShares(d.callback, d.errback, timeout)
    return d
