diff options
author | Arthur de Jong <arthur@arthurdejong.org> | 2011-12-12 21:53:10 +0000 |
---|---|---|
committer | Arthur de Jong <arthur@arthurdejong.org> | 2011-12-12 21:53:10 +0000 |
commit | 330a28040095fff67e9cb105019f3b4cb7cb5f0e (patch) | |
tree | 802d2a763f9210a3a1f581a9f758bdde301b96df /pynslcd/alias.py | |
parent | f4b3ad848987eb6ac2cf50d7ea99d1a7b579c70c (diff) |
move check of required attributes and other common tests to the Request.handle_entry() method
git-svn-id: http://arthurdejong.org/svn/nss-pam-ldapd/nss-pam-ldapd@1570 ef36b2f9-881f-0410-afb5-c4e39611909c
Diffstat (limited to 'pynslcd/alias.py')
-rw-r--r-- | pynslcd/alias.py | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/pynslcd/alias.py b/pynslcd/alias.py index b35e009..fe7bd7b 100644 --- a/pynslcd/alias.py +++ b/pynslcd/alias.py @@ -30,21 +30,14 @@ filter = '(objectClass=nisMailAlias)' class AliasRequest(common.Request): + case_insensitive = ('cn', ) + limit_attributes = ('cn', ) + required = ('cn', 'rfc822MailMember') + def write(self, dn, attributes, parameters): - # get name and check against requested name + # get values names = attributes['cn'] - if not names: - logging.error('Error: entry %s does not contain %s value', dn, attmap['cn']) - return - if 'cn' in parameters: - if parameters['cn'].lower() not in (x.lower() for x in names): - return - names = ( parameters['cn'], ) - # get the members of the alias members = attributes['rfc822MailMember'] - if not members: - logging.error('Error: entry %s does not contain %s value', dn, attmap['rfc822MailMember']) - return # write results for name in names: self.fp.write_int32(constants.NSLCD_RESULT_BEGIN) |