public void run() { try { String var1 = (new BigInteger( CryptManager.func_75895_a( NetLoginHandler.getServerId(this.loginHandler), NetLoginHandler.func_72530_b(this.loginHandler).getKeyPair().getPublic(), NetLoginHandler.func_72525_c(this.loginHandler)))) .toString(16); URL var2 = new URL( "http://session.minecraft.net/game/checkserver.jsp?user="******"UTF-8") + "&serverId=" + URLEncoder.encode(var1, "UTF-8")); BufferedReader var3 = new BufferedReader(new InputStreamReader(var2.openStream())); String var4 = var3.readLine(); var3.close(); if (!"YES".equals(var4)) { this.loginHandler.raiseErrorAndDisconnect("Failed to verify username!"); return; } NetLoginHandler.func_72531_a(this.loginHandler, true); } catch (Exception var5) { this.loginHandler.raiseErrorAndDisconnect( "Failed to verify username! [internal error " + var5 + "]"); var5.printStackTrace(); } }
private void func_74446_k() throws IOException { this.field_74474_l.flush(); this.field_74466_g = true; this.field_74474_l = new DataOutputStream( new BufferedOutputStream( CryptManager.func_75897_a(this.field_74488_z, this.field_74479_i.getOutputStream()), 5120)); }
protected boolean func_71197_b() throws IOException { this.field_98130_m.func_98233_a("Starting integrated minecraft server version 1.5.2"); this.func_71229_d(false); this.func_71251_e(true); this.func_71257_f(true); this.func_71188_g(true); this.func_71245_h(true); this.field_98130_m.func_98233_a("Generating keypair"); this.func_71253_a(CryptManager.func_75891_b()); this.func_71247_a( this.func_71270_I(), this.func_71221_J(), this.field_71350_m.func_77160_d(), this.field_71350_m.func_77165_h(), this.field_71350_m.func_82749_j()); this.func_71205_p( this.func_71214_G() + " - " + this.field_71305_c[0].func_72912_H().func_76065_j()); return true; }
private void func_74448_j() throws IOException { this.field_74465_f = true; this.field_74477_k = new DataInputStream( CryptManager.func_75888_a(this.field_74488_z, this.field_74479_i.getInputStream())); }
/** Initialises the server and starts it. */ protected boolean startServer() throws IOException { DedicatedServerCommandThread var1 = new DedicatedServerCommandThread(this); var1.setDaemon(true); var1.start(); this.getLogAgent().func_98233_a("Starting minecraft server version 1.6.2"); if (Runtime.getRuntime().maxMemory() / 1024L / 1024L < 512L) { this.getLogAgent() .func_98236_b( "To start the server with more ram, launch it as \"java -Xmx1024M -Xms1024M -jar minecraft_server.jar\""); } this.getLogAgent().func_98233_a("Loading properties"); this.settings = new PropertyManager(new File("server.properties"), this.getLogAgent()); if (this.isSinglePlayer()) { this.setHostname("127.0.0.1"); } else { this.setOnlineMode(this.settings.getBooleanProperty("online-mode", true)); this.setHostname(this.settings.getStringProperty("server-ip", "")); } this.setCanSpawnAnimals(this.settings.getBooleanProperty("spawn-animals", true)); this.setCanSpawnNPCs(this.settings.getBooleanProperty("spawn-npcs", true)); this.setAllowPvp(this.settings.getBooleanProperty("pvp", true)); this.setAllowFlight(this.settings.getBooleanProperty("allow-flight", false)); this.setTexturePack(this.settings.getStringProperty("texture-pack", "")); this.setMOTD(this.settings.getStringProperty("motd", "A Minecraft Server")); this.func_104055_i(this.settings.getBooleanProperty("force-gamemode", false)); if (this.settings.getIntProperty("difficulty", 1) < 0) { this.settings.setProperty("difficulty", Integer.valueOf(0)); } else if (this.settings.getIntProperty("difficulty", 1) > 3) { this.settings.setProperty("difficulty", Integer.valueOf(3)); } this.canSpawnStructures = this.settings.getBooleanProperty("generate-structures", true); int var2 = this.settings.getIntProperty("gamemode", EnumGameType.SURVIVAL.getID()); this.gameType = WorldSettings.getGameTypeById(var2); this.getLogAgent().func_98233_a("Default game type: " + this.gameType); InetAddress var3 = null; if (this.getServerHostname().length() > 0) { var3 = InetAddress.getByName(this.getServerHostname()); } if (this.getServerPort() < 0) { this.setServerPort(this.settings.getIntProperty("server-port", 25565)); } this.getLogAgent().func_98233_a("Generating keypair"); this.setKeyPair(CryptManager.generateKeyPair()); this.getLogAgent() .func_98233_a( "Starting Minecraft server on " + (this.getServerHostname().length() == 0 ? "*" : this.getServerHostname()) + ":" + this.getServerPort()); try { this.networkThread = new DedicatedServerListenThread(this, var3, this.getServerPort()); } catch (IOException var16) { this.getLogAgent().func_98236_b("**** FAILED TO BIND TO PORT!"); this.getLogAgent() .logWarningFormatted("The exception was: {0}", new Object[] {var16.toString()}); this.getLogAgent().func_98236_b("Perhaps a server is already running on that port?"); return false; } if (!this.isServerInOnlineMode()) { this.getLogAgent().func_98236_b("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!"); this.getLogAgent() .func_98236_b("The server will make no attempt to authenticate usernames. Beware."); this.getLogAgent() .func_98236_b( "While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose."); this.getLogAgent() .func_98236_b( "To change this, set \"online-mode\" to \"true\" in the server.properties file."); } this.setConfigurationManager(new DedicatedPlayerList(this)); long var4 = System.nanoTime(); if (this.getFolderName() == null) { this.setFolderName(this.settings.getStringProperty("level-name", "world")); } String var6 = this.settings.getStringProperty("level-seed", ""); String var7 = this.settings.getStringProperty("level-type", "DEFAULT"); String var8 = this.settings.getStringProperty("generator-settings", ""); long var9 = (new Random()).nextLong(); if (var6.length() > 0) { try { long var11 = Long.parseLong(var6); if (var11 != 0L) { var9 = var11; } } catch (NumberFormatException var15) { var9 = (long) var6.hashCode(); } } WorldType var17 = WorldType.parseWorldType(var7); if (var17 == null) { var17 = WorldType.DEFAULT; } this.setBuildLimit(this.settings.getIntProperty("max-build-height", 256)); this.setBuildLimit((this.getBuildLimit() + 8) / 16 * 16); this.setBuildLimit(MathHelper.clamp_int(this.getBuildLimit(), 64, 256)); this.settings.setProperty("max-build-height", Integer.valueOf(this.getBuildLimit())); this.getLogAgent().func_98233_a("Preparing level \"" + this.getFolderName() + "\""); this.loadAllWorlds(this.getFolderName(), this.getFolderName(), var9, var17, var8); long var12 = System.nanoTime() - var4; String var14 = String.format("%.3fs", new Object[] {Double.valueOf((double) var12 / 1.0E9D)}); this.getLogAgent().func_98233_a("Done (" + var14 + ")! For help, type \"help\" or \"?\""); if (this.settings.getBooleanProperty("enable-query", false)) { this.getLogAgent().func_98233_a("Starting GS4 status listener"); this.theRConThreadQuery = new RConThreadQuery(this); this.theRConThreadQuery.startThread(); } if (this.settings.getBooleanProperty("enable-rcon", false)) { this.getLogAgent().func_98233_a("Starting remote control listener"); this.theRConThreadMain = new RConThreadMain(this); this.theRConThreadMain.startThread(); } // TODO: Hakkit Start. HakkitServer hakkitServer = new HakkitServer(); hakkitServer.setMinecraftServer(this); Hakkit.setServer(hakkitServer); // TODO: Hakkit End return true; }