I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Commit 6bcf40b4 authored by zzz's avatar zzz
Browse files

merge of '31dc69e6816f5a08d4183272f46d23e9c397f9c6'

     and 'da86088817442e065e854274adbd896a92ee148f'
parents 6b811b36 2537f48d
No related branches found
No related tags found
No related merge requests found
...@@ -102,7 +102,7 @@ abstract class IRCFilter { ...@@ -102,7 +102,7 @@ abstract class IRCFilter {
{ {
String msg; String msg;
msg = field[idx++]; msg = field[idx++];
if(msg.indexOf(0x01) >= 0) // CTCP marker ^A can be anywhere, not just immediately after the ':' if(msg.indexOf(0x01) >= 0) // CTCP marker ^A can be anywhere, not just immediately after the ':'
{ {
// CTCP // CTCP
...@@ -139,52 +139,94 @@ abstract class IRCFilter { ...@@ -139,52 +139,94 @@ abstract class IRCFilter {
} }
return s; return s;
} }
// Block the rest // Block the rest
return null; return null;
} }
private static final Set<String> _allowedOutbound; private static final Set<String> _allowedOutbound;
static { static {
final String[] allowedCommands = final String[] allowedCommands =
{ {
// "NOTICE", // can contain CTCP // Commands that regular users might use
"MODE", "ADMIN",
"AWAY", // should be harmless
"CYCLE",
"DCCALLOW",
"HELPME", "HELPOP", // helpop is what unrealircd uses by default
"INVITE",
"ISON", // jIRCii uses this for a ping (response is 303)
"JOIN", "JOIN",
"NICK", "KICK",
"WHO", "KNOCK",
"WHOIS",
"LIST", "LIST",
"NAMES", "LUSERS",
"ADMIN", "MAP", // seems safe enough, the ircd should protect themselves though
"MODE",
"MOTD", "MOTD",
"NAMES",
"NICK",
// "NOTICE", // can contain CTCP
"OPER",
// "PART", // replace with filtered PART to hide client part messages
"PASS", "PASS",
// "PING",
// "PONG", // replaced with a filtered PING/PONG since some clients send the server IP (thanks aardvax!)
// "QUIT", // replace with a filtered QUIT to hide client quit messages // "QUIT", // replace with a filtered QUIT to hide client quit messages
"RULES",
"SETNAME",
"SILENCE", "SILENCE",
"MAP", // seems safe enough, the ircd should protect themselves though "STATS",
// "PART", // replace with filtered PART to hide client part messages "TOPIC",
"OPER", "USERHOST",
// "PONG", // replaced with a filtered PING/PONG since some clients send the server IP (thanks aardvax!) "VHOST",
// "PING", "WATCH",
"NICKSERV", "NS", // the next few are default aliases on unreal (+ anope) "WHO",
"WHOIS",
"WHOWAS",
// the next few are default aliases on unreal (+ anope)
"BOTSERV", "BS",
"CHANSERV", "CS", "CHANSERV", "CS",
"MEMOSERV", "MS",
"OPERSERV", "OS",
"HELPSERV", "HELPSERV",
"HOSTSERV", "HS", "HOSTSERV", "HS",
"BOTSERV", "BS", "MEMOSERV", "MS",
"NICKSERV", "NS",
"OPERSERV", "OS",
"STATSERV", "STATSERV",
"KICK",
"HELPME", "HELPOP", // helpop is what unrealircd uses by default
// IRCop commands // IRCop commands
"ADCHAT", "ADDMOTD", "ADDOMOTD", "CHATOPS", "CHGHOST", "CHGIDENT", "CHGNAME", "DCCDENY", "DIE", "ADCHAT",
"GLOBOPS", "GZLINE", "KILL", "KLINE", "LOCOPS", "NACHAT", "OPERMOTD", "REHASH", "RESTART", "SAJOIN", "ADDMOTD",
"SAMODE", "SAPART", "SDESC", "SETHOST", "SETIDENT", "SHUN", "SPAMFILTER", "TEMPSHUN", "UNDCCDENY", "ADDOMOTD",
"RULES", "CHATOPS",
"TOPIC", "CHGHOST",
"ISON", // jIRCii uses this for a ping (response is 303) "CHGIDENT",
"INVITE", "CHGNAME",
"AWAY", // should be harmless "CLOSE",
"DCCDENY",
"DIE",
"GLOBOPS",
"GZLINE",
"HTM", // "High Traffic Mode"
"KILL",
"KLINE",
"LOCOPS",
"NACHAT",
"OPERMOTD",
"REHASH",
"RESTART",
"SAJOIN",
"SAMODE",
"SAPART",
"SDESC",
"SETHOST",
"SETIDENT",
"SHUN",
"SPAMFILTER",
"SQUIT",
"TEMPSHUN",
"UNDCCDENY",
"WALLOPS",
"ZLINE",
// http://tools.ietf.org/html/draft-mitchell-irc-capabilities-01 // http://tools.ietf.org/html/draft-mitchell-irc-capabilities-01
"CAP" "CAP"
}; };
......
2011-11-28 kytv
* IRCClient: Add IRCop commands (and other safe commands) to the whitelist
2011-11-27 zzz 2011-11-27 zzz
* IRCClient: Outbound whitelist optimization * IRCClient: Outbound whitelist optimization
* Reseed: * Reseed:
......
...@@ -18,7 +18,7 @@ public class RouterVersion { ...@@ -18,7 +18,7 @@ public class RouterVersion {
/** deprecated */ /** deprecated */
public final static String ID = "Monotone"; public final static String ID = "Monotone";
public final static String VERSION = CoreVersion.VERSION; public final static String VERSION = CoreVersion.VERSION;
public final static long BUILD = 9; public final static long BUILD = 10;
/** for example "-test" */ /** for example "-test" */
public final static String EXTRA = ""; public final static String EXTRA = "";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment