[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-11-26 Thread Jacob Nevins

Update of bug #15559 (project freeciv):

  Status:  Ready For Test = Fixed  
 Open/Closed:Open = Closed 


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-11-24 Thread Jacob Nevins

Update of bug #15559 (project freeciv):

  Status:None = Ready For Test 
 Assigned to:   cazfi = jtn
 Planned Release: 2.2.4,2.3.0 = 2.2.4,2.3.0,2.4.0  

___

Follow-up Comment #42:

Stealing this bug in Marko's absence; I intend to commit the patches to S2_2,
S2_3, and trunk soon, unless anyone objects.

Patches rebased against current svn. I've performed many of the same tests I
did before, including verifying that I can still see the original problem and
that this fixes it (having upgraded to Ubuntu 10.04 in the meantime).

I noticed that the v8 S2_2 patch additionally added NI_NAMEREQD to a call to
getnameinfo in server/sernet.c, whereas the trunk one didn't. I assume this
is a stray bit from experimenting with bug #16509 (which was happening around
the same time), the eventual patch for which conflicts with this. The
consensus in bug #16509 seemed to be that NI_NAMEREQD wasn't required,
anyway, and it doesn't seem relevant here, so I've dropped it from the S2_2
patch. George, is that OK?

(file #11363, file #11364)
___

Additional Item Attachment:

File name: S2_3-trunk-plural-listen-v9.diff Size:18 KB
File name: S2_2-plural-listen-v9.diff Size:18 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-11-22 Thread Daniel Markstedt

Update of bug #15559 (project freeciv):

Priority:  5 - Normal = 8  


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-10-23 Thread Christian Prochaska

Follow-up Comment #39, bug #15559 (project freeciv):

The attached v8 patch fixes the EADDRNOTAVAIL problem.

An S2_2 Windows test build is available at
http://download.gna.org/freeciv/packages/windows/testing/Freeciv-S2_2-20101023-win32-gtk2-setup.exe

Starting a new game from the client still seems to work. I didn't test other
scenarios or IPv6.

(file #10892, file #10893)
___

Additional Item Attachment:

File name: p22-plural-listen-v8.diff  Size:18 KB
File name: ptrunk-plural-listen-v8.diff   Size:17 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Nachricht geschickt von/durch Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-10-19 Thread Marko Lindqvist

Follow-up Comment #37, bug #15559 (project freeciv):

I'll test everything I can today and tomorrow and commit this if no problems
is found.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-10-19 Thread David Lowe

Follow-up Comment #36, bug #15559 (project freeciv):

I do have a PeeCee in the house, but no IPv6.  Would it help?

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-10-19 Thread Marko Lindqvist

Follow-up Comment #38, bug #15559 (project freeciv):

Compiling server for MinGW:
../../../src.patched/server/sernet.c: In function ‘server_open_socket’:
../../../src.patched/server/sernet.c:1056: error: ‘EADDRNOTAVAIL’
undeclared (first use in this function)
../../../src.patched/server/sernet.c:1056: error: (Each undeclared identifier
is reported only once
../../../src.patched/server/sernet.c:1056: error: for each function it
appears in.)


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-10-16 Thread Daniel Markstedt

Follow-up Comment #35, bug #15559 (project freeciv):

Christian, would you have time to help us out here? We could really use a
Windows test build made from S2_2 with this patch applied.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-26 Thread Jacob Nevins

Follow-up Comment #33, bug #15559 (project freeciv):

Just played with the v7 patch on S2_2 on my system (Ubuntu Linux 9.04). Looks
good.

Tried all my tests from comment #22 and comment #23 and they all work without
any errors.

Tried making something listen on IPv4 only (nc -l -p 5556 appears to behave
like this on my system) and a manually started server failed to start (0:
bind failed: Address already in use), as desired. A client-spawned server
moved on to port 5557.

Tried disabling IPv6 on my system (by rebooting with ipv6.disable=1 on the
kernel command line) and both client-spawned and manually-started server
continued to work as expected.

Tried the recipe from comment #26 to reproduce the original bug where a
client couldn't connect to its spawned server, and successfully did so with
unpatched S2_2. Verified that with the patch, the problem goes away.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-23 Thread Marko Lindqvist

Follow-up Comment #31, bug #15559 (project freeciv):

 try to listen on all available IP address families (specifying
 V6ONLY for lack of ambiguity), and fail if it can't bind all
 of them.

Just take care of not failing when it's impossible to bind IPv6 address on a
system where IPv6 has been disabled.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-21 Thread George Koehler

Follow-up Comment #30, bug #15559 (project freeciv):

From x11_create_display_inet() of openssh-5.6p1/channels.c:



for (ai = aitop; ai; ai = ai-ai_next) {
if (ai-ai_family != AF_INET  ai-ai_family != 
AF_INET6)
continue;
sock = socket(ai-ai_family, ai-ai_socktype,
ai-ai_protocol);
if (sock  0) {
if ((errno != EINVAL)  (errno != EAFNOSUPPORT)
#ifdef EPFNOSUPPORT
 (errno != EPFNOSUPPORT)
#endif 
) {
error(socket: %.100s, 
strerror(errno));
freeaddrinfo(aitop);
return -1;
} else {
debug(x11_create_display_inet: Socket 
family %d not supported,
 ai-ai_family);
continue;
}
}
if (ai-ai_family == AF_INET6)
sock_set_v6only(sock);
if (x11_use_localhost)
channel_set_reuseaddr(sock);
if (bind(sock, ai-ai_addr, ai-ai_addrlen)  0) {
debug2(bind port %d: %.100s, port, 
strerror(errno));
close(sock);

for (n = 0; n  num_socks; n++) {
close(socks[n]);
}
num_socks = 0;
break;
}
socks[num_socks++] = sock;
if (num_socks == NUM_SOCKS)
break;
}



During X11 forwarding, if any bind() fails, then OpenSSH loops to close _all_
sockets.

This only happens during X11 forwarding! Other code at
channel_setup_fwd_listener() from channels.c, and at server_listen() from
sshd.c, seems to allow bind() to fail.



From openssh-5.6p1/misc.c:



void
sock_set_v6only(int s)
{
#ifdef IPV6_V6ONLY
int on = 1;

debug3(%s: set socket %d IPV6_V6ONLY, __func__, s);
if (setsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY, on, sizeof(on)) == -1)
error(setsockopt IPV6_V6ONLY: %s, strerror(errno));
#endif
}




___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-20 Thread Marko Lindqvist

Follow-up Comment #27, bug #15559 (project freeciv):

 If freeciv-server says IPv4 bind failed: Address already in use,
 then its IPv6 socket might accept IPv4 connections.

That error message would seem quite alarming for someone who does not know
that it's actually ok in his/her setup. Any idea what we should do about
that? Print that particular error message only if also IPv6 bind failed?

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-20 Thread George Koehler

Follow-up Comment #28, bug #15559 (project freeciv):

 IPv4 bind failed: Address already in use
 Print that particular error message only if also IPv6 bind failed?

To be exact, print no error messages if we can listen() to at least one
socket?

OpenBSD 'man getaddrinfo' shows an example of this:



   for (res = res0; res  nsock  MAXSOCK; res = res-ai_next) {
   s[nsock] = socket(res-ai_family, res-ai_socktype,
   res-ai_protocol);
   if (s[nsock] == -1) {
   cause = socket;
   continue;
   }

   if (bind(s[nsock], res-ai_addr, res-ai_addrlen) == -1)
{
   cause = bind;
   save_errno = errno;
   close(s[nsock]);
   errno = save_errno;
   continue;
   }
   (void) listen(s[nsock], 5);

   nsock++;
   }
   if (nsock == 0)
   err(1, %s, cause);



Other programs had no 'cause' variable and no 'save_errno' stuff around
close(), but they kept the idea to ignore errors if they listen() to at least
one socket.

The old Freeciv code printed every error that happens. When I made the
plural-listen patch, I tried to preserve the old code, so it alarmingly
prints every error that happens!

So someone must decide whether to print no error messages if Freeciv can
listen() to at least one socket.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-20 Thread Jacob Nevins

Follow-up Comment #29, bug #15559 (project freeciv):

Clearly the server should run without emitting error messages regardless of
whether it finds itself on a v6only behaving system. Specifying
setsockopt(V6ONLY), or whatever it's called, with the current code might be
sufficient, if it's portable (haven't checked).

Another approach which satisfies this requirement is to do what I believe
OpenSSH does, which is to try to listen on all available IP address families
(specifying V6ONLY for lack of ambiguity), and fail if it can't bind _all_
of them. This is done to avoid an attack (CVE-2008-1483
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2008-1483) where a local
attacker listened on IPv4 only, the SSH server listened on IPv6 and quietly
failed on IPv4, the user misdirected traffic at the IPv4 listener, and the
attacker captured traffic. (I haven't thought if there are any interesting
similar attacks against Freeciv.)

Unfortunately I haven't got round to working out how OpenSSH does this, and
in particular how it works out whether it's on a system that doesn't support
IPv6 at all, although I really should for another project.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-12 Thread Jacob Nevins

Update of bug #15559 (project freeciv):

 Planned Release:   2.2.3 = 2.2.4  


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-10 Thread Jacob Nevins

Follow-up Comment #23, bug #15559 (project freeciv):

Just found time to play a bit more.

I did sysctl -w net.ipv6.bindv6only=1 to try to reproduce the problem.
Without the patch, starting a server from the client works, but starting a
server manually and then trying to connect to it with IPv4 addresses (e.g.
127.0.0.1) fails: 1: Connection to server refused. Please start the server.
I assume this is the gist of the original problem, although it's not quite as
reported.

With the patch, all the things that I tried in comment #22 just worked (with
no warnings, as I guessed).

If the aim of this patch is to make Freeciv work regardless of whether
binding a single socket causes it to listen on both of IPv4/IPv6 or just one,
I think it's achieved that.

(Still not actually looked at the code though...)

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-10 Thread Marko Lindqvist

Follow-up Comment #24, bug #15559 (project freeciv):

I did look in the some older version of the patch, and I'm certain it works
on linux. My only concern is that it has not been much tested with other
systems (I can *try* to find time to make Windows/MinGW build). It needs more
exposure before release.

I would actually suggest postponing 2.2.3 release for giving time for people
to test this patch in various systems.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-10 Thread Daniel Markstedt

Follow-up Comment #25, bug #15559 (project freeciv):

I'd prefer to retarget for 2.2.4. AFAIK it's been like this in all 2.2.x
releases so I wouldn't consider it a showstopper.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-09 Thread pepeto

Follow-up Comment #19, bug #15559 (project freeciv):

Is Marko around?


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message posté via/par Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-09 Thread Marko Lindqvist

Follow-up Comment #20, bug #15559 (project freeciv):

I don't have time to check this before Sunday (and 2.2.3 release) Feel free
to steal it from me.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-09 Thread pepeto

Follow-up Comment #21, bug #15559 (project freeciv):

Unfortunately, I don't know enough about sockets to handle it. Someone else?


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message posté via/par Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-08 Thread George Koehler

Follow-up Comment #18, bug #15559 (project freeciv):

I changed the error code in server/sernet.c to try to identify the socket
that causes the error. I also remade the trunk patch, so now trunk seems to
work.

This is the *last* version of the patch from me, unless I discover that I
made some mistake.

* p22-plural-listen-v5.diff for S2_2 r17952
* ptrunk-plural-listen-v5.diff for trunk r17952

(file #10258, file #10259)
___

Additional Item Attachment:

File name: p22-plural-listen-v5.diff  Size:16 KB
File name: ptrunk-plural-listen-v5.diff   Size:17 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-09-03 Thread George Koehler

Follow-up Comment #17, bug #15559 (project freeciv):

I made a trunk version of the patch, but it is broken. The client complains
about unknown error 0 and the server says '2: Lost connection: c1 from
localhost (connection incomplete).' I might have made a mistake in
client/clinet.c; I need more time to find the mistake and post a working
patch.

I am attaching a broken patch for trunk r17924.

The S2_2 version (file #10046) continues to work for me. This week, I played
at least 200 turns of S2_2.

(file #10146)
___

Additional Item Attachment:

File name: ptrunk-plural-listen-broken.diff Size:17 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-28 Thread George Koehler

Follow-up Comment #16, bug #15559 (project freeciv):

gcc gives the same warning to me. gcc notices that if name_count = 0, then
we never enter the for loop to initialize 'sock'.

I am attaching a -v4 patch that prevents the warning. The patch is for S2_2.

I have never used trunk. I am now trying to compile trunk so that I can port
the patch.

(file #10046)
___

Additional Item Attachment:

File name: p22-plural-listen-v4.diff  Size:15 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-24 Thread Marko Lindqvist

Follow-up Comment #14, bug #15559 (project freeciv):

Can you make also TRUNK version of this?

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-24 Thread Marko Lindqvist

Follow-up Comment #15, bug #15559 (project freeciv):

 server/meta.c: In function ‘send_to_metaserver’:
 server/meta.c:236: error: ‘sock’ may be used uninitialized in this
function

This seems like gcc stupidity, but needs to be fixed anyway.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-20 Thread George Koehler

Follow-up Comment #13, bug #15559 (project freeciv):

My -v2 patch (from S2_2 r17797) causes a merge conflict in server/sernet.c. I
am attaching a new -v3 patch (from S2_2 r17820) to solve the conflict.

If you already applied the -v2 patch, you might

$ patch -R  p22-plural-listen-v2.diff
$ svn up
$ patch  p22-plural-listen-v3.diff

or you might

$ svn up
$ svn revert server/sernet.c server/meta.c client/clinet.c client.servers.c
$ patch  p22-plural-listen-v3.diff

(file #9941)
___

Additional Item Attachment:

File name: p22-plural-listen-v3.diff  Size:15 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-16 Thread Marko Lindqvist

Update of bug #15559 (project freeciv):

 Assigned to:None = cazfi  

___

Follow-up Comment #9:

 1. This patch fixes the AF_INET6 configure check. (OpenBSD needs
sys/types.h before sys/socket.h.)
 2. This patch replaces the one socket 'sock' with an array
'listen_socks', and listens to all connections in the array.
 3. This patch adds a new bug. The multiple sockets can accept
too many connections, but server_make_connection() in
server/sernet.c fails to close the extra connections.

1  2 are clearly separate issues. Could you open new bugreport about the
configure issue and extract relevant parts of your patch in to new patch
there.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-16 Thread George Koehler

Follow-up Comment #10, bug #15559 (project freeciv):

AF_INET6 configure check is now bug #16458.

Failure to close extra connections is now bug #16461. (I was wrong. This is
not a new bug, because one socket is already enough to accept too many
connections. I was idiot and forgot to read my listen(2) manual page.)

So this bug, bug #15559, is now only about fixing the IPV6_SUPPORT code. I am
working on the next version of the patch; file #9838 is not complete because
it fixed the server but not the client. The server must try to listen to both
IPv4 and IPv6; the client must try to connect to either IPv4 or IPv6.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-15 Thread George Koehler

Follow-up Comment #8, bug #15559 (project freeciv):

While I am using my patch (file #9838),
'./ser --bind ::' starts an IPv6-only server,
'./ser --bind 0.0.0.0' starts an IPv4-only server.

If I run IPv4-only server, then my Freeciv client can connect to '127.0.0.1'
but refuses to connect to 'localhost'. This problem is with the client, not
the server. If I run 'nc localhost 5556' then I can connect to either the
IPv6-only server or the IPv4-only server.

So file #9838 is not enough to fix the broken IPV6_SUPPORT; the Freeciv
client also needs a fix.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-08-14 Thread George Koehler

Follow-up Comment #7, bug #15559 (project freeciv):

I have a similar bug using OpenBSD. I am running an old snapshot of OpenBSD
4.5-current.

My server (S2_2 r17748) accepted connections from localhost and from
127.0.0.1, but not from ::1. I found that my server had no IPv6 support,
because configure failed the AF_INET6 check. OpenBSD has AF_INET6, so I fixed
configure and rebuilt my server with IPv6 support.

Now my server, with IPv6 support, accepts connections from localhost and
::1, but not from 127.0.0.1. My server refuses IPv4 connections because
it listens only to IPv6 socket.

* RFC 3493 http://tools.ietf.org/html/rfc3493 specifies that IPv6 socket
may use IPv4 with addresses like :::172.34.5.6.
* Some systems (at least OpenBSD) require IPv6 sockets to use IPv6 only. This
has security reason: IPv4-Mapped Addresses on the Wire Considered Harmful
http://tools.ietf.org/html/draft-itojun-v6ops-v4mapped-harmful-02.
* I have rumours that some versions of Debian, FreeBSD, NetBSD and Microsoft
Windows enable IPV6_V6ONLY by default.
* OpenBSD provides zero ways to disable IPV6_V6ONLY.
* Opinions from internet do range from 'IPV6_V6ONLY on is stupid' to
'IPV6_V6ONLY off is stupid'.

The correct way is to listen to multiple sockets: both IPv4 socket and IPv6
socket. Examples are identd.c
http://www.openbsd.org/cgi-bin/cvsweb/src/libexec/identd/identd.c and
sshd.c http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/sshd.c of
OpenBSD. They use getaddrinfo(3) to get list addresses, create one socket(2)
per address, then poll(2) multiple sockets to listen(2).

I am attaching a patch *p22-listen-plural.diff* for S2_2 that attempts to use
multiple sockets. This might fix bug #15559 and bug #16149.

0 This patch fixes the AF_INET6 configure check. (OpenBSD needs sys/types.h
before sys/socket.h.)
0 This patch replaces the one socket 'sock' with an array 'listen_socks', and
listens to all connections in the array.
0 This patch adds a new bug. The multiple sockets can accept too many
connections, but server_make_connection() in server/sernet.c fails to close
the extra connections.

This patch allows my server to accept all of localhost, ::1 and
127.0.0.1. I will continue to run S2_2 with my patch
*p22-listen-plural.diff* to look for bugs. I would like other players to
check if this patch fixes bug #15559, fixes bug #16149, or breaks platforms
other than OpenBSD.

(file #9838)
___

Additional Item Attachment:

File name: p22-plural-listen.diff Size:7 KB


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-06-04 Thread Prekates Alexandros

Follow-up Comment #6, bug #15559 (project freeciv):

I have 2.2.0 in debian squeeze with ipv6 disabled. (from grub.cfg kernel
option
so $sysctl -w net.ipv6.bindv6only=0 gives
error: net.ipv6.bindv6only is an unknown key)

Also my gtk-client and my sdl-client cant start a game and if start server
and client seperately my client  connects  to the local server only if i
change 'localhost' to 127.0.0.1.
If i dont do that i get an error message in the bottom saying that 'protocol
is not supported'


Also 
$freeciv-server -d 3  -b localhost  [enter]--
This is the server for Freeciv version 2.2.0
Learn ... Freeciv .. http://www.freeciv.org/
3: log started
0: Detected fatal error in ../../server/sernet.c line 985:
0: socket failed: Protocol not supported

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message sent via/by Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-03-10 Thread pepeto

Update of bug #15559 (project freeciv):

Category: art = general
 Summary: (Gtk) client can't connect to its locally started
server = Client can't connect to its locally started server


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message posté via/par Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-03-10 Thread pepeto

Update of bug #15559 (project freeciv):

 Release: 2.2 = 2.2.0  


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message posté via/par Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-03-10 Thread anonymous

Follow-up Comment #4, bug #15559 (project freeciv):

Hi pepeto, I don't think I even have an account here. Thanks for the greet,
it is nice to see the new release that you all have worked on, I think it is
pretty awesome.

___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Meddelandet skickades via/av Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev


[Freeciv-Dev] [bug #15559] Client can't connect to its locally started server

2010-03-10 Thread pepeto

Follow-up Comment #5, bug #15559 (project freeciv):

It seems you have one: user #6131. And you are still included officially in
this project.


___

Reply to this item at:

  http://gna.org/bugs/?15559

___
  Message posté via/par Gna!
  http://gna.org/


___
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev