namespace: Make Resolve go all the way down piggybacked mounts.

For example if we mount a onto b onto c onto d, then a Resolve(d) will
return a. Past behaviour would have returned d.

Additional changes:

- added ShallowResolve to the Namespace interface.  While I could
  recreate the logic in the 3 places it is used (so far), it would
  depend on what happens in the actual Namespace interface so it really
  should be there.
- the 'vrpc singnature' and 'namespace resolve' commands now take an
  '-s' flag (ShallowResolve) to allow us to aim them at the first
  piggybacked sever rather than the last.  Its rare that we need to
  usr this but useful to have.
- we no longer assume that /host:port endpoits are mount tables. The
  only times they are, they were already being mounted with the
  flag indicating they are mount tables.  This one assumption
  fixed most of the places I would otherwise have needed to
  changed.  When they are used as the argument to --v23.namespace.root,
  we already assume that they are mount tables and that is by far
  the most common case.
- lots of tests changed.

MultiPart: 1/3

Change-Id: I8d5c074c008d23ba1e94b52d8ec7522cbd5068cf
13 files changed
tree: 91360b8c066f58cec458ceac910448ad4d94eb2c
  1. cmd/
  2. examples/
  3. internal/
  4. lib/
  5. runtime/
  6. services/
  7. test/
  8. .gitignore
  9. AUTHORS
  10. CONTRIBUTING.md
  11. CONTRIBUTORS
  12. envvar.go
  13. envvar_test.go
  14. LICENSE
  15. PATENTS
  16. README.md
  17. VERSION
README.md

Vanadium

This repository contains a reference implementation of the Vanadium APIs.

Unlike the APIs in https://github.com/vanadium/go.v23, which promises to provide backward compatibility this repository makes no such promises.