[ https://issues.apache.org/jira/browse/THRIFT-3000?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15844175#comment-15844175 ]
ASF GitHub Bot commented on THRIFT-3000: ---------------------------------------- GitHub user Jens-G opened a pull request: https://github.com/apache/thrift/pull/1167 THRIFT-3000 .NET implementation has trouble with mixed IP modes Client: C# Patch: Jens Geyer, based on https://github.com/apache/thrift/pull/377 You can merge this pull request into a Git repository by running: $ git pull https://github.com/Jens-G/thrift THRIFT-3000 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/thrift/pull/1167.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1167 ---- commit 6388ef289c59b21d0f57119127e6e2a1f868669b Author: Jens Geyer <je...@apache.org> Date: 2017-01-28T18:53:28Z THRIFT-3000 .NET implementation has trouble with mixed IP modes Client: C# Patch: Jens Geyer, based on https://github.com/apache/thrift/pull/377 ---- > .NET implementation has trouble with mixed IP modes > --------------------------------------------------- > > Key: THRIFT-3000 > URL: https://issues.apache.org/jira/browse/THRIFT-3000 > Project: Thrift > Issue Type: Bug > Components: C# - Library > Affects Versions: 0.9.2, 0.9.3 > Environment: Windows 7 / Windows 8 / Windows 8.1 / .NET 3.5 / .NET > 4.0 / .NET 4.5 > Reporter: Tobias Mundt > Assignee: Jens Geyer > Priority: Minor > > The .NET implementation of TSocket and TServerSocket use the .NET class > TcpClient and TcpListener. When creating instances of theses classes the .NET > framework estabiles either an IPv4 or an IPv6 lsitener/client depending on > the order of network protocols set in the control center for the network > adapter. Mention that only the first type of protocol is used not both. > Microsoft switched the default order og ipv4 over ipv6 in windows 7 to ipv6 > over ipv4 in windows 8 and 8.1. That means that a thrift component on a win > 7 machine can not talk to the same component on a win 8 machine since they > fired of different listeners. > When upgrading to .NET 4.5 this can be solved by setting the DualMode=true > flag on the TcpListener.Server and the TcpClient.Client sockets. Since > DualMode is not supported in Mono as of February 2015. The patch can not be > applied. > Another possible solutions would be to get the configuration of the network > protocol order manually and apply the approvriate ip protocol by hand. > Yet a third possibility would by to add a parameter to the TSocket and > TServerSocket constructors to let the user choose the behaviour of the > TcpListener and TcpClient > This problem was attmepted to be solved in the pull request > https://github.com/apache/thrift/pull/377 which was rejected due to mono > incompatibility -- This message was sent by Atlassian JIRA (v6.3.4#6332)