as geoff has pointed out, the flaw in this logic is that cs doesn't
make the connection, it just proposes a dialable address.

it turns out our problem was traced to someone reusing an inuse ip address.

- erik

On Sun Jul  8 10:50:21 EDT 2007, [EMAIL PROTECTED] wrote:
> in this case "net!somehost!9fs" could be translated il!somehost!9fs
> or tcp!somehost!9fs.  the current algorithm is to look through the possibities
> and see if there exists somehost on protocol $protocol for service 9fs.
> the first match wins.  this depends on the order in the table.
> the current algorithm doesn't check to see if any servers were found.
> 
> it wouldn't be hard to change things so that the first /available/ server is 
> used.
> it's a one line change, in fact.
> 
> /sys/src/cmd/ndb/cs.c:1182 - /usr/quanstro/dist/sys/src/cmd/ndb/cs.c
> -                     if(rv > 0)
> -                             break;
> +                     break;
> 
> the downside to this is that the behavior of "net" becomes more dependent
> on configuration.  but Nilfast did the same thing.  so i don't think this
> really changes anything.
> 
> the one reservation i have is i don't know why the the code didn't loop.
> the first version in sourcesdump also has the break.  dial(2) seems to
> argue against the break.
> 
>       Network is any directory listed in /net or the special
>               token, net.  Net is a free variable that stands for any net-
>       work in common between the source and the host netaddr.
> 
> so i would think the test for responses should go in.
> 
> - erik

Reply via email to