Skip to content
Snippets Groups Projects
Commit a93b8ba1 authored by cyan's avatar cyan
Browse files

This update fixes a showstopper bug in the LIST command which would allow

anyone to crash the server by using the 'number of users' filter option.
(i.e. LIST >20)  All sysops are urged to update to this release ASAP.
parent efe6e0da
No related branches found
No related tags found
No related merge requests found
......@@ -2405,10 +2405,10 @@ function IRCClient_do_complex_list(cmd) {
(IRC_match(Channels[aChan].topic,list.Topic)))
continue;
if ((list.add_flags&LIST_PEOPLE) &&
(Channels[aChan].count_users() < list.People) )
(true_array_len(Channels[aChan].users) < list.People) )
continue;
else if ((list.del_flags&LIST_PEOPLE) &&
(Channels[aChan].count_users() >= list.People) )
(true_array_len(Channels[aChan].users) >= list.People) )
continue;
if ((list.add_flags&LIST_TOPICAGE) && list.TopicTime &&
(Channels[aChan].topictime > (time()-list.TopicTime)))
......@@ -2590,10 +2590,10 @@ function IRCClient_do_list_usage() {
// Bahamut parsing to determine that.
function Channel_match_list_mask(mask) {
if (mask[0] == ">") { // Chan has more than X people?
if (this.count_users() < parseInt(mask.slice(1)))
if (true_array_len(this.users) < parseInt(mask.slice(1)))
return 0;
} else if (mask[0] == "<") { // Chan has less than X people?
if (this.count_users() >= parseInt(mask.slice(1)))
if (true_array_len(this.users) >= parseInt(mask.slice(1)))
return 0;
} else if (mask[0].toUpperCase() == "C") { //created X mins ago?
if ((mask[1] == ">") && (this.created <
......
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