Add new "fd" vconn, which takes a file descriptor number as argument.
This requires introducing the concept of a "reconnectable" vconn. A vconn
is reconnectable if, when it is closed, it is possible to try to reconnect
to it using the name that was originally used. This is the case for all
existing vconn types, but it is not true for fd vconns, because closing a
fd vconn closes the specified file descriptor, and thus attempting to
reopen it will get an EBADF error.
An rconn is not reliable if it is connected to a vconn that is not
reconnectable.
13 files changed: