SetConfiguration method of the MSFT_SmbServerConfiguration class

Sets SMB server configuration values.

Syntax

uint32 SetConfiguration(
  [in] boolean AnnounceServer,
  [in] uint32  AsynchronousCredits,
  [in] boolean AutoShareServer,
  [in] boolean AutoShareWorkstation,
  [in] uint32  CachedOpenLimit,
  [in] string  AnnounceComment,
  [in] boolean EnableDownlevelTimewarp,
  [in] boolean EnableLeasing,
  [in] boolean EnableMultiChannel,
  [in] boolean EnableStrictNameChecking,
  [in] uint32  AutoDisconnectTimeout,
  [in] uint32  DurableHandleV2TimeoutInSeconds,
  [in] boolean EnableAuthenticateUserSharing,
  [in] boolean EnableForcedLogoff,
  [in] boolean EnableOplocks,
  [in] boolean EnableSecuritySignature,
  [in] boolean ServerHidden,
  [in] uint32  IrpStackSize,
  [in] uint32  KeepAliveTime,
  [in] uint32  MaxChannelPerSession,
  [in] uint32  MaxMpxCount,
  [in] uint32  MaxSessionPerConnection,
  [in] uint32  MaxThreadsPerQueue,
  [in] uint32  MaxWorkItems,
  [in] string  NullSessionPipes,
  [in] string  NullSessionShares,
  [in] uint32  OplockBreakWait,
  [in] uint32  PendingClientTimeoutInSeconds,
  [in] boolean RequireSecuritySignature,
  [in] boolean EnableSMB1Protocol,
  [in] boolean EnableSMB2Protocol,
  [in] uint32  Smb2CreditsMax,
  [in] uint32  Smb2CreditsMin,
  [in] uint32  SmbServerNameHardeningLevel,
  [in] boolean TreatHostAsStableStorage,
  [in] boolean ValidateAliasNotCircular,
  [in] boolean ValidateShareScope,
  [in] boolean ValidateShareScopeNotAliased,
  [in] boolean ValidateTargetName,
  [in] boolean EncryptData,
  [in] boolean RejectUnencryptedAccess,
  [in] boolean AuditSmb1Access
);

Parameters

AnnounceServer [in]

Controls whether the server announces itself via browser announcements.

AsynchronousCredits [in]

The maximum number of concurrent asynchronous SMB commands that are allowed on a single connection.

AutoShareServer [in]

Controls whether default server shares will be shared out.

AutoShareWorkstation [in]

Controls whether default workstation shares will be shared out.

CachedOpenLimit [in]

Controls the maximum number of cached open files.

AnnounceComment [in]

A string to be used in browser announcements. See the AnnounceServer parameter.

EnableDownlevelTimewarp [in]

Controls whether down-level timewarp is enabled.

EnableLeasing [in]

Controls whether leasing will be enabled.

EnableMultiChannel [in]

Controls whether SMB Multichannel is enabled for this server.

EnableStrictNameChecking [in]

Controls whether the server should do strict name checking on incoming connection requests.

AutoDisconnectTimeout [in]

The number of minutes after which an idle connection will be disconnected.

DurableHandleV2TimeoutInSeconds [in]

Number of minutes after which a handle that has been preserved for durability will be closed by the system if a client has not reclaimed it.

EnableAuthenticateUserSharing [in]

Controls whether the connection can be shared among authenticated users.

EnableForcedLogoff [in]

Controls whether forced logoff will be enabled.

EnableOplocks [in]

Controls whether opportunistic locking will be enabled.

EnableSecuritySignature [in]

Controls whether security signature will be enabled.

ServerHidden [in]

Controls whether the server will announce itself. If True, the server will not announce itself.

IrpStackSize [in]

Controls the default IRP stack size.

KeepAliveTime [in]

Controls how often TCP attempts to verify that an idle connection is still available by sending a Keep Alive packet. This property overrides the server Keep Alive time setting.

MaxChannelPerSession [in]

Maximum number of channels per session.

MaxMpxCount [in]

Controls the maximum MPX count for SMB1.

MaxSessionPerConnection [in]

Maximum number of sessions that can be served per connection.

MaxThreadsPerQueue [in]

Maximum threads per worker queue.

MaxWorkItems [in]

Controls the maximum SMB1 work items.

NullSessionPipes [in]

The pipes allowable by null sessions for this server.

NullSessionShares [in]

The shares allowable by null sessions for this server.

OplockBreakWait [in]

Controls how long the create caller will wait on an oplock break.

PendingClientTimeoutInSeconds [in]

Number of seconds after which a pending client request will be timed out.

RequireSecuritySignature [in]

Controls whether security signature will be required.

EnableSMB1Protocol [in]

Controls whether SMB1 protocol will be enabled.

EnableSMB2Protocol [in]

Controls whether SMB2 protocol will be enabled.

Smb2CreditsMax [in]

Maximum number of SMB2 credits.

Smb2CreditsMin [in]

Minimum number of SMB2 credits.

SmbServerNameHardeningLevel [in]

The SMB server name hardening level.

TreatHostAsStableStorage [in]

Controls whether the host will be treated as stable storage.

ValidateAliasNotCircular [in]

Controls whether aliases not being circular will be validated.

ValidateShareScope [in]

Controls whether existence of share scopes will be checked during share creation.

ValidateShareScopeNotAliased [in]

Controls whether to validate share scopes that are not aliased on creation.

ValidateTargetName [in]

Controls whether to validate target name on alias creation.

EncryptData [in]

Controls whether this server allows for SMB Encryption. To ensure security, data will be encrypted in flight if this parameter is True or if the EncryptData property of the corresponding MSFT_SmbShare object is True.

RejectUnencryptedAccess [in]

True if unencrypted access requests should be rejected.

AuditSmb1Access [in]

TBD.

Windows Server 2012 R2, Windows 8.1, Windows Server 2012 and Windows 8: This parameter is not supported before Windows Server 2016 and Windows 10.

Requirements

Minimum supported client
Windows 8
Minimum supported server
Windows Server 2012
Namespace
Root\Microsoft\Windows\Smb
MOF
SmbWmiV2.mof
DLL
SmbWmiV2.dll

See also

MSFT_SmbServerConfiguration