[roll] Roll fuchsia [reland] Revert "[revert] Revert "[pkg-cache][pkgfs][fshost] pkg-cache provides all pkgfs directories""

This reverts commit 631fa7a0a06c38fa7e58d8398554f45ca70ea36b.

Reason for revert: All OOT clients should now handle hierarchical
rights enforcement

Original change's description:
> [revert] Revert "[pkg-cache][pkgfs][fshost] pkg-cache provides all pkgfs directories"
>
> This reverts commit 021b6cdc9d9e0bd5f91f5a083fec30e7dfd1791f.
>
> Reason for revert: Broke file access on some OOT clients.
>
> Original change's description:
> > [pkg-cache][pkgfs][fshost] pkg-cache provides all pkgfs directories
> >
> > All pkgfs directories (including pkgfs/, pkgfs/packages/,
> > pkgfs/versions/, and pkgfs/system/) are now provided by pkg-cache
> > instead of pkgfs.
> >
> > Package directories themselves (including the elements of
> > pkgfs/versions/ and pkgfs/packages/*/*/ and the /pkg directory mounted
> > in components' namespaces) are now served by pkg-cache instead of
> > pkgfs.
> >
> > The pkgfs directories and package directories themselves are
> > implemented on top of the Rust VFS library. As a result, they now
> > enforce hierarchical rights (e.g. opening a file with RIGHT_READABLE
> > requires that the directory connection over which the
> > fuchsia.io/Directory.Open FIDL call was made had RIGHT_READABLE) and
> > perform more validation of the flag, mode, and path
> > arguments (e.g. paths of the empty string and paths containing ".."
> > segments are now rejected). See
> > https://cs.opensource.google/fuchsia/fuchsia/+/main:src/sys/pkg/tests/pkgdir/README.md
> > for a full listing of the package directory behavior changes.
> >
> > fshost no longer starts pkgfs (sometimes called pkgsvr).
> >
> > pkg-cache is now routed an executable handle to blobfs (so it can serve
> > package directories).
> >
> > pkg-cache is now a child of bootstrap and is resolved by the
> > base-resolver.
> >
> > pkg-cache's other package APIs (fuchsia.pkg/PackageCache.{Open|Get}) now
> > use the same machinery that powers its pkgfs replacements (instead of
> > forwarding to pkgfs).
> >
> > Original-Bug: 99148
> > Original-Fixed: 88871
> > Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/630466
>
> Original-Bug: 99148
> Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/678298

Original-Bug: 99148
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/678507
Original-Revision: adb48d70a986bd8e1aedb084f418edd9a8653983
GitOrigin-RevId: 6785171eb8fcd5478b3328f7d4b147cdf7f7e786
Change-Id: I77e70d97f46129c4e1180eba59301ca8445e4312
1 file changed
tree: 5e1d13c9eeb1c5c61aa9aa875b41565de8beab16
  1. infra/
  2. third_party/
  3. cts
  4. firmware
  5. flower
  6. fortune-teller
  7. jiri.lock
  8. minimal
  9. prebuilts
  10. README.md
  11. stem
  12. test_durations
  13. 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.