On Sun, 2006-02-05 at 15:23 +0100, Nicolas Cannasse wrote:

> >
> > nekotools server dont work with or without parameters.
> 
> Always a bind error ?

Are you sure this is a Neko problem??

Rebinding the same port within a few minutes always causes an error,
unless you make it reusable. The timeout is probably a security
measure .. it can be quite long (up to 20 minutes).

Are you getting one of these?

       EINVAL The  socket  is already bound to an address (LINUX)
        EADDRNOTAVAIL (BSD),  EADDRINUSE (BSD)

This almost always happens when you start server .. it dies,
and you restart it at the same address immediately.  This option
is required to prevent that

       SO_REUSEADDR
              Indicates that the rules used in validating addresses
supplied in a bind(2) call should
              allow reuse of local addresses. For PF_INET sockets this
means that a socket may  bind,
              except when there is an active listening socket bound to
the address.  When the listen‐
              ing socket is bound to INADDR_ANY with a specific port
then it is not possible to  bind
              to this port for any local address.

Note also:

      SO_LINGER
              Sets or gets the SO_LINGER option. The argument is a
linger structure.

              struct linger {
                  int   l_onoff;    /* linger active */
                  int   l_linger;   /* how many seconds to linger for */
              };

              When  enabled,  a close(2) or shutdown(2) will not return
until all queued mes‐
              sages for the socket have been successfully sent or the
linger timeout has been
              reached. Otherwise, the call returns immediately and the
closing is done in the
              background.  When the socket is closed as part of exit(2),
it always lingers in
              the background.

PS sorry about the formatting.

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


--
Neko : One VM to run them all
(http://nekovm.org)

Reply via email to