Пример #1
0
    def getemail(self, userhost):
        """ return the email of the specified userhost. """

        user = getuser(userhost)
        if user:
            if user.email:
                return user.email[0]
Пример #2
0
    def getstatuses(self, userhost):

        """ return the list of statuses for the specified userhost. """

        user = getuser(userhost)
        if user:
            return user.statuses
Пример #3
0
    def getperms(self, userhost):

        """ return permissions of user."""

        user = getuser(userhost)
        if user:
            return user.perms
Пример #4
0
    def getpermits(self, userhost):

        """ return permits of the specified userhost."""

        user = getuser(userhost)
        if user:
            return user.permits
Пример #5
0
    def gethosts(self, userhost):

        """ return the userhosts of the user associated with the specified userhost. """

        user = getuser(userhost)
        if user:
            return user.userhosts
Пример #6
0
    def getname(self, userhost):

        """ get name of user belonging to <userhost>. """

        user = getuser(userhost)
        if user:
            return user.name
Пример #7
0
    def allowed(self, userhost, perms, log=True):

        """ check if user with userhosts is allowed to execute perm command. """

        if not type(perms) == types.ListType:
            perms = [perms, ]
        if 'ANY' in perms:
            return 1
        res = None
        user = getuser(userhost)

        if not user:
            if log:
                rlog(10, 'users', '%s userhost denied' % userhost)
            return res
        else:
            uperms = set(user.perms)
            sperms = set(perms)
            intersection = sperms.intersection(uperms)
            res = list(intersection) or None

        if not res and log:
            rlog(10, 'users', "%s perm %s denied" % (userhost, str(perms)))

        if res and log:
            rlog(10, 'users', 'allowed %s %s perm' % (userhost, str(perms)))

        return res
Пример #8
0
    def getemail(self, userhost):

        """ return the email of the specified userhost. """

        user = getuser(userhost)
        if user:
            if user.email:
                return user.email[0]
Пример #9
0
    def addemail(self, session, userhost, email):

        """ add an email address to the userhost. """

        user = getuser(userhost, session)
        if user:
            user.email.append(email)
            rlog(10, 'users', '%s (%s) added to email' % (email, userhost))
            return 1
Пример #10
0
    def addperm(self, session, userhost, perm):

        """ add the specified perm to the userhost. """

        user = getuser(userhost, session)
        if user:
            user.perms.append(perm.upper())
            rlog(10, 'users', '%s perm %s added' % (userhost, perm))
            return 1
Пример #11
0
    def status(self, userhost, status):
        """ check if user with <userhost> has <status> set. """

        user = getuser(userhost)
        res = None
        if user:
            if status.upper() in user.statuses:
                res = 1
        return res
Пример #12
0
    def addstatus(self, session, userhost, status):

        """ add status to given userhost. """

        user = getuser(userhost, session)
        if user:
            user.statuses.append(status.upper())
            rlog(10, 'users', '%s status %s added' % (name, status))
            return 1
Пример #13
0
    def delemail(self, session, userhost, email):

        """ delete email from userhost. """

        user = getuser(userhost, session)
        if user:
            if email in user.emails:
                user.emails.remove(email)
                return 1
Пример #14
0
    def permitted(self, userhost, who, what):
        """ check if (who,what) is in users permit list. """

        user = getuser(userhost)
        res = None
        if user:
            if '%s %s' % (who, what) in user.permits:
                res = 1
        return res
Пример #15
0
    def addpermit(self, session, userhost, permit):

        """ add the given [who, what] permit to the given userhost. """

        user = getuser(userhost, session)
        if user:
            p = '%s %s' % permit
            user.permits.append(p)
            rlog(10, 'users', '%s permit %s added' % (userhost, p))
            return 1
Пример #16
0
    def delstatus(self, session, userhost, status):

        """ delete status from userhost. """

        user = getuser(userhost, session)
        if user:
            st = status.upper()
            if st in user.statuses:
                user.statuses.remove(st)
                return 1
Пример #17
0
    def delpermit(self, session, userhost, permit):

        """ delete permit from userhost. """

        user = getuser(userhost, session)
        if user:
            p = '%s %s' % permit
            if p in user.permits:
                user.permits.remove(p)
                return 1
Пример #18
0
    def delperm(self, session, userhost, perm):

        """ delete perm from userhost. """

        user = getuser(userhost, session)
        if user:
            p = perm.upper()
            if p in user.perms:
                user.perms.remove(p)
                return 1
Пример #19
0
    def status(self, userhost, status):

        """ check if user with <userhost> has <status> set. """

        user = getuser(userhost)
        res = None
        if user:
            if status.upper() in user.statuses:
                res = 1
        return res
Пример #20
0
    def permitted(self, userhost, who, what):

        """ check if (who,what) is in users permit list. """

        user = getuser(userhost)
        res = None
        if user:
            if '%s %s' % (who, what) in user.permits:
                res = 1
        return res
Пример #21
0
    def getname(self, userhost):
        """ get name of user belonging to <userhost>. """

        user = getuser(userhost)
        if user:
            return user.name
Пример #22
0
    def getperms(self, userhost):
        """ return permissions of user."""

        user = getuser(userhost)
        if user:
            return user.perms
Пример #23
0
    def gethosts(self, userhost):
        """ return the userhosts of the user associated with the specified userhost. """

        user = getuser(userhost)
        if user:
            return user.userhosts