[Freeciv-Dev] Re: mingw status (server + lan server bugs)
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
On Tue, 25 Nov 2003, Andreas Røsdal wrote:
> On Tue, 25 Nov 2003, Vasco Alexandre Da Silva Costa wrote:
> > On Tue, 25 Nov 2003, Andreas Røsdal wrote:
> > > On Tue, 25 Nov 2003, Vasco Alexandre Da Silva Costa wrote:
> > > > On Tue, 25 Nov 2003, Andreas Røsdal wrote:
> >
> > > > > I think this is because the socket for UDP multicast is blocking,
> > > > > even though it's set to be nonblocking.
> > > > >
> > > > > This can be fixed by using select(), like it's done several
> > > > > places in /server/sernet.c. I can make a patch for this.
> > > >
> > > > UDP is connectionless. Make sure you aren't getting bogged down doing
> > > > a DNS name lookup.
> > >
> > > Ok. Here's the patch. The socket is not blocking any more,
> > > and if DNS lookup fail, then the IP is shown instead.
> >
> > Eh no, you didn't understand. gethostbyname calls the resolver and I think
> > gethostbyaddr calls it too. To make sure you don't block in the resolver,
> > you need to use the integer address. You can convert a numbers and
> > dots address (e.g. 190.130.36.2) using inet_addr or inet_aton to integer
> > address format. That will not call the resolver.
> >
> > Only use resolver calls to get the integer address from a DNS address
> > (e.g. freeciv.org).
> >
> > You should find you do not need to use select at all since UDP is
> > connectionless.
>
> The function blocking is recvfrom(), now gethostbyname().
I meant recvfrom(), *not* gethostbyname().
> How do you get nonblocking sockets without using select(),
> when my_nonblock() fails?
>
> Per, does the patch fix the problem?
>
> Andreas Røsdal
>
- [Freeciv-Dev] mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/25
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Andreas Røsdal, 2003/11/25
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/25
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Vasco Alexandre Da Silva Costa, 2003/11/25
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/25
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Andreas Røsdal, 2003/11/26
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/26
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Andreas Røsdal, 2003/11/26
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/27
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Andreas Røsdal, 2003/11/27
- [Freeciv-Dev] Re: mingw status (server + lan server bugs), Per I. Mathisen, 2003/11/27
|
|