about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ngircd/irc-mode.c13
-rw-r--r--src/ngircd/messages.h1
2 files changed, 12 insertions, 2 deletions
diff --git a/src/ngircd/irc-mode.c b/src/ngircd/irc-mode.c
index df464a7d..a4c1d89b 100644
--- a/src/ngircd/irc-mode.c
+++ b/src/ngircd/irc-mode.c
@@ -294,8 +294,17 @@ Channel_Mode_Answer_Request(CLIENT *Origin, CHANNEL *Channel)
 	if (the_args[0])
 		strlcat(the_modes, the_args, sizeof(the_modes));
 
-	return IRC_WriteStrClient(Origin, RPL_CHANNELMODEIS_MSG,
-		Client_ID(Origin), Channel_Name(Channel), the_modes);
+	if (!IRC_WriteStrClient(Origin, RPL_CHANNELMODEIS_MSG,
+				Client_ID(Origin), Channel_Name(Channel),
+				the_modes))
+		return DISCONNECTED;
+#ifndef STRICT_RFC
+	if (!IRC_WriteStrClient(Origin, RPL_CREATIONTIME_MSG,
+				  Client_ID(Origin), Channel_Name(Channel),
+				  Channel_CreationTime(Channel)))
+		return DISCONNECTED;
+#endif
+	return CONNECTED;
 }
 
 
diff --git a/src/ngircd/messages.h b/src/ngircd/messages.h
index 03ddc363..900d2ff1 100644
--- a/src/ngircd/messages.h
+++ b/src/ngircd/messages.h
@@ -65,6 +65,7 @@
 #define RPL_LIST_MSG			"322 %s %s %ld :%s"
 #define RPL_LISTEND_MSG			"323 %s :End of LIST"
 #define RPL_CHANNELMODEIS_MSG		"324 %s %s +%s"
+#define RPL_CREATIONTIME_MSG		"329 %s %s %ld"
 #define RPL_NOTOPIC_MSG			"331 %s %s :No topic is set"
 #define RPL_TOPIC_MSG			"332 %s %s :%s"
 #define RPL_TOPICSETBY_MSG		"333 %s %s %s %u"