Default configs for various systems
authorJamie Cameron <jcameron@webmin.com>
Fri, 14 Dec 2007 23:57:48 +0000 (23:57 +0000)
committerJamie Cameron <jcameron@webmin.com>
Fri, 14 Dec 2007 23:57:48 +0000 (23:57 +0000)
13 files changed:
ldap-server/config [new file with mode: 0644]
ldap-server/config-*-linux
ldap-server/config-debian-linux [new file with mode: 0644]
ldap-server/config-mandrake-linux [new file with mode: 0644]
ldap-server/config-redhat-linux [new file with mode: 0644]
ldap-server/config-solaris [new file with mode: 0644]
ldap-server/config-suse-linux [new file with mode: 0644]
ldap-server/config-turbo-linux [new file with mode: 0644]
ldap-server/config.info
ldap-server/create.cgi
ldap-server/index.cgi
ldap-server/lang/en
ldap-server/ldap-server-lib.pl

diff --git a/ldap-server/config b/ldap-server/config
new file mode 100644 (file)
index 0000000..e5f1fdc
--- /dev/null
@@ -0,0 +1,5 @@
+config_file=/etc/ldap/slapd.conf
+schema_dir=/etc/ldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
index 887eda7..155d991 100644 (file)
@@ -2,3 +2,8 @@ config_file=/etc/ldap/slapd.conf
 schema_dir=/etc/ldap/schema
 slapd=slapd
 ldap_user=ldap
+browse_max=100
+start_cmd=/etc/init.d/ldap start
+stop_cmd=/etc/init.d/ldap stop
+apply_cmd=/etc/init.d/ldap restart
+init_name=ldap
diff --git a/ldap-server/config-debian-linux b/ldap-server/config-debian-linux
new file mode 100644 (file)
index 0000000..4bb04f7
--- /dev/null
@@ -0,0 +1,9 @@
+config_file=/etc/ldap/slapd.conf
+schema_dir=/etc/ldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
+start_cmd=/etc/init.d/slapd start
+stop_cmd=/etc/init.d/slapd stop
+apply_cmd=/etc/init.d/slapd restart
+init_name=slapd
diff --git a/ldap-server/config-mandrake-linux b/ldap-server/config-mandrake-linux
new file mode 100644 (file)
index 0000000..7cb9ea0
--- /dev/null
@@ -0,0 +1,9 @@
+config_file=/etc/openldap/slapd.conf
+schema_dir=/etc/openldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
+start_cmd=/etc/rc./init.d/ldap start
+stop_cmd=/etc/rc./init.d/ldap stop
+apply_cmd=/etc/rc./init.d/ldap restart
+init_name=ldap
diff --git a/ldap-server/config-redhat-linux b/ldap-server/config-redhat-linux
new file mode 100644 (file)
index 0000000..883452d
--- /dev/null
@@ -0,0 +1,9 @@
+config_file=/etc/openldap/slapd.conf
+schema_dir=/etc/openldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
+start_cmd=/etc/init.d/ldap start
+stop_cmd=/etc/init.d/ldap stop
+apply_cmd=/etc/init.d/ldap restart
+init_name=ldap
diff --git a/ldap-server/config-solaris b/ldap-server/config-solaris
new file mode 100644 (file)
index 0000000..29d3500
--- /dev/null
@@ -0,0 +1,6 @@
+config_file=/opt/csw/etc/openldap/slapd.conf
+alt_config_file=/opt/csw/etc/openldap/slapd.conf.default
+schema_dir=/opt/csw/etc/openldap/schema
+slapd=/opt/csw/libexec/slapd
+ldap_user=ldap
+browse_max=100
diff --git a/ldap-server/config-suse-linux b/ldap-server/config-suse-linux
new file mode 100644 (file)
index 0000000..883452d
--- /dev/null
@@ -0,0 +1,9 @@
+config_file=/etc/openldap/slapd.conf
+schema_dir=/etc/openldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
+start_cmd=/etc/init.d/ldap start
+stop_cmd=/etc/init.d/ldap stop
+apply_cmd=/etc/init.d/ldap restart
+init_name=ldap
diff --git a/ldap-server/config-turbo-linux b/ldap-server/config-turbo-linux
new file mode 100644 (file)
index 0000000..7cb9ea0
--- /dev/null
@@ -0,0 +1,9 @@
+config_file=/etc/openldap/slapd.conf
+schema_dir=/etc/openldap/schema
+slapd=slapd
+ldap_user=ldap
+browse_max=100
+start_cmd=/etc/rc./init.d/ldap start
+stop_cmd=/etc/rc./init.d/ldap stop
+apply_cmd=/etc/rc./init.d/ldap restart
+init_name=ldap
index ff1883b..cbbfe28 100644 (file)
@@ -8,6 +8,7 @@ slapd=Full path to OpenLDAP server program,8
 config_file=OpenLDAP server configuration file,8
 schema_dir=OpenLDAP schema directory,7
 ldap_user=User OpenLDAP server runs as,5
+init_name=OpenLDAP server boot script name,3,Same as module name
 
 line2=User interface settings,11
 browse_max=Maximum number of sub-objects to display,3,Unlimited
index bec2823..4998b0b 100644 (file)
@@ -2,6 +2,7 @@
 # Actually create a new base DN
 
 require './ldap-server-lib.pl';
+&ReadParse();
 &error_setup($text{'create_err'});
 $access{'create'} || &error($text{'create_ecannot'});
 $ldap = &connect_ldap_db();
@@ -36,9 +37,27 @@ if ($ok && $in{'example'}) {
        # Add the example user/alias
        if ($in{'example'} == 1 || $in{'example'} == 2) {
                # User
+               $edn = "uid=example, ".$dn;
+               @attrs = ( "cn", "Example user",
+                          "uid", "example",
+                          "uidNumber", 9999,
+                          "gidNumber", 9999,
+                          "loginShell", "/bin/sh",
+                          "homeDirectory", "/home/example",
+                          "objectClass", [ "posixAccount" ],
+                          "userPassword", "*LK*" );
+               if ($in{'example'} == 2) {
+                       # With mail
+                       push(@attrs, "mail", "example\@example.com");
+                       }
                }
        elsif ($in{'example'} == 3) {
                # Virtuser
+               # XXX not sure about these .. is there any standard?
+               $edn = "cn=example\@example.com, ".$dn;
+               @attrs = ( "mail", "example\@example.com",
+                          "mailForwardingAddress", "example\@somewhere.com",
+                          "objectClass", [ "top" ] );
                }
 
        print &text('create_doingex',
index e313bc1..9577441 100644 (file)
@@ -65,7 +65,15 @@ if ($local == 1) {
                }
 
        # Start at boot button
-       # XXX
+       if (&foreign_check("init")) {
+               $iname = $config{'init_name'} || $module_name;
+               &foreign_require("init", "init-lib.pl");
+               $st = &init::action_status($iname);
+               print &ui_buttons_row("bootup.cgi", $text{'index_boot'},
+                                     $text{'index_bootdesc'},
+                                     &ui_hidden("iname", $iname),
+                                     &ui_yesno_radio("boot",$st == 2 ? 1 : 0));
+               }
        print &ui_buttons_end();
        }
 
index cce7f84..b2880c6 100644 (file)
@@ -9,6 +9,8 @@ index_stopdesc=Click this button to shut down the running OpenLDAP server. Bewar
 index_start=Start Server
 index_startdesc=Click this button to start up the OpenLDAP server with the current configuration. User accounts and mail aliases stored in its database will not be accessible until it is started.
 index_return=module index
+index_boot=Start at boot?
+index_bootdesc=Change this selection to determine if the OpenLDAP server is started at boot time or not.
 
 connect_eserver=The LDAP server $1 does not exist
 connect_euser=No user to login as has been configured
index fbda695..57d6c61 100644 (file)
@@ -1,8 +1,7 @@
 # Functions for configuring and talking to an LDAP server
 # XXX help pages
-# XXX initial setup
-# XXX install ldap server
-# XXX default configs for various systems (include search max of 100)
+# XXX init ldap server
+# XXX start at boot
 
 do '../web-lib.pl';
 &init_config();
@@ -97,6 +96,11 @@ sub local_ldap_server
 if (!$config{'server'} || &to_ipaddress($config{'server'}) eq '127.0.0.1' ||
     &to_ipaddress($config{'server'}) eq &to_ipaddress(&get_system_hostname())) {
        # Local .. but is it installed?
+       if (!-r $config{'config_file'} &&
+           -r $config{'alt_config_file'}) {
+               &copy_source_dest($config{'alt_config_file'},
+                                 $config{'config_file'});
+               }
        return !&has_command($config{'slapd'}) ? -1 :
               !-r $config{'config_file'} ? -2 : 1;
        }