mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
r20082: When fork_domain_child is forked when we're offline
the child inherits *all* active check_online timout handlers.
This is bad when it's not our domain (ie. BUILTIN).
Jeremy.
(This used to be commit 8d815ec4c1
)
This commit is contained in:
parent
ff61853fb3
commit
5be92d0d18
@ -755,6 +755,7 @@ static BOOL fork_domain_child(struct winbindd_child *child)
|
||||
{
|
||||
int fdpair[2];
|
||||
struct winbindd_cli_state state;
|
||||
struct winbindd_domain *domain;
|
||||
extern BOOL override_logfile;
|
||||
|
||||
if (socketpair(AF_UNIX, SOCK_STREAM, 0, fdpair) != 0) {
|
||||
@ -844,6 +845,16 @@ static BOOL fork_domain_child(struct winbindd_child *child)
|
||||
child->domain->startup_time = time(NULL);
|
||||
}
|
||||
|
||||
for (domain = domain_list(); domain; domain = domain->next) {
|
||||
if (domain != child->domain) {
|
||||
/* Ensure we have no "check_online" events pending
|
||||
that are not on this domain. */
|
||||
if (domain->check_online_event) {
|
||||
TALLOC_FREE(domain->check_online_event);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
while (1) {
|
||||
|
||||
int ret;
|
||||
|
Loading…
Reference in New Issue
Block a user