[zx][io] Check in generated code for io.fidl
US-462
Change-Id: I739cf8e90f221d5e43ff00dfcaffaf959a4753cc
diff --git a/src/syscall/zx/io/impl.go b/src/syscall/zx/io/impl.go
new file mode 100644
index 0000000..26d33bd
--- /dev/null
+++ b/src/syscall/zx/io/impl.go
@@ -0,0 +1,1855 @@
+// Copyright 2018 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// +build fuchsia
+
+package io
+
+import (
+ _bindings "syscall/zx/fidl"
+ _zx "syscall/zx"
+)
+
+const (
+ KOpenRightReadable uint32 = 0x00000001
+ KOpenRightWritable uint32 = 0x00000002
+ KOpenRightAdmin uint32 = 0x00000004
+ KOpenFlagCreate uint32 = 0x00010000
+ KOpenFlagCreateIfAbsent uint32 = 0x00020000
+ KOpenFlagTruncate uint32 = 0x00040000
+ KOpenFlagDirectory uint32 = 0x00080000
+ KOpenFlagAppend uint32 = 0x00100000
+ KOpenFlagNoRemote uint32 = 0x00200000
+ KOpenFlagNodeReference uint32 = 0x00400000
+ KOpenFlagDescribe uint32 = 0x00800000
+ KOpenFlagStatus uint32 = 0x01000000
+ KModeProtectionMask uint32 = 0x00FFF
+ KModeTypeMask uint32 = 0xFF000
+ KModeTypeDirectory uint32 = 0x04000
+ KModeTypeBlockDevice uint32 = 0x06000
+ KModeTypeFile uint32 = 0x08000
+ KModeTypeSocket uint32 = 0x0C000
+ KModeTypeService uint32 = 0x10000
+ KMaxIoctlHandles uint64 = 2
+ KMaxBuf uint64 = 8192
+ KNodeAttributeFlagCreationTime uint32 = 0x00000001
+ KNodeAttributeFlagModificationTime uint32 = 0x00000002
+ KVmoFlagRead uint32 = 0x00000001
+ KVmoFlagWrite uint32 = 0x00000002
+ KVmoFlagExec uint32 = 0x00000004
+ KVmoFlagPrivate uint32 = 0x00010000
+ KDirentTypeUnknown uint32 = 0
+ KDirentTypeDirectory uint32 = 4
+ KDirentTypeBlockDevice uint32 = 6
+ KDirentTypeFile uint32 = 8
+ KDirentTypeSocket uint32 = 12
+ KDirentTypeService uint32 = 16
+)
+
+type SeekOrigin uint32
+const (
+ SeekOriginStart SeekOrigin = 0
+ SeekOriginCurrent SeekOrigin = 1
+ SeekOriginEnd SeekOrigin = 2
+)
+type Service struct {
+ Reserved uint8
+}
+
+// Implements Payload.
+func (_ *Service) InlineAlignment() int {
+ return 1
+}
+
+// Implements Payload.
+func (_ *Service) InlineSize() int {
+ return 1
+}
+type FileObject struct {
+ Event _zx.Event `fidl:"*"`
+}
+
+// Implements Payload.
+func (_ *FileObject) InlineAlignment() int {
+ return 4
+}
+
+// Implements Payload.
+func (_ *FileObject) InlineSize() int {
+ return 4
+}
+type DirectoryObject struct {
+ Reserved uint8
+}
+
+// Implements Payload.
+func (_ *DirectoryObject) InlineAlignment() int {
+ return 1
+}
+
+// Implements Payload.
+func (_ *DirectoryObject) InlineSize() int {
+ return 1
+}
+type Pipe struct {
+ Socket _zx.Socket
+}
+
+// Implements Payload.
+func (_ *Pipe) InlineAlignment() int {
+ return 4
+}
+
+// Implements Payload.
+func (_ *Pipe) InlineSize() int {
+ return 4
+}
+type Vmofile struct {
+ Vmo _zx.VMO
+ Offset uint64
+ Length uint64
+}
+
+// Implements Payload.
+func (_ *Vmofile) InlineAlignment() int {
+ return 8
+}
+
+// Implements Payload.
+func (_ *Vmofile) InlineSize() int {
+ return 24
+}
+type Device struct {
+ Event _zx.Event `fidl:"*"`
+}
+
+// Implements Payload.
+func (_ *Device) InlineAlignment() int {
+ return 4
+}
+
+// Implements Payload.
+func (_ *Device) InlineSize() int {
+ return 4
+}
+type NodeAttributes struct {
+ Mode uint32
+ Id uint64
+ ContentSize uint64
+ StorageSize uint64
+ LinkCount uint64
+ CreationTime uint64
+ ModificationTime uint64
+}
+
+// Implements Payload.
+func (_ *NodeAttributes) InlineAlignment() int {
+ return 8
+}
+
+// Implements Payload.
+func (_ *NodeAttributes) InlineSize() int {
+ return 56
+}
+type ObjectInfoTag uint32
+const (
+ ObjectInfoService ObjectInfoTag = iota
+ ObjectInfoFile ObjectInfoTag = iota
+ ObjectInfoDirectory ObjectInfoTag = iota
+ ObjectInfoPipe ObjectInfoTag = iota
+ ObjectInfoVmofile ObjectInfoTag = iota
+ ObjectInfoDevice ObjectInfoTag = iota
+)
+
+// ObjectInfo is a FIDL union.
+type ObjectInfo struct {
+ ObjectInfoTag `fidl:"tag"`
+ Service Service
+ File FileObject
+ Directory DirectoryObject
+ Pipe Pipe
+ Vmofile Vmofile
+ Device Device
+}
+
+// Implements Payload.
+func (_ *ObjectInfo) InlineAlignment() int {
+ return 8
+}
+
+// Implements Payload.
+func (_ *ObjectInfo) InlineSize() int {
+ return 32
+}
+
+func (u *ObjectInfo) Which() ObjectInfoTag {
+ return u.ObjectInfoTag
+}
+
+func (u *ObjectInfo) SetService(service Service) {
+ u.ObjectInfoTag = ObjectInfoService
+ u.Service = service
+}
+
+func (u *ObjectInfo) SetFile(file FileObject) {
+ u.ObjectInfoTag = ObjectInfoFile
+ u.File = file
+}
+
+func (u *ObjectInfo) SetDirectory(directory DirectoryObject) {
+ u.ObjectInfoTag = ObjectInfoDirectory
+ u.Directory = directory
+}
+
+func (u *ObjectInfo) SetPipe(pipe Pipe) {
+ u.ObjectInfoTag = ObjectInfoPipe
+ u.Pipe = pipe
+}
+
+func (u *ObjectInfo) SetVmofile(vmofile Vmofile) {
+ u.ObjectInfoTag = ObjectInfoVmofile
+ u.Vmofile = vmofile
+}
+
+func (u *ObjectInfo) SetDevice(device Device) {
+ u.ObjectInfoTag = ObjectInfoDevice
+ u.Device = device
+}
+
+// Request for Clone.
+type ObjectCloneRequest struct {
+ Flags uint32
+ Object ObjectInterfaceRequest
+}
+
+// Implements Payload.
+func (_ *ObjectCloneRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectCloneRequest) InlineSize() int {
+ return 8
+}
+// Clone has no response.
+// Request for Close.
+type ObjectCloseRequest struct {
+}
+
+// Implements Payload.
+func (_ *ObjectCloseRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectCloseRequest) InlineSize() int {
+ return 0
+}
+// Response for Close.
+type ObjectCloseResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *ObjectCloseResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectCloseResponse) InlineSize() int {
+ return 4
+}
+// Request for ListInterfaces.
+type ObjectListInterfacesRequest struct {
+}
+
+// Implements Payload.
+func (_ *ObjectListInterfacesRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectListInterfacesRequest) InlineSize() int {
+ return 0
+}
+// Response for ListInterfaces.
+type ObjectListInterfacesResponse struct {
+ Interfaces []string
+}
+
+// Implements Payload.
+func (_ *ObjectListInterfacesResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectListInterfacesResponse) InlineSize() int {
+ return 16
+}
+// Request for Bind.
+type ObjectBindRequest struct {
+ Iface string
+}
+
+// Implements Payload.
+func (_ *ObjectBindRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectBindRequest) InlineSize() int {
+ return 16
+}
+// Bind has no response.
+// Request for Describe.
+type ObjectDescribeRequest struct {
+}
+
+// Implements Payload.
+func (_ *ObjectDescribeRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectDescribeRequest) InlineSize() int {
+ return 0
+}
+// Response for Describe.
+type ObjectDescribeResponse struct {
+ Info ObjectInfo
+}
+
+// Implements Payload.
+func (_ *ObjectDescribeResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectDescribeResponse) InlineSize() int {
+ return 32
+}
+// Request for OnOpen.
+// OnOpen has no request.
+// Response for OnOpen.
+type ObjectOnOpenResponse struct {
+ S _zx.Status
+ Info *ObjectInfo
+}
+
+// Implements Payload.
+func (_ *ObjectOnOpenResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *ObjectOnOpenResponse) InlineSize() int {
+ return 16
+}
+
+type ObjectInterface _bindings.Proxy
+
+func (p *ObjectInterface) Clone(flags uint32,object ObjectInterfaceRequest) error {
+ req_ := ObjectCloneRequest{
+ Flags: flags,
+ Object: object,
+ }
+ err := ((*_bindings.Proxy)(p)).Send(2147483649, &req_)
+ return err
+}
+func (p *ObjectInterface) Close() (_zx.Status, error) {
+ req_ := ObjectCloseRequest{
+ }
+ resp_ := ObjectCloseResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2147483650, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *ObjectInterface) ListInterfaces() ([]string, error) {
+ req_ := ObjectListInterfacesRequest{
+ }
+ resp_ := ObjectListInterfacesResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2147483652, &req_, &resp_)
+ return resp_.Interfaces, err
+}
+func (p *ObjectInterface) Bind(iface string) error {
+ req_ := ObjectBindRequest{
+ Iface: iface,
+ }
+ err := ((*_bindings.Proxy)(p)).Send(2147483653, &req_)
+ return err
+}
+func (p *ObjectInterface) Describe() (ObjectInfo, error) {
+ req_ := ObjectDescribeRequest{
+ }
+ resp_ := ObjectDescribeResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2147483654, &req_, &resp_)
+ return resp_.Info, err
+}
+func (p *ObjectInterface) ExpectOnOpen() (_zx.Status, *ObjectInfo, error) {
+ resp_ := ObjectOnOpenResponse{}
+ err := ((*_bindings.Proxy)(p)).Recv(2147483655, &resp_)
+ return resp_.S, resp_.Info, err
+}
+
+// Object server interface.
+type Object interface {
+ Clone(flags uint32,object ObjectInterfaceRequest) error
+ Close() (_zx.Status, error)
+ ListInterfaces() ([]string, error)
+ Bind(iface string) error
+ Describe() (ObjectInfo, error)
+}
+
+type ObjectInterfaceRequest _bindings.InterfaceRequest
+
+func NewObjectInterfaceRequest() (ObjectInterfaceRequest, *ObjectInterface, error) {
+ req, cli, err := _bindings.NewInterfaceRequest()
+ return ObjectInterfaceRequest(req), (*ObjectInterface)(cli), err
+}
+
+type ObjectStub struct {
+ Impl Object
+}
+
+func (s *ObjectStub) Dispatch(ord uint32, b_ []byte, h_ []_zx.Handle) (_bindings.Payload, error) {
+ switch ord {
+ case 2147483649:
+ in_ := ObjectCloneRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Clone(in_.Flags,in_.Object)
+ return nil, err_
+ case 2147483650:
+ in_ := ObjectCloseRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectCloseResponse{}
+ s, err_ := s.Impl.Close()
+ out_.S = s
+ return &out_, err_
+ case 2147483652:
+ in_ := ObjectListInterfacesRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectListInterfacesResponse{}
+ interfaces, err_ := s.Impl.ListInterfaces()
+ out_.Interfaces = interfaces
+ return &out_, err_
+ case 2147483653:
+ in_ := ObjectBindRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Bind(in_.Iface)
+ return nil, err_
+ case 2147483654:
+ in_ := ObjectDescribeRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectDescribeResponse{}
+ info, err_ := s.Impl.Describe()
+ out_.Info = info
+ return &out_, err_
+ }
+ return nil, _bindings.ErrUnknownOrdinal
+}
+
+type ObjectService struct {
+ _bindings.BindingSet
+}
+
+func (s *ObjectService) Add(impl Object, c _zx.Channel, onError func(error)) (_bindings.BindingKey, error) {
+ return s.BindingSet.Add(&ObjectStub{Impl: impl}, c, onError)
+}
+
+func (s *ObjectService) EventProxyFor(key _bindings.BindingKey) (*ObjectEventProxy, bool) {
+ pxy, err := s.BindingSet.ProxyFor(key)
+ return (*ObjectEventProxy)(pxy), err
+}
+
+type ObjectEventProxy _bindings.Proxy
+
+func (p *ObjectEventProxy) OnOpen(s _zx.Status,info *ObjectInfo) error {
+ event_ := ObjectOnOpenResponse{
+ S: s,
+ Info: info,
+ }
+ return ((*_bindings.Proxy)(p)).Send(2147483655, &event_)
+}
+
+
+
+// Request for Sync.
+type NodeSyncRequest struct {
+}
+
+// Implements Payload.
+func (_ *NodeSyncRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeSyncRequest) InlineSize() int {
+ return 0
+}
+// Response for Sync.
+type NodeSyncResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *NodeSyncResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeSyncResponse) InlineSize() int {
+ return 4
+}
+// Request for GetAttr.
+type NodeGetAttrRequest struct {
+}
+
+// Implements Payload.
+func (_ *NodeGetAttrRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeGetAttrRequest) InlineSize() int {
+ return 0
+}
+// Response for GetAttr.
+type NodeGetAttrResponse struct {
+ S _zx.Status
+ Attributes NodeAttributes
+}
+
+// Implements Payload.
+func (_ *NodeGetAttrResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeGetAttrResponse) InlineSize() int {
+ return 64
+}
+// Request for SetAttr.
+type NodeSetAttrRequest struct {
+ Flags uint32
+ Attributes NodeAttributes
+}
+
+// Implements Payload.
+func (_ *NodeSetAttrRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeSetAttrRequest) InlineSize() int {
+ return 64
+}
+// Response for SetAttr.
+type NodeSetAttrResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *NodeSetAttrResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeSetAttrResponse) InlineSize() int {
+ return 4
+}
+// Request for Ioctl.
+type NodeIoctlRequest struct {
+ Opcode uint32
+ MaxOut uint64
+ Handles []_zx.Handle `fidl:"2"`
+ In []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *NodeIoctlRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeIoctlRequest) InlineSize() int {
+ return 48
+}
+// Response for Ioctl.
+type NodeIoctlResponse struct {
+ S _zx.Status
+ Handles []_zx.Handle `fidl:"2"`
+ Out []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *NodeIoctlResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *NodeIoctlResponse) InlineSize() int {
+ return 40
+}
+
+type NodeInterface _bindings.Proxy
+
+func (p *NodeInterface) Sync() (_zx.Status, error) {
+ req_ := NodeSyncRequest{
+ }
+ resp_ := NodeSyncResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2164260865, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *NodeInterface) GetAttr() (_zx.Status, NodeAttributes, error) {
+ req_ := NodeGetAttrRequest{
+ }
+ resp_ := NodeGetAttrResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2164260866, &req_, &resp_)
+ return resp_.S, resp_.Attributes, err
+}
+func (p *NodeInterface) SetAttr(flags uint32,attributes NodeAttributes) (_zx.Status, error) {
+ req_ := NodeSetAttrRequest{
+ Flags: flags,
+ Attributes: attributes,
+ }
+ resp_ := NodeSetAttrResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2164260867, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *NodeInterface) Ioctl(opcode uint32,maxOut uint64,handles []_zx.Handle,in []uint8) (_zx.Status, []_zx.Handle, []uint8, error) {
+ req_ := NodeIoctlRequest{
+ Opcode: opcode,
+ MaxOut: maxOut,
+ Handles: handles,
+ In: in,
+ }
+ resp_ := NodeIoctlResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2164260868, &req_, &resp_)
+ return resp_.S, resp_.Handles, resp_.Out, err
+}
+
+// Node server interface.
+type Node interface {
+ Clone(flags uint32,object ObjectInterfaceRequest) error
+ Close() (_zx.Status, error)
+ ListInterfaces() ([]string, error)
+ Bind(iface string) error
+ Describe() (ObjectInfo, error)
+ Sync() (_zx.Status, error)
+ GetAttr() (_zx.Status, NodeAttributes, error)
+ SetAttr(flags uint32,attributes NodeAttributes) (_zx.Status, error)
+ Ioctl(opcode uint32,maxOut uint64,handles []_zx.Handle,in []uint8) (_zx.Status, []_zx.Handle, []uint8, error)
+}
+
+type NodeInterfaceRequest _bindings.InterfaceRequest
+
+func NewNodeInterfaceRequest() (NodeInterfaceRequest, *NodeInterface, error) {
+ req, cli, err := _bindings.NewInterfaceRequest()
+ return NodeInterfaceRequest(req), (*NodeInterface)(cli), err
+}
+
+type NodeStub struct {
+ Impl Node
+}
+
+func (s *NodeStub) Dispatch(ord uint32, b_ []byte, h_ []_zx.Handle) (_bindings.Payload, error) {
+ switch ord {
+ case 2147483649:
+ in_ := ObjectCloneRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Clone(in_.Flags,in_.Object)
+ return nil, err_
+ case 2147483650:
+ in_ := ObjectCloseRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectCloseResponse{}
+ s, err_ := s.Impl.Close()
+ out_.S = s
+ return &out_, err_
+ case 2147483652:
+ in_ := ObjectListInterfacesRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectListInterfacesResponse{}
+ interfaces, err_ := s.Impl.ListInterfaces()
+ out_.Interfaces = interfaces
+ return &out_, err_
+ case 2147483653:
+ in_ := ObjectBindRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Bind(in_.Iface)
+ return nil, err_
+ case 2147483654:
+ in_ := ObjectDescribeRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectDescribeResponse{}
+ info, err_ := s.Impl.Describe()
+ out_.Info = info
+ return &out_, err_
+ case 2164260865:
+ in_ := NodeSyncRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSyncResponse{}
+ s, err_ := s.Impl.Sync()
+ out_.S = s
+ return &out_, err_
+ case 2164260866:
+ in_ := NodeGetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeGetAttrResponse{}
+ s, attributes, err_ := s.Impl.GetAttr()
+ out_.S = s
+ out_.Attributes = attributes
+ return &out_, err_
+ case 2164260867:
+ in_ := NodeSetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSetAttrResponse{}
+ s, err_ := s.Impl.SetAttr(in_.Flags,in_.Attributes)
+ out_.S = s
+ return &out_, err_
+ case 2164260868:
+ in_ := NodeIoctlRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeIoctlResponse{}
+ s, handles, out, err_ := s.Impl.Ioctl(in_.Opcode,in_.MaxOut,in_.Handles,in_.In)
+ out_.S = s
+ out_.Handles = handles
+ out_.Out = out
+ return &out_, err_
+ }
+ return nil, _bindings.ErrUnknownOrdinal
+}
+
+type NodeService struct {
+ _bindings.BindingSet
+}
+
+func (s *NodeService) Add(impl Node, c _zx.Channel, onError func(error)) (_bindings.BindingKey, error) {
+ return s.BindingSet.Add(&NodeStub{Impl: impl}, c, onError)
+}
+
+func (s *NodeService) EventProxyFor(key _bindings.BindingKey) (*NodeEventProxy, bool) {
+ pxy, err := s.BindingSet.ProxyFor(key)
+ return (*NodeEventProxy)(pxy), err
+}
+
+type NodeEventProxy _bindings.Proxy
+
+func (p *NodeEventProxy) OnOpen(s _zx.Status,info *ObjectInfo) error {
+ event_ := ObjectOnOpenResponse{
+ S: s,
+ Info: info,
+ }
+ return ((*_bindings.Proxy)(p)).Send(2147483655, &event_)
+}
+
+
+
+// Request for Read.
+type FileReadRequest struct {
+ Count uint64
+}
+
+// Implements Payload.
+func (_ *FileReadRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileReadRequest) InlineSize() int {
+ return 8
+}
+// Response for Read.
+type FileReadResponse struct {
+ S _zx.Status
+ Data []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *FileReadResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileReadResponse) InlineSize() int {
+ return 24
+}
+// Request for ReadAt.
+type FileReadAtRequest struct {
+ Count uint64
+ Offset uint64
+}
+
+// Implements Payload.
+func (_ *FileReadAtRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileReadAtRequest) InlineSize() int {
+ return 16
+}
+// Response for ReadAt.
+type FileReadAtResponse struct {
+ S _zx.Status
+ Data []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *FileReadAtResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileReadAtResponse) InlineSize() int {
+ return 24
+}
+// Request for Write.
+type FileWriteRequest struct {
+ Data []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *FileWriteRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileWriteRequest) InlineSize() int {
+ return 16
+}
+// Response for Write.
+type FileWriteResponse struct {
+ S _zx.Status
+ Actual uint64
+}
+
+// Implements Payload.
+func (_ *FileWriteResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileWriteResponse) InlineSize() int {
+ return 16
+}
+// Request for WriteAt.
+type FileWriteAtRequest struct {
+ Data []uint8 `fidl:"8192"`
+ Offset uint64
+}
+
+// Implements Payload.
+func (_ *FileWriteAtRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileWriteAtRequest) InlineSize() int {
+ return 24
+}
+// Response for WriteAt.
+type FileWriteAtResponse struct {
+ S _zx.Status
+ Actual uint64
+}
+
+// Implements Payload.
+func (_ *FileWriteAtResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileWriteAtResponse) InlineSize() int {
+ return 16
+}
+// Request for Seek.
+type FileSeekRequest struct {
+ Offset int64
+ Start SeekOrigin
+}
+
+// Implements Payload.
+func (_ *FileSeekRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileSeekRequest) InlineSize() int {
+ return 16
+}
+// Response for Seek.
+type FileSeekResponse struct {
+ S _zx.Status
+ Offset uint64
+}
+
+// Implements Payload.
+func (_ *FileSeekResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileSeekResponse) InlineSize() int {
+ return 16
+}
+// Request for Truncate.
+type FileTruncateRequest struct {
+ Length uint64
+}
+
+// Implements Payload.
+func (_ *FileTruncateRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileTruncateRequest) InlineSize() int {
+ return 8
+}
+// Response for Truncate.
+type FileTruncateResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *FileTruncateResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileTruncateResponse) InlineSize() int {
+ return 4
+}
+// Request for GetFlags.
+type FileGetFlagsRequest struct {
+}
+
+// Implements Payload.
+func (_ *FileGetFlagsRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetFlagsRequest) InlineSize() int {
+ return 0
+}
+// Response for GetFlags.
+type FileGetFlagsResponse struct {
+ S _zx.Status
+ Flags uint32
+}
+
+// Implements Payload.
+func (_ *FileGetFlagsResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetFlagsResponse) InlineSize() int {
+ return 8
+}
+// Request for SetFlags.
+type FileSetFlagsRequest struct {
+ Flags uint32
+}
+
+// Implements Payload.
+func (_ *FileSetFlagsRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileSetFlagsRequest) InlineSize() int {
+ return 4
+}
+// Response for SetFlags.
+type FileSetFlagsResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *FileSetFlagsResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileSetFlagsResponse) InlineSize() int {
+ return 4
+}
+// Request for GetVmo.
+type FileGetVmoRequest struct {
+ Flags uint32
+}
+
+// Implements Payload.
+func (_ *FileGetVmoRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetVmoRequest) InlineSize() int {
+ return 4
+}
+// Response for GetVmo.
+type FileGetVmoResponse struct {
+ S _zx.Status
+ Vmo _zx.VMO
+}
+
+// Implements Payload.
+func (_ *FileGetVmoResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetVmoResponse) InlineSize() int {
+ return 8
+}
+// Request for GetVmoAt.
+type FileGetVmoAtRequest struct {
+ Flags uint32
+ Offset uint64
+ Length uint64
+}
+
+// Implements Payload.
+func (_ *FileGetVmoAtRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetVmoAtRequest) InlineSize() int {
+ return 24
+}
+// Response for GetVmoAt.
+type FileGetVmoAtResponse struct {
+ S _zx.Status
+ Vmo _zx.VMO
+}
+
+// Implements Payload.
+func (_ *FileGetVmoAtResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *FileGetVmoAtResponse) InlineSize() int {
+ return 8
+}
+
+type FileInterface _bindings.Proxy
+
+func (p *FileInterface) Read(count uint64) (_zx.Status, []uint8, error) {
+ req_ := FileReadRequest{
+ Count: count,
+ }
+ resp_ := FileReadResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038081, &req_, &resp_)
+ return resp_.S, resp_.Data, err
+}
+func (p *FileInterface) ReadAt(count uint64,offset uint64) (_zx.Status, []uint8, error) {
+ req_ := FileReadAtRequest{
+ Count: count,
+ Offset: offset,
+ }
+ resp_ := FileReadAtResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038082, &req_, &resp_)
+ return resp_.S, resp_.Data, err
+}
+func (p *FileInterface) Write(data []uint8) (_zx.Status, uint64, error) {
+ req_ := FileWriteRequest{
+ Data: data,
+ }
+ resp_ := FileWriteResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038083, &req_, &resp_)
+ return resp_.S, resp_.Actual, err
+}
+func (p *FileInterface) WriteAt(data []uint8,offset uint64) (_zx.Status, uint64, error) {
+ req_ := FileWriteAtRequest{
+ Data: data,
+ Offset: offset,
+ }
+ resp_ := FileWriteAtResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038084, &req_, &resp_)
+ return resp_.S, resp_.Actual, err
+}
+func (p *FileInterface) Seek(offset int64,start SeekOrigin) (_zx.Status, uint64, error) {
+ req_ := FileSeekRequest{
+ Offset: offset,
+ Start: start,
+ }
+ resp_ := FileSeekResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038085, &req_, &resp_)
+ return resp_.S, resp_.Offset, err
+}
+func (p *FileInterface) Truncate(length uint64) (_zx.Status, error) {
+ req_ := FileTruncateRequest{
+ Length: length,
+ }
+ resp_ := FileTruncateResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038086, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *FileInterface) GetFlags() (_zx.Status, uint32, error) {
+ req_ := FileGetFlagsRequest{
+ }
+ resp_ := FileGetFlagsResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038087, &req_, &resp_)
+ return resp_.S, resp_.Flags, err
+}
+func (p *FileInterface) SetFlags(flags uint32) (_zx.Status, error) {
+ req_ := FileSetFlagsRequest{
+ Flags: flags,
+ }
+ resp_ := FileSetFlagsResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038088, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *FileInterface) GetVmo(flags uint32) (_zx.Status, _zx.VMO, error) {
+ req_ := FileGetVmoRequest{
+ Flags: flags,
+ }
+ resp_ := FileGetVmoResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038089, &req_, &resp_)
+ return resp_.S, resp_.Vmo, err
+}
+func (p *FileInterface) GetVmoAt(flags uint32,offset uint64,length uint64) (_zx.Status, _zx.VMO, error) {
+ req_ := FileGetVmoAtRequest{
+ Flags: flags,
+ Offset: offset,
+ Length: length,
+ }
+ resp_ := FileGetVmoAtResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2181038090, &req_, &resp_)
+ return resp_.S, resp_.Vmo, err
+}
+
+// File server interface.
+type File interface {
+ Clone(flags uint32,object ObjectInterfaceRequest) error
+ Close() (_zx.Status, error)
+ ListInterfaces() ([]string, error)
+ Bind(iface string) error
+ Describe() (ObjectInfo, error)
+ Sync() (_zx.Status, error)
+ GetAttr() (_zx.Status, NodeAttributes, error)
+ SetAttr(flags uint32,attributes NodeAttributes) (_zx.Status, error)
+ Ioctl(opcode uint32,maxOut uint64,handles []_zx.Handle,in []uint8) (_zx.Status, []_zx.Handle, []uint8, error)
+ Read(count uint64) (_zx.Status, []uint8, error)
+ ReadAt(count uint64,offset uint64) (_zx.Status, []uint8, error)
+ Write(data []uint8) (_zx.Status, uint64, error)
+ WriteAt(data []uint8,offset uint64) (_zx.Status, uint64, error)
+ Seek(offset int64,start SeekOrigin) (_zx.Status, uint64, error)
+ Truncate(length uint64) (_zx.Status, error)
+ GetFlags() (_zx.Status, uint32, error)
+ SetFlags(flags uint32) (_zx.Status, error)
+ GetVmo(flags uint32) (_zx.Status, _zx.VMO, error)
+ GetVmoAt(flags uint32,offset uint64,length uint64) (_zx.Status, _zx.VMO, error)
+}
+
+type FileInterfaceRequest _bindings.InterfaceRequest
+
+func NewFileInterfaceRequest() (FileInterfaceRequest, *FileInterface, error) {
+ req, cli, err := _bindings.NewInterfaceRequest()
+ return FileInterfaceRequest(req), (*FileInterface)(cli), err
+}
+
+type FileStub struct {
+ Impl File
+}
+
+func (s *FileStub) Dispatch(ord uint32, b_ []byte, h_ []_zx.Handle) (_bindings.Payload, error) {
+ switch ord {
+ case 2147483649:
+ in_ := ObjectCloneRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Clone(in_.Flags,in_.Object)
+ return nil, err_
+ case 2147483650:
+ in_ := ObjectCloseRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectCloseResponse{}
+ s, err_ := s.Impl.Close()
+ out_.S = s
+ return &out_, err_
+ case 2147483652:
+ in_ := ObjectListInterfacesRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectListInterfacesResponse{}
+ interfaces, err_ := s.Impl.ListInterfaces()
+ out_.Interfaces = interfaces
+ return &out_, err_
+ case 2147483653:
+ in_ := ObjectBindRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Bind(in_.Iface)
+ return nil, err_
+ case 2147483654:
+ in_ := ObjectDescribeRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectDescribeResponse{}
+ info, err_ := s.Impl.Describe()
+ out_.Info = info
+ return &out_, err_
+ case 2164260865:
+ in_ := NodeSyncRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSyncResponse{}
+ s, err_ := s.Impl.Sync()
+ out_.S = s
+ return &out_, err_
+ case 2164260866:
+ in_ := NodeGetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeGetAttrResponse{}
+ s, attributes, err_ := s.Impl.GetAttr()
+ out_.S = s
+ out_.Attributes = attributes
+ return &out_, err_
+ case 2164260867:
+ in_ := NodeSetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSetAttrResponse{}
+ s, err_ := s.Impl.SetAttr(in_.Flags,in_.Attributes)
+ out_.S = s
+ return &out_, err_
+ case 2164260868:
+ in_ := NodeIoctlRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeIoctlResponse{}
+ s, handles, out, err_ := s.Impl.Ioctl(in_.Opcode,in_.MaxOut,in_.Handles,in_.In)
+ out_.S = s
+ out_.Handles = handles
+ out_.Out = out
+ return &out_, err_
+ case 2181038081:
+ in_ := FileReadRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileReadResponse{}
+ s, data, err_ := s.Impl.Read(in_.Count)
+ out_.S = s
+ out_.Data = data
+ return &out_, err_
+ case 2181038082:
+ in_ := FileReadAtRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileReadAtResponse{}
+ s, data, err_ := s.Impl.ReadAt(in_.Count,in_.Offset)
+ out_.S = s
+ out_.Data = data
+ return &out_, err_
+ case 2181038083:
+ in_ := FileWriteRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileWriteResponse{}
+ s, actual, err_ := s.Impl.Write(in_.Data)
+ out_.S = s
+ out_.Actual = actual
+ return &out_, err_
+ case 2181038084:
+ in_ := FileWriteAtRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileWriteAtResponse{}
+ s, actual, err_ := s.Impl.WriteAt(in_.Data,in_.Offset)
+ out_.S = s
+ out_.Actual = actual
+ return &out_, err_
+ case 2181038085:
+ in_ := FileSeekRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileSeekResponse{}
+ s, offset, err_ := s.Impl.Seek(in_.Offset,in_.Start)
+ out_.S = s
+ out_.Offset = offset
+ return &out_, err_
+ case 2181038086:
+ in_ := FileTruncateRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileTruncateResponse{}
+ s, err_ := s.Impl.Truncate(in_.Length)
+ out_.S = s
+ return &out_, err_
+ case 2181038087:
+ in_ := FileGetFlagsRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileGetFlagsResponse{}
+ s, flags, err_ := s.Impl.GetFlags()
+ out_.S = s
+ out_.Flags = flags
+ return &out_, err_
+ case 2181038088:
+ in_ := FileSetFlagsRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileSetFlagsResponse{}
+ s, err_ := s.Impl.SetFlags(in_.Flags)
+ out_.S = s
+ return &out_, err_
+ case 2181038089:
+ in_ := FileGetVmoRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileGetVmoResponse{}
+ s, vmo, err_ := s.Impl.GetVmo(in_.Flags)
+ out_.S = s
+ out_.Vmo = vmo
+ return &out_, err_
+ case 2181038090:
+ in_ := FileGetVmoAtRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := FileGetVmoAtResponse{}
+ s, vmo, err_ := s.Impl.GetVmoAt(in_.Flags,in_.Offset,in_.Length)
+ out_.S = s
+ out_.Vmo = vmo
+ return &out_, err_
+ }
+ return nil, _bindings.ErrUnknownOrdinal
+}
+
+type FileService struct {
+ _bindings.BindingSet
+}
+
+func (s *FileService) Add(impl File, c _zx.Channel, onError func(error)) (_bindings.BindingKey, error) {
+ return s.BindingSet.Add(&FileStub{Impl: impl}, c, onError)
+}
+
+func (s *FileService) EventProxyFor(key _bindings.BindingKey) (*FileEventProxy, bool) {
+ pxy, err := s.BindingSet.ProxyFor(key)
+ return (*FileEventProxy)(pxy), err
+}
+
+type FileEventProxy _bindings.Proxy
+
+func (p *FileEventProxy) OnOpen(s _zx.Status,info *ObjectInfo) error {
+ event_ := ObjectOnOpenResponse{
+ S: s,
+ Info: info,
+ }
+ return ((*_bindings.Proxy)(p)).Send(2147483655, &event_)
+}
+
+
+
+// Request for Open.
+type DirectoryOpenRequest struct {
+ Flags uint32
+ Mode uint32
+ Path string
+ Object ObjectInterfaceRequest
+}
+
+// Implements Payload.
+func (_ *DirectoryOpenRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryOpenRequest) InlineSize() int {
+ return 32
+}
+// Open has no response.
+// Request for Unlink.
+type DirectoryUnlinkRequest struct {
+ Path string
+}
+
+// Implements Payload.
+func (_ *DirectoryUnlinkRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryUnlinkRequest) InlineSize() int {
+ return 16
+}
+// Response for Unlink.
+type DirectoryUnlinkResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *DirectoryUnlinkResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryUnlinkResponse) InlineSize() int {
+ return 4
+}
+// Request for ReadDirents.
+type DirectoryReadDirentsRequest struct {
+ MaxOut uint64
+}
+
+// Implements Payload.
+func (_ *DirectoryReadDirentsRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryReadDirentsRequest) InlineSize() int {
+ return 8
+}
+// Response for ReadDirents.
+type DirectoryReadDirentsResponse struct {
+ S _zx.Status
+ Dirents []uint8 `fidl:"8192"`
+}
+
+// Implements Payload.
+func (_ *DirectoryReadDirentsResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryReadDirentsResponse) InlineSize() int {
+ return 24
+}
+// Request for Rewind.
+type DirectoryRewindRequest struct {
+}
+
+// Implements Payload.
+func (_ *DirectoryRewindRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryRewindRequest) InlineSize() int {
+ return 0
+}
+// Response for Rewind.
+type DirectoryRewindResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *DirectoryRewindResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryRewindResponse) InlineSize() int {
+ return 4
+}
+// Request for GetToken.
+type DirectoryGetTokenRequest struct {
+}
+
+// Implements Payload.
+func (_ *DirectoryGetTokenRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryGetTokenRequest) InlineSize() int {
+ return 0
+}
+// Response for GetToken.
+type DirectoryGetTokenResponse struct {
+ S _zx.Status
+ Token _zx.Handle
+}
+
+// Implements Payload.
+func (_ *DirectoryGetTokenResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryGetTokenResponse) InlineSize() int {
+ return 8
+}
+// Request for Rename.
+type DirectoryRenameRequest struct {
+ Src string
+ DstParentToken _zx.Handle
+ Dst string
+}
+
+// Implements Payload.
+func (_ *DirectoryRenameRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryRenameRequest) InlineSize() int {
+ return 40
+}
+// Response for Rename.
+type DirectoryRenameResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *DirectoryRenameResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryRenameResponse) InlineSize() int {
+ return 4
+}
+// Request for Link.
+type DirectoryLinkRequest struct {
+ Src string
+ DstParentToken _zx.Handle
+ Dst string
+}
+
+// Implements Payload.
+func (_ *DirectoryLinkRequest) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryLinkRequest) InlineSize() int {
+ return 40
+}
+// Response for Link.
+type DirectoryLinkResponse struct {
+ S _zx.Status
+}
+
+// Implements Payload.
+func (_ *DirectoryLinkResponse) InlineAlignment() int {
+ return 0
+}
+
+// Implements Payload.
+func (_ *DirectoryLinkResponse) InlineSize() int {
+ return 4
+}
+
+type DirectoryInterface _bindings.Proxy
+
+func (p *DirectoryInterface) Open(flags uint32,mode uint32,path string,object ObjectInterfaceRequest) error {
+ req_ := DirectoryOpenRequest{
+ Flags: flags,
+ Mode: mode,
+ Path: path,
+ Object: object,
+ }
+ err := ((*_bindings.Proxy)(p)).Send(2197815297, &req_)
+ return err
+}
+func (p *DirectoryInterface) Unlink(path string) (_zx.Status, error) {
+ req_ := DirectoryUnlinkRequest{
+ Path: path,
+ }
+ resp_ := DirectoryUnlinkResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815298, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *DirectoryInterface) ReadDirents(maxOut uint64) (_zx.Status, []uint8, error) {
+ req_ := DirectoryReadDirentsRequest{
+ MaxOut: maxOut,
+ }
+ resp_ := DirectoryReadDirentsResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815299, &req_, &resp_)
+ return resp_.S, resp_.Dirents, err
+}
+func (p *DirectoryInterface) Rewind() (_zx.Status, error) {
+ req_ := DirectoryRewindRequest{
+ }
+ resp_ := DirectoryRewindResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815300, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *DirectoryInterface) GetToken() (_zx.Status, _zx.Handle, error) {
+ req_ := DirectoryGetTokenRequest{
+ }
+ resp_ := DirectoryGetTokenResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815301, &req_, &resp_)
+ return resp_.S, resp_.Token, err
+}
+func (p *DirectoryInterface) Rename(src string,dstParentToken _zx.Handle,dst string) (_zx.Status, error) {
+ req_ := DirectoryRenameRequest{
+ Src: src,
+ DstParentToken: dstParentToken,
+ Dst: dst,
+ }
+ resp_ := DirectoryRenameResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815302, &req_, &resp_)
+ return resp_.S, err
+}
+func (p *DirectoryInterface) Link(src string,dstParentToken _zx.Handle,dst string) (_zx.Status, error) {
+ req_ := DirectoryLinkRequest{
+ Src: src,
+ DstParentToken: dstParentToken,
+ Dst: dst,
+ }
+ resp_ := DirectoryLinkResponse{}
+ err := ((*_bindings.Proxy)(p)).Call(2197815303, &req_, &resp_)
+ return resp_.S, err
+}
+
+// Directory server interface.
+type Directory interface {
+ Clone(flags uint32,object ObjectInterfaceRequest) error
+ Close() (_zx.Status, error)
+ ListInterfaces() ([]string, error)
+ Bind(iface string) error
+ Describe() (ObjectInfo, error)
+ Sync() (_zx.Status, error)
+ GetAttr() (_zx.Status, NodeAttributes, error)
+ SetAttr(flags uint32,attributes NodeAttributes) (_zx.Status, error)
+ Ioctl(opcode uint32,maxOut uint64,handles []_zx.Handle,in []uint8) (_zx.Status, []_zx.Handle, []uint8, error)
+ Open(flags uint32,mode uint32,path string,object ObjectInterfaceRequest) error
+ Unlink(path string) (_zx.Status, error)
+ ReadDirents(maxOut uint64) (_zx.Status, []uint8, error)
+ Rewind() (_zx.Status, error)
+ GetToken() (_zx.Status, _zx.Handle, error)
+ Rename(src string,dstParentToken _zx.Handle,dst string) (_zx.Status, error)
+ Link(src string,dstParentToken _zx.Handle,dst string) (_zx.Status, error)
+}
+
+type DirectoryInterfaceRequest _bindings.InterfaceRequest
+
+func NewDirectoryInterfaceRequest() (DirectoryInterfaceRequest, *DirectoryInterface, error) {
+ req, cli, err := _bindings.NewInterfaceRequest()
+ return DirectoryInterfaceRequest(req), (*DirectoryInterface)(cli), err
+}
+
+type DirectoryStub struct {
+ Impl Directory
+}
+
+func (s *DirectoryStub) Dispatch(ord uint32, b_ []byte, h_ []_zx.Handle) (_bindings.Payload, error) {
+ switch ord {
+ case 2147483649:
+ in_ := ObjectCloneRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Clone(in_.Flags,in_.Object)
+ return nil, err_
+ case 2147483650:
+ in_ := ObjectCloseRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectCloseResponse{}
+ s, err_ := s.Impl.Close()
+ out_.S = s
+ return &out_, err_
+ case 2147483652:
+ in_ := ObjectListInterfacesRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectListInterfacesResponse{}
+ interfaces, err_ := s.Impl.ListInterfaces()
+ out_.Interfaces = interfaces
+ return &out_, err_
+ case 2147483653:
+ in_ := ObjectBindRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Bind(in_.Iface)
+ return nil, err_
+ case 2147483654:
+ in_ := ObjectDescribeRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := ObjectDescribeResponse{}
+ info, err_ := s.Impl.Describe()
+ out_.Info = info
+ return &out_, err_
+ case 2164260865:
+ in_ := NodeSyncRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSyncResponse{}
+ s, err_ := s.Impl.Sync()
+ out_.S = s
+ return &out_, err_
+ case 2164260866:
+ in_ := NodeGetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeGetAttrResponse{}
+ s, attributes, err_ := s.Impl.GetAttr()
+ out_.S = s
+ out_.Attributes = attributes
+ return &out_, err_
+ case 2164260867:
+ in_ := NodeSetAttrRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeSetAttrResponse{}
+ s, err_ := s.Impl.SetAttr(in_.Flags,in_.Attributes)
+ out_.S = s
+ return &out_, err_
+ case 2164260868:
+ in_ := NodeIoctlRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := NodeIoctlResponse{}
+ s, handles, out, err_ := s.Impl.Ioctl(in_.Opcode,in_.MaxOut,in_.Handles,in_.In)
+ out_.S = s
+ out_.Handles = handles
+ out_.Out = out
+ return &out_, err_
+ case 2197815297:
+ in_ := DirectoryOpenRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ err_ := s.Impl.Open(in_.Flags,in_.Mode,in_.Path,in_.Object)
+ return nil, err_
+ case 2197815298:
+ in_ := DirectoryUnlinkRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryUnlinkResponse{}
+ s, err_ := s.Impl.Unlink(in_.Path)
+ out_.S = s
+ return &out_, err_
+ case 2197815299:
+ in_ := DirectoryReadDirentsRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryReadDirentsResponse{}
+ s, dirents, err_ := s.Impl.ReadDirents(in_.MaxOut)
+ out_.S = s
+ out_.Dirents = dirents
+ return &out_, err_
+ case 2197815300:
+ in_ := DirectoryRewindRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryRewindResponse{}
+ s, err_ := s.Impl.Rewind()
+ out_.S = s
+ return &out_, err_
+ case 2197815301:
+ in_ := DirectoryGetTokenRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryGetTokenResponse{}
+ s, token, err_ := s.Impl.GetToken()
+ out_.S = s
+ out_.Token = token
+ return &out_, err_
+ case 2197815302:
+ in_ := DirectoryRenameRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryRenameResponse{}
+ s, err_ := s.Impl.Rename(in_.Src,in_.DstParentToken,in_.Dst)
+ out_.S = s
+ return &out_, err_
+ case 2197815303:
+ in_ := DirectoryLinkRequest{}
+ if err_ := _bindings.Unmarshal(b_, h_, &in_); err_ != nil {
+ return nil, err_
+ }
+ out_ := DirectoryLinkResponse{}
+ s, err_ := s.Impl.Link(in_.Src,in_.DstParentToken,in_.Dst)
+ out_.S = s
+ return &out_, err_
+ }
+ return nil, _bindings.ErrUnknownOrdinal
+}
+
+type DirectoryService struct {
+ _bindings.BindingSet
+}
+
+func (s *DirectoryService) Add(impl Directory, c _zx.Channel, onError func(error)) (_bindings.BindingKey, error) {
+ return s.BindingSet.Add(&DirectoryStub{Impl: impl}, c, onError)
+}
+
+func (s *DirectoryService) EventProxyFor(key _bindings.BindingKey) (*DirectoryEventProxy, bool) {
+ pxy, err := s.BindingSet.ProxyFor(key)
+ return (*DirectoryEventProxy)(pxy), err
+}
+
+type DirectoryEventProxy _bindings.Proxy
+
+func (p *DirectoryEventProxy) OnOpen(s _zx.Status,info *ObjectInfo) error {
+ event_ := ObjectOnOpenResponse{
+ S: s,
+ Info: info,
+ }
+ return ((*_bindings.Proxy)(p)).Send(2147483655, &event_)
+}
+