I need a way to flush the information from my client that a particular
server isn't responding. I believe this is the "non-functioning mark"
referred to in the man page for fs checkservers.
We have some directories mounted on the other side of a firewall. We
have some code that attempts to access them and it needs to realize
that it can't, quickly. The first time it tries there is a ~45 second
pause until the console message "Lost contact with file server ..."
comes up. I am testing a faster timeout by setting an alarm() (and
it's not working... grrr...) but the trouble is that the next time I
run the code, it immediately returns the "connection timed out" message
because the client knows that it can't reach that server. Its memory
appears most persistent.
I don't wish to reboot the client every time I want to test this. How
can I tell the client to forget what it learned about that server?
I've tried fs checkservers and fs flush to no avail.
[Also, perhaps someone can confirm my suspicion: I am guessing there is
an alarm (45) somewhere in the client code which is invoked when a
client-side program calls lstat(). So if my code calls alarm(3) before
the lstat(), it won't do any good, because the alarm is overridden?
My signal handler was called - on the one occasion I was able to test
it - but after 45 seconds, not 3.]
Peter J. Scott, Member of Technical Staff | [EMAIL PROTECTED]
Jet Propulsion Laboratory, NASA/Caltech | EIS Project