diff options
Diffstat (limited to 'Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs')
| -rw-r--r-- | Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs | 198 |
1 files changed, 138 insertions, 60 deletions
diff --git a/Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs b/Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs index 0793c7541..79b24f441 100644 --- a/Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs +++ b/Emby.Common.Implementations/IO/SharpCifs/Smb/SmbConstants.cs @@ -23,6 +23,61 @@ namespace SharpCifs.Smb { internal static class SmbConstants { + internal static void ApplyConfig() + { + SmbConstants.Laddr = Config.GetLocalHost(); + SmbConstants.Lport = Config.GetInt("jcifs.smb.client.lport", 0); + SmbConstants.MaxMpxCount = Config.GetInt("jcifs.smb.client.maxMpxCount", SmbConstants.DefaultMaxMpxCount); + SmbConstants.SndBufSize = Config.GetInt("jcifs.smb.client.snd_buf_size", SmbConstants.DefaultSndBufSize); + SmbConstants.RcvBufSize = Config.GetInt("jcifs.smb.client.rcv_buf_size", SmbConstants.DefaultRcvBufSize); + SmbConstants.UseUnicode = Config.GetBoolean("jcifs.smb.client.useUnicode", true); + SmbConstants.ForceUnicode = Config.GetBoolean("jcifs.smb.client.useUnicode", false); + SmbConstants.UseNtstatus = Config.GetBoolean("jcifs.smb.client.useNtStatus", true); + SmbConstants.Signpref = Config.GetBoolean("jcifs.smb.client.signingPreferred", false); + SmbConstants.UseNtsmbs = Config.GetBoolean("jcifs.smb.client.useNTSmbs", true); + SmbConstants.UseExtsec = Config.GetBoolean("jcifs.smb.client.useExtendedSecurity", true); + SmbConstants.NetbiosHostname = Config.GetProperty("jcifs.netbios.hostname", null); + SmbConstants.LmCompatibility = Config.GetInt("jcifs.smb.lmCompatibility", 3); + + SmbConstants.UseBatching = Config.GetBoolean("jcifs.smb.client.useBatching", true); + SmbConstants.OemEncoding = Config.GetProperty("jcifs.encoding", Config.DefaultOemEncoding); + SmbConstants.DefaultFlags2 = + SmbConstants.Flags2LongFilenames + | SmbConstants.Flags2ExtendedAttributes + | (SmbConstants.UseExtsec + ? SmbConstants.Flags2ExtendedSecurityNegotiation + : 0) + | (SmbConstants.Signpref + ? SmbConstants.Flags2SecuritySignatures + : 0) + | (SmbConstants.UseNtstatus + ? SmbConstants.Flags2Status32 + : 0) + | (SmbConstants.UseUnicode + ? SmbConstants.Flags2Unicode + : 0); + SmbConstants.DefaultCapabilities = + (SmbConstants.UseNtsmbs + ? SmbConstants.CapNtSmbs + : 0) + | (SmbConstants.UseNtstatus + ? SmbConstants.CapStatus32 + : 0) + | (SmbConstants.UseUnicode + ? SmbConstants.CapUnicode + : 0) + | SmbConstants.CapDfs; + SmbConstants.Flags2 = Config.GetInt("jcifs.smb.client.flags2", SmbConstants.DefaultFlags2); + SmbConstants.Capabilities = Config.GetInt("jcifs.smb.client.capabilities", SmbConstants.DefaultCapabilities); + SmbConstants.TcpNodelay = Config.GetBoolean("jcifs.smb.client.tcpNoDelay", false); + SmbConstants.ResponseTimeout = Config.GetInt("jcifs.smb.client.responseTimeout", SmbConstants.DefaultResponseTimeout); + SmbConstants.SsnLimit = Config.GetInt("jcifs.smb.client.ssnLimit", SmbConstants.DefaultSsnLimit); + SmbConstants.SoTimeout = Config.GetInt("jcifs.smb.client.soTimeout", SmbConstants.DefaultSoTimeout); + SmbConstants.ConnTimeout = Config.GetInt("jcifs.smb.client.connTimeout", SmbConstants.DefaultConnTimeout); + SmbConstants.NativeOs = Config.GetProperty("jcifs.smb.client.nativeOs", Runtime.GetProperty("os.name")); + SmbConstants.NativeLanman = Config.GetProperty("jcifs.smb.client.nativeLanMan", "jCIFS"); + } + public static readonly int DefaultPort = 445; public static readonly int DefaultMaxMpxCount = 10; @@ -39,41 +94,44 @@ namespace SharpCifs.Smb public static readonly int DefaultConnTimeout = 35000; - public static readonly IPAddress Laddr = Config.GetLocalHost(); + public static IPAddress Laddr { get; internal set; } + = Config.GetLocalHost(); - public static readonly int Lport = Config.GetInt("jcifs.smb.client.lport", 0); + public static int Lport { get; internal set; } + = Config.GetInt("jcifs.smb.client.lport", 0); - public static readonly int MaxMpxCount = Config.GetInt("jcifs.smb.client.maxMpxCount", DefaultMaxMpxCount - ); + public static int MaxMpxCount { get; internal set; } + = Config.GetInt("jcifs.smb.client.maxMpxCount", DefaultMaxMpxCount); - public static readonly int SndBufSize = Config.GetInt("jcifs.smb.client.snd_buf_size", DefaultSndBufSize - ); + public static int SndBufSize { get; internal set; } + = Config.GetInt("jcifs.smb.client.snd_buf_size", DefaultSndBufSize); - public static readonly int RcvBufSize = Config.GetInt("jcifs.smb.client.rcv_buf_size", DefaultRcvBufSize - ); + public static int RcvBufSize { get; internal set; } + = Config.GetInt("jcifs.smb.client.rcv_buf_size", DefaultRcvBufSize); - public static readonly bool UseUnicode = Config.GetBoolean("jcifs.smb.client.useUnicode", - true); + public static bool UseUnicode { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useUnicode", true); - public static readonly bool ForceUnicode = Config.GetBoolean("jcifs.smb.client.useUnicode" - , false); + public static bool ForceUnicode { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useUnicode", false); - public static readonly bool UseNtstatus = Config.GetBoolean("jcifs.smb.client.useNtStatus" - , true); + public static bool UseNtstatus { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useNtStatus", true); - public static readonly bool Signpref = Config.GetBoolean("jcifs.smb.client.signingPreferred" - , false); + public static bool Signpref { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.signingPreferred", false); - public static readonly bool UseNtsmbs = Config.GetBoolean("jcifs.smb.client.useNTSmbs", true - ); + public static bool UseNtsmbs { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useNTSmbs", true); - public static readonly bool UseExtsec = Config.GetBoolean("jcifs.smb.client.useExtendedSecurity" - , true); + public static bool UseExtsec { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useExtendedSecurity", true); - public static readonly string NetbiosHostname = Config.GetProperty("jcifs.netbios.hostname" - , null); + public static string NetbiosHostname { get; internal set; } + = Config.GetProperty("jcifs.netbios.hostname", null); - public static readonly int LmCompatibility = Config.GetInt("jcifs.smb.lmCompatibility", 3); + public static int LmCompatibility { get; internal set; } + = Config.GetInt("jcifs.smb.lmCompatibility", 3); public static readonly int FlagsNone = unchecked(0x00); @@ -227,50 +285,70 @@ namespace SharpCifs.Smb public static readonly TimeZoneInfo Tz = TimeZoneInfo.Local; - public static readonly bool UseBatching = Config.GetBoolean("jcifs.smb.client.useBatching" - , true); - - public static readonly string OemEncoding = Config.GetProperty("jcifs.encoding", Config.DefaultOemEncoding - ); - - public static readonly string UniEncoding = "UTF-16LE"; - - public static readonly int DefaultFlags2 = Flags2LongFilenames | Flags2ExtendedAttributes - | (UseExtsec ? Flags2ExtendedSecurityNegotiation : 0) | (Signpref ? Flags2SecuritySignatures - : 0) | (UseNtstatus ? Flags2Status32 : 0) | (UseUnicode ? Flags2Unicode : 0 - ); - - public static readonly int DefaultCapabilities = (UseNtsmbs ? CapNtSmbs : 0) | (UseNtstatus - ? CapStatus32 : 0) | (UseUnicode ? CapUnicode : 0) | CapDfs; - - public static readonly int Flags2 = Config.GetInt("jcifs.smb.client.flags2", DefaultFlags2 - ); - - public static readonly int Capabilities = Config.GetInt("jcifs.smb.client.capabilities", DefaultCapabilities - ); - - public static readonly bool TcpNodelay = Config.GetBoolean("jcifs.smb.client.tcpNoDelay", - false); - - public static readonly int ResponseTimeout = Config.GetInt("jcifs.smb.client.responseTimeout" - , DefaultResponseTimeout); + public static bool UseBatching { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.useBatching", true); + + public static string OemEncoding { get; internal set; } + = Config.GetProperty("jcifs.encoding", Config.DefaultOemEncoding); + + public static string UniEncoding = "UTF-16LE"; + + public static int DefaultFlags2 { get; internal set; } + = Flags2LongFilenames + | Flags2ExtendedAttributes + | (UseExtsec + ? Flags2ExtendedSecurityNegotiation + : 0) + | (Signpref + ? Flags2SecuritySignatures + : 0) + | (UseNtstatus + ? Flags2Status32 + : 0) + | (UseUnicode + ? Flags2Unicode + : 0); + + public static int DefaultCapabilities { get; internal set; } + = (UseNtsmbs + ? CapNtSmbs + : 0) + | (UseNtstatus + ? CapStatus32 + : 0) + | (UseUnicode + ? CapUnicode + : 0) + | CapDfs; + + public static int Flags2 { get; internal set; } + = Config.GetInt("jcifs.smb.client.flags2", DefaultFlags2); + + public static int Capabilities { get; internal set; } + = Config.GetInt("jcifs.smb.client.capabilities", DefaultCapabilities); + + public static bool TcpNodelay { get; internal set; } + = Config.GetBoolean("jcifs.smb.client.tcpNoDelay", false); + + public static int ResponseTimeout { get; internal set; } + = Config.GetInt("jcifs.smb.client.responseTimeout", DefaultResponseTimeout); public static readonly List<SmbTransport> Connections = new List<SmbTransport>(); - public static readonly int SsnLimit = Config.GetInt("jcifs.smb.client.ssnLimit", DefaultSsnLimit - ); + public static int SsnLimit { get; internal set; } + = Config.GetInt("jcifs.smb.client.ssnLimit", DefaultSsnLimit); - public static readonly int SoTimeout = Config.GetInt("jcifs.smb.client.soTimeout", DefaultSoTimeout - ); + public static int SoTimeout { get; internal set; } + = Config.GetInt("jcifs.smb.client.soTimeout", DefaultSoTimeout); - public static readonly int ConnTimeout = Config.GetInt("jcifs.smb.client.connTimeout", DefaultConnTimeout - ); + public static int ConnTimeout { get; internal set; } + = Config.GetInt("jcifs.smb.client.connTimeout", DefaultConnTimeout); - public static readonly string NativeOs = Config.GetProperty("jcifs.smb.client.nativeOs", Runtime - .GetProperty("os.name")); + public static string NativeOs { get; internal set; } + = Config.GetProperty("jcifs.smb.client.nativeOs", Runtime.GetProperty("os.name")); - public static readonly string NativeLanman = Config.GetProperty("jcifs.smb.client.nativeLanMan" - , "jCIFS"); + public static string NativeLanman { get; internal set; } + = Config.GetProperty("jcifs.smb.client.nativeLanMan", "jCIFS"); public static readonly int VcNumber = 1; |
