summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--catgirl.12
-rw-r--r--command.c11
2 files changed, 13 insertions, 0 deletions
diff --git a/catgirl.1 b/catgirl.1
index 437b0d1..86bf53d 100644
--- a/catgirl.1
+++ b/catgirl.1
@@ -246,6 +246,8 @@ Set or clear your away status.
 Invite a user to the channel.
 .It Ic /join Ar channel
 Join a channel.
+.It Ic /kick Ar nick Op Ar message
+Kick a user from the channel.
 .It Ic /list Op Ar channel
 List channels.
 .It Ic /me Op Ar action
diff --git a/command.c b/command.c
index f59176f..3b94270 100644
--- a/command.c
+++ b/command.c
@@ -141,6 +141,16 @@ static void commandInvite(size_t id, char *params) {
 	ircFormat("INVITE %s %s\r\n", nick, idNames[id]);
 }
 
+static void commandKick(size_t id, char *params) {
+	if (!params) return;
+	char *nick = strsep(&params, " ");
+	if (params) {
+		ircFormat("KICK %s %s :%s\r\n", idNames[id], nick, params);
+	} else {
+		ircFormat("KICK %s %s\r\n", idNames[id], nick);
+	}
+}
+
 static void commandList(size_t id, char *params) {
 	(void)id;
 	if (params) {
@@ -259,6 +269,7 @@ static const struct Handler {
 	{ "/help", .fn = commandHelp },
 	{ "/invite", .fn = commandInvite },
 	{ "/join", .fn = commandJoin, .restricted = true },
+	{ "/kick", .fn = commandKick },
 	{ "/list", .fn = commandList },
 	{ "/me", .fn = commandMe },
 	{ "/move", .fn = commandMove },
mp;follow=1'>Set AWAY when no clients are connectedJune McEnroe 2019-10-26Add flags to request TOPIC and NAMES on client connectJune McEnroe 2019-10-26OopsJune McEnroe 2019-10-26Disconnect client on unknown commandJune McEnroe 2019-10-26Allow reading sensitive information from filesJune McEnroe 2019-10-26Add rc scriptJune McEnroe 2019-10-25Add install and uninstall targetsJune McEnroe 2019-10-25Expand documentationJune McEnroe 2019-10-25Add AGPLv3 notice on client registrationJune McEnroe 2019-10-25Rename project pounceJune McEnroe