#include <fcntl.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include <misc/debug.h>
#include <core/tx.h>
#include <core/config.h>
#include <core/koa.h>
#include <core/buffer.h>
#include <core/txdesc.h>
#include <core/stats.h>
#include <libc/syscalls.h>
#include <xcalls/xcalls.h>
#include <sys/types.h>
#include <sys/socket.h>
Go to the source code of this file.
Classes | |
struct | x_sendmsg_commit_args_s |
Typedefs | |
typedef x_sendmsg_commit_args_s | x_sendmsg_commit_args_t |
Functions | |
ssize_t XCALL_DEF() | x_sendmsg (int fd, const struct msghdr *msg, int flags, int *result) |
Sends a message to a socket. |
Definition in file x_sendmsg.c.
ssize_t XCALL_DEF() x_sendmsg | ( | int | fd, | |
const struct msghdr * | msg, | |||
int | flags, | |||
int * | result | |||
) |
Sends a message to a socket.
Execution : deferred
Asynchronous failures : commit
[in] | fd | The file descriptor of the socket. |
[in] | msg | The message to send. |
[in] | flags | See man sendmsg. |
[out] | result | Where to store any asynchronous failures. |
Definition at line 68 of file x_sendmsg.c.
References x_sendmsg_commit_args_s::fd, x_sendmsg_commit_args_s::flags, x_sendmsg_commit_args_s::msg, txc_buffer_linear_free(), txc_buffer_linear_malloc(), txc_g_koamgr, TXC_INTERNALERROR, txc_koa_get_sentinel(), txc_koa_lock_fd(), txc_koa_lookup_fd2koa(), txc_koa_unlock_fd(), TXC_R_BUSYSENTINEL, TXC_R_FAILURE, TXC_SENTINEL_ACQUIREONRETRY, txc_sentinel_tryacquire(), txc_stats_txstat_increment, txc_tx_abort_transaction(), txc_tx_get_txd(), txc_tx_get_xactstate(), txc_tx_register_commit_action(), TXC_TX_REGULAR_COMMIT_ACTION_ORDER, and x_sendmsg().