summaryrefslogtreecommitdiff
path: root/announce.c
diff options
context:
space:
mode:
authorDavid Härdeman <david@hardeman.nu>2020-06-16 10:00:42 +0200
committerDavid Härdeman <david@hardeman.nu>2020-06-16 10:00:42 +0200
commitbbe3648e2108393f3132ede777c19e00a9d5a547 (patch)
treed3725dd6873628bcc053d8aacec1854640ec5a29 /announce.c
parentac2754e0eb9862081e00e5ae886783db08541944 (diff)
Add an address to task
Diffstat (limited to 'announce.c')
-rw-r--r--announce.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/announce.c b/announce.c
index 6d17faf..7f69e51 100644
--- a/announce.c
+++ b/announce.c
@@ -14,9 +14,7 @@
struct announce {
uint64_t value;
struct uring_task task;
-
struct uring_task mcast_task;
- struct sockaddr_in mcast_addr;
};
static void
@@ -50,8 +48,8 @@ mcast_send(struct cfg *cfg, struct announce *aev, struct server *server)
return;
}
- server->mcast_msg.msg_name = &aev->mcast_addr;
- server->mcast_msg.msg_namelen = sizeof(aev->mcast_addr);
+ server->mcast_msg.msg_name = &aev->mcast_task.addr;
+ server->mcast_msg.msg_namelen = sizeof(aev->mcast_task.addr);
server->mcast_iov.iov_len = len;
uring_sendmsg(cfg, &aev->mcast_task, &server->mcast_msg, mcast_sent);
@@ -181,10 +179,9 @@ announce_init(struct cfg *cfg)
uring_task_init(&aev->mcast_task, "aev_mcast", &aev->task, mcast_free);
uring_task_set_fd(&aev->mcast_task, sfd);
- memset(&aev->mcast_addr, 0, sizeof(aev->mcast_addr));
- aev->mcast_addr.sin_family = AF_INET;
- aev->mcast_addr.sin_addr.s_addr = inet_addr("224.0.2.60");
- aev->mcast_addr.sin_port = htons(4445);
+ aev->mcast_task.addr.in4.sin_family = AF_INET;
+ aev->mcast_task.addr.in4.sin_addr.s_addr = inet_addr("224.0.2.60");
+ aev->mcast_task.addr.in4.sin_port = htons(4445);
cfg->aev = aev;
uring_read(cfg, &aev->task, &aev->value, sizeof(aev->value), announce_cb);