[roll] Roll fuchsia [fdio][zxio] Add zxio_shutdown and use for shutdown(2) This adds a zxio operation for shutting down an object (usually a socket) for read or write and updates the posix shutdown(2) entry point to use it. This unifies some of the type management logic in fdio and allows better sharing of logic in the future as other socket types move to zxio. Most object types do not support this shutdown operation and return an unsupported operation error. This relates to RFC-099 which will replace all uses of the zx_socket_shutdown() system call with zx_socket_set_disposition() by moving the system call for pipe type sockets into zxio. This change does not alter shutdown behavior - it's still using the zx_socket_shutdown() syscall. This also relates to https://fxbug.dev/78129 which changes the behavior for StreamSockets to by default issue a FIDL call instead of directly issuing a syscall. This changes the legacy mode for stream sockets to implement the zxio shutdown operation by calling zxio_shutdown on the zxio_pipe object embedded inside the StreamSocket. The regular shutdown path for StreamSocket currently does not go through zxio and zxio does not yet know how to issue the shutdown FIDL call for StreamSocket or DatagramSocket. When we move more of the Stream/Datagram Socket behavior into zxio, we'll also want to move the FIDL call into zxio behind the shutdown zxio operation. Original-Bug: 43267, 78129 Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/544822 Original-Revision: 6532b75108b41eb5824f44aa0f273e229dc85649 GitOrigin-RevId: 1c5ff2bbbdba5a1f38b93a879348c7ddb198fa2e Change-Id: I11c95f42ed550143c487ec7a924fba266432e8aa
This repository contains Fuchsia's Global Integration manifest files.
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.
First install Jiri.
Next run:
$ jiri init $ jiri import minimal https://fuchsia.googlesource.com/integration $ jiri update
Third party projects should have their own subdirectory in ./third_party.