Commit Diff


commit - ab1fcebeff1593bf50bd091706a9b2f447db88cf
commit + 360a254be0e55e975998d0f3a5ff301ac3346f72
blob - 6d9d77098641ec4459375d56eb2a5a0d405dbd92
blob + 57e65892054b9bd20c1d2cc309dd9ccaca1c1a41
--- doc/sample-ngircd.conf.tmpl
+++ doc/sample-ngircd.conf.tmpl
@@ -297,15 +297,16 @@
 	# Connect to the remote server using TLS/SSL (Default: false)
 	;SSLConnect = yes
 
-	# Define a (case insensitive) mask matching nick names that should be
-	# treated as IRC services when introduced via this remote server.
+	# Define a (case insensitive) list of masks matching nick names that
+	# should be treated as IRC services when introduced via this remote
+	# server, separated by commas (",").
 	# REGULAR SERVERS DON'T NEED this parameter, so leave it empty
 	# (which is the default).
 	# When you are connecting IRC services which mask as a IRC server
 	# and which use "virtual users" to communicate with, for example
 	# "NickServ" and "ChanServ", you should set this parameter to
-	# something like "*Serv".
-	;ServiceMask = *Serv
+	# something like "*Serv" or "NickServ,ChanServ,XyzServ".
+	;ServiceMask = *Serv,Global
 
 [Server]
 	# More [Server] sections, if you like ...
blob - 71f0007851e738222ed7064b71921d4bb09cd097
blob + aff11a67bf86ec6c79d0daae9cfadeff345662f2
--- man/ngircd.conf.5.tmpl
+++ man/ngircd.conf.5.tmpl
@@ -422,14 +422,16 @@ You can use the IRC Operator command CONNECT later on 
 Connect to the remote server using TLS/SSL. Default: false.
 .TP
 \fBServiceMask\fR (string)
-Define a (case insensitive) mask matching nick names that should be treated as
-IRC services when introduced via this remote server. REGULAR SERVERS DON'T NEED
-this parameter, so leave it empty (which is the default).
+Define a (case insensitive) list of masks matching nick names that should be
+treated as IRC services when introduced via this remote server, separated
+by commas (","). REGULAR SERVERS DON'T NEED this parameter, so leave it empty
+(which is the default).
 .PP
 .RS
 When you are connecting IRC services which mask as a IRC server and which use
 "virtual users" to communicate with, for example "NickServ" and "ChanServ",
-you should set this parameter to something like "*Serv".
+you should set this parameter to something like "*Serv", "*Serv,OtherNick",
+or "NickServ,ChanServ,XyzServ".
 .SH [CHANNEL]
 Pre-defined channels can be configured in
 .I [Channel]
blob - 41b5469a8140f4c5a07d1874dd6d048fcbf6ae3b
blob + 3966dc908a1afff2bf5a95901c8cff6427b91524
--- src/ngircd/conf.c
+++ src/ngircd/conf.c
@@ -648,7 +648,8 @@ Conf_NickIsService(int ConfServer, const char *Nick)
 	assert (ConfServer >= 0);
 	assert (ConfServer < MAX_SERVERS);
 
-	return MatchCaseInsensitive(Conf_Server[ConfServer].svs_mask, Nick);
+	return MatchCaseInsensitiveList(Conf_Server[ConfServer].svs_mask,
+					Nick, ",");
 }
 
 /**