diff options
author | Stef Walter <stef@thewalter.net> | 2008-06-09 15:26:56 +0000 |
---|---|---|
committer | Stef Walter <stef@thewalter.net> | 2008-06-09 15:26:56 +0000 |
commit | a9a6b62cf2abb833d54c60aa1363e5acfc3cdfd5 (patch) | |
tree | 20082b3cf57a1f0fbf797edadf54835cb0e66919 | |
parent | 70885122408498e4a11961026b9abd82b88f0bdc (diff) |
Check properly whether a certain dn exists in storage, must have at
least one attribute
-rw-r--r-- | Makefile | 28 | ||||
-rw-r--r-- | Pivot.py | 4 | ||||
-rw-r--r-- | files/slapd-pivot.conf.sample | 17 |
3 files changed, 48 insertions, 1 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..ced020b --- /dev/null +++ b/Makefile @@ -0,0 +1,28 @@ +VERSION = 0.0.1 +PREFIX = /usr/local + +FILES = \ + Backend.py \ + Config.py \ + Pivot.py \ + slapd-pivot.py \ + Makefile + +SUBDIRS = \ + files + +all: + @echo "usage: make install" + @echo " make dist [PREFIX=/path]" + +dist: + tar -jcvf slapd-pivot-$(VERSION).tbz \ + --exclude '*.pyc' --exclude 'test' --exclude '*.tbz' \ + --exclude '*.tar.bz2' --exclude '\.*' \ + $(FILES) $(SUBDIRS) + +install: + chmod +x slapd-pivot.py + cp files/slapd-pivot.conf.sample $(PREFIX)/etc/slapd-pivot.conf.sample + ln -sf `pwd`/slapd-pivot.py $(PREFIX)/sbin/slapd-pivot + @@ -142,7 +142,9 @@ class Storage: return self.entries.keys()[:] # copy def exists(self, dn): - return dn in self.entries.keys() + if not self.entries.has_key("dn"): + return False + return len(self.entries["dn"]) > 0 def delete(self, dn): if self.entries.has_key(dn): diff --git a/files/slapd-pivot.conf.sample b/files/slapd-pivot.conf.sample new file mode 100644 index 0000000..6ecd263 --- /dev/null +++ b/files/slapd-pivot.conf.sample @@ -0,0 +1,17 @@ + +[main] + +ref-attribute: member +key-attribute: uid +tag-attribute: memberOf +rdn-attribute: cn +ref-objectclass: group +access-attribute: access + +storage-file = /var/db/pivot.ldif + +ldap-base: dc=fam +ldap-root: cn=root,dc=fam +ldap-password: barn +ldap-host: ldap://localhost:3890 + |