Commit e65a5cb4 authored by Steve French's avatar Steve French

[CIFS] Fix build warning

Fix build warning in Shirish's recent SMB3 signing patch
which occurs when SMB2 support is disabled in Kconfig.

fs/built-in.o: In function `cifs_setup_session':
>> (.text+0xa1767): undefined reference to `generate_smb3signingkey'

Pointed out by: automated 0-DAY kernel build testing backend
Intel Open Source Technology Center

CC: Shirish Pargaonkar <shirishpargaonkar@gmail.com>
Signed-off-by: default avatarSteve French <smfrench@gmail.com>
parent 429b46f4
...@@ -365,6 +365,8 @@ struct smb_version_operations { ...@@ -365,6 +365,8 @@ struct smb_version_operations {
void (*set_lease_key)(struct inode *, struct cifs_fid *fid); void (*set_lease_key)(struct inode *, struct cifs_fid *fid);
/* generate new lease key */ /* generate new lease key */
void (*new_lease_key)(struct cifs_fid *fid); void (*new_lease_key)(struct cifs_fid *fid);
/* The next two functions will need to be changed to per smb session */
void (*generate_signingkey)(struct TCP_Server_Info *server);
int (*calc_signature)(struct smb_rqst *rqst, int (*calc_signature)(struct smb_rqst *rqst,
struct TCP_Server_Info *server); struct TCP_Server_Info *server);
}; };
......
...@@ -436,7 +436,7 @@ extern int setup_ntlmv2_rsp(struct cifs_ses *, const struct nls_table *); ...@@ -436,7 +436,7 @@ extern int setup_ntlmv2_rsp(struct cifs_ses *, const struct nls_table *);
extern int cifs_crypto_shash_allocate(struct TCP_Server_Info *); extern int cifs_crypto_shash_allocate(struct TCP_Server_Info *);
extern void cifs_crypto_shash_release(struct TCP_Server_Info *); extern void cifs_crypto_shash_release(struct TCP_Server_Info *);
extern int calc_seckey(struct cifs_ses *); extern int calc_seckey(struct cifs_ses *);
extern int generate_smb3signingkey(struct TCP_Server_Info *); extern void generate_smb3signingkey(struct TCP_Server_Info *);
#ifdef CONFIG_CIFS_WEAK_PW_HASH #ifdef CONFIG_CIFS_WEAK_PW_HASH
extern int calc_lanman_hash(const char *password, const char *cryptkey, extern int calc_lanman_hash(const char *password, const char *cryptkey,
......
...@@ -3841,7 +3841,8 @@ cifs_setup_session(const unsigned int xid, struct cifs_ses *ses, ...@@ -3841,7 +3841,8 @@ cifs_setup_session(const unsigned int xid, struct cifs_ses *ses,
server->sequence_number = 0x2; server->sequence_number = 0x2;
server->session_estab = true; server->session_estab = true;
ses->auth_key.response = NULL; ses->auth_key.response = NULL;
generate_smb3signingkey(server); if (server->ops->generate_signingkey)
server->ops->generate_signingkey(server);
} }
mutex_unlock(&server->srv_mutex); mutex_unlock(&server->srv_mutex);
......
...@@ -709,6 +709,7 @@ struct smb_version_operations smb30_operations = { ...@@ -709,6 +709,7 @@ struct smb_version_operations smb30_operations = {
.get_lease_key = smb2_get_lease_key, .get_lease_key = smb2_get_lease_key,
.set_lease_key = smb2_set_lease_key, .set_lease_key = smb2_set_lease_key,
.new_lease_key = smb2_new_lease_key, .new_lease_key = smb2_new_lease_key,
.generate_signingkey = generate_smb3signingkey,
.calc_signature = smb3_calc_signature, .calc_signature = smb3_calc_signature,
}; };
......
...@@ -116,7 +116,7 @@ smb2_calc_signature(struct smb_rqst *rqst, struct TCP_Server_Info *server) ...@@ -116,7 +116,7 @@ smb2_calc_signature(struct smb_rqst *rqst, struct TCP_Server_Info *server)
return rc; return rc;
} }
int void
generate_smb3signingkey(struct TCP_Server_Info *server) generate_smb3signingkey(struct TCP_Server_Info *server)
{ {
unsigned char zero = 0x0; unsigned char zero = 0x0;
...@@ -187,7 +187,7 @@ generate_smb3signingkey(struct TCP_Server_Info *server) ...@@ -187,7 +187,7 @@ generate_smb3signingkey(struct TCP_Server_Info *server)
memcpy(server->smb3signingkey, hashptr, SMB3_SIGNKEY_SIZE); memcpy(server->smb3signingkey, hashptr, SMB3_SIGNKEY_SIZE);
smb3signkey_ret: smb3signkey_ret:
return rc; return;
} }
int int
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment