diff options
author | Stefan Metzmacher <metze@samba.org> | 2008-09-24 03:59:53 +0200 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2008-09-24 04:08:31 +0200 |
commit | b7d2ff38f54250db52c495d26a2b2923e5dcc83e (patch) | |
tree | a989eb62a8b7fc8765ee840d577201c5ac9bdacb | |
parent | 4962a4459ba73535d39eaa0fb77fd6bbf3f9bd7a (diff) | |
download | samba-b7d2ff38f54250db52c495d26a2b2923e5dcc83e.tar.gz samba-b7d2ff38f54250db52c495d26a2b2923e5dcc83e.tar.bz2 samba-b7d2ff38f54250db52c495d26a2b2923e5dcc83e.zip |
s4:libcli/smb_composite: we only check the signature when the server return OK
We need to manually free the request, otherwise the timeout handler is
triggered later.
metze
-rw-r--r-- | source4/libcli/smb_composite/sesssetup.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source4/libcli/smb_composite/sesssetup.c b/source4/libcli/smb_composite/sesssetup.c index 92b49dc3d4..645f5362ac 100644 --- a/source4/libcli/smb_composite/sesssetup.c +++ b/source4/libcli/smb_composite/sesssetup.c @@ -97,6 +97,15 @@ static void request_handler(struct smbcli_request *req) c->status = state->remote_status; state->req = NULL; + /* + * we only need to check the signature if the + * NT_STATUS_OK is returned + */ + if (!NT_STATUS_IS_OK(state->remote_status)) { + talloc_free(check_req); + check_req = NULL; + } + switch (state->setup.old.level) { case RAW_SESSSETUP_OLD: state->io->out.vuid = state->setup.old.out.vuid; |