Jeremy Allison [Wed, 28 Mar 2007 19:47:59 +0000 (19:47 +0000)]
r22003: Fix from Jiri.Sasek@Sun.COM to wrap our krb5_locate_kdc
call as smb_krb5_locate_kdc to prevent incorrect linking
and crashes on Solaris.
Jeremy.
Simo Sorce [Wed, 28 Mar 2007 14:16:34 +0000 (14:16 +0000)]
r22002: Fix bug #3974, there are still open issues with -N behavior (doc fix next)
and -T argument parsing behavior (which is just insane but a separate bug)
r21972: - add string_term_tdb_data() it creates a null-terminates tdb key from a string
(the current string_tdb_data() creates a non-terminates tdb key from a string!)
- pass TDB_DATA instead of const char *, size_t len to some functions
Jeremy Allison [Fri, 23 Mar 2007 21:11:08 +0000 (21:11 +0000)]
r21952: Fix critical (!) error found by IBM checker.
Missing break statements meant that no info
levels would ever be returned correctly from
POSIX open/mkdir.
Jeremy.
James Peach [Fri, 23 Mar 2007 19:31:11 +0000 (19:31 +0000)]
r21950: After discussion with the Apple and Linux client maintainers,
changing the FindFirst response for the UNIX_INFO2 level to include
a length field before the name. The name is not required to be null
terminated. The length field does not count any null.
Also add call to chflags(2) in the default VFS module so that this
will work be default on BSD-derived platform. Add UNIX-INFO2 test
to the build farm to get some non-BSD coverage.
Jeremy and Jerry, please review for inclusion in 3.0.25.
Jeremy Allison [Thu, 22 Mar 2007 22:15:35 +0000 (22:15 +0000)]
r21942: Hoist by our own petard :-). Older smbclient binaries
were not able to connect to the rewritten dfs code as
they set the dfs flag bit but then send local paths.
Now that our dfs code is a *lot* more robust in
detecting this sort of braindamage we can just
call into it directly on getting a DFS flag
and let the parser sort it out without having
to check it's actually connecting to a dfs
enabled share (I'm proud of this code :-).
Gerald Carter [Thu, 22 Mar 2007 21:41:36 +0000 (21:41 +0000)]
r21940: Sorry Volker, I have to revert your revert in r21935.
We can talk about this later if you still feel that strongly
but I need to fix the build for now.
Gerald Carter [Thu, 22 Mar 2007 18:09:21 +0000 (18:09 +0000)]
r21933: Change the write_sock() call in pam_winbind_request()
to not request a privileged pipe operation for everything
as this cannot be done from a process running under the
context of a user (e.g. screensaver).
Thanks to Danilo Almeida <dalmeida@centeris.com> for the help
in pointing out the change to write_sock().
Jeremy Allison [Wed, 21 Mar 2007 23:49:57 +0000 (23:49 +0000)]
r21922: Fixed the build by rather horrid means. I really need
to restructure libsmb/smb_signing.c so it isn't in
the base libs path but lives in libsmb instead (like
smb_seal.c does).
Jeremy.
Simo Sorce [Wed, 21 Mar 2007 21:10:59 +0000 (21:10 +0000)]
r21919: now that the local passdb abd BUILTIN have been blacklisted and they always
point to the passdb module, remove this comment and move the explanation in
the dimap_ad man page.
Gerald Carter [Wed, 21 Mar 2007 21:08:15 +0000 (21:08 +0000)]
r21918: Reverting this change as it is now causing aborts() in
find_builtin_domain(). This all needs more testing
before anyone starts changing these lookup routines again.
Jeremy Allison [Wed, 21 Mar 2007 17:13:35 +0000 (17:13 +0000)]
r21912: There's no point checksumming the packet length
this already has to be right. This makes the
signed+sealed area the same as it will be with
gss calls. Now to go implement them.
Jeremy.
Jeremy Allison [Wed, 21 Mar 2007 02:02:09 +0000 (02:02 +0000)]
r21903: Get the length calculations right (I always forget
the 4 byte length isn't included in the length :-).
We now have working NTLMSSP transport encryption
with sign+seal. W00t!
Jeremy.
Günther Deschner [Tue, 20 Mar 2007 12:44:40 +0000 (12:44 +0000)]
r21887: Fix annoying bug where in a pam_close_session (or a pam_setcred with the
PAM_DELETE_CREDS flag set) any user could delete krb5 credential caches.
Make sure that only root can do this.
Gerald Carter [Tue, 20 Mar 2007 02:43:20 +0000 (02:43 +0000)]
r21884: * Blacklist BUILTIN and MACHINE domains from the
idmap domains as these should only be handled by the
winbindd_passdb.c backend
* Allow the alloc init to fail for backwards compatible
configurations like
idmap backend = ad
idmap uid = 1000-100000
....
* Remove the deprecated flags from idmap backend, et. al.
These are mutually exclusive with the new configuration
options (idmap domains). Logging annoying messages
about deprecated parameters is confusing. So we'll try
this apprpach for now.
Jeremy Allison [Tue, 20 Mar 2007 01:17:47 +0000 (01:17 +0000)]
r21882: The server part of the code has to use an AUTH_NTLMSSP struct,
not just an NTLMSSP - grr. This complicates the re-use of
common client and server code but I think I've got it right.
Not turned on of valgrinded yet, but you can see it start
to take shape !
Jeremy.
James Peach [Tue, 20 Mar 2007 00:13:42 +0000 (00:13 +0000)]
r21881: Make sure we are very specific when testing whether a backand can handle a
particular SID. Make sure that the passdb backend will accept the same set
range of local SIDs that the idmap system sends it.
Simo, Jerry - this is a 3_0_25 candidate. Can you please review?
Volker Lendecke [Mon, 19 Mar 2007 21:52:27 +0000 (21:52 +0000)]
r21879: Move process_blocking_lock_queue to a timed event.
The idea is that we have blocking.c:brl_timeout as a timed
event that is present whenever we do have a blocking lock
pending. It fires brl_timeout_fn() which calls
process_blocking_lock_queue().
Whenever we make changes to blocking_lock_queue, we trigger
a recalc_brl_timeout() which sets a new brl_timout event if
necessary. This makes the call to
blocking_locks_timeout_ms() in setup_select_timeout()
unnecessary, this is implicitly done in
event_add_to_select_args() from the timed events.
Volker Lendecke [Mon, 19 Mar 2007 21:04:56 +0000 (21:04 +0000)]
r21878: Fix a bug with smbd serving a windows terminal server: If winbind decides smbd
to be idle it might happen that smbd needs to do a winbind operation (for
example sid2name) as non-root. This then fails to get the privileged
pipe. When later on on the same connection another authentication request
comes in, we try to do the CRAP auth via the non-privileged pipe.
This adds a winbindd_priv_request_response() request that kills the existing
winbind pipe connection if it's not privileged.
Jeremy Allison [Mon, 19 Mar 2007 20:39:58 +0000 (20:39 +0000)]
r21876: Start adding in the seal implementation - prototype code
for the server side enc. (doesn't break anything).
I'll keep updating this until I've got NTLM seal working
on both client and server, then add in the gss level
seal.
Jeremy.