diff options
author | David Härdeman <david@hardeman.nu> | 2020-06-06 00:05:45 +0200 |
---|---|---|
committer | David Härdeman <david@hardeman.nu> | 2020-06-06 00:05:45 +0200 |
commit | ed8cb35c9ff4547275b03bd93baeff1cda3de76e (patch) | |
tree | 8b7f187613c0cab24076bf94d0db3ae3f79618b2 /uring.c | |
parent | 8e301216143cb96d39a941a9c5fcb90319ef53c7 (diff) |
Add skeleton functionality for announcing servers
Diffstat (limited to 'uring.c')
-rw-r--r-- | uring.c | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -191,6 +191,20 @@ uring_openat(struct cfg *cfg, struct uring_task *task, const char *path, callbac } void +uring_sendmsg(struct cfg *cfg, struct uring_task *task, struct msghdr *msg, callback_t callback) +{ + struct io_uring_sqe *sqe = io_uring_get_sqe(&cfg->uev->uring); + + if (!sqe) + perrordie("io_uring_sqe"); + + uring_task_get(cfg, task); + task->callback = callback; + io_uring_prep_sendmsg(sqe, task->fd, msg, 0); + io_uring_sqe_set_data(sqe, task); +} + +void uring_connect(struct cfg *cfg, struct uring_task *task, struct sockaddr_in46 *addr, callback_t callback) { struct io_uring_sqe *sqe = io_uring_get_sqe(&cfg->uev->uring); |