Print this page
12513 SMB 3.1.1 support for server

*** 19,28 **** --- 19,29 ---- * CDDL HEADER END */ /* * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright 2019 Nexenta by DDN, Inc. All rights reserved. + * Copyright 2020 RackTop Systems, Inc. */ /* * Structures and type definitions for the SMB module. */
*** 886,895 **** --- 887,897 ---- #define SMB_SESSION_MAGIC 0x53455353 /* 'SESS' */ #define SMB_SESSION_VALID(p) \ ASSERT(((p) != NULL) && ((p)->s_magic == SMB_SESSION_MAGIC)) #define SMB_CHALLENGE_SZ 8 + #define SMB3_PREAUTH_HASHVAL_SZ 64 typedef enum { SMB_SESSION_STATE_INITIALIZED = 0, SMB_SESSION_STATE_DISCONNECTED, SMB_SESSION_STATE_CONNECTED,
*** 936,945 **** --- 938,948 ---- uint32_t srv_cap; struct smb_sign signing; /* SMB1 */ void *sign_mech; /* mechanism info */ void *enc_mech; + void *preauth_mech; /* SMB2/SMB3 signing support */ int (*sign_calc)(struct smb_request *, struct mbuf_chain *, uint8_t *); void (*sign_fini)(struct smb_session *);
*** 974,983 **** --- 977,992 ---- int reply_max_bytes; uint16_t smb_msg_size; uint16_t smb_max_mpx; smb_srqueue_t *s_srqueue; uint64_t start_time; + + uint16_t smb31_enc_cipherid; + uint16_t smb31_preauth_hashid; + uint8_t smb31_preauth_hashval[SMB3_PREAUTH_HASHVAL_SZ]; + uint8_t smb31_preauth_salt[32]; + unsigned char MAC_key[44]; char ip_addr_str[INET6_ADDRSTRLEN]; uint8_t clnt_uuid[16]; char workstation[SMB_PI_MAX_HOST]; } smb_session_t;