- All Known Implementing Classes:
BaseConfiguration,DelegatingConfiguration,PropertyConfiguration
public interface Configuration
Implementors of this interface should extend
BaseConfiguration or
DelegatingConfiguration to get forward compatibility.- Author:
- mbechler
-
Method Summary
Modifier and TypeMethodDescriptionlongPropertyorg.codelibs.jcifs.smb.impl.client.attrExpirationPeriod(int, 5000)intgetBatchLimit(String cmd) Gets the batch limit for a specific SMB commandPropertyorg.codelibs.jcifs.smb.netbios.baddr(string, default255.255.255.255)intPropertyorg.codelibs.jcifs.smb.impl.maxBuffers(int, default 16)intPropertyorg.codelibs.jcifs.smb.impl.client.capabilities(int)intPropertyorg.codelibs.jcifs.smb.impl.client.connTimeout(int, default 35000)Propertyorg.codelibs.jcifs.smb.impl.client.domainPropertyorg.codelibs.jcifs.smb.impl.client.passwordPropertyorg.codelibs.jcifs.smb.impl.client.usernamelongPropertyorg.codelibs.jcifs.smb.impl.client.dfs.ttl(int, default 300)intPropertyorg.codelibs.jcifs.smb.impl.client.flags2(int)Propertyorg.codelibs.jcifs.smb.impl.client.guestPassword, defaults to empty stringPropertyorg.codelibs.jcifs.smb.impl.client.guestUsername, defaults to GUESTintLanman compatibility level Microsoft TechNet Documentation LM Compatibility Levels 0 or 1 LM and NTLM 2 NTLM only 3-5 NTLMv2 only Propertyorg.codelibs.jcifs.smb.impl.lmCompatibility(int, default 3)intPropertyorg.codelibs.jcifs.smb.impl.client.listCount(int, default 200)intPropertyorg.codelibs.jcifs.smb.impl.client.listSize(int, default 65435)Propertyorg.codelibs.jcifs.smb.netbios.lmhosts(string)Propertyorg.codelibs.jcifs.smb.impl.client.laddr(string)intPropertyorg.codelibs.jcifs.smb.impl.client.lport(int)Gets the local timezone for time-related operationsPropertyorg.codelibs.jcifs.smb.impl.client.logonSharebyte[]Machine identifier ClientGuid, ... are derived from this value.intGets the maximum buffer size for IO operationsMaximum protocol version Propertyorg.codelibs.jcifs.smb.impl.client.maxVersion(string, default SMB210)intPropertyorg.codelibs.jcifs.smb.impl.client.maxMpxCount(int, default 10)intPropertyorg.codelibs.jcifs.smb.impl.client.maxRequestRetries(int, default 2)Minimum protocol version Propertyorg.codelibs.jcifs.smb.impl.client.minVersion(string, default SMB1)Propertyorg.codelibs.jcifs.smb.impl.client.nativeLanMan(string, defaultjCIFS)Propertyorg.codelibs.jcifs.smb.impl.client.nativeOs(string, defaultos.name)intPropertyorg.codelibs.jcifs.smb.netbios.cachePolicyin minutes (int, default 600)Propertyorg.codelibs.jcifs.smb.netbios.hostname(string)Propertyorg.codelibs.jcifs.smb.netbios.laddr(string)intPropertyorg.codelibs.jcifs.smb.netbios.lport(int)intPropertyorg.codelibs.jcifs.smb.netbios.rcv_buf_size(int, default 576)intPropertyorg.codelibs.jcifs.smb.netbios.retryCount(int, default 2)intPropertyorg.codelibs.jcifs.smb.netbios.retryTimeout(int, default 3000)Propertyorg.codelibs.jcifs.smb.netbios.scope(string)intPropertyorg.codelibs.jcifs.smb.netbios.snd_buf_size(int, default 576)intPropertyorg.codelibs.jcifs.smb.netbios.soTimeout(int, default 5000)intPropertyorg.codelibs.jcifs.smb.impl.client.notify_buf_size(int, default 1024)Propertyorg.codelibs.jcifs.smb.encoding(string, defaultCp850)intgetPid()Gets the process ID to use in SMB messagesGets the secure random number generator for cryptographic operationsintPropertyorg.codelibs.jcifs.smb.impl.client.rcv_buf_size(int, default 65535)intDeprecated.use getReceiveBufferSize insteadPropertyorg.codelibs.jcifs.smb.resolveOrder(string, defaultLMHOSTS,DNS,WINS,BCAST)intPropertyorg.codelibs.jcifs.smb.impl.client.responseTimeout(int, default 30000)intPropertyorg.codelibs.jcifs.smb.impl.client.snd_buf_size(int, default 65535)intPropertyorg.codelibs.jcifs.smb.impl.client.ssnLimit(int, 250)intPropertyorg.codelibs.jcifs.smb.impl.client.sessionTimeout(int, default 35000)intPropertyorg.codelibs.jcifs.smb.impl.client.soTimeout(int, default 35000)intPropertyorg.codelibs.jcifs.smb.impl.client.transaction_buf_size(int, default 65535)intGets the virtual circuit number for SMB connectionsPropertyorg.codelibs.jcifs.smb.netbios.wins(string, comma separated)booleanisAllowCompound(String command) Checks if compound requests are allowed for the specified commandbooleanPropertyorg.codelibs.jcifs.smb.impl.client.allowGuestFallback, defaults to falsebooleanPropertyorg.codelibs.jcifs.smb.impl.allowNTLMFallback(boolean, default true)booleanEnable hack to make kerberos auth work with DFS sending short names This works by appending the domain name to the netbios short name and will fail horribly if this mapping is not correct for your domain.booleanPropertyorg.codelibs.jcifs.smb.impl.client.dfs.disabled(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.dfs.strictView(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.disablePlainTextPasswords(boolean, default true)booleanPropertyorg.codelibs.jcifs.smb.impl.client.disableSpnegoIntegrity(boolean, false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.encryptionEnabled(boolean, default false) This is an experimental option allowing to indicate support during protocol negotiation, SMB encryption is not implemented yet.booleanPropertyorg.codelibs.jcifs.smb.impl.client.enforceSpnegoIntegrity(boolean, false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.forceExtendedSecurity(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.forceUnicode(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.ignoreCopyToException(boolean, false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.ipcSigningEnforced(boolean, default true)booleanEnable port 139 failover Propertyorg.codelibs.jcifs.smb.impl.client.port139.enabled(boolean, default false)booleanWhether to preserve share name case When true, preserve the original case of share names instead of converting to uppercase.booleanEnforce secure negotiation Propertyorg.codelibs.jcifs.smb.impl.client.requireSecureNegotiate(boolean, default true) This does not provide any actual downgrade protection if SMB1 is allowed.booleanPropertyorg.codelibs.jcifs.smb.impl.client.SendNTLMTargetName(boolean, true)booleanPropertyorg.codelibs.jcifs.smb.impl.client.signingPreferred(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.signingEnforced(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.strictResourceLifecycle(bool, default false) If enabled, SmbFile instances starting with their first use will hold a reference to their tree.booleanThis is solely intended for debuggingbooleanPropertyorg.codelibs.jcifs.smb.impl.client.useBatching(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.useRawNTLM(boolean, default false)booleanUse SMB2 non-backward compatible negotiation style Propertyorg.codelibs.jcifs.smb.impl.client.useSMB2Negotiation(boolean, default false)booleanPropertyorg.codelibs.jcifs.smb.impl.client.useUnicode(boolean, default true)
-
Method Details
-
getRandom
SecureRandom getRandom()Gets the secure random number generator for cryptographic operations- Returns:
- random source to use
-
getDfsTtl
long getDfsTtl()Propertyorg.codelibs.jcifs.smb.impl.client.dfs.ttl(int, default 300)- Returns:
- title to live, in seconds, for DFS cache entries
-
isDfsStrictView
boolean isDfsStrictView()Propertyorg.codelibs.jcifs.smb.impl.client.dfs.strictView(boolean, default false)- Returns:
- whether a authentication failure during DFS resolving will throw an exception
-
isDfsDisabled
boolean isDfsDisabled()Propertyorg.codelibs.jcifs.smb.impl.client.dfs.disabled(boolean, default false)- Returns:
- whether DFS lookup is disabled
-
isDfsConvertToFQDN
boolean isDfsConvertToFQDN()Enable hack to make kerberos auth work with DFS sending short names This works by appending the domain name to the netbios short name and will fail horribly if this mapping is not correct for your domain. Propertyorg.codelibs.jcifs.smb.impl.client.dfs.convertToFQDN(boolean, default false)- Returns:
- whether to convert NetBIOS names returned by DFS to FQDNs
-
getMinimumVersion
DialectVersion getMinimumVersion()Minimum protocol version Propertyorg.codelibs.jcifs.smb.impl.client.minVersion(string, default SMB1)- Returns:
- minimum protocol version to use/allow
- Since:
- 2.1
- See Also:
-
getMaximumVersion
DialectVersion getMaximumVersion()Maximum protocol version Propertyorg.codelibs.jcifs.smb.impl.client.maxVersion(string, default SMB210)- Returns:
- maximum protocol version to use/allow
- Since:
- 2.1
- See Also:
-
isUseSMB2OnlyNegotiation
boolean isUseSMB2OnlyNegotiation()Use SMB2 non-backward compatible negotiation style Propertyorg.codelibs.jcifs.smb.impl.client.useSMB2Negotiation(boolean, default false)- Returns:
- whether to use non-backward compatible protocol negotiation
-
isRequireSecureNegotiate
boolean isRequireSecureNegotiate()Enforce secure negotiation Propertyorg.codelibs.jcifs.smb.impl.client.requireSecureNegotiate(boolean, default true) This does not provide any actual downgrade protection if SMB1 is allowed. It will also break connections with SMB2 servers that do not properly sign error responses.- Returns:
- whether to enforce the use of secure negotiation.
-
isPort139FailoverEnabled
boolean isPort139FailoverEnabled()Enable port 139 failover Propertyorg.codelibs.jcifs.smb.impl.client.port139.enabled(boolean, default false)- Returns:
- whether to failover to legacy transport on port 139
-
isUseUnicode
boolean isUseUnicode()Propertyorg.codelibs.jcifs.smb.impl.client.useUnicode(boolean, default true)- Returns:
- whether to announce support for unicode
-
isForceUnicode
boolean isForceUnicode()Propertyorg.codelibs.jcifs.smb.impl.client.forceUnicode(boolean, default false)- Returns:
- whether to use unicode, even if the server does not announce it
-
isUseBatching
boolean isUseBatching()Propertyorg.codelibs.jcifs.smb.impl.client.useBatching(boolean, default false)- Returns:
- whether to enable support for SMB1 AndX command batching
-
getNativeOs
String getNativeOs()Propertyorg.codelibs.jcifs.smb.impl.client.nativeOs(string, defaultos.name)- Returns:
- OS string to report
-
getNativeLanman
String getNativeLanman()Propertyorg.codelibs.jcifs.smb.impl.client.nativeLanMan(string, defaultjCIFS)- Returns:
- Lanman string to report
-
getRecieveBufferSize
Deprecated.use getReceiveBufferSize insteadPropertyorg.codelibs.jcifs.smb.impl.client.rcv_buf_size(int, default 65535)- Returns:
- receive buffer size, in bytes
-
getReceiveBufferSize
int getReceiveBufferSize()Propertyorg.codelibs.jcifs.smb.impl.client.rcv_buf_size(int, default 65535)- Returns:
- receive buffer size, in bytes
-
getSendBufferSize
int getSendBufferSize()Propertyorg.codelibs.jcifs.smb.impl.client.snd_buf_size(int, default 65535)- Returns:
- send buffer size, in bytes
-
getSoTimeout
int getSoTimeout()Propertyorg.codelibs.jcifs.smb.impl.client.soTimeout(int, default 35000)- Returns:
- socket timeout, in milliseconds
-
getConnTimeout
int getConnTimeout()Propertyorg.codelibs.jcifs.smb.impl.client.connTimeout(int, default 35000)- Returns:
- timeout for establishing a socket connection, in milliseconds
-
getSessionTimeout
int getSessionTimeout()Propertyorg.codelibs.jcifs.smb.impl.client.sessionTimeout(int, default 35000)- Returns:
- timeout for SMB sessions, in milliseconds
-
getResponseTimeout
int getResponseTimeout()Propertyorg.codelibs.jcifs.smb.impl.client.responseTimeout(int, default 30000)- Returns:
- timeout for SMB responses, in milliseconds
-
getLocalPort
int getLocalPort()Propertyorg.codelibs.jcifs.smb.impl.client.lport(int)- Returns:
- local port to use for outgoing connections
-
getLocalAddr
InetAddress getLocalAddr()Propertyorg.codelibs.jcifs.smb.impl.client.laddr(string)- Returns:
- local address to use for outgoing connections
-
getNetbiosHostname
String getNetbiosHostname()Propertyorg.codelibs.jcifs.smb.netbios.hostname(string)- Returns:
- local NETBIOS/short name to announce
-
getDefaultDomain
String getDefaultDomain()Propertyorg.codelibs.jcifs.smb.impl.client.domain- Returns:
- default credentials, domain name
-
getDefaultUsername
String getDefaultUsername()Propertyorg.codelibs.jcifs.smb.impl.client.username- Returns:
- default credentials, user name
-
getDefaultPassword
String getDefaultPassword()Propertyorg.codelibs.jcifs.smb.impl.client.password- Returns:
- default credentials, password
-
getLanManCompatibility
int getLanManCompatibility()Lanman compatibility level Microsoft TechNet Documentation
PropertyLM Compatibility Levels 0 or 1 LM and NTLM 2 NTLM only 3-5 NTLMv2 only org.codelibs.jcifs.smb.impl.lmCompatibility(int, default 3)- Returns:
- lanman compatibility level, defaults to 3 i.e. NTLMv2 only
-
isAllowNTLMFallback
boolean isAllowNTLMFallback()Propertyorg.codelibs.jcifs.smb.impl.allowNTLMFallback(boolean, default true)- Returns:
- whether to allow fallback from kerberos to NTLM
-
isUseRawNTLM
boolean isUseRawNTLM()Propertyorg.codelibs.jcifs.smb.impl.useRawNTLM(boolean, default false)- Returns:
- whether to use raw NTLMSSP tokens instead of SPNEGO wrapped ones
- Since:
- 2.1
-
isDisablePlainTextPasswords
boolean isDisablePlainTextPasswords()Propertyorg.codelibs.jcifs.smb.impl.client.disablePlainTextPasswords(boolean, default true)- Returns:
- whether the usage of plaintext passwords is prohibited, defaults to false
-
getResolveOrder
List<ResolverType> getResolveOrder()Propertyorg.codelibs.jcifs.smb.resolveOrder(string, defaultLMHOSTS,DNS,WINS,BCAST)- Returns:
- order and selection of resolver modules, see
ResolverType
-
getBroadcastAddress
InetAddress getBroadcastAddress()Propertyorg.codelibs.jcifs.smb.netbios.baddr(string, default255.255.255.255)- Returns:
- broadcast address to use
-
getWinsServers
InetAddress[] getWinsServers()Propertyorg.codelibs.jcifs.smb.netbios.wins(string, comma separated)- Returns:
- WINS server to use
-
getNetbiosLocalPort
int getNetbiosLocalPort()Propertyorg.codelibs.jcifs.smb.netbios.lport(int)- Returns:
- local bind port for nebios connections
-
getNetbiosLocalAddress
InetAddress getNetbiosLocalAddress()Propertyorg.codelibs.jcifs.smb.netbios.laddr(string)- Returns:
- local bind address for netbios connections
-
getNetbiosSoTimeout
int getNetbiosSoTimeout()Propertyorg.codelibs.jcifs.smb.netbios.soTimeout(int, default 5000)- Returns:
- socket timeout for netbios connections, in milliseconds
-
getVcNumber
int getVcNumber()Gets the virtual circuit number for SMB connections- Returns:
- virtual circuit number to use
-
getCapabilities
int getCapabilities()Propertyorg.codelibs.jcifs.smb.impl.client.capabilities(int)- Returns:
- custom capabilities
-
getFlags2
int getFlags2()Propertyorg.codelibs.jcifs.smb.impl.client.flags2(int)- Returns:
- custom flags2
-
getSessionLimit
int getSessionLimit()Propertyorg.codelibs.jcifs.smb.impl.client.ssnLimit(int, 250)- Returns:
- maximum number of sessions on a single connection
-
getOemEncoding
String getOemEncoding()Propertyorg.codelibs.jcifs.smb.encoding(string, defaultCp850)- Returns:
- OEM encoding to use
-
getLocalTimezone
TimeZone getLocalTimezone()Gets the local timezone for time-related operations- Returns:
- local timezone
-
getPid
int getPid()Gets the process ID to use in SMB messages- Returns:
- Process id to send, randomized if unset
-
getMaxMpxCount
int getMaxMpxCount()Propertyorg.codelibs.jcifs.smb.impl.client.maxMpxCount(int, default 10)- Returns:
- maximum count of concurrent commands to announce
-
isSigningEnabled
boolean isSigningEnabled()Propertyorg.codelibs.jcifs.smb.impl.client.signingPreferred(boolean, default false)- Returns:
- whether to enable SMB signing (for everything), if available
-
isIpcSigningEnforced
boolean isIpcSigningEnforced()Propertyorg.codelibs.jcifs.smb.impl.client.ipcSigningEnforced(boolean, default true)- Returns:
- whether to enforce SMB signing for IPC connections
-
isSigningEnforced
boolean isSigningEnforced()Propertyorg.codelibs.jcifs.smb.impl.client.signingEnforced(boolean, default false)- Returns:
- whether to enforce SMB signing (for everything)
-
isEncryptionEnabled
boolean isEncryptionEnabled()Propertyorg.codelibs.jcifs.smb.impl.client.encryptionEnabled(boolean, default false) This is an experimental option allowing to indicate support during protocol negotiation, SMB encryption is not implemented yet.- Returns:
- whether SMB encryption is enabled
- Since:
- 2.1
-
isForceExtendedSecurity
boolean isForceExtendedSecurity()Propertyorg.codelibs.jcifs.smb.impl.client.forceExtendedSecurity(boolean, default false)- Returns:
- whether to force extended security usage
-
getLmHostsFileName
String getLmHostsFileName()Propertyorg.codelibs.jcifs.smb.netbios.lmhosts(string)- Returns:
- lmhosts file to use
-
getNetbiosScope
String getNetbiosScope()Propertyorg.codelibs.jcifs.smb.netbios.scope(string)- Returns:
- default netbios scope to set in requests
-
getNetbiosSndBufSize
int getNetbiosSndBufSize()Propertyorg.codelibs.jcifs.smb.netbios.snd_buf_size(int, default 576)- Returns:
- netbios send buffer size
-
getNetbiosRcvBufSize
int getNetbiosRcvBufSize()Propertyorg.codelibs.jcifs.smb.netbios.rcv_buf_size(int, default 576)- Returns:
- netbios recieve buffer size
-
getNetbiosRetryTimeout
int getNetbiosRetryTimeout()Propertyorg.codelibs.jcifs.smb.netbios.retryTimeout(int, default 3000)- Returns:
- timeout of retry requests, in milliseconds
-
getNetbiosRetryCount
int getNetbiosRetryCount()Propertyorg.codelibs.jcifs.smb.netbios.retryCount(int, default 2)- Returns:
- maximum number of retries for netbios requests
-
getNetbiosCachePolicy
int getNetbiosCachePolicy()Propertyorg.codelibs.jcifs.smb.netbios.cachePolicyin minutes (int, default 600)- Returns:
- netbios cache timeout, in seconds, 0 - disable caching, -1 - cache forever
-
getMaximumBufferSize
int getMaximumBufferSize()Gets the maximum buffer size for IO operations- Returns:
- the maximum size of IO buffers, limits the maximum message size
-
getTransactionBufferSize
int getTransactionBufferSize()Propertyorg.codelibs.jcifs.smb.impl.client.transaction_buf_size(int, default 65535)- Returns:
- maximum data size for SMB transactions
-
getBufferCacheSize
int getBufferCacheSize()Propertyorg.codelibs.jcifs.smb.impl.maxBuffers(int, default 16)- Returns:
- number of buffers to keep in cache
-
getListCount
int getListCount()Propertyorg.codelibs.jcifs.smb.impl.client.listCount(int, default 200)- Returns:
- maxmimum number of elements to request in a list request
-
getListSize
int getListSize()Propertyorg.codelibs.jcifs.smb.impl.client.listSize(int, default 65435)- Returns:
- maximum data size for list/info requests (known overhead is subtracted)
-
getAttributeCacheTimeout
long getAttributeCacheTimeout()Propertyorg.codelibs.jcifs.smb.impl.client.attrExpirationPeriod(int, 5000)- Returns:
- timeout of file attribute cache
-
isIgnoreCopyToException
boolean isIgnoreCopyToException()Propertyorg.codelibs.jcifs.smb.impl.client.ignoreCopyToException(boolean, false)- Returns:
- whether to ignore exceptions that occur during file copy
-
getBatchLimit
Gets the batch limit for a specific SMB command- Parameters:
cmd- the SMB command name- Returns:
- the batch limit for the given command
-
getNotifyBufferSize
int getNotifyBufferSize()Propertyorg.codelibs.jcifs.smb.impl.client.notify_buf_size(int, default 1024)- Returns:
- the size of the requested server notify buffer
-
getMaxRequestRetries
int getMaxRequestRetries()Propertyorg.codelibs.jcifs.smb.impl.client.maxRequestRetries(int, default 2)- Returns:
- retry SMB requests on failure up to n times
-
isStrictResourceLifecycle
boolean isStrictResourceLifecycle()Propertyorg.codelibs.jcifs.smb.impl.client.strictResourceLifecycle(bool, default false) If enabled, SmbFile instances starting with their first use will hold a reference to their tree. This means that trees/sessions/connections won't be idle-disconnected even if there are no other active references (currently executing code, file descriptors). Depending on the usage scenario, this may have some benefit as there won't be any delays for restablishing these resources, however comes at the cost of having to properly release all SmbFile instances you no longer need.- Returns:
- whether to use strict resource lifecycle
-
isTraceResourceUsage
boolean isTraceResourceUsage()This is solely intended for debugging- Returns:
- whether to track the locations from which resources were created
-
isAllowCompound
Checks if compound requests are allowed for the specified command- Parameters:
command- the SMB command to check- Returns:
- whether to allow creating compound requests with that command
-
getMachineId
byte[] getMachineId()Machine identifier ClientGuid, ... are derived from this value. Normally this should be randomly assigned for each client instance/configuration.- Returns:
- machine identifier (32 byte)
-
isDisableSpnegoIntegrity
boolean isDisableSpnegoIntegrity()Propertyorg.codelibs.jcifs.smb.impl.client.disableSpnegoIntegrity(boolean, false)- Returns:
- whether to disable sending/verifying SPNEGO mechanismListMIC
-
isEnforceSpnegoIntegrity
boolean isEnforceSpnegoIntegrity()Propertyorg.codelibs.jcifs.smb.impl.client.enforceSpnegoIntegrity(boolean, false)- Returns:
- whether to enforce verifying SPNEGO mechanismListMIC
-
isSendNTLMTargetName
boolean isSendNTLMTargetName()Propertyorg.codelibs.jcifs.smb.impl.client.SendNTLMTargetName(boolean, true)- Returns:
- whether to send an AvTargetName with the NTLM exchange
-
getGuestPassword
String getGuestPassword()Propertyorg.codelibs.jcifs.smb.impl.client.guestPassword, defaults to empty string- Returns:
- password used when guest authentication is requested
-
getGuestUsername
String getGuestUsername()Propertyorg.codelibs.jcifs.smb.impl.client.guestUsername, defaults to GUEST- Returns:
- username used when guest authentication is requested
-
isAllowGuestFallback
boolean isAllowGuestFallback()Propertyorg.codelibs.jcifs.smb.impl.client.allowGuestFallback, defaults to false- Returns:
- whether to permit guest logins when user authentication is requested
-