Sync passwd and smbpasswd

Rick Schieche RSCHIEC at co.pierce.wa.us
Sat Nov 14 00:17:17 GMT 1998


I am having problems setting up the smbpasswd command to sync the /etc/passwd
and $SAMBAHOME/private/smbasswd files.  My passwd program (/usr/bin/passwd %u)
doesn't seem to want to wait around for smbpasswd to send it a second password for confirmation.

I am running Solaris 2.5.1 (103640-23) on an Ultra 2300 and using Samba 1.9.18p10 compiled with gcc 2.8.1.

I thought that I had this running previously on a lower patchlevel of Solaris, but I could be wrong...

Details follow my lame sig.  Any help is appreciated and I will summarize.

------------------------------------------
Rick Schieche
Systems Admin
Pierce County Washington
------------------------------------------



smbpasswd command output
---
Old SMB password:
New SMB password:
Retype new SMB password:
smbpasswd: machine 127.0.0.1 rejected the password change: Error was : The specified password is invalid.
---


$SAMBAHOME/lib/smb.conf (relevant) entries
---
security = user
encrypt passwords = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *New*password: %n\n *Re-enter*new*password: %n\n
passwd chat debug = True
---


$SAMBAHOME/var/log.<machinename>
---
Password change for user: goober
Dochild for user goober (uid=0,gid=0)
talktochild: chatbuf=[*New*password:] responsebuf=[New password:]
talktochild: sendbuf=[foo123
]
talktochild: chatbuf=[*Re-enter*new*password:] responsebuf=[
Re-enter new password:]
talktochild: sendbuf=[foo123
]
The process exited while we were waiting
---


Truss output of the running smbd
---
# truss -aep 8595
psargs: /opt/samba/bin/smbd -D -d 100
poll(0xEFFFC648, 1, -1)         (sleeping...)
poll(0xEFFFC648, 1, -1)                         = 1
getmsg(7, 0xEFFFE600, 0xEFFFE5F4, 0xEFFFE60C)   = 0
sigprocmask(SIG_BLOCK, 0xEFFFE3B8, 0xEFFFE4B0)  = 0
open("/dev/tcp", O_RDWR)                        = 8
ioctl(8, I_PUSH, "sockmod")                     = 0
ioctl(8, I_STR, 0xEFFFE300)                     = 0
ioctl(8, I_SETCLTIME, 0xEFFFE3B4)               = 0
ioctl(8, I_SWROPT, 0x00000002)                  = 0
sigprocmask(SIG_SETMASK, 0xEFFFE3A4, 0xEFFFE394) = 0
ioctl(8, I_STR, 0xEFFFE218)                     = 0
sigprocmask(SIG_SETMASK, 0xEFFFE394, 0xEFFFE370) = 0
ioctl(7, I_FDINSERT, 0xEFFFE45C)                = 0
getmsg(7, 0xEFFFE600, 0x00000000, 0xEFFFE3C4)   = 0
sigprocmask(SIG_SETMASK, 0xEFFFE4B0, 0x00000000) = 0
fork()                                          = 8611
close(8)                                        = 0
    Received signal #18, SIGCLD, in poll() [caught]
      siginfo: SIGCLD CLD_EXITED pid=8611 status=0x0000
poll(0xEFFFC648, 1, -1)                         Err#4 EINTR
sigprocmask(SIG_BLOCK, 0xEFFFC1D8, 0x00000000)  = 0
write(3, " g o t   S I G C L D\n", 11)          = 11
getuid()                                        = 0 [0]
fstat(3, 0xEFFFC0F0)                            = 0
waitid(P_ALL, 0, 0xEFFFC108, WEXITED|WTRAPPED|WNOHANG) = 0
waitid(P_ALL, 0, 0xEFFFC108, WEXITED|WTRAPPED|WNOHANG) Err#10 ECHILD
sigaction(SIGCLD, 0xEFFFC0B8, 0xEFFFC1B8)       = 0
waitid(P_ALL, 0, 0xEFFFC138, WEXITED|WNOHANG|WNOWAIT) Err#10 ECHILD
sigprocmask(SIG_UNBLOCK, 0xEFFFC1D8, 0x00000000) = 0
setcontext(0xEFFFC328)
poll(0xEFFFC648, 1, -1)         (sleeping...)
---


Samba compile options
---
FLAGSM = -DSUNOS5 -DSHADOW_PWD -DFAST_SHARE_MODES -DUFC_CRYPT -DALLOW_CHANGE_PASSWORD
LIBSM = -lsocket -lnsl
AWK = nawk
---



More information about the samba mailing list