[asl-commit] ActiveSambaLdap r32:
null at cozmixng.org
null at cozmixng.org
Fri Aug 3 22:32:35 EDT 2007
retro 2007-08-04 11:32:34 +0900 (Sat, 04 Aug 2007)
New Revision: 32
Modified files:
trunk/lib/active_samba_ldap/configuration.rb
Log:
Modified: trunk/lib/active_samba_ldap/configuration.rb (+22 -4)
===================================================================
--- trunk/lib/active_samba_ldap/configuration.rb 2006-11-15 13:31:19 +09:00 (rev 31)
+++ trunk/lib/active_samba_ldap/configuration.rb 2007-08-04 11:32:34 +09:00 (rev 32)
@@ -183,19 +183,20 @@
end
def users_prefix
- "ou=Users"
+ retrieve_value_from_smb_conf(/ldap\s+user\s+suffix/i) || "ou=Users"
end
def groups_prefix
- "ou=Groups"
+ retrieve_value_from_smb_conf(/ldap\s+group\s+suffix/i) || "ou=Groups"
end
def computers_prefix
- "ou=Computers"
+ retrieve_value_from_smb_conf(/ldap\s+machine\s+suffix/i) ||
+ "ou=Computers"
end
def idmap_prefix
- "ou=Idmap"
+ retrieve_value_from_smb_conf(/ldap\s+idmap\s+suffix/i) || "ou=Idmap"
end
def start_uid
@@ -253,6 +254,23 @@
def bind_dn
nil
end
+
+ private
+ def retrieve_value_from_smb_conf(key)
+ smb_conf = self['smb_conf']
+ if smb_conf and File.readable?(smb_conf)
+ line = File.read(smb_conf).grep(key).reject do |l|
+ /^\s*[#;]/ =~ l
+ end.first
+ if line
+ line.split(/=/, 2)[1].strip
+ else
+ nil
+ end
+ else
+ nil
+ end
+ end
end
end
end
More information about the asl-commit
mailing list