summaryrefslogtreecommitdiff
path: root/source4/librpc/rpc
diff options
context:
space:
mode:
authorVolker Lendecke <vlendec@samba.org>2005-10-03 13:46:11 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:39:18 -0500
commite5c6a3e36147103e87d1c55173f4b54ba6134904 (patch)
treeb50938eff14034f7b6db53caf76dd2cd9e8cd10c /source4/librpc/rpc
parent28bc38de2ab3a408702cd7d6b69d6549a1fea71a (diff)
downloadsamba-e5c6a3e36147103e87d1c55173f4b54ba6134904.tar.gz
samba-e5c6a3e36147103e87d1c55173f4b54ba6134904.tar.bz2
samba-e5c6a3e36147103e87d1c55173f4b54ba6134904.zip
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)
Diffstat (limited to 'source4/librpc/rpc')
-rw-r--r--source4/librpc/rpc/dcerpc_smb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/source4/librpc/rpc/dcerpc_smb.c b/source4/librpc/rpc/dcerpc_smb.c
index 5fb4f7c950..b63a3080f5 100644
--- a/source4/librpc/rpc/dcerpc_smb.c
+++ b/source4/librpc/rpc/dcerpc_smb.c
@@ -470,7 +470,7 @@ static void pipe_open_recv(struct smbcli_request *req)
smb->fnum = state->open->ntcreatex.out.fnum;
smb->tree = talloc_reference(smb, state->tree);
smb->server_name= strupper_talloc(
- smb, state->tree->session->transport->socket->hostname);
+ smb, state->tree->session->transport->called.name);
if (smb->server_name == NULL) {
ctx->status = NT_STATUS_NO_MEMORY;
goto done;