Segmentation fault with smbpasswd

Micah micahjon at ywave.com
Tue Jul 11 16:24:11 UTC 2006


Thierry Lacoste wrote:
> I'm running FreeBSD 6.1-RELEASE and installed samba-3.0.22,1
> from a relatively recent snapshot or /usr/ports.
> 
> Here is the global section of my /usr/local/etc/smb.conf:
> 
> [global]
>         workgroup = OFFICE
>         server string = Samba Server
>         passdb backend = tdbsam
>         logon script = scripts\logon.bat
>         logon path = \\%L\Profiles\%U
>         logon drive = H:
>         logon home = \\%L\%U
>         domain logons = Yes
>         os level = 35
>         preferred master = Yes
>         domain master = Yes
> 
> After a fresh install of samba smbpasswd gives this:
> [root at aldebaran ~]# smbpasswd -a admin
> New SMB password:
> Retype new SMB password:
> Unable to open/create TDB passwd
> Unable to open/create TDB passwd
> pdb_getsampwnam: TDB passwd (/usr/local/private/passdb.tdb) did not exist. 
> File successfully created.
> Segmentation fault: 11 (core dumped)
> 
> Then it gives this:
> [root at aldebaran ~]# smbpasswd -a admin
> New SMB password:
> Retype new SMB password:
> Unable to open/create TDB passwd
> pdb_getsampwnam: Unable to open TDB passwd (/usr/local/private/passdb.tdb)!
> account_policy_get: tdb_fetch_uint32 failed for field 1 (min password length), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 2 (password history), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 3 (user must logon to 
> change password), returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 4 (maximum password 
> age), returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 5 (minimum password 
> age), returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 6 (lockout duration), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 7 (reset count minutes), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 8 (bad lockout attempt), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 9 (disconnect time), 
> returning 0
> account_policy_get: tdb_fetch_uint32 failed for field 10 (refuse machine 
> password change), returning 0
> TDBSAM version too old (0), trying to convert it.
> TDBSAM converted successfully.
> Added user admin.
> 
> After that, samba seems to work properly.
> 
> If I touch /usr/local/private/passdb.tdb after a fresh install of samba
> I have directly the second behavior (no segfault) and then again samba
> is operational.
> 
> What did I miss?
> 
> Regards,
> Thierry.

You possibly found a bug in the port. Contact the maintainer or file a pr.

HTH,
Micah


More information about the freebsd-questions mailing list