Re: Listen on same port ipv4 and ipv6

J Decker <[email protected]>
Newsgroups gmane.comp.gnome.mono.general
Message-ID <CAA2GJqWO7qg18_xF+1zYLcTV2A7gZqTag3XiJXvR4_KeiOdW_w@mail.gmail.com>
On Fri, Dec 11, 2015 at 1:56 PM, J Decker <[email protected]> wrote:
> On Fri, Dec 11, 2015 at 1:50 PM, J Decker <[email protected]> wrote:
>> (First let me vent a little and say I LOVE all the consistency in
>> network libraries; in MS.NET closing a IPV6 TcpClient sets Client to
>> null, whereas IPV4 TcpCLient only disposes the object)
>>
>> I found this old message with no responses..
>>
>> http://lists.ximian.com/pipermail/mono-list/2014-May/050905.html
>>
>> I want to listen at the same port address at 0.0.0.0 and :: (ipv4 and
>> 6 address respectively)
>>
>> in C I would open two listeners.  But I think maybe the .NET runtime
>> is pre-checking if that port is already used in some internal list of
>> sockets before attemping to open it in reality.
>>
>> in C# I will have to do the same thing, since connecting to the v6
>> address with only the v4 listener at 0.0.0.0 listening fails to
>> connect and times out.
>>
>> On Windows I have to, and it works; but again with Mono on Linux it
>> doesn't work.
>
> This is the code that fails.
>
> internal GameServer()
> {
> byte[] raw_ipv4 = { 0, 0, 0, 0 };
> IPAddress addr = new IPAddress( raw_ipv4 );
> listener = new TcpListener( addr, Settings.Read( "Server Port",
> GameServer.serving_port ) );
> listener.Start();
> byte[] raw_ipv6 = { 0,0,0,0
> ,0, 0, 0, 0
> ,0, 0, 0, 0
> ,0, 0, 0, 0 };
> IPAddress addr_v6 = new IPAddress( raw_ipv6 );
> listener_v6 = new TcpListener( addr_v6, Settings.Read( "Server Port",
> GameServer.serving_port ) );
> listener_v6.Start(); /* Exception - EADDRINUSE ; even though it's not
> and needs to be opened */
> }

So decided to get ambitious and get git source and try to build...
I Don't see an option to build without 'acceptance-tests'

so instead I get

make[2]: Entering directory '/home/d3x0r/addons/srcpit/mono/acceptance-tests'
  File "versions.py", line 11
    print "Not found"
                    ^
SyntaxError: Missing parentheses in call to 'print'
  File "versions.py", line 11
    print "Not found"
                    ^
SyntaxError: Missing parentheses in call to 'print'
  File "versions.py", line 11
    print "Not found"
                    ^
SyntaxError: Missing parentheses in call to 'print'
  File "versions.py", line 11
    print "Not found"
(repeated several more times)

added parens to all print statements and no more issues; though that
was also the last thing; maybe it wasn't an error stopping the
build....
_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.