asterinas/services/libs
Ruihan Li 6b903d0c10 Seperate `ConnectingStream` from `InitStream`
For TCP streams we used to have three states, e.g. `InitStream`,
`ListenStream`, `ConnectedStream`. If the socket is not bound, it is in
the `InitStream` state. If the socket is bound, it is still in that
state. Most seriously, if the socket is connecting to the remote peer,
but the connection has not been established, it is also in the
`InitStream` state.

While the socket is trying to connect to its peer, it needs to handle
iface events to update its internal state. So it is expected to
implement the trait that observes such events for this later. However,
the reality that sockets connecting to their peers are mixed in with
other unbound and bound sockets in the `InitStream` will complicate
things.

In fact, the connecting socket should belong to an independent state. It
does not share too much logic with unbound and bound sockets in the
`InitStream`. So in this commit we will decouple that and create a new
`ConnectingStream` state.
2023-12-26 06:51:25 +08:00
..
comp-sys Refactor drivers 2023-11-23 09:15:37 +08:00
cpio-decoder Enable usermode unit test for specific crates 2023-11-09 13:22:34 +08:00
int-to-c-enum Enable usermode unit test for specific crates 2023-11-09 13:22:34 +08:00
jinux-rights Refactor signal code 2023-12-06 11:01:54 +08:00
jinux-rights-proc Fix clippy and compiler warings 2023-09-05 18:42:06 +08:00
jinux-std Seperate `ConnectingStream` from `InitStream` 2023-12-26 06:51:25 +08:00
jinux-util Implement a high precision gettime based on tsc 2023-12-06 19:31:19 +08:00
keyable-arc Fix clippy and compiler warings 2023-09-05 18:42:06 +08:00
typeflags Enable usermode unit test for specific crates 2023-11-09 13:22:34 +08:00
typeflags-util Fix clippy and compiler warings 2023-09-05 18:42:06 +08:00