Age | Commit message (Collapse) | Author | Files | Lines |
|
This fixes a race condition that leads to the winbindd_children list becoming
corrupted. It happens when on a busy winbind SIGCHLD is a bit late.
Imagine a winbind with multiple requests in the queue for a single child. Child
dies, and before the SIGCHLD handler is called we find the socket to be dead.
wb_child_request_done is called, receiving an error from wb_simple_trans_recv.
It closes the socket. Then immediately the wb_child_request_trigger will do
another fork_domain_child before the signal handler is called. This means that
we do another fork_domain_child, we have child->sock==-1 at this point.
fork_domain_child will do a DLIST_ADD(winbindd_children, child) a second time
where the child is already part of that list. This corrupts the list. Then the
signal handler kicks in, spinning in
for (child = winbindd_children; child != NULL; child = child->next) {
forever. Not good. This patch makes sure that both conditions (sock==-1 and not
part of the list) for a winbindd_child struct match up.
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Fri Aug 26 18:51:24 CEST 2011 on sn-devel-104
|
|
|
|
We previously only allowed objects of class ntDSDSA
Andrew Bartlett
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri Aug 26 15:34:21 CEST 2011 on sn-devel-104
|
|
|
|
|
|
This will help projects like OpenChange that depend on
this code, now that it has been split between two libraries.
Andrew Bartlett
|
|
This string is reported to the caller, which makes debugging much easier.
Andrew Bartlett
|
|
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Counterpart for last checkin. A lot less likely, but not impossible in a child.
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Fri Aug 26 13:14:27 CEST 2011 on sn-devel-104
|
|
I've seen
[2011/08/26 01:44:10.872057, 1] winbindd/winbindd_dual.c:1336(fork_domain_child)
fork_domain_child: Could not read child status: nread=-1, error=Interrupted system call
on a customer box. Not good.
|
|
Samba3 python module using passdb api modifies the database files, to
upgrade them to latest version. So copy the sample database before
running tests on it.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri Aug 26 07:04:15 CEST 2011 on sn-devel-104
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
To correctly find the domain sid, passdb api uses netbios name to
look up secrets database. If no nebios name is configured, passdb uses
current hostname and adds entry for hostname in secrets and uses that
instead of the intended one.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
upgrade_from_s3 script now requires samba3 configuration file and target
directory for samba4 database. In addition, it either uses --libdir option
or --testparm option to correctly guess the paths for samba3 databases
(private dir and state directory).
Usage: upgrade_from_s3 [options] <configuration_file> <targetdir>
Input arguments are:
<configuration_file> - path to existing smb.conf
<targetdir> - directory in which samba4 database will be created
In addition, specify either samba3 database directory (with --libdir) or
samba3 testparm utility (with --testparm).
Before using passdb interface, initialize s3 loadparm context using
correct path settings for private dir and state directory.
Export account policy from s3 to s4.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Instead of parsing samba3 database files (password, group mapping,
account policy, secrets), use passdb python wrapper.
Similarly for parsing configuration, use samba3 param python wrapper.
Other databases (idmap, registry, wins) are still parsed in python.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
lm_pw and nt_pw are fixed length strings and convert them to python
strings as fixed length strings.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Catch known exceptions only.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
|
|
Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Fri Aug 26 01:23:52 CEST 2011 on sn-devel-104
|
|
in db_tdb_fetch()
|
|
|
|
list security records for the INFO/version key ...
|
|
INFO/version key ...
|
|
INFO/version (and use it)
|
|
This also fixes the earlier faulty handing in of a useless stackframe
memory context via private_data.
|
|
This also fixes broken private_data parameter for the traverse function
(making use of it): Originally a memory context was handed in but was not used.
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Thu Aug 25 23:06:12 CEST 2011 on sn-devel-104
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Poll and select behave differently regarding error handling. When doing the
connect(2), we can not rely on poll telling us both readability and writability
upon error. Just always try a second connect(2). At least on Linux it returns 0
when it succeeded.
Signed-off-by: Jeremy Allison <jra@samba.org>
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu Aug 25 19:39:12 CEST 2011 on sn-devel-104
|
|
Guenther
Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Thu Aug 25 15:15:57 CEST 2011 on sn-devel-104
|
|
Guenther
|
|
I'm pretty sure a SHOW_DELETED was wanted here
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Thu Aug 25 01:10:13 CEST 2011 on sn-devel-104
|
|
this should now match the DNS entries of w2k8r2c
Pair-Programmed-With: Amitay Isaacs <amitay@gmail.com>
|