History log of /wasmtime-44.0.1/crates/test-programs/src/bin/p3_sockets_tcp_bind.rs (Results 1 – 6 of 6)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: dev, v36.0.9, v44.0.1, v43.0.2, v36.0.8, v24.0.8, v44.0.0, v43.0.1, v42.0.2, v36.0.7, v24.0.7, v43.0.0
# 5d3627b7 16-Mar-2026 Bailey Hayes <[email protected]>

WASIP3 update to latest rc (#12781)


Revision tags: v42.0.1, v41.0.4, v42.0.0, v40.0.4, v36.0.6, v24.0.6
# 52f8f198 15-Feb-2026 Dave Bakker <[email protected]>

Unconditionally set SO_REUSEADDR (#12597)


Revision tags: v41.0.3, v41.0.2, v41.0.1, v36.0.5, v40.0.3, v41.0.0, v36.0.4, v39.0.2, v40.0.2, v40.0.1, v40.0.0, v39.0.1, v39.0.0, v38.0.4, v37.0.3, v36.0.3, v24.0.5, v38.0.3, v38.0.2, v38.0.1, v37.0.2
# 62d9b187 23-Sep-2025 Alex Crichton <[email protected]>

Run s390x CI on a native machine (#11711)

The hardware for this is provided by IBM and it's definitely faster than
QEMU. We've still got slow jobs elsewhere but removing this as a blocker
is still n

Run s390x CI on a native machine (#11711)

The hardware for this is provided by IBM and it's definitely faster than
QEMU. We've still got slow jobs elsewhere but removing this as a blocker
is still nice for CI times!

prtest:linux-s390x

show more ...


Revision tags: v37.0.1, v37.0.0
# 5764da5f 04-Sep-2025 Joel Dice <[email protected]>

Revamp component model stream/future host API (again) (#11515)

* Revamp component model stream/future host API (again)

This changes the host APIs for dealing with futures and streams from a
"rendez

Revamp component model stream/future host API (again) (#11515)

* Revamp component model stream/future host API (again)

This changes the host APIs for dealing with futures and streams from a
"rendezvous"-style API to a callback-oriented one.

Previously you would create e.g. a `StreamReader`/`StreamWriter` pair and call
their `read` and `write` methods, respectively, and those methods would return
`Future`s that resolved when the operation was matched with a corresponding
`write` or `read` operation on the other end.

With the new API, you instead provide a `StreamProducer` trait implementation
whe creating the stream, whose `produce` method will be called as soon as a read
happens, giving the implementation a chance to respond immediately without
making the reader wait for a rendezvous. Likewise, you can match the read end
of a stream to a `StreamConsumer` to respond immediately to writes. This model
should reduce scheduling overhead and make it easier to e.g. pipe items to/from
`AsyncWrite`/`AsyncRead` or `Sink`/`Stream` implementations without needing to
explicitly spawn background tasks. In addition, the new API provides direct
access to guest read and write buffers for `stream<u8>` operations, enabling
zero-copy operations.

Other changes:

- I've removed the `HostTaskOutput`; we were using it to run extra code with
access to the store after a host task completes, but we can do that more
elegantly inside the future using `tls::get`. This also allowed me to
simplify `Instance::poll_until` a bit.

- I've removed the `watch_{reader,writer}` functionality; it's not needed now
given that the runtime will automatically dispose of the producer or consumer
when the other end of the stream or future is closed -- no need for embedder
code to manage that.

- In order to make `UntypedWriteBuffer` `Send`, I had to wrap its raw pointer
`buf` field in a `SendSyncPtr`.

- I've removed `{Future,Stream}Writer` entirely and moved
`Instance::{future,stream}` to `{Future,Stream}Reader::new`, respectively.

- I've added a bounds check to the beginnings of `Instance::guest_read` and
`Instance::guest_write` so that we need not do it later in
`Guest{Source,Destination}::remaining`, meaning those functions can be
infallible.

Note that I haven't updated `wasmtime-wasi` yet to match; that will happen in
one or more follow-up commits.

Signed-off-by: Joel Dice <[email protected]>

* Add `Accessor::getter`, rename `with_data` to `with_getter`

* fixup bindgen invocation

Signed-off-by: Roman Volosatovs <[email protected]>

* add support for zero-length writes/reads to/from host

I've added a test to cover this; it also tests direct buffer access for
`stream<u8>`, which I realized I forgot to cover earlier. And of course there
was a bug :facepalm:.

Signed-off-by: Joel Dice <[email protected]>

* add `{Destination,Source}::remaining` methods

This can help `Stream{Producer,Consumer}` implementations determine how many
items to write or read, respectively.

Signed-off-by: Joel Dice <[email protected]>

* wasi: migrate sockets to new API

Signed-off-by: Roman Volosatovs <[email protected]>

* tests: read the socket stream until EOF

Signed-off-by: Roman Volosatovs <[email protected]>

* p3-sockets: account for cancellation

Signed-off-by: Roman Volosatovs <[email protected]>

* p3-sockets: mostly ensure byte buffer cancellation-safety

Signed-off-by: Roman Volosatovs <[email protected]>

* p3-filesystem: switch to new API

Signed-off-by: Roman Volosatovs <[email protected]>

* fixup! p3-sockets: mostly ensure byte buffer cancellation-safety

* p3-cli: switch to new API

Signed-off-by: Roman Volosatovs <[email protected]>

* p3: limit maximum buffer size

Signed-off-by: Roman Volosatovs <[email protected]>

* p3-sockets: remove reuseaddr test loop workaround

Signed-off-by: Roman Volosatovs <[email protected]>

* p3: drive I/O in `when_ready`

Signed-off-by: Roman Volosatovs <[email protected]>

* fixup! p3: drive I/O in `when_ready`

* Refine `Stream{Producer,Consumer}` APIs

Per conversations last week with Roman, Alex, and Lann, I've updated these
traits to present a lower-level API based on `poll_{consume,produce}` functions
and have documented the implementation requirements for various scenarios which
have come up in `wasmtime-wasi`, particularly around graceful cancellation. See
the doc comments for those functions for details.

Signed-off-by: Joel Dice <[email protected]>

* being integration of new API

Signed-off-by: Roman Volosatovs <[email protected]>

* update wasi/src/p3/filesystem to use new stream API

This is totally untested so far; I'll run the tests once we have everything else
compiling.

Signed-off-by: Joel Dice <[email protected]>

* update wasi/src/p3/cli to use new stream API

This is totally untested and doesn't even compile yet due to a lifetime issue I
don't have time to address yet. I'll follow up later with a fix.

Signed-off-by: Joel Dice <[email protected]>

* fix: remove `'a` bound on `&self`

Signed-off-by: Roman Volosatovs <[email protected]>

* finish `wasi:sockets` adaptation

Signed-off-by: Roman Volosatovs <[email protected]>

* finish `wasi:cli` adaptation

Note, that this removes the read optimization - let's get the
implementation complete first and optimize later

Signed-off-by: Roman Volosatovs <[email protected]>

* remove redundant loop in sockets

Signed-off-by: Roman Volosatovs <[email protected]>

* wasi: buffer on 0-length reads

Signed-off-by: Roman Volosatovs <[email protected]>

* finish `wasi:filesystem` adaptation

Signed-off-by: Roman Volosatovs <[email protected]>

* remove `MAX_BUFFER_CAPACITY`

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor `Cursor` usage

Signed-off-by: Roman Volosatovs <[email protected]>

* impl Default for VecBuffer

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: use consistent import styling

Signed-off-by: Roman Volosatovs <[email protected]>

* feature-gate fs Arc accessors

Signed-off-by: Roman Volosatovs <[email protected]>

* Update test expectations

---------

Signed-off-by: Joel Dice <[email protected]>
Signed-off-by: Roman Volosatovs <[email protected]>
Co-authored-by: Alex Crichton <[email protected]>
Co-authored-by: Roman Volosatovs <[email protected]>

show more ...


Revision tags: v36.0.2, v36.0.1, v36.0.0
# 7c9f88da 12-Aug-2025 Alex Crichton <[email protected]>

Update WASIp3 wasi:sockets WITs (#11422)

Brings in a few cosmetic changes to definitions to keep things up-to-date.

Closes bytecodealliance/wasip3-prototyping#242


# 7074afb6 29-Jul-2025 Roman Volosatovs <[email protected]>

feat(wasip3): implement `wasi:sockets` (#11291)

* chore(wasip3): update `wasi:sockets` WIT

pull in `wasi:sockets` from
https://github.com/WebAssembly/wasi-sockets/pull/126

Signed-off-by: Roman Vol

feat(wasip3): implement `wasi:sockets` (#11291)

* chore(wasip3): update `wasi:sockets` WIT

pull in `wasi:sockets` from
https://github.com/WebAssembly/wasi-sockets/pull/126

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: rearrange Ctx/View

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: name modules after packages

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: move `Network` to `p2`

Signed-off-by: Roman Volosatovs <[email protected]>

* feat(wasip3): implement `wasi:sockets`

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: reuse socket utilities

Signed-off-by: Roman Volosatovs <[email protected]>

* test(wasip3): allow name resolution to fail

Signed-off-by: Roman Volosatovs <[email protected]>

* fix: expect macos-only var to be unused on other OSes

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: whole buffer is written for UDP

Signed-off-by: Roman Volosatovs <[email protected]>

* undo non-blocking write

Signed-off-by: Roman Volosatovs <[email protected]>

* extract buf capacity const, refactor tcp receive

Signed-off-by: Roman Volosatovs <[email protected]>

* introduce container struct for TCP non-inherited opts

Signed-off-by: Roman Volosatovs <[email protected]>

* handle `listen` receiver close

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: clean up

Signed-off-by: Roman Volosatovs <[email protected]>

* adapt to API changes

prtest:full

Signed-off-by: Roman Volosatovs <[email protected]>

* refactor: check for listen receiver close each iteration

Signed-off-by: Roman Volosatovs <[email protected]>

* Try to make test less flaky

* Cut down on `#[cfg]` required for wasi:sockets

* Fix test for real this time

---------

Signed-off-by: Roman Volosatovs <[email protected]>
Co-authored-by: Alex Crichton <[email protected]>

show more ...