The branch, v3-3-test has been updated via b6f1ece... s3-rpc_client: make sure cli_rpc_pipe_open_schannel() does not always return NT_STATUS_OK. via 1fe281e... s3-rpc_client: protect rpc_pipe_np_smb_conn against a NULL struct rpc_pipe_client. from 31bb625... Second part of the fix for bug 6828 - infinite timeout occurs when byte lock held outside of samba. Fixes case where a connection with a pending lock can me marked "idle", and ensures that the lock queue timeout is always recalculated. Jeremy.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log ----------------------------------------------------------------- commit b6f1eced1f88b747c4cc8077ebf6bf4370100e09 Author: Günther Deschner <g...@samba.org> Date: Tue Nov 10 13:10:12 2009 +0100 s3-rpc_client: make sure cli_rpc_pipe_open_schannel() does not always return NT_STATUS_OK. Guenther Part of a fix for bug #6697. And hopefully a fix for bug #6889. commit 1fe281e25708b999a3e9ef1d5808a79995fbb438 Author: Günther Deschner <g...@samba.org> Date: Tue Nov 10 11:04:08 2009 +0100 s3-rpc_client: protect rpc_pipe_np_smb_conn against a NULL struct rpc_pipe_client. Guenther Part of a fix for bug #6697. ----------------------------------------------------------------------- Summary of changes: source/rpc_client/cli_pipe.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source/rpc_client/cli_pipe.c b/source/rpc_client/cli_pipe.c index be84c39..88bd4be 100644 --- a/source/rpc_client/cli_pipe.c +++ b/source/rpc_client/cli_pipe.c @@ -2348,6 +2348,9 @@ bool rpccli_get_pwd_hash(struct rpc_pipe_client *cli, uint8_t nt_hash[16]) struct cli_state *rpc_pipe_np_smb_conn(struct rpc_pipe_client *p) { + if (p == NULL) { + return NULL; + } if (p->transport_type == NCACN_NP) { return p->trans.np.cli; } @@ -3369,6 +3372,8 @@ NTSTATUS cli_rpc_pipe_open_schannel(struct cli_state *cli, struct rpc_pipe_client *result = NULL; NTSTATUS status; + *presult = NULL; + status = get_schannel_session_key(cli, domain, &neg_flags, &netlogon_pipe); if (!NT_STATUS_IS_OK(status)) { @@ -3389,7 +3394,7 @@ NTSTATUS cli_rpc_pipe_open_schannel(struct cli_state *cli, *presult = result; } - return NT_STATUS_OK; + return status; } /**************************************************************************** -- Samba Shared Repository