Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 175ec9e1 authored by Steve French's avatar Steve French
Browse files

[CIFS] Rename server time zone field



Server time zone is not really a time zone, rather a time adjustement
in seconds.

CC: Guenter Kukkukk <linux@kukkukk.com>
Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
parent 25ee4a98
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -465,7 +465,7 @@ static struct super_operations cifs_super_ops = {
	.umount_begin   = cifs_umount_begin,
	.remount_fs = cifs_remount,
#ifdef CONFIG_CIFS_STATS2
	cifs_show_stats,
	.cifs_show_stats,
#endif
};

+1 −1
Original line number Diff line number Diff line
@@ -153,7 +153,7 @@ struct TCP_Server_Info {
	char sessid[4];		/* unique token id for this session */
	/* (returned on Negotiate */
	int capabilities; /* allow selective disabling of caps by smb sess */
	__u16 timeZone;
	__u16 timeAdj;  /* Adjust for difference in server time zone in sec */
	__u16 CurrentMid;         /* multiplex id - rotating counter */
	char cryptKey[CIFS_CRYPTO_KEY_SIZE];
	/* 16th byte of RFC1001 workstation name is always null */
+4 −1
Original line number Diff line number Diff line
@@ -417,7 +417,10 @@ typedef struct lanman_neg_rsp {
	__le16 MaxNumberVcs;
	__le16 RawMode;
	__le32 SessionKey;
	__le32 ServerTime;
	struct {
		__le16 Time;
		__le16 Date;
	} __attribute__((packed)) SrvTime;
	__le16 ServerTimeZone;
	__le16 EncryptionKeyLength;
	__le16 Reserved;
+4 −5
Original line number Diff line number Diff line
@@ -473,7 +473,6 @@ CIFSSMBNegotiate(unsigned int xid, struct cifsSesInfo *ses)
			server->maxRw = 0;/* we do not need to use raw anyway */
			server->capabilities = CAP_MPX_MODE;
		}
		server->timeZone = le16_to_cpu(rsp->ServerTimeZone);
		tmp = le16_to_cpu(rsp->ServerTimeZone);
		if (tmp == (int)0xffff) {
			/* OS/2 often does not set timezone therefore
@@ -492,11 +491,11 @@ CIFSSMBNegotiate(unsigned int xid, struct cifsSesInfo *ses)
			tmp = (int)(utc.tv_sec - ts.tv_sec);
			adjust = tmp < 0 ? -29 : 29;
			tmp = ((tmp + adjust) / 60) * 60;
			server->timeZone = tmp;
			server->timeAdj = tmp;
		} else {
			server->timeZone = tmp * 60; /* also in seconds */
			server->timeAdj = tmp * 60; /* also in seconds */
		}
		cFYI(1,("server->timeZone: %d seconds", server->timeZone));
		cFYI(1,("server->timeAdj: %d seconds", server->timeAdj));


		/* BB get server time for time conversions and add
@@ -557,7 +556,7 @@ CIFSSMBNegotiate(unsigned int xid, struct cifsSesInfo *ses)
	cFYI(0, ("Max buf = %d", ses->server->maxBuf));
	GETU32(ses->server->sessid) = le32_to_cpu(pSMBr->SessionKey);
	server->capabilities = le32_to_cpu(pSMBr->Capabilities);
	server->timeZone = le16_to_cpu(pSMBr->ServerTimeZone);	
	server->timeAdj = le16_to_cpu(pSMBr->ServerTimeZone) * 60;	
	if (pSMBr->EncryptionKeyLength == CIFS_CRYPTO_KEY_SIZE) {
		memcpy(server->cryptKey, pSMBr->u.EncryptionKey,
		       CIFS_CRYPTO_KEY_SIZE);
+5 −4
Original line number Diff line number Diff line
@@ -3320,15 +3320,16 @@ int cifs_setup_session(unsigned int xid, struct cifsSesInfo *pSesInfo,
		if(linuxExtEnabled == 0)
			pSesInfo->capabilities &= (~CAP_UNIX);
	/*	pSesInfo->sequence_number = 0;*/
		cFYI(1,("Security Mode: 0x%x Capabilities: 0x%x Time Zone: %d",
		cFYI(1,("Security Mode: 0x%x Capabilities: 0x%x TimeAdjust: %d",
			pSesInfo->server->secMode,
			pSesInfo->server->capabilities,
			pSesInfo->server->timeZone));
			pSesInfo->server->timeAdj));
		if(experimEnabled < 2)
			rc = CIFS_SessSetup(xid, pSesInfo,
					    first_time, nls_info);
		else if (extended_security
				&& (pSesInfo->capabilities & CAP_EXTENDED_SECURITY)
				&& (pSesInfo->capabilities 
					& CAP_EXTENDED_SECURITY)
				&& (pSesInfo->server->secType == NTLMSSP)) {
			rc = -EOPNOTSUPP;
		} else if (extended_security
@@ -3342,7 +3343,7 @@ int cifs_setup_session(unsigned int xid, struct cifsSesInfo *pSesInfo,
			if (!rc) {
				if(ntlmv2_flag) {
					char * v2_response;
					cFYI(1,("Can use more secure NTLM version 2 password hash"));
					cFYI(1,("more secure NTLM ver2 hash"));
					if(CalcNTLMv2_partial_mac_key(pSesInfo, 
						nls_info)) {
						rc = -ENOMEM;