From e632f4aef3841a3f0d8efd2dbb930811dca19c1e Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Wed, 29 Mar 2017 02:53:26 -0400 Subject: [PATCH] 3.2.9.2 --- Emby.Common.Implementations/Net/SocketFactory.cs | 16 ++++++++++++++-- SharedVersion.cs | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/Emby.Common.Implementations/Net/SocketFactory.cs b/Emby.Common.Implementations/Net/SocketFactory.cs index 1fd367afb..39f236afa 100644 --- a/Emby.Common.Implementations/Net/SocketFactory.cs +++ b/Emby.Common.Implementations/Net/SocketFactory.cs @@ -70,11 +70,23 @@ namespace Emby.Common.Implementations.Net { if (remotePort < 0) throw new ArgumentException("remotePort cannot be less than zero.", "remotePort"); - var retVal = new Socket(AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); - + var addressFamily = remoteAddress.AddressFamily == IpAddressFamily.InterNetwork + ? AddressFamily.InterNetwork + : AddressFamily.InterNetworkV6; + + var retVal = new Socket(addressFamily, System.Net.Sockets.SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); + try { retVal.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true); + } + catch (SocketException) + { + // This is not supported on all operating systems (qnap) + } + + try + { return new UdpSocket(retVal, new IpEndPointInfo(remoteAddress, remotePort)); } catch diff --git a/SharedVersion.cs b/SharedVersion.cs index 8ed012105..f2c3a7cb0 100644 --- a/SharedVersion.cs +++ b/SharedVersion.cs @@ -1,3 +1,3 @@ using System.Reflection; -[assembly: AssemblyVersion("3.2.8.16")] +[assembly: AssemblyVersion("3.2.9.2")]