I *hate* global variables...
authorAndrew Bartlett <abartlet@samba.org>
Wed, 25 Feb 2004 22:01:02 +0000 (22:01 +0000)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 25 Feb 2004 22:01:02 +0000 (22:01 +0000)
commit56bd63b1cde5e1bde8f88b0c6a06f1131f1dac13
treef0444780796a3d0a362a94772a4252b2b891f519
parentfd6b9c02b91ea39e8c7575e1f5f106509940ba1f
I *hate* global variables...

OK, what was happening here was that we would invalidate global_sam_sid
when we set the sid into secrets.tdb, to force a re-read.

The problem was, we would do *two* writes into the TDB, and the second one
(in the PDC/BDC case) would be of a NULL pointer.  This caused smbd startups
to fail, on a blank TDB.

By using a local variable in the pdb_generate_sam_sid() code, we avoid this
particular trap.

I've also added better debugging for the case where this all matters, which
is particularly for LDAP, where it finds out a domain SID from the sambaDomain
object.

Andrew Bartlett
(This used to be commit 86ad04d26d3065a99b08afaaf2914968a9e701c5)
source3/passdb/machine_sid.c
source3/passdb/pdb_ldap.c
source3/utils/net.c
source3/utils/smbpasswd.c