From e5c6a3e36147103e87d1c55173f4b54ba6134904 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Mon, 3 Oct 2005 13:46:11 +0000 Subject: r10683: Samba3's wbinfo -t should give the correct answer now. Tridge, if you have time, you might want to look at the segfault I was still seeing. Now I store the handle to the netlogon pipe in the global winbind state and free it on the next entry into check_machacc. The problem seems to be that talloc_free()ing a pipe struct from within a callback function on that pipe is not possible. I think I can live with that, but it has been not really obvious. To reproduce the segfault you might want to look at putting a talloc_free(state->getcreds->out.netlogon) into wbsrv_samba3_check_machacc_receive_creds. This is called from a dcerpc callback function. In particular if the check failed it would be nice if I could delete the pipe directly and not post a different event to some winbind queue. I tried to delete the pipe from a timed event triggered immediately, but this also fails because the inner loop seems to hit the same event again, calling it twice. Volker (This used to be commit 5436d7764812bb632ba865e633005ed07923b57f) --- source4/winbind/wb_async_helpers.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source4/winbind/wb_async_helpers.h') diff --git a/source4/winbind/wb_async_helpers.h b/source4/winbind/wb_async_helpers.h index 6c4f1d84a8..b37a66e972 100644 --- a/source4/winbind/wb_async_helpers.h +++ b/source4/winbind/wb_async_helpers.h @@ -34,3 +34,13 @@ struct wb_finddcs { } *dcs; } out; }; + +struct wb_get_schannel_creds { + struct { + struct cli_credentials *creds; + struct smbcli_tree *tree; + } in; + struct { + struct dcerpc_pipe *netlogon; + } out; +}; -- cgit