[roll] Roll fuchsia [sdk][vfs] Reduce visibility of existing Node methods

Hide as many possible public methods in the existing SDK VFS by making
them protected, in preparation for landing the replacement SDK VFS. This
allows removing these methods entirely from the new SDK VFS, and greatly
simplifies the public interfaces in the SDK VFS as a whole.

Most of this functionality will be handled by the in-tree VFS in the
replacement library, and should not form a part of the SDK API. Instead
callers should use the fuchsia.io protocol or type-specific methods
where possible.

Most of these methods were not used outside of connection handling, so
changes to calling code is relatively minor:

 - `Node::Lookup()` is now only accessible via `vfs::PseudoDir` as this
   was the only place it was used (we can make it part of a common
   interface in the future should it be required by `vfs::LazyDir`)
 - `ReadAt()`/`WriteAt()` has been removed from the `File` interface as
   this functionality is already provided through fuchsia.io
 - Provide borrowed access to the VMO backing a `vfs::VmoFile` to
   compensate for in-tree callers requiring `ReadAt()` functionality
 - Remove `Node::IsDirectory()` and `Node::IsRemote()` from public
   interface (these were being incorrectly used to verify the concrete
   type of a node)

Original-Bug: b/293936429
Test: vfs_cpp_tests vfs_cpp_new_tests
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/986272
Original-Revision: d66a8596007fdab277287777b6ade57828a0eb40
GitOrigin-RevId: 5421165af4c3dc42d96411bb39e7f37bb00b6ca2
Change-Id: I22d99f2b58b5ba2f29e5f3c6462ee3fa110db5c2
1 file changed
tree: e8db46c284e28651fdd0e417e5c1022dd412bc92
  1. git-hooks/
  2. infra/
  3. third_party/
  4. cts
  5. firmware
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
  14. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.