summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorBerke Viktor <bviktor@hexchat.org>2013-05-19 12:15:31 +0200
committerBerke Viktor <bviktor@hexchat.org>2013-05-19 12:15:31 +0200
commit67274f91e92e38f5c4e42bbc4a61e40ff85f9f67 (patch)
tree1fb0bc1037fbc98a3e2b9b1768b132e876264266
parentc0cc6a2c9392bcc6e114a98f2deb6129a8564a4d (diff)
Add default connect commands for networks with obscure login methods
Yeah, QuakeNet is an exception
-rw-r--r--src/common/servlist.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/common/servlist.c b/src/common/servlist.c
index 0ad36446..52985a60 100644
--- a/src/common/servlist.c
+++ b/src/common/servlist.c
@@ -44,6 +44,7 @@ struct defaultserver
 	char *channel;
 	char *charset;
 	int loginmode;		/* default authentication type */
+	char *connectcmd;	/* default connect command - should only be used for rare login types, paired with LOGIN_CUSTOM */
 };
 
 static const struct defaultserver def[] =
@@ -547,11 +548,11 @@ static const struct defaultserver def[] =
 	{0,			"irc.servx.ru"},
 	{0,			"irc.gavnos.ru"},
 
-	{"UnderNet", 0, 0, 0, LOGIN_CUSTOM},
+	{"UnderNet", 0, 0, 0, LOGIN_CUSTOM, "MSG x@channels.undernet.org login %u %p"},
 	{0,			"us.undernet.org"},
 	{0,			"eu.undernet.org"},
 
-	{"UniBG", 0, 0, 0, LOGIN_CUSTOM},
+	{"UniBG", 0, 0, 0, LOGIN_CUSTOM, "MSG NS IDENTIFY %p"},
 	{0,			"irc.lirex.com"},
 	{0,			"irc.naturella.com"},
 	{0,			"irc.spnet.net"},
@@ -1207,10 +1208,16 @@ servlist_load_defaults (void)
 			{
 				net->logintype = def[i].loginmode;
 			}
+			if (def[i].connectcmd)
+			{
+				servlist_command_add (net, def[i].connectcmd);
+			}
+
 			if (g_str_hash (def[i].network) == def_hash)
 			{
 				prefs.hex_gui_slist_select = j;
 			}
+
 			j++;
 		}
 		else