[SCM] Samba Shared Repository - branch v3-2-test updated -
initial-v3-2-test-2618-gf64b46d
Volker Lendecke
vl at samba.org
Thu Feb 28 13:16:38 GMT 2008
The branch, v3-2-test has been updated
via f64b46dc278899c3449cfd3dbb614aadcf5614d3 (commit)
via e69244a5c8c7c6b7c1897adc4b4b1cfdfc7a7999 (commit)
from b0d1db95e5d7590f9c67be7bf5cb78adfee16635 (commit)
http://gitweb.samba.org/?samba.git;a=shortlog;h=v3-2-test
- Log -----------------------------------------------------------------
commit f64b46dc278899c3449cfd3dbb614aadcf5614d3
Author: Volker Lendecke <vl at samba.org>
Date: Thu Feb 28 14:04:54 2008 +0100
Add cli_setup_packet_buf
This is == cli_setup_packet but takes an explicit buffer argument
commit e69244a5c8c7c6b7c1897adc4b4b1cfdfc7a7999
Author: Volker Lendecke <vl at samba.org>
Date: Thu Feb 28 14:03:38 2008 +0100
Make cli_struct a talloc parent
-----------------------------------------------------------------------
Summary of changes:
source/libsmb/clientgen.c | 58 ++++++++++++++++++++++++++------------------
1 files changed, 34 insertions(+), 24 deletions(-)
Changeset truncated at 500 lines:
diff --git a/source/libsmb/clientgen.c b/source/libsmb/clientgen.c
index ccd1cc6..6419123 100644
--- a/source/libsmb/clientgen.c
+++ b/source/libsmb/clientgen.c
@@ -450,31 +450,41 @@ bool cli_send_smb_direct_writeX(struct cli_state *cli,
Setup basics in a outgoing packet.
****************************************************************************/
-void cli_setup_packet(struct cli_state *cli)
+void cli_setup_packet_buf(struct cli_state *cli, char *buf)
{
+ uint16 flags2;
cli->rap_error = 0;
- SSVAL(cli->outbuf,smb_pid,cli->pid);
- SSVAL(cli->outbuf,smb_uid,cli->vuid);
- SSVAL(cli->outbuf,smb_mid,cli->mid);
- if (cli->protocol > PROTOCOL_CORE) {
- uint16 flags2;
- if (cli->case_sensitive) {
- SCVAL(cli->outbuf,smb_flg,0x0);
- } else {
- /* Default setting, case insensitive. */
- SCVAL(cli->outbuf,smb_flg,0x8);
- }
- flags2 = FLAGS2_LONG_PATH_COMPONENTS;
- if (cli->capabilities & CAP_UNICODE)
- flags2 |= FLAGS2_UNICODE_STRINGS;
- if ((cli->capabilities & CAP_DFS) && cli->dfsroot)
- flags2 |= FLAGS2_DFS_PATHNAMES;
- if (cli->capabilities & CAP_STATUS32)
- flags2 |= FLAGS2_32_BIT_ERROR_CODES;
- if (cli->use_spnego)
- flags2 |= FLAGS2_EXTENDED_SECURITY;
- SSVAL(cli->outbuf,smb_flg2, flags2);
+ SIVAL(buf,smb_rcls,0);
+ SSVAL(buf,smb_pid,cli->pid);
+ memset(buf+smb_pidhigh, 0, 12);
+ SSVAL(buf,smb_uid,cli->vuid);
+ SSVAL(buf,smb_mid,cli->mid);
+
+ if (cli->protocol <= PROTOCOL_CORE) {
+ return;
+ }
+
+ if (cli->case_sensitive) {
+ SCVAL(buf,smb_flg,0x0);
+ } else {
+ /* Default setting, case insensitive. */
+ SCVAL(buf,smb_flg,0x8);
}
+ flags2 = FLAGS2_LONG_PATH_COMPONENTS;
+ if (cli->capabilities & CAP_UNICODE)
+ flags2 |= FLAGS2_UNICODE_STRINGS;
+ if ((cli->capabilities & CAP_DFS) && cli->dfsroot)
+ flags2 |= FLAGS2_DFS_PATHNAMES;
+ if (cli->capabilities & CAP_STATUS32)
+ flags2 |= FLAGS2_32_BIT_ERROR_CODES;
+ if (cli->use_spnego)
+ flags2 |= FLAGS2_EXTENDED_SECURITY;
+ SSVAL(buf,smb_flg2, flags2);
+}
+
+void cli_setup_packet(struct cli_state *cli)
+{
+ cli_setup_packet_buf(cli, cli->outbuf);
}
/****************************************************************************
@@ -537,7 +547,7 @@ struct cli_state *cli_initialise(void)
return NULL;
}
- cli = SMB_MALLOC_P(struct cli_state);
+ cli = talloc(NULL, struct cli_state);
if (!cli) {
return NULL;
}
@@ -695,7 +705,7 @@ void cli_shutdown(struct cli_state *cli)
cli->fd = -1;
cli->smb_rw_error = SMB_READ_OK;
- SAFE_FREE(cli);
+ TALLOC_FREE(cli);
}
/****************************************************************************
--
Samba Shared Repository
More information about the samba-cvs
mailing list