rpma_conn_req_recv(3)
rpma_conn_req_recv π
okay bestie, welcome to the RPMA Programmer's Manual β¨ this one's called rpma_conn_req_recv, and it's about kicking off the receive operation. she's the pre-connection glow-up version of rpma_recv, iykyk. let's get into it π«Ά
β¨ NAME β¨
rpma_conn_req_recv β initiate the receive operation π₯
πΈ SYNOPSIS πΈ
#include <librpma.h>
struct rpma_conn_req;
struct rpma_mr_local;
int rpma_conn_req_recv(struct rpma_conn_req *req, struct rpma_mr_local *dst, size_t offset,
size_t len, const void *op_context);
π DESCRIPTION π
so rpma_conn_req_recv() initiates the receive operation. what it does is prep a buffer for a message that's getting sent from the other side of the connection β go peek at rpma_send(3) if you wanna see the sendy side of this situationship π¦
now here's the tea: this is a variant of rpma_recv(3), and the whole point of her main character energy is that she may be used before the connection is established. iconic behaviour, honestly π
and op_context? it comes back to you in the wr_id field of the completion (that's the struct ibv_wc), so you'll know which op just wrapped up. no cap π
β RETURN VALUE β
rpma_conn_req_recv() returns 0 on success, or a negative error code on failure. simple as that π
π ERRORS π
she can fail with these, bestie, so keep an eye out:
RPMA_E_INVALβreqorsrcorop_contextis NULLRPMA_E_PROVIDERβibv_post_recv(3)failed
fr fr, if you're passing NULLs around you're gonna have a bad time π
π¦ SEE ALSO π¦
and that's the whole page, bestie, you ate it π
β¨ this was brought to you by RPMA, dated 01 April 2024, filed under rpma_conn_req_recv(3) β mwah, go forth and receive π«ΆππΈ
π¦ where this page comes from
- ubuntu noble: librpma-dev 1.3.0-2build2 Β· BSD-3
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms