Clarify network and test execution contracts
This commit is contained in:
@@ -36,9 +36,10 @@ interface host {
|
||||
pull: func(limit: u32) -> result<list<u8>, host-error>;
|
||||
}
|
||||
/// Begins a request to any HTTP or HTTPS host, including LAN and loopback
|
||||
/// addresses. Each redirect and DNS result is checked, and DNS is pinned.
|
||||
/// Cross-origin redirects remove request headers; HTTPS cannot downgrade.
|
||||
/// The host bounds total bytes per exchange, not buffer size.
|
||||
/// addresses. This API has no per-connection network grant. Each redirect
|
||||
/// and DNS result is checked, and DNS is pinned. Cross-origin redirects
|
||||
/// remove request headers; HTTPS cannot downgrade. The host bounds total
|
||||
/// bytes per exchange, not buffer size.
|
||||
http: func(request: request) -> result<exchange, host-error>;
|
||||
|
||||
/// One open TCP connection. Dropping the handle closes the socket, and the
|
||||
@@ -51,9 +52,9 @@ interface host {
|
||||
write: func(data: list<u8>) -> result<u32, host-error>;
|
||||
}
|
||||
/// Opens a socket to any host, including LAN and loopback addresses, on a
|
||||
/// package-declared port. The host resolves and pins DNS and starts TLS
|
||||
/// when asked. Ports negotiated at runtime, such as an FTP data channel,
|
||||
/// must be declared.
|
||||
/// package-declared port. This API has no per-connection network grant.
|
||||
/// The host resolves and pins DNS and starts TLS when asked. Ports
|
||||
/// negotiated at runtime, such as an FTP data channel, must be declared.
|
||||
connect: func(host: string, port: u16, tls: bool) -> result<tcp, host-error>;
|
||||
|
||||
/// One datagram socket connected to a single peer.
|
||||
@@ -64,8 +65,8 @@ interface host {
|
||||
/// means none arrived inside the host's wait, not that the peer left.
|
||||
receive: func(limit: u32) -> result<list<u8>, host-error>;
|
||||
}
|
||||
/// Connects a datagram socket under the same port rules as `connect`, for
|
||||
/// the few filesystem protocols that still need one.
|
||||
/// Connects a datagram socket under the same address and port rules as
|
||||
/// `connect`, for the few filesystem protocols that still need one.
|
||||
bind: func(host: string, port: u16) -> result<udp, host-error>;
|
||||
|
||||
/// A configuration value, typed as the package's manifest declared it.
|
||||
|
||||
Reference in New Issue
Block a user