summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2019-10-24 01:26:19 -0400
committerJune McEnroe <june@causal.agency>2019-10-24 01:26:19 -0400
commitcd267f4e1389ec78c76b96750569102f2a04fce0 (patch)
tree79423d4224b069f94684e0426b073ead9e9da7df
parentIntercept all CAP commands from clients (diff)
downloadpounce-cd267f4e1389ec78c76b96750569102f2a04fce0.tar.gz
pounce-cd267f4e1389ec78c76b96750569102f2a04fce0.zip
Factor out client-side origin name
-rw-r--r--client.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/client.c b/client.c
index 68daff6..09af58e 100644
--- a/client.c
+++ b/client.c
@@ -26,6 +26,8 @@
 
 #include "bounce.h"
 
+static const char *Origin = "invalid";
+
 enum Need {
 	NeedNick = 1 << 0,
 	NeedUser = 1 << 1,
@@ -94,8 +96,9 @@ void clientFormat(struct Client *client, const char *format, ...) {
 static void passRequired(struct Client *client) {
 	clientFormat(
 		client,
-		":invalid 464 * :Password incorrect\r\n"
-		"ERROR :Password incorrect\r\n"
+		":%s 464 * :Password incorrect\r\n"
+		"ERROR :Password incorrect\r\n",
+		Origin
 	);
 	client->error = true;
 }
@@ -137,25 +140,25 @@ static void handleCap(struct Client *client, struct Message msg) {
 
 	} else if (!strcmp(msg.params[0], "LS")) {
 		client->need |= NeedCapEnd;
-		clientFormat(client, ":invalid CAP * LS :server-time\r\n");
+		clientFormat(client, ":%s CAP * LS :server-time\r\n", Origin);
 
 	} else if (!strcmp(msg.params[0], "REQ") && msg.params[1]) {
 		client->need |= NeedCapEnd;
 		if (!strcmp(msg.params[1], "server-time")) {
 			client->serverTime = true;
-			clientFormat(client, ":invalid CAP * ACK :server-time\r\n");
+			clientFormat(client, ":%s CAP * ACK :server-time\r\n", Origin);
 		} else {
-			clientFormat(client, ":invalid CAP * NAK :%s\r\n", msg.params[1]);
+			clientFormat(client, ":%s CAP * NAK :%s\r\n", Origin, msg.params[1]);
 		}
 
 	} else if (!strcmp(msg.params[0], "LIST")) {
 		clientFormat(
-			client, ":invalid CAP * LIST :%s\r\n",
-			(client->serverTime ? "server-time" : "")
+			client, ":%s CAP * LIST :%s\r\n",
+			Origin, (client->serverTime ? "server-time" : "")
 		);
 
 	} else {
-		clientFormat(client, ":invalid 410 * :Invalid CAP subcommand\r\n");
+		clientFormat(client, ":%s 410 * :Invalid CAP subcommand\r\n", Origin);
 	}
 }