[SCM] Samba Shared Repository - branch master updated

Stefan Metzmacher metze at samba.org
Tue Sep 13 15:35:04 MDT 2011


The branch, master has been updated
       via  a26fe03 s3:smb2cli: split cli->smb2.gss_blob from cli->secblob
       via  1517985 s3:net_time: make use of cli_state_server_time_zone() and cli_state_server_time()
       via  7ba2bc3 s3:libsmb: make use of cli_state_server_time_zone()
       via  d62f1e1 s3:libsmb: add cli_state_server_time()
       via  4154b37 s3:libsmb: add cli_state_server_time_zone()
       via  43976bd s3:libsmb: make use of cli_state_server_session_key()
       via  7ec961d s3:libsmb: add cli_state_server_session_key()
      from  fa5475e s3:libsmb: make use of cli_state_security_mode()

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit a26fe036fee538c16a9e1b5e2369270260aec189
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 21:47:33 2011 +0200

    s3:smb2cli: split cli->smb2.gss_blob from cli->secblob
    
    metze
    
    Autobuild-User: Stefan Metzmacher <metze at samba.org>
    Autobuild-Date: Tue Sep 13 23:34:13 CEST 2011 on sn-devel-104

commit 15179852ea9d5b7427589a658f42ce7243b4d1fd
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 21:48:58 2011 +0200

    s3:net_time: make use of cli_state_server_time_zone() and cli_state_server_time()
    
    metze

commit 7ba2bc35a3bb40260347cf6001aab1726a7cde6e
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 20:43:10 2011 +0200

    s3:libsmb: make use of cli_state_server_time_zone()
    
    metze

commit d62f1e1e19965808faa148addc813f08eea3ccc6
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 21:41:17 2011 +0200

    s3:libsmb: add cli_state_server_time()
    
    metze

commit 4154b374d6fab6a3cf7bc16823405c87aa7ead42
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 20:42:20 2011 +0200

    s3:libsmb: add cli_state_server_time_zone()
    
    metze

commit 43976bdececee5b2e4b70e5dffec5c2244092635
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 18:39:51 2011 +0200

    s3:libsmb: make use of cli_state_server_session_key()
    
    metze

commit 7ec961d98724206bbc25abf3413df0433c30cf94
Author: Stefan Metzmacher <metze at samba.org>
Date:   Tue Sep 13 18:36:56 2011 +0200

    s3:libsmb: add cli_state_server_session_key()
    
    metze

-----------------------------------------------------------------------

Summary of changes:
 source3/include/client.h         |    1 +
 source3/libsmb/cliconnect.c      |    8 ++++----
 source3/libsmb/clientgen.c       |   15 +++++++++++++++
 source3/libsmb/clifile.c         |   12 ++++++------
 source3/libsmb/clilist.c         |   14 +++++++-------
 source3/libsmb/cliprint.c        |    2 +-
 source3/libsmb/clirap.c          |    6 +++---
 source3/libsmb/proto.h           |    3 +++
 source3/libsmb/smb2cli_negprot.c |    2 +-
 source3/utils/net_time.c         |    4 ++--
 10 files changed, 43 insertions(+), 24 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/client.h b/source3/include/client.h
index 3c39e54..7c039ae 100644
--- a/source3/include/client.h
+++ b/source3/include/client.h
@@ -166,6 +166,7 @@ struct cli_state {
 		uint32_t max_write_size;
 		struct timespec system_time;
 		struct timespec server_start_time;
+		DATA_BLOB gss_blob;
 
 		/* SMB2 tcon */
 		uint8_t share_type;
diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c
index ec1ec67..4ebabce 100644
--- a/source3/libsmb/cliconnect.c
+++ b/source3/libsmb/cliconnect.c
@@ -205,7 +205,7 @@ static struct tevent_req *cli_session_setup_lanman2_send(
 	SSVAL(vwv+2, 0, CLI_BUFFER_SIZE);
 	SSVAL(vwv+3, 0, 2);
 	SSVAL(vwv+4, 0, 1);
-	SIVAL(vwv+5, 0, cli->sesskey);
+	SIVAL(vwv+5, 0, cli_state_server_session_key(cli));
 	SSVAL(vwv+7, 0, lm_response.length);
 
 	bytes = talloc_array(state, uint8_t, lm_response.length);
@@ -420,7 +420,7 @@ struct tevent_req *cli_session_setup_guest_create(TALLOC_CTX *mem_ctx,
 	SSVAL(vwv+2, 0, CLI_BUFFER_SIZE);
 	SSVAL(vwv+3, 0, 2);
 	SSVAL(vwv+4, 0, cli_state_get_vc_num(cli));
-	SIVAL(vwv+5, 0, cli->sesskey);
+	SIVAL(vwv+5, 0, cli_state_server_session_key(cli));
 	SSVAL(vwv+7, 0, 0);
 	SSVAL(vwv+8, 0, 0);
 	SSVAL(vwv+9, 0, 0);
@@ -639,7 +639,7 @@ static struct tevent_req *cli_session_setup_plain_send(
 	SSVAL(vwv+2, 0, CLI_BUFFER_SIZE);
 	SSVAL(vwv+3, 0, 2);
 	SSVAL(vwv+4, 0, cli_state_get_vc_num(cli));
-	SIVAL(vwv+5, 0, cli->sesskey);
+	SIVAL(vwv+5, 0, cli_state_server_session_key(cli));
 	SSVAL(vwv+7, 0, 0);
 	SSVAL(vwv+8, 0, 0);
 	SSVAL(vwv+9, 0, 0);
@@ -987,7 +987,7 @@ static struct tevent_req *cli_session_setup_nt1_send(
 	SSVAL(vwv+2, 0, CLI_BUFFER_SIZE);
 	SSVAL(vwv+3, 0, 2);
 	SSVAL(vwv+4, 0, cli_state_get_vc_num(cli));
-	SIVAL(vwv+5, 0, cli->sesskey);
+	SIVAL(vwv+5, 0, cli_state_server_session_key(cli));
 	SSVAL(vwv+7, 0, lm_response.length);
 	SSVAL(vwv+8, 0, nt_response.length);
 	SSVAL(vwv+9, 0, 0);
diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c
index 2d3a3a1..db5e545 100644
--- a/source3/libsmb/clientgen.c
+++ b/source3/libsmb/clientgen.c
@@ -431,6 +431,11 @@ uint16_t cli_state_get_vc_num(struct cli_state *cli)
 	return cli->smb1.vc_num;
 }
 
+uint32_t cli_state_server_session_key(struct cli_state *cli)
+{
+	return cli->sesskey;
+}
+
 /****************************************************************************
  Set the PID to use for smb messages. Return the old pid.
 ****************************************************************************/
@@ -524,6 +529,16 @@ uint16_t cli_state_security_mode(struct cli_state *cli)
 	return cli->sec_mode;
 }
 
+int cli_state_server_time_zone(struct cli_state *cli)
+{
+	return cli->serverzone;
+}
+
+time_t cli_state_server_time(struct cli_state *cli)
+{
+	return cli->servertime;
+}
+
 struct cli_echo_state {
 	uint16_t vwv[1];
 	DATA_BLOB data;
diff --git a/source3/libsmb/clifile.c b/source3/libsmb/clifile.c
index 2a30d2c..b418049 100644
--- a/source3/libsmb/clifile.c
+++ b/source3/libsmb/clifile.c
@@ -3190,7 +3190,7 @@ struct tevent_req *cli_getattrE_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	state->zone_offset = cli->serverzone;
+	state->zone_offset = cli_state_server_time_zone(cli);
 	SSVAL(state->vwv+0,0,fnum);
 
 	subreq = cli_smb_send(state, ev, cli, SMBgetattrE, additional_flags,
@@ -3339,7 +3339,7 @@ struct tevent_req *cli_getatr_send(TALLOC_CTX *mem_ctx,
 		return NULL;
 	}
 
-	state->zone_offset = cli->serverzone;
+	state->zone_offset = cli_state_server_time_zone(cli);
 
 	bytes = talloc_array(state, uint8_t, 1);
 	if (tevent_req_nomem(bytes, req)) {
@@ -3486,11 +3486,11 @@ struct tevent_req *cli_setattrE_send(TALLOC_CTX *mem_ctx,
 
 	SSVAL(state->vwv+0, 0, fnum);
 	push_dos_date2((uint8_t *)&state->vwv[1], 0, change_time,
-		       cli->serverzone);
+		       cli_state_server_time_zone(cli));
 	push_dos_date2((uint8_t *)&state->vwv[3], 0, access_time,
-		       cli->serverzone);
+		       cli_state_server_time_zone(cli));
 	push_dos_date2((uint8_t *)&state->vwv[5], 0, write_time,
-		       cli->serverzone);
+		       cli_state_server_time_zone(cli));
 
 	subreq = cli_smb_send(state, ev, cli, SMBsetattrE, additional_flags,
 			      7, state->vwv, 0, NULL);
@@ -3597,7 +3597,7 @@ struct tevent_req *cli_setatr_send(TALLOC_CTX *mem_ctx,
 	}
 
 	SSVAL(state->vwv+0, 0, attr);
-	push_dos_date3((uint8_t *)&state->vwv[1], 0, mtime, cli->serverzone);
+	push_dos_date3((uint8_t *)&state->vwv[1], 0, mtime, cli_state_server_time_zone(cli));
 
 	bytes = talloc_array(state, uint8_t, 1);
 	if (tevent_req_nomem(bytes, req)) {
diff --git a/source3/libsmb/clilist.c b/source3/libsmb/clilist.c
index 521afc9..5118f9f 100644
--- a/source3/libsmb/clilist.c
+++ b/source3/libsmb/clilist.c
@@ -77,11 +77,11 @@ static size_t interpret_long_filename(TALLOC_CTX *ctx,
 				return pdata_end - base;
 			}
 			finfo->ctime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+4, cli->serverzone));
+				make_unix_date2(p+4, cli_state_server_time_zone(cli)));
 			finfo->atime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+8, cli->serverzone));
+				make_unix_date2(p+8, cli_state_server_time_zone(cli)));
 			finfo->mtime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+12, cli->serverzone));
+				make_unix_date2(p+12, cli_state_server_time_zone(cli)));
 			finfo->size = IVAL(p,16);
 			finfo->mode = CVAL(p,24);
 			len = CVAL(p, 26);
@@ -126,11 +126,11 @@ static size_t interpret_long_filename(TALLOC_CTX *ctx,
 				return pdata_end - base;
 			}
 			finfo->ctime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+4, cli->serverzone));
+				make_unix_date2(p+4, cli_state_server_time_zone(cli)));
 			finfo->atime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+8, cli->serverzone));
+				make_unix_date2(p+8, cli_state_server_time_zone(cli)));
 			finfo->mtime_ts = convert_time_t_to_timespec(
-				make_unix_date2(p+12, cli->serverzone));
+				make_unix_date2(p+12, cli_state_server_time_zone(cli)));
 			finfo->size = IVAL(p,16);
 			finfo->mode = CVAL(p,24);
 			len = CVAL(p, 30);
@@ -248,7 +248,7 @@ static bool interpret_short_filename(TALLOC_CTX *ctx,
 	finfo->mode = CVAL(p,21);
 
 	/* this date is converted to GMT by make_unix_date */
-	finfo->ctime_ts.tv_sec = make_unix_date(p+22, cli->serverzone);
+	finfo->ctime_ts.tv_sec = make_unix_date(p+22, cli_state_server_time_zone(cli));
 	finfo->ctime_ts.tv_nsec = 0;
 	finfo->mtime_ts.tv_sec = finfo->atime_ts.tv_sec = finfo->ctime_ts.tv_sec;
 	finfo->mtime_ts.tv_nsec = finfo->atime_ts.tv_nsec = 0;
diff --git a/source3/libsmb/cliprint.c b/source3/libsmb/cliprint.c
index 06cb025..f34b3e9 100644
--- a/source3/libsmb/cliprint.c
+++ b/source3/libsmb/cliprint.c
@@ -101,7 +101,7 @@ int cli_print_queue(struct cli_state *cli,
 					fix_char_ptr(SVAL(p,4), converter,
 						     rdata, rdrcnt));
 				job.t = make_unix_date3(
-					p + 12, cli->serverzone);
+					p + 12, cli_state_server_time_zone(cli));
 				job.size = IVAL(p,16);
 				fstrcpy(job.name,fix_char_ptr(SVAL(p,24),
 							      converter,
diff --git a/source3/libsmb/clirap.c b/source3/libsmb/clirap.c
index 8e7dc68..b20d089 100644
--- a/source3/libsmb/clirap.c
+++ b/source3/libsmb/clirap.c
@@ -640,13 +640,13 @@ NTSTATUS cli_qpathinfo1_recv(struct tevent_req *req,
 	}
 
 	if (change_time) {
-		*change_time = date_fn(state->data+0, state->cli->serverzone);
+		*change_time = date_fn(state->data+0, cli_state_server_time_zone(state->cli));
 	}
 	if (access_time) {
-		*access_time = date_fn(state->data+4, state->cli->serverzone);
+		*access_time = date_fn(state->data+4, cli_state_server_time_zone(state->cli));
 	}
 	if (write_time) {
-		*write_time = date_fn(state->data+8, state->cli->serverzone);
+		*write_time = date_fn(state->data+8, cli_state_server_time_zone(state->cli));
 	}
 	if (size) {
 		*size = IVAL(state->data, 12);
diff --git a/source3/libsmb/proto.h b/source3/libsmb/proto.h
index 4a56971..fef7ae0 100644
--- a/source3/libsmb/proto.h
+++ b/source3/libsmb/proto.h
@@ -170,6 +170,7 @@ const struct sockaddr_storage *cli_state_remote_sockaddr(struct cli_state *cli);
 const char *cli_state_remote_name(struct cli_state *cli);
 const char *cli_state_remote_realm(struct cli_state *cli);
 uint16_t cli_state_get_vc_num(struct cli_state *cli);
+uint32_t cli_state_server_session_key(struct cli_state *cli);
 uint16 cli_setpid(struct cli_state *cli, uint16 pid);
 uint16_t cli_getpid(struct cli_state *cli);
 bool cli_state_has_tcon(struct cli_state *cli);
@@ -183,6 +184,8 @@ uint32_t cli_state_capabilities(struct cli_state *cli);
 uint32_t cli_state_available_size(struct cli_state *cli, uint32_t ofs);
 uint16_t cli_state_max_requests(struct cli_state *cli);
 uint16_t cli_state_security_mode(struct cli_state *cli);
+int cli_state_server_time_zone(struct cli_state *cli);
+time_t cli_state_server_time(struct cli_state *cli);
 struct tevent_req *cli_echo_send(TALLOC_CTX *mem_ctx, struct event_context *ev,
 				 struct cli_state *cli, uint16_t num_echos,
 				 DATA_BLOB data);
diff --git a/source3/libsmb/smb2cli_negprot.c b/source3/libsmb/smb2cli_negprot.c
index 75532cd..df35225 100644
--- a/source3/libsmb/smb2cli_negprot.c
+++ b/source3/libsmb/smb2cli_negprot.c
@@ -123,7 +123,7 @@ static void smb2cli_negprot_done(struct tevent_req *subreq)
 		tevent_req_nterror(req, NT_STATUS_INVALID_NETWORK_RESPONSE);
 		return;
 	}
-	cli->secblob = data_blob(iov[1].iov_base, security_length);
+	cli->smb2.gss_blob = data_blob(iov[1].iov_base, security_length);
 
 	tevent_req_done(req);
 }
diff --git a/source3/utils/net_time.c b/source3/utils/net_time.c
index 6fc3f96..c8d0808 100644
--- a/source3/utils/net_time.c
+++ b/source3/utils/net_time.c
@@ -47,8 +47,8 @@ static time_t cli_servertime(const char *host,
 		goto done;
 	}
 
-	ret = cli->servertime;
-	if (zone) *zone = cli->serverzone;
+	ret = cli_state_server_time(cli);
+	if (zone) *zone = cli_state_server_time_zone(cli);
 
 done:
 	if (cli) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list