mirror of
https://github.com/lax1dude/eaglercraft-motd.git
synced 2024-11-09 12:56:05 -08:00
Fixed ratelimit order to be FIFO
This commit is contained in:
parent
1fd47f074e
commit
05c903b0ed
BIN
EaglerMOTD.jar
BIN
EaglerMOTD.jar
Binary file not shown.
|
@ -340,12 +340,14 @@ public class EaglerMOTD extends Plugin implements Listener {
|
||||||
public void onMOTD(WebsocketMOTDEvent evt) {
|
public void onMOTD(WebsocketMOTDEvent evt) {
|
||||||
MOTDConnection con = new MOTDConnection(evt.getListener(), evt.getMOTD());
|
MOTDConnection con = new MOTDConnection(evt.getListener(), evt.getMOTD());
|
||||||
if(con.execute()) {
|
if(con.execute()) {
|
||||||
|
if(max_total_sockets > 0) {
|
||||||
synchronized(motdConnections) {
|
synchronized(motdConnections) {
|
||||||
while(motdConnections.size() >= max_total_sockets) {
|
while(motdConnections.size() >= max_total_sockets) {
|
||||||
MOTDConnection c = motdConnections.remove(0);
|
MOTDConnection c = motdConnections.remove(motdConnections.size() - 1);
|
||||||
c.close();
|
c.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
InetAddress addr = con.motd.getRemoteAddress();
|
InetAddress addr = con.motd.getRemoteAddress();
|
||||||
boolean flag = false;
|
boolean flag = false;
|
||||||
for(BanList.IPBan b : BanList.blockedBans) {
|
for(BanList.IPBan b : BanList.blockedBans) {
|
||||||
|
@ -356,11 +358,12 @@ public class EaglerMOTD extends Plugin implements Listener {
|
||||||
}
|
}
|
||||||
if(flag) {
|
if(flag) {
|
||||||
synchronized(motdConnections) {
|
synchronized(motdConnections) {
|
||||||
motdConnections.add(con);
|
motdConnections.add(0, con);
|
||||||
}
|
}
|
||||||
}else {
|
}else {
|
||||||
if(allow_banned_ips || !BanList.checkIpBanned(addr).isBanned()) {
|
if(allow_banned_ips || !BanList.checkIpBanned(addr).isBanned()) {
|
||||||
synchronized(motdConnections) {
|
synchronized(motdConnections) {
|
||||||
|
if(max_sockets_per_ip > 0) {
|
||||||
int i = 0;
|
int i = 0;
|
||||||
int c = 0;
|
int c = 0;
|
||||||
while(i < motdConnections.size()) {
|
while(i < motdConnections.size()) {
|
||||||
|
@ -373,6 +376,7 @@ public class EaglerMOTD extends Plugin implements Listener {
|
||||||
}
|
}
|
||||||
++i;
|
++i;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
motdConnections.add(0, con);
|
motdConnections.add(0, con);
|
||||||
}
|
}
|
||||||
}else {
|
}else {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
name: EaglerMOTD
|
name: EaglerMOTD
|
||||||
main: net.lax1dude.eaglercraft.eaglermotd.EaglerMOTD
|
main: net.lax1dude.eaglercraft.eaglermotd.EaglerMOTD
|
||||||
version: 1.0
|
version: 1.0.2
|
||||||
author: LAX1DUDE
|
author: LAX1DUDE
|
Loading…
Reference in New Issue
Block a user