101 lines
3.5 KiB
Java
101 lines
3.5 KiB
Java
package fr.xephi.authme;
|
|
|
|
import org.apache.logging.log4j.Level;
|
|
import org.apache.logging.log4j.Marker;
|
|
import org.apache.logging.log4j.core.LogEvent;
|
|
import org.apache.logging.log4j.core.Logger;
|
|
import org.apache.logging.log4j.message.Message;
|
|
|
|
/**
|
|
*
|
|
* @author Xephi59
|
|
*/
|
|
public class Log4JFilter implements org.apache.logging.log4j.core.Filter {
|
|
|
|
public Log4JFilter() {
|
|
}
|
|
|
|
@Override
|
|
public Result filter(LogEvent record) {
|
|
try {
|
|
if (record == null || record.getMessage() == null)
|
|
return Result.NEUTRAL;
|
|
String logM = record.getMessage().getFormattedMessage().toLowerCase();
|
|
if (!logM.contains("issued server command:"))
|
|
return Result.NEUTRAL;
|
|
if (!logM.contains("/login ") && !logM.contains("/l ") && !logM.contains("/reg ") && !logM.contains("/changepassword ") && !logM.contains("/unregister ")
|
|
&& !logM.contains("/authme register ") && !logM.contains("/authme changepassword ") && !logM.contains("/authme reg ") && !logM.contains("/authme cp ")
|
|
&& !logM.contains("/register "))
|
|
return Result.NEUTRAL;
|
|
return Result.DENY;
|
|
} catch (NullPointerException npe) {
|
|
return Result.NEUTRAL;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public Result filter(Logger arg0, Level arg1, Marker arg2, Message message, Throwable arg4) {
|
|
try {
|
|
if (message == null)
|
|
return Result.NEUTRAL;
|
|
String logM = message.getFormattedMessage().toLowerCase();
|
|
if (!logM.contains("issued server command:"))
|
|
return Result.NEUTRAL;
|
|
if (!logM.contains("/login ") && !logM.contains("/l ") && !logM.contains("/reg ") && !logM.contains("/changepassword ") && !logM.contains("/unregister ")
|
|
&& !logM.contains("/authme register ") && !logM.contains("/authme changepassword ") && !logM.contains("/authme reg ") && !logM.contains("/authme cp ")
|
|
&& !logM.contains("/register "))
|
|
return Result.NEUTRAL;
|
|
return Result.DENY;
|
|
} catch (NullPointerException npe) {
|
|
return Result.NEUTRAL;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public Result filter(Logger arg0, Level arg1, Marker arg2, Object message, Throwable arg4) {
|
|
try {
|
|
if (message == null)
|
|
return Result.NEUTRAL;
|
|
String logM = message.toString().toLowerCase();
|
|
if (!logM.contains("issued server command:"))
|
|
return Result.NEUTRAL;
|
|
if (!logM.contains("/login ") && !logM.contains("/l ") && !logM.contains("/reg ") && !logM.contains("/changepassword ") && !logM.contains("/unregister ")
|
|
&& !logM.contains("/authme register ") && !logM.contains("/authme changepassword ") && !logM.contains("/authme reg ") && !logM.contains("/authme cp ")
|
|
&& !logM.contains("/register "))
|
|
return Result.NEUTRAL;
|
|
return Result.DENY;
|
|
} catch (NullPointerException npe) {
|
|
return Result.NEUTRAL;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public Result filter(Logger arg0, Level arg1, Marker arg2, String message, Object... arg4) {
|
|
try {
|
|
if (message == null)
|
|
return Result.NEUTRAL;
|
|
String logM = message.toLowerCase();
|
|
if (!logM.contains("issued server command:"))
|
|
return Result.NEUTRAL;
|
|
if (!logM.contains("/login ") && !logM.contains("/l ") && !logM.contains("/reg ") && !logM.contains("/changepassword ") && !logM.contains("/unregister ")
|
|
&& !logM.contains("/authme register ") && !logM.contains("/authme changepassword ") && !logM.contains("/authme reg ") && !logM.contains("/authme cp ")
|
|
&& !logM.contains("/register "))
|
|
return Result.NEUTRAL;
|
|
return Result.DENY;
|
|
} catch (NullPointerException npe) {
|
|
return Result.NEUTRAL;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public Result getOnMatch() {
|
|
return Result.NEUTRAL;
|
|
}
|
|
|
|
@Override
|
|
public Result getOnMismatch() {
|
|
return Result.NEUTRAL;
|
|
}
|
|
|
|
}
|