DIRECT_FN STATIC ssize_t psmx2_recvv(struct fid_ep *ep, const struct iovec *iov, void **desc, size_t count, fi_addr_t src_addr, void *context) { void *buf; size_t len; assert(!count || iov); assert(count <= 1); if (count) { buf = iov[0].iov_base; len = iov[0].iov_len; } else { buf = NULL; len = 0; } return psmx2_recv(ep, buf, len, desc ? desc[0] : NULL, src_addr, context); }
static ssize_t psmx2_recvv(struct fid_ep *ep, const struct iovec *iov, void **desc, size_t count, fi_addr_t src_addr, void *context) { void *buf; size_t len; if (count && !iov) return -FI_EINVAL; if (count > 1) { return -FI_ENOSYS; } else if (count) { buf = iov[0].iov_base; len = iov[0].iov_len; } else { buf = NULL; len = 0; } return psmx2_recv(ep, buf, len, desc ? desc[0] : NULL, src_addr, context); }