3.3.3 Initialization
The server MUST initialize the following:
All the members in ServerStatistics MUST be set to zero.
SnapshotList MUST be set to empty in all shares in ShareList.
ServerEnabled MUST be set to FALSE.
GlobalOpenTable MUST be set to an empty table.
GlobalSessionTable MUST be set to an empty table.
ServerGuid MUST be set to a newly generated GUID.
ConnectionList MUST be set to an empty list.
ServerStartTime SHOULD<217> be set to zero.
IsDfsCapable MUST be set to FALSE.
ServerSideCopyMaxNumberofChunks MUST be set to an implementation-specific<218> default value.
ServerSideCopyMaxChunkSize MUST be set to an implementation-specific<219> default value.
ServerSideCopyMaxDataSize MUST be set to an implementation-specific<220> default value.
ShareList MUST be set to an empty list.
Open.DurableOpenScavengerTimeout MUST be set to zero.
If the server implements the SMB 2.1 or SMB 3.x dialect family, it MUST initialize the following:
ServerHashLevel MUST be set to an implementation-specific<221> default value.
If the server implements the SMB 2.1 or 3.x dialect family and supports leasing, the server MUST initialize the following:
GlobalLeaseTableList MUST be set to an empty list.
If the server implements the SMB 2.1 or SMB 3.x dialect family and supports resiliency, it MUST implement the following:
MaxResiliencyTimeout SHOULD<222> be set to an implementation-specific default value.
If the server implements the SMB 3.x dialect family, the server MUST initialize the following:
GlobalClientTable MUST be set to an empty list.
EncryptData MUST be set in an implementation-specific manner.
RejectUnencryptedAccess MUST be set in an implementation-specific manner.<223>
IsMultiChannelCapable MUST be set in an implementation-specific manner.<224>
AllowAnonymousAccess MUST be set to an implementation-specific<225> default value.
If the server implements the SMB 3.0.2 or SMB 3.1.1 dialect, the server MUST initialize the following:
IsSharedVHDSupported: MUST be set to FALSE.
If the server implements the SMB 3.1.1 dialect, the server MUST initialize the following:
MaxClusterDialect MUST be set in an implementation-specific manner.
Server.SupportsTreeConnectExtn MUST be set in an implementation-specific<226> manner.
AllowNamedPipeAccessOverQUIC MUST be set in an implementation-specific<227> manner.
The server MUST notify the completion of its initialization to the server service by invoking the event as specified in [MS-SRVS] section 3.1.6.14, providing the string "SMB2" as an input parameter.
IsMutualAuthOverQUICSupported MUST be set in an implementation-specific manner.<228>
ServerCertificateMappingTable MUST be initialized based on administrator configuration.