From 9fa2ddad60c16383fb927645e50ba142050f8110 Mon Sep 17 00:00:00 2001 From: Nakidai Date: Fri, 30 Jan 2026 18:26:22 +0300 Subject: Add PING command Then I should make some logic for pinging others... --- handle.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'handle.c') diff --git a/handle.c b/handle.c index 1b9f8e6..df36e1f 100644 --- a/handle.c +++ b/handle.c @@ -151,6 +151,21 @@ part(struct Message *msg, struct Peer *peer) return 0; } +static int +ping(struct Message *msg, struct Peer *peer) +{ + ensure(msg->params[0] && *msg->params[0], reply(peer, 409), 0); + + writef( + peer->fd, + ":%s PONG :%s", + hostname, + msg->params[0] + ); + + return 0; +} + static int privmsg(struct Message *msg, struct Peer *peer) { @@ -274,6 +289,7 @@ static struct Handler { { "nick", nick }, { "notice", privmsg }, { "part", part }, + { "ping", ping }, { "privmsg", privmsg }, { "quit", quit }, { "user", user }, -- cgit 1.4.1