Jump to content

lebanaaa

Members
  • Posts

    56
  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by lebanaaa

  1. Fifa 2 online? :D
  2. Shadow of flare :P
  3. thank you for sharing, its working :P yup
  4. (shake) it will be better
  5. Nice share, but i think its BaaD ColoR
  6. Write you server Site please
  7. What is you favorite Base-Class For Olympiad? Post Here --=My Favorite Is Duelist-=--
  8. i think the program what you wished is not exist
  9. Lineage 2 Counter-strike Wow Samp Cossacks 1.35 APeha
  10. Shit, i think its very stupid thing because when you playing cs you enjoy for killing other players and testing your skills and when you using aimbot you already know than you will kill all people and it is very bad :| [its my oppinion]
  11. and can you add l2j admin commands FULL ??
  12. Clan Name: PhysicX Clan Tag: Pyx
  13. ohh :) i'm breaking rules?
  14. I love interlude :) 100x100x100 good rates or 50x50x50 hard interlude is better than c4
  15. Are you sure this server where you are playing is L2j or its l2-off ?? if it is java then it has perfect antihack or there must be mistakes:) and you can see l2phx guide :))
  16. Hi my name is George Lebanidze, i'm from georgia, i'm 15 years old. maxcheaters helped me and i downloaded many programs and i learn many things, i'm newb and i want learn much and become professional cheater :), maxcheaters is my favorite site, because i discovered many things what i wanted :)... I love maxcheater people too, and i'm ready for help anybody:).. so i will learn much and i ll be Proffesional cheater This is my Cheater Way!! :) :-* [sorry for my English]
  17. thats all good, but anti hack work?? [now phx and other shit cheats... i mean l2jattacker or doss attack]
  18. no, site is only non english and server :) is in english
  19. www.pvp.sand.ge Site is in georgian language and if you want download patch you must click > გადმოწერა<(DOWNLOAD) next you must click >ახალი პაჩის გადმოწერა< (Download New Patch) and you will connect one site where you must write download Captcha number and wait for download (registration is automatic) train zone varka rates 10000x10000x10000 max enchant weapon +35 armor +30 jewel +25, enchant rate: 90% (..+10) 85%(..+15)....e.t.c come and see :) very good And Finaly: I'm Looking For GM Who will help me how to protect my server from l2jattacker and doss-attacks. Post Comment
  20. ok, i 've got it but i dont know where ADD this code what file? gameserver.ini or where?
  21. Index: java/com/l2jserver/gameserver/GameServer.java =================================================================== --- java/com/l2jserver/gameserver/GameServer.java (revision 3751) +++ java/com/l2jserver/gameserver/GameServer.java (working copy) @@ -125,6 +125,7 @@ import com.l2jserver.gameserver.util.DynamicExtension; import com.l2jserver.status.Status; import com.l2jserver.util.DeadLockDetector; +import com.l2jserver.util.IPv4Filter; /** * This class ... @@ -437,7 +438,7 @@ sc.HELPER_BUFFER_COUNT = Config.MMO_HELPER_BUFFER_COUNT; final L2GamePacketHandler gph = new L2GamePacketHandler(); - _selectorThread = new SelectorThread<L2GameClient>(sc, gph, gph, gph, null); + _selectorThread = new SelectorThread<L2GameClient>(sc, gph, gph, gph, new IPv4Filter()); InetAddress bindAddress = null; if (!Config.GAMESERVER_HOSTNAME.equals("*")) Index: java/com/l2jserver/loginserver/SelectorHelper.java =================================================================== --- java/com/l2jserver/loginserver/SelectorHelper.java (revision 3751) +++ java/com/l2jserver/loginserver/SelectorHelper.java (working copy) @@ -12,11 +12,7 @@ */ package com.l2jserver.loginserver; -import java.net.InetAddress; import java.nio.channels.SocketChannel; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Map.Entry; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -29,23 +25,22 @@ import org.mmocore.network.ReceivablePacket; import com.l2jserver.loginserver.serverpackets.Init; +import com.l2jserver.util.IPv4Filter; /** * * @author KenM */ -public class SelectorHelper extends Thread implements IMMOExecutor<L2LoginClient>, +public class SelectorHelper implements IMMOExecutor<L2LoginClient>, IClientFactory<L2LoginClient>, IAcceptFilter { - private HashMap<Integer, Flood> _ipFloodMap; private ThreadPoolExecutor _generalPacketsThreadPool; + private IPv4Filter _ipv4filter; public SelectorHelper() { _generalPacketsThreadPool = new ThreadPoolExecutor(4, 6, 15L, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>()); - _ipFloodMap = new HashMap<Integer, Flood>(); - super.setDaemon(true); - super.start(); + _ipv4filter = new IPv4Filter(); } /** @@ -74,110 +69,6 @@ */ public boolean accept(SocketChannel sc) { - InetAddress addr = sc.socket().getInetAddress(); - int h = hash(addr.getAddress()); - - long current = System.currentTimeMillis(); - Flood f; - synchronized (_ipFloodMap) - { - f = _ipFloodMap.get(h); - } - if (f != null) - { - if (f.trys == -1) - { - f.lastAccess = current; - return false; - } - if (f.lastAccess + 1000 > current) - { - f.lastAccess = current; - - if (f.trys >= 3) - { - f.trys = -1; - return false; - } - - f.trys++; - } - else - { - f.lastAccess = current; - } - } - else - { - synchronized (_ipFloodMap) - { - _ipFloodMap.put(h, new Flood()); - } - } - return !LoginController.getInstance().isBannedAddress(addr); - } - - /** - * - * @param ip - * @return - */ - private int hash(byte[] ip) - { - return ip[0] & 0xFF | ip[1] << 8 & 0xFF00 | ip[2] << 16 & 0xFF0000 | ip[3] << 24 - & 0xFF000000; - } - - private class Flood - { - long lastAccess; - int trys; - - Flood() - { - lastAccess = System.currentTimeMillis(); - trys = 0; - } - } - - /** - * - * @see java.lang.Thread#run() - */ - @Override - public void run() - { - while (true) - { - long reference = System.currentTimeMillis() - (1000 * 300); - ArrayList<Integer> toRemove = new ArrayList<Integer>(50); - synchronized (_ipFloodMap) - { - for (Entry<Integer, Flood> e : _ipFloodMap.entrySet()) - { - Flood f = e.getValue(); - if (f.lastAccess < reference) - toRemove.add(e.getKey()); - } - } - - synchronized (_ipFloodMap) - { - for (Integer i : toRemove) - { - _ipFloodMap.remove(i); - } - } - - try - { - Thread.sleep(5000); - } - catch (InterruptedException e) - { - - - } - } + return _ipv4filter.accept(sc) && !LoginController.getInstance().isBannedAddress(sc.socket().getInetAddress()); } } Index: java/com/l2jserver/util/IPv4Filter.java =================================================================== --- java/com/l2jserver/util/IPv4Filter.java (revision 0) +++ java/com/l2jserver/util/IPv4Filter.java (revision 0) @@ -0,0 +1,151 @@ +/* + * This program is free software: you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free Software + * Foundation, either version 3 of the License, or (at your option) any later + * version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more + * details. + * + * You should have received a copy of the GNU General Public License along with + * this program. If not, see <http://www.gnu.org/licenses/>. + */ + +package com.l2jserver.util; + +import java.net.InetAddress; +import java.nio.channels.SocketChannel; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map.Entry; + +import org.mmocore.network.IAcceptFilter; + +/** + * Formatted Forsaiken's IPv4 filter [DrHouse] + * + * @author Forsaiken + * + */ +public class IPv4Filter implements IAcceptFilter, Runnable +{ + private HashMap<Integer, Flood> _ipFloodMap; + private final long SLEEP_TIME = 5000; + + public IPv4Filter() + { + _ipFloodMap = new HashMap<Integer, Flood>(); + Thread t = new Thread(this); + t.setDaemon(true); + t.start(); + } + /** + * + * @param ip + * @return + */ + private static final int hash(byte[] ip) + { + return ip[0] & 0xFF | ip[1] << 8 & 0xFF00 | ip[2] << 16 & 0xFF0000 | ip[3] << 24 & 0xFF000000; + } + + protected static final class Flood + { + long lastAccess; + int trys; + + Flood() + { + lastAccess = System.currentTimeMillis(); + trys = 0; + } + } + + @Override + public boolean accept(SocketChannel sc) + { + InetAddress addr = sc.socket().getInetAddress(); + int h = hash(addr.getAddress()); + + long current = System.currentTimeMillis(); + Flood f; + synchronized (_ipFloodMap) + { + f = _ipFloodMap.get(h); + } + if (f != null) + { + if (f.trys == -1) + { + f.lastAccess = current; + return false; + } + + if (f.lastAccess + 1000 > current) + { + f.lastAccess = current; + + if (f.trys >= 3) + { + f.trys = -1; + return false; + } + + f.trys++; + } + else + { + f.lastAccess = current; + } + } + else + { + synchronized (_ipFloodMap) + { + _ipFloodMap.put(h, new Flood()); + } + } + + @Override + public void run() + { + while (true) + { + long reference = System.currentTimeMillis() - (1000 * 300); + ArrayList<Integer> toRemove = new ArrayList<Integer>(50); + + synchronized (_ipFloodMap) + { + for (Entry<Integer, Flood> e : _ipFloodMap.entrySet()) + { + Flood f = e.getValue(); + if (f.lastAccess < reference) + toRemove.add(e.getKey()); + } + } + synchronized (_ipFloodMap) + { + for (Integer i : toRemove) + { + _ipFloodMap.remove(i); + } + } + + try + { + Thread.sleep(SLEEP_TIME); + } + catch (InterruptedException e) + { + + } + } + } + +} \ No newline at end of file Help me please, what i must to do? i dont know, where i can add this code !!!
  22. shevcvale mara ar cavida :| da damcveli rame ar ici :| an is codi rogor chavagdo ----------------------------------------------------------------------------- i've changed but didnot work :| and do you know Anti hack? or how to use that code? [up]
×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock