summaryrefslogtreecommitdiff
path: root/announce.c
diff options
context:
space:
mode:
Diffstat (limited to 'announce.c')
-rw-r--r--announce.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/announce.c b/announce.c
index 7f69e51..3edee1b 100644
--- a/announce.c
+++ b/announce.c
@@ -39,20 +39,18 @@ mcast_send(struct cfg *cfg, struct announce *aev, struct server *server)
if (!server || !server->pretty_name || server->announce_port < 1)
return;
- len = snprintf(server->mcast_buf, sizeof(server->mcast_buf),
+ len = snprintf(server->mcast_buf.buf, sizeof(server->mcast_buf.buf),
"[MOTD]%s[/MOTD][AD]%" PRIu16 "[/AD]",
server->pretty_name, server->announce_port);
- if (len < 1 || len >= sizeof(server->mcast_buf)) {
+ if (len < 1 || len >= sizeof(server->mcast_buf.buf)) {
error("%s: snprintf returned %i\n", __func__, len);
return;
}
- 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);
+ server->mcast_buf.len = len;
+ uring_task_set_buf(&aev->mcast_task, &server->mcast_buf);
+ uring_tbuf_sendmsg(cfg, &aev->mcast_task, mcast_sent);
}
static void
@@ -182,6 +180,7 @@ announce_init(struct cfg *cfg)
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);
+ aev->mcast_task.addr.addrlen = sizeof(aev->mcast_task.addr.in4);
cfg->aev = aev;
uring_read(cfg, &aev->task, &aev->value, sizeof(aev->value), announce_cb);