solana/programs/sbf
behzad nouri 9ff0b35f29
adds QUIC endpoint for repair service (#33057)
Working towards using QUIC protocol for repair, the commit adds a QUIC
endpoint for repair service.

Outgoing local requests are sent as

    struct LocalRequest {
        remote_address: SocketAddr,
        bytes: Vec<u8>,
        num_expected_responses: usize,
        response_sender: Sender<(SocketAddr, Vec<u8>)>,
    }

to the client-side of the endpoint. The client opens a bidirectional
stream with the LocalRequest.remote_address and once received the
response, sends it down the LocalRequest.response_sender channel.

Incoming requests from remote nodes are received from bidirectional
streams and sent as

    struct RemoteRequest {
        remote_pubkey: Option<Pubkey>,
        remote_address: SocketAddr,
        bytes: Vec<u8>,
        response_sender: Option<OneShotSender<Vec<Vec<u8>>>>,
    }

to the repair-service. The response is received from the receiver end of
RemoteRequest.response_sender channel and send back to the remote node
using the send side of the bidirectional stream.
2023-09-07 18:00:25 +00:00
..
benches Bump solana_rbpf to v0.7.0 (#33104) 2023-09-06 10:54:15 +02:00
c CPI: improve test coverage (#31986) 2023-09-05 14:27:26 +07:00
rust Fix CI (#33139) 2023-09-05 18:01:20 +00:00
tests CPI: improve test coverage (#31986) 2023-09-05 14:27:26 +07:00
.gitignore
Cargo.lock adds QUIC endpoint for repair service (#33057) 2023-09-07 18:00:25 +00:00
Cargo.toml Bump solana_rbpf to v0.7.1 (#33168) 2023-09-07 02:47:36 +08:00
build.rs feat(sbf): Add Poseidon syscall (#32680) 2023-08-30 09:43:31 -07:00