More updates from ctrlsoft. (Jelmer Vernooij <jelmer@nl.linux.org>)
authorAndrew Bartlett <abartlet@samba.org>
Sat, 13 Apr 2002 10:32:09 +0000 (10:32 +0000)
committerAndrew Bartlett <abartlet@samba.org>
Sat, 13 Apr 2002 10:32:09 +0000 (10:32 +0000)
Andrew Bartlett
(This used to be commit 012b3326c40ca0f8f4c7673310d73f695cc4f79b)

docs/docbook/manpages/smb.conf.5.sgml
source3/utils/pdbedit.c

index 87f8a428958fcf6b37a639e8b1ab5a7ae720893d..44271295743edb857e64dfe8b9f323011f7f9552 100644 (file)
 
                <varlistentry>
                <term><anchor id="PASSDBBACKEND">passdb backend (G)</term>
-               <listitem><para>This option allows the administrator to chose what
-                backend in which to store passwords.  This allows (for example) both 
-                smbpasswd and tdbsam to be used without a recompile.  Only one can
-                be used at a time however, and experimental backends must still be selected
+               <listitem><para>This option allows the administrator to chose which backends to retrieve and store passwords with. This allows (for example) both 
+                smbpasswd and tdbsam to be used without a recompile. 
+                Multiple backends can be specified, seperated by spaces. The backends will be searched in the order they are specified. New users are always added to the first backend specified.
+                Experimental backends must still be selected
                 (eg --with-tdbsam) at configure time.
                </para>
 
                </para>
 
                <para>Default: <command>passdb backend = smbpasswd</command></para>
-               <para>Example: <command>passdb backend = tdbsam:/etc/samba/private/passdb.tdb</command></para>
+               <para>Example: <command>passdb backend = tdbsam:/etc/samba/private/passdb.tdb smbpasswd:/etc/samba/smbpasswd</command></para>
                <para>Example: <command>passdb backend = ldapsam_nua:ldaps://ldap.example.com</command></para>
-               <para>Example: <command>passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args</command></para>
+               <para>Example: <command>passdb backend = plugin:/usr/local/samba/lib/my_passdb.so:my_plugin_args tdbsam:/etc/samba/private/passdb.tdb</command></para>
                </listitem>
                </varlistentry>
 
index 421a72923aa7d8a2e5512cfcc520eec0fbea43fe..c63ed295299527f5c549d80b3f07aef11d91f8bd 100644 (file)
@@ -70,24 +70,48 @@ static int print_sam_info (SAM_ACCOUNT *sam_pwent, BOOL verbosity, BOOL smbpwdst
 {
        uid_t uid;
        gid_t gid;
+       time_t tmp;
 
        /* TODO: chaeck if entry is a user or a workstation */
        if (!sam_pwent) return -1;
        
        if (verbosity) {
-               printf ("username:       %s\n",  pdb_get_username(sam_pwent));
+               printf ("Unix/NT username:     %s/%s\n",  pdb_get_username(sam_pwent),pdb_get_nt_username(sam_pwent));
                if (IS_SAM_UNIX_USER(sam_pwent)) {
                        uid = pdb_get_uid(sam_pwent);
                        gid = pdb_get_gid(sam_pwent);
-                       printf ("user ID/Group:  %d/%d\n", uid, gid);
+                       printf ("user ID/Group:        %d/%d\n", uid, gid);
                }
-               printf ("user RID/GRID:  %u/%u\n", (unsigned int)pdb_get_user_rid(sam_pwent),
+               printf ("user RID/GRID:        %u/%u\n", (unsigned int)pdb_get_user_rid(sam_pwent),
                        (unsigned int)pdb_get_group_rid(sam_pwent));
-               printf ("Full Name:      %s\n", pdb_get_fullname(sam_pwent));
-               printf ("Home Directory: %s\n", pdb_get_homedir(sam_pwent));
-               printf ("HomeDir Drive:  %s\n", pdb_get_dirdrive(sam_pwent));
-               printf ("Logon Script:   %s\n", pdb_get_logon_script(sam_pwent));
-               printf ("Profile Path:   %s\n", pdb_get_profile_path(sam_pwent));
+               printf ("Full Name:            %s\n", pdb_get_fullname(sam_pwent));
+               printf ("Home Directory:       %s\n", pdb_get_homedir(sam_pwent));
+               printf ("HomeDir Drive:        %s\n", pdb_get_dirdrive(sam_pwent));
+               printf ("Logon Script:         %s\n", pdb_get_logon_script(sam_pwent));
+               printf ("Profile Path:         %s\n", pdb_get_profile_path(sam_pwent));
+               printf ("Domain:               %s\n", pdb_get_domain(sam_pwent));
+               printf ("Account desc:         %s\n", pdb_get_acct_desc(sam_pwent));
+               printf ("Workstations:         %s\n", pdb_get_workstations(sam_pwent));
+               printf ("Munged dial:          %s\n", pdb_get_munged_dial(sam_pwent));
+               
+               tmp = pdb_get_logon_time(sam_pwent);
+               printf ("Logon time:           %s\n", tmp ? http_timestring(tmp) : "0");
+               
+               tmp = pdb_get_logoff_time(sam_pwent);
+               printf ("Logoff time:          %s\n", tmp ? http_timestring(tmp) : "0");
+               
+               tmp = pdb_get_kickoff_time(sam_pwent);
+               printf ("Kickoff time:         %s\n", tmp ? http_timestring(tmp) : "0");
+               
+               tmp = pdb_get_pass_last_set_time(sam_pwent);
+               printf ("Password last set:    %s\n", tmp ? http_timestring(tmp) : "0");
+               
+               tmp = pdb_get_pass_can_change_time(sam_pwent);
+               printf ("Password can change:  %s\n", tmp ? http_timestring(tmp) : "0");
+               
+               tmp = pdb_get_pass_must_change_time(sam_pwent);
+               printf ("Password must change: %s\n", tmp ? http_timestring(tmp) : "0");
+               
        } else if (smbpwdstyle) {
                if (IS_SAM_UNIX_USER(sam_pwent)) {
                        char lm_passwd[33];