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
