通訊協定
版本
定義於 fuchsia.fdomain/channel.fidl
管道的 FDomain 作業。
CreateChannel
在這個 FDomain 中建立新管道,並傳回其兩端。
要求
| 名稱 | 類型 |
|---|---|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_CreateChannel_Result
|
OnChannelStreamingData
從管道非同步讀取的資料。
回應
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
channel_sent |
ChannelSent
|
ReadChannel
讀取管道訊息。如果目前正在使用串流讀取函式讀取管道,這個方法就會失敗。
請注意,這個方法與 zx_channel_read 不同,不會傳回 SHOULD_WAIT,而是會延遲傳回,直到有資料可傳回為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannel_Result
|
ReadChannelStreamingStart
從指定管道開始讀取。資料會透過 ChannelStreamingData 事件傳回。該事件會重複發生,直到針對相同控制代碼呼叫 ReadChannelStreamingStop,或事件指出控制代碼已關閉為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannelStreamingStart_Result
|
ReadChannelStreamingStop
停止從指定管道非同步讀取。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannelStreamingStop_Result
|
WriteChannel
寫入管道。控制代碼一律會耗用。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
data |
vector<uint8>:65536
|
handles |
Handles
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_WriteChannel_Result
|
事件
定義於 fuchsia.fdomain/event.fidl
事件的網域作業。
CreateEvent
在這個 FDomain 中建立新事件並傳回。
要求
| 名稱 | 類型 |
|---|---|
handle |
NewHandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Event_CreateEvent_Result
|
EventPair
定義於 fuchsia.fdomain/event_pair.fidl
EventPairs 的 FDomain 作業。
CreateEventPair
在這個 FDomain 中建立新的事件配對,並傳回兩端。
要求
| 名稱 | 類型 |
|---|---|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
EventPair_CreateEventPair_Result
|
FDomain
定義於 fuchsia.fdomain/protocol.fidl
FDomain 控制通訊協定。
這項通訊協定旨在透過網路或其他非管道傳輸方式使用。
關閉
關閉一或多個控點。
要求
| 名稱 | 類型 |
|---|---|
handles |
vector<HandleId>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_Close_Result
|
CreateChannel
在這個 FDomain 中建立新管道,並傳回其兩端。
要求
| 名稱 | 類型 |
|---|---|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_CreateChannel_Result
|
CreateEvent
在這個 FDomain 中建立新事件並傳回。
要求
| 名稱 | 類型 |
|---|---|
handle |
NewHandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Event_CreateEvent_Result
|
CreateEventPair
在這個 FDomain 中建立新的事件配對,並傳回兩端。
要求
| 名稱 | 類型 |
|---|---|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
EventPair_CreateEventPair_Result
|
CreateSocket
在這個 FDomain 中建立新的通訊端,並傳回其兩端。
要求
| 名稱 | 類型 |
|---|---|
options |
SocketType
|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_CreateSocket_Result
|
CreateVmo
在這個 FDomain 中建立新的 VMO。
要求
| 名稱 | 類型 |
|---|---|
size |
uint64
|
options |
VmoOptions
|
handle |
NewHandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_CreateVmo_Result
|
複製
複製控制點。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
new_handle |
NewHandleId
|
rights |
zx/Rights
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_Duplicate_Result
|
GetKoid
傳回控制代碼的核心物件 ID (koid)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_GetKoid_Result
|
GetNamespace
在這個命名空間中新增指向 fuchsia.io.Directory 的管道控制代碼。可用於「啟動」FDomain。
要求
| 名稱 | 類型 |
|---|---|
new_handle |
NewHandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_GetNamespace_Result
|
GetVmoSize
取得 VMO 的大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_GetVmoSize_Result
|
GetVmoStreamSize
取得 VMO 的串流大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_GetVmoStreamSize_Result
|
OnChannelStreamingData
從管道非同步讀取的資料。
回應
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
channel_sent |
ChannelSent
|
OnSocketStreamingData
從通訊端非同步讀取的資料。
回應
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
socket_message |
SocketMessage
|
ReadChannel
讀取管道訊息。如果目前正在使用串流讀取函式讀取管道,這個方法就會失敗。
請注意,這個方法與 zx_channel_read 不同,不會傳回 SHOULD_WAIT,而是會延遲傳回,直到有資料可傳回為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannel_Result
|
ReadChannelStreamingStart
從指定管道開始讀取。資料會透過 ChannelStreamingData 事件傳回。該事件會重複發生,直到針對相同控制代碼呼叫 ReadChannelStreamingStop,或事件指出控制代碼已關閉為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannelStreamingStart_Result
|
ReadChannelStreamingStop
停止從指定管道非同步讀取。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_ReadChannelStreamingStop_Result
|
ReadSocket
從通訊端讀取資料。如果通訊端目前正在以非同步方式讀取,這個方法就會失敗。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
max_bytes |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocket_Result
|
ReadSocketStreamingStart
從指定通訊端開始讀取。資料會透過 SocketStreamingData 事件傳回。該事件會重複發生,直到針對相同控制代碼呼叫 ReadSocketStreamingStop,或事件指出控制代碼已關閉為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocketStreamingStart_Result
|
ReadSocketStreamingStop
停止從指定通訊端非同步讀取。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocketStreamingStop_Result
|
ReadVmo
從 VMO 讀取資料。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
offset |
uint64
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_ReadVmo_Result
|
取代
關閉控制代碼,並以可能具有不同權限的新控制代碼取代。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
new_handle |
NewHandleId
|
rights |
zx/Rights
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_Replace_Result
|
SetSocketDisposition
設定指定通訊端的處置方式。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
disposition |
SocketDisposition
|
disposition_peer |
SocketDisposition
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_SetSocketDisposition_Result
|
SetVmoSize
設定 VMO 的大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_SetVmoSize_Result
|
SetVmoStreamSize
設定 VMO 的串流大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_SetVmoStreamSize_Result
|
信號
設定或清除控制代碼上的信號。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
set |
zx/Signals
|
clear |
zx/Signals
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_Signal_Result
|
SignalPeer
設定或清除控制代碼對等點的信號。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
set |
zx/Signals
|
clear |
zx/Signals
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_SignalPeer_Result
|
WaitForSignals
等待指定控制代碼的信號。當其中一個指定信號生效時,系統會傳回回覆。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
signals |
zx/Signals
|
回應
| 名稱 | 類型 |
|---|---|
payload |
FDomain_WaitForSignals_Result
|
WriteChannel
寫入管道。控制代碼一律會耗用。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
data |
vector<uint8>:65536
|
handles |
Handles
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Channel_WriteChannel_Result
|
WriteSocket
寫入通訊端。這會嘗試寫入所有傳遞的資料,並在安全時封鎖並重試 (例如,不應傳回 SHOULD_WAIT)。WriteSocketError 包含 wrote 參數,用於指出在發生失敗前是否已成功寫入部分位元組。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
data |
vector<uint8>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_WriteSocket_Result
|
WriteVmo
將資料寫入 VMO。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
offset |
uint64
|
data |
vector<uint8>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_WriteVmo_Result
|
通訊端
定義於 fuchsia.fdomain/socket.fidl
通訊端上的 FDomain 作業
CreateSocket
在這個 FDomain 中建立新的通訊端,並傳回其兩端。
要求
| 名稱 | 類型 |
|---|---|
options |
SocketType
|
handles |
array<NewHandleId, 2>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_CreateSocket_Result
|
OnSocketStreamingData
從通訊端非同步讀取的資料。
回應
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
socket_message |
SocketMessage
|
ReadSocket
從通訊端讀取資料。如果通訊端目前正在以非同步方式讀取,這個方法就會失敗。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
max_bytes |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocket_Result
|
ReadSocketStreamingStart
從指定通訊端開始讀取。資料會透過 SocketStreamingData 事件傳回。該事件會重複發生,直到針對相同控制代碼呼叫 ReadSocketStreamingStop,或事件指出控制代碼已關閉為止。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocketStreamingStart_Result
|
ReadSocketStreamingStop
停止從指定通訊端非同步讀取。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_ReadSocketStreamingStop_Result
|
SetSocketDisposition
設定指定通訊端的處置方式。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
disposition |
SocketDisposition
|
disposition_peer |
SocketDisposition
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_SetSocketDisposition_Result
|
WriteSocket
寫入通訊端。這會嘗試寫入所有傳遞的資料,並在安全時封鎖並重試 (例如,不應傳回 SHOULD_WAIT)。WriteSocketError 包含 wrote 參數,用於指出在發生失敗前是否已成功寫入部分位元組。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
data |
vector<uint8>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Socket_WriteSocket_Result
|
Vmo
對 VMO (虛擬記憶體物件) 執行 FDomain 作業。
CreateVmo
在這個 FDomain 中建立新的 VMO。
要求
| 名稱 | 類型 |
|---|---|
size |
uint64
|
options |
VmoOptions
|
handle |
NewHandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_CreateVmo_Result
|
GetVmoSize
取得 VMO 的大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_GetVmoSize_Result
|
GetVmoStreamSize
取得 VMO 的串流大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_GetVmoStreamSize_Result
|
ReadVmo
從 VMO 讀取資料。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
offset |
uint64
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_ReadVmo_Result
|
SetVmoSize
設定 VMO 的大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_SetVmoSize_Result
|
SetVmoStreamSize
設定 VMO 的串流大小 (以位元組為單位)。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
size |
uint64
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_SetVmoStreamSize_Result
|
WriteVmo
將資料寫入 VMO。
要求
| 名稱 | 類型 |
|---|---|
handle |
HandleId
|
offset |
uint64
|
data |
vector<uint8>
|
回應
| 名稱 | 類型 |
|---|---|
payload |
Vmo_WriteVmo_Result
|
STRUCTS
AioStopped
定義於 fuchsia.fdomain/protocol.fidl
傳回值,表示非同步 IO 已停止,並可選擇是否包含錯誤。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
error |
Error?
|
無預設值 |
BadHandleId
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
id |
uint32
|
無預設值 |
ChannelMessage
定義於 fuchsia.fdomain/channel.fidl
透過管道收到的訊息。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
data |
vector<uint8>:65536
|
無預設值 | |
handles |
vector<HandleInfo>:64
|
無預設值 |
Channel_CreateChannel_Response
定義於 fuchsia.fdomain/channel.fidl
<EMPTY>
Channel_ReadChannelStreamingStart_Response
定義於 fuchsia.fdomain/channel.fidl
<EMPTY>
Channel_ReadChannelStreamingStop_Response
定義於 fuchsia.fdomain/channel.fidl
<EMPTY>
Channel_WriteChannel_Response
定義於 fuchsia.fdomain/channel.fidl
<EMPTY>
ClosedDuringRead
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
EventPair_CreateEventPair_Response
定義於 fuchsia.fdomain/event_pair.fidl
<EMPTY>
Event_CreateEvent_Response
定義於 fuchsia.fdomain/event.fidl
<EMPTY>
FDomain_Close_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_Duplicate_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_GetKoid_Response
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
koid |
zx/Koid
|
無預設值 |
FDomain_GetNamespace_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_Replace_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_SignalPeer_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_Signal_Response
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
FDomain_WaitForSignals_Response
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
signals |
zx/Signals
|
無預設值 |
HandleDisposition
定義於 fuchsia.fdomain/protocol.fidl
處理方式。包含要寫入管道的控制代碼,以及寫入前要執行的作業。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
handle |
HandleOp
|
無預設值 | |
rights |
zx/Rights
|
無預設值 |
HandleId
定義於 fuchsia.fdomain/protocol.fidl
控制代碼 ID。這與實際 Zircon 控制代碼的大小相同,在概念上也是指 Zircon 控制代碼,但內部實際上並非 Zircon 控制代碼編號。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
id |
uint32
|
無預設值 |
HandleInfo
定義於 fuchsia.fdomain/protocol.fidl
控制代碼,以及該控制代碼擁有的權限。這項功能旨在直接模擬 zx_handle_info_t,詳情請參閱 https://fuchsia.dev/reference/syscalls/channel_read_etc
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
handle |
HandleId
|
無預設值 | |
type |
zx/ObjType
|
無預設值 | |
rights |
zx/Rights
|
無預設值 |
NewHandleId
定義於 fuchsia.fdomain/protocol.fidl
新的帳號代碼 ID。ID 應為這個工作階段中未曾使用過的控制代碼 ID。傳遞此呼叫的呼叫可能會在這個 ID 建立控制代碼,並在後續呼叫中做為 HandleId 使用。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
id |
uint32
|
無預設值 |
NewHandleIdOutOfRange
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
id |
uint32
|
無預設值 |
NewHandleIdReused
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
id |
uint32
|
無預設值 | |
same_call |
bool
|
表示這個 |
無預設值 |
NoReadInProgress
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
RightsUnknown
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
rights |
zx/Rights
|
無預設值 |
SignalsUnknown
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
signals |
zx/Signals
|
無預設值 |
SocketData
定義於 fuchsia.fdomain/socket.fidl
讀取通訊端產生的資料。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
data |
vector<uint8>
|
無預設值 | |
is_datagram |
bool
|
無預設值 |
SocketDispositionUnknown
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
disposition |
SocketDisposition
|
無預設值 |
SocketTypeUnknown
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
type |
SocketType
|
無預設值 |
Socket_CreateSocket_Response
定義於 fuchsia.fdomain/socket.fidl
<EMPTY>
Socket_ReadSocketStreamingStart_Response
定義於 fuchsia.fdomain/socket.fidl
<EMPTY>
Socket_ReadSocketStreamingStop_Response
定義於 fuchsia.fdomain/socket.fidl
<EMPTY>
Socket_SetSocketDisposition_Response
定義於 fuchsia.fdomain/socket.fidl
<EMPTY>
Socket_WriteSocket_Response
定義於 fuchsia.fdomain/socket.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
wrote |
uint64
|
無預設值 |
StreamingReadInProgress
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
Vmo_CreateVmo_Response
<EMPTY>
Vmo_GetVmoSize_Response
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
size |
uint64
|
無預設值 |
Vmo_GetVmoStreamSize_Response
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
size |
uint64
|
無預設值 |
Vmo_ReadVmo_Response
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
data |
vector<uint8>
|
無預設值 |
Vmo_SetVmoSize_Response
<EMPTY>
Vmo_SetVmoStreamSize_Response
<EMPTY>
Vmo_WriteVmo_Response
<EMPTY>
WriteSocketError
定義於 fuchsia.fdomain/socket.fidl
通訊端寫入作業的結果。
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
error |
Error
|
無預設值 | |
wrote |
uint64
|
無預設值 |
WrongHandleType
定義於 fuchsia.fdomain/protocol.fidl
| 欄位 | 類型 | 說明 | 預設 |
|---|---|---|---|
expected |
zx/ObjType
|
無預設值 | |
got |
zx/ObjType
|
無預設值 |
WroteToSelf
定義於 fuchsia.fdomain/protocol.fidl
<EMPTY>
列舉
SocketDisposition flexible
類型:uint32
定義於 fuchsia.fdomain/socket.fidl
通訊端處置。
| 名稱 | 值 | 說明 |
|---|---|---|
NO_CHANGE |
0 |
|
WRITE_ENABLED |
1 |
|
WRITE_DISABLED |
2 |
SocketType 彈性
類型:uint32
定義於 fuchsia.fdomain/socket.fidl
插座類型。
| 名稱 | 值 | 說明 |
|---|---|---|
串流播放 |
0 |
|
DATAGRAM |
1 |
UNIONS
ChannelSent 彈性
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
message |
ChannelMessage
|
|
2 |
stopped |
AioStopped
|
Channel_CreateChannel_Result strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Channel_CreateChannel_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Channel_ReadChannelStreamingStart_Result strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Channel_ReadChannelStreamingStart_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Channel_ReadChannelStreamingStop_Result strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Channel_ReadChannelStreamingStop_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Channel_ReadChannel_Result strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
ChannelMessage
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Channel_WriteChannel_Result strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Channel_WriteChannel_Response
|
|
2 |
err |
WriteChannelError
|
|
3 |
framework_err |
internal
|
錯誤彈性
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
target_error |
zx/Result
|
與控點本身互動時產生的錯誤。 |
2 |
bad_handle_id |
BadHandleId
|
提供的帳號代碼 ID 無效。 |
3 |
new_handle_id_out_of_range |
NewHandleIdOutOfRange
|
我們傳遞了 |
4 |
new_handle_id_reused |
NewHandleIdReused
|
我們傳遞了與已分配控制代碼衝突的 |
5 |
wrong_handle_type |
WrongHandleType
|
所用控制代碼的類型不適用於要求的作業。 |
6 |
streaming_read_in_progress |
StreamingReadInProgress
|
當我們嘗試在同一個控制代碼上啟動串流讀取兩次,或嘗試直接從已串流讀取的控制代碼讀取時,就會發生這種情況。 |
7 |
no_read_in_progress |
NoReadInProgress
|
我們嘗試停止串流讀取控制代碼,但一開始就未從該控制代碼串流讀取。 |
8 |
wrote_to_self |
WroteToSelf
|
我們嘗試將管道寫入自身。 |
9 |
closed_during_read |
ClosedDuringRead
|
我們在等待讀取控制代碼時,收到關閉或轉移控制代碼的要求。 |
10 |
signals_unknown |
SignalsUnknown
|
這項通訊協定的彈性功能可讓用戶端傳送我們不瞭解的信號,在不瞭解信號的情況下,我們無法安全地繼續操作。信號欄位應只包含無法解讀的信號。 |
11 |
rights_unknown |
RightsUnknown
|
這項通訊協定的彈性功能讓用戶端傳送我們不瞭解的權限,在不清楚權限內容的情況下,我們無法安全地繼續操作。權利欄位應只包含無法理解的權利。 |
12 |
socket_disposition_unknown |
SocketDispositionUnknown
|
用戶端使用的通訊端處置方式無法由 FDomain 辨識。 |
13 |
socket_type_unknown |
SocketTypeUnknown
|
用戶端使用的通訊端類型無法由 FDomain 辨識。 |
EventPair_CreateEventPair_Result strict
定義於 fuchsia.fdomain/event_pair.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
EventPair_CreateEventPair_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Event_CreateEvent_Result strict
定義於 fuchsia.fdomain/event.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Event_CreateEvent_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_Close_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_Close_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_Duplicate_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_Duplicate_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_GetKoid_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_GetKoid_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_GetNamespace_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_GetNamespace_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_Replace_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_Replace_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_SignalPeer_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_SignalPeer_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_Signal_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_Signal_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
FDomain_WaitForSignals_Result strict
定義於 fuchsia.fdomain/protocol.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
FDomain_WaitForSignals_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
HandleOp strict
定義於 fuchsia.fdomain/protocol.fidl
控點,與要對該控點執行的作業 (移動或複製) 配對。
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
move |
HandleId
|
|
2 |
duplicate |
HandleId
|
處理 strict
定義於 fuchsia.fdomain/channel.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
handles |
vector<HandleId>:64
|
|
2 |
dispositions |
vector<HandleDisposition>:64
|
SocketMessage 彈性
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
data |
SocketData
|
|
2 |
stopped |
AioStopped
|
Socket_CreateSocket_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Socket_CreateSocket_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Socket_ReadSocketStreamingStart_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Socket_ReadSocketStreamingStart_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Socket_ReadSocketStreamingStop_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Socket_ReadSocketStreamingStop_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Socket_ReadSocket_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
SocketData
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Socket_SetSocketDisposition_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Socket_SetSocketDisposition_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Socket_WriteSocket_Result strict
定義於 fuchsia.fdomain/socket.fidl
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Socket_WriteSocket_Response
|
|
2 |
err |
WriteSocketError
|
|
3 |
framework_err |
internal
|
Vmo_CreateVmo_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_CreateVmo_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_GetVmoSize_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_GetVmoSize_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_GetVmoStreamSize_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_GetVmoStreamSize_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_ReadVmo_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_ReadVmo_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_SetVmoSize_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_SetVmoSize_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_SetVmoStreamSize_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_SetVmoStreamSize_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
Vmo_WriteVmo_Result strict
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
response |
Vmo_WriteVmo_Response
|
|
2 |
err |
Error
|
|
3 |
framework_err |
internal
|
WriteChannelError strict
定義於 fuchsia.fdomain/channel.fidl
管道寫入作業的結果。
| 序數 | Variant | 類型 | 說明 |
|---|---|---|---|
1 |
error |
Error
|
|
2 |
op_errors |
vector<Error?>
|
BITS
VmoOptions flexible
類型:uint32
建立 VMO 的選項。
| 名稱 | 值 | 說明 |
|---|---|---|
RESIZABLE |
2 | |
TRAP_DIRTY |
8 | |
UNBOUNDED |
16 |