summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2013-03-09 22:55:09 +0100
committerArthur de Jong <arthur@arthurdejong.org>2013-03-09 23:27:00 +0100
commit116d215765ca718b7ee69ef02f39b5cb093bf76d (patch)
treea09c19e08e394a65b29062190144097e14832930
parentac30060ba57112c23b36cf016f7776e5b6af0d9b (diff)
clean up imports and use ldap.filter.escape_filter_chars() directly
-rw-r--r--pynslcd/attmap.py19
-rw-r--r--pynslcd/group.py6
-rw-r--r--pynslcd/netgroup.py1
-rw-r--r--pynslcd/pam.py8
-rw-r--r--pynslcd/search.py4
-rw-r--r--pynslcd/service.py2
-rw-r--r--pynslcd/shadow.py2
7 files changed, 21 insertions, 21 deletions
diff --git a/pynslcd/attmap.py b/pynslcd/attmap.py
index c35d56f..3545a96 100644
--- a/pynslcd/attmap.py
+++ b/pynslcd/attmap.py
@@ -1,7 +1,7 @@
# attmap.py - attribute mapping class
#
-# Copyright (C) 2011, 2012 Arthur de Jong
+# Copyright (C) 2011, 2012, 2013 Arthur de Jong
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
@@ -37,9 +37,9 @@ True
'"${gecos:-$cn}"'
"""
-import ldap
+from ldap.filter import escape_filter_chars
+import ldap.dn
import re
-from ldap.filter import escape_filter_chars as escape
from expr import Expression
@@ -62,7 +62,9 @@ class SimpleMapping(str):
return [self]
def mk_filter(self, value):
- return '(%s=%s)' % (self, escape(str(value)))
+ return '(%s=%s)' % (
+ self, escape_filter_chars(str(value))
+ )
def values(self, variables):
"""Expand the expression using the variables specified."""
@@ -106,7 +108,9 @@ class FunctionMapping(str):
return [self.attribute]
def mk_filter(self, value):
- return '(%s=%s)' % (self.attribute, escape(value))
+ return '(%s=%s)' % (
+ self.attribute, escape_filter_chars(value)
+ )
def values(self, variables):
return [self.function(value)
@@ -163,4 +167,7 @@ class Attributes(dict):
def get_rdn_value(self, dn, attribute):
"""Extract the attribute value from from DN if possible. Return None
otherwise."""
- return self.translate(dict((x, [y]) for x, y, z in ldap.dn.str2dn(dn)[0]))[attribute][0]
+ return self.translate(dict(
+ (x, [y])
+ for x, y, z in ldap.dn.str2dn(dn)[0]
+ ))[attribute][0]
diff --git a/pynslcd/group.py b/pynslcd/group.py
index a9626a3..a43aae5 100644
--- a/pynslcd/group.py
+++ b/pynslcd/group.py
@@ -21,6 +21,8 @@
import itertools
import logging
+from ldap.filter import escape_filter_chars
+
from passwd import dn2uid, uid2dn
import cache
import common
@@ -62,8 +64,8 @@ class Search(search.LDAPSearch):
dn = uid2dn(self.conn, memberuid)
if dn:
return '(&%s(|(%s=%s)(%s=%s)))' % (self.filter,
- attmap['memberUid'], self.escape(memberuid),
- attmap['member'], self.escape(dn))
+ attmap['memberUid'], escape_filter_chars(memberuid),
+ attmap['member'], escape_filter_chars(dn))
return super(Search, self).mk_filter()
diff --git a/pynslcd/netgroup.py b/pynslcd/netgroup.py
index ca7fb13..20f8779 100644
--- a/pynslcd/netgroup.py
+++ b/pynslcd/netgroup.py
@@ -18,7 +18,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301 USA
-import logging
import re
import cache
diff --git a/pynslcd/pam.py b/pynslcd/pam.py
index 2d03cc9..c26c6a9 100644
--- a/pynslcd/pam.py
+++ b/pynslcd/pam.py
@@ -22,7 +22,7 @@ import logging
import socket
from ldap.controls.ppolicy import PasswordPolicyControl, PasswordPolicyError
-from ldap.filter import escape_filter_chars as escape
+from ldap.filter import escape_filter_chars
import ldap
import cfg
@@ -178,10 +178,10 @@ class PAMAuthorisationRequest(PAMRequest):
if not cfg.pam_authz_searches:
return
# escape all parameters
- variables = dict((k, escape(v)) for k, v in parameters.items())
+ variables = dict((k, escape_filter_chars(v)) for k, v in parameters.items())
variables.update(
- hostname=escape(socket.gethostname()),
- fqdn=escape(socket.getfqdn()),
+ hostname=escape_filter_chars(socket.gethostname()),
+ fqdn=escape_filter_chars(socket.getfqdn()),
dn=variables['userdn'],
uid=variables['username'],
)
diff --git a/pynslcd/search.py b/pynslcd/search.py
index 533e522..9629bec 100644
--- a/pynslcd/search.py
+++ b/pynslcd/search.py
@@ -117,10 +117,6 @@ class LDAPSearch(object):
# FIXME: log message
pass
- def escape(self, value):
- """Escape the provided value so it may be used in a search filter."""
- return ldap.filter.escape_filter_chars(str(value))
-
def mk_filter(self):
"""Return the active search filter (based on the read parameters)."""
if self.parameters:
diff --git a/pynslcd/service.py b/pynslcd/service.py
index f3082e6..19f941d 100644
--- a/pynslcd/service.py
+++ b/pynslcd/service.py
@@ -19,8 +19,6 @@
# 02110-1301 USA
import datetime
-import ldap.filter
-import logging
import cache
import common
diff --git a/pynslcd/shadow.py b/pynslcd/shadow.py
index e0170e2..6f7df10 100644
--- a/pynslcd/shadow.py
+++ b/pynslcd/shadow.py
@@ -18,8 +18,6 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301 USA
-import logging
-
import cache
import common
import constants