mirror of
https://github.com/GravitLauncher/Launcher
synced 2025-04-01 22:14:01 +03:00
[FEATURE] Replacing binaryName in links with to placeholder
This commit is contained in:
parent
ec3775286c
commit
cfb7fe1e24
3 changed files with 18 additions and 8 deletions
|
@ -278,8 +278,8 @@ public static void generateConfigIfNotExists(Path configFile, CommandHandler com
|
||||||
|
|
||||||
newConfig.netty.address = "ws://" + address + ":9274/api";
|
newConfig.netty.address = "ws://" + address + ":9274/api";
|
||||||
newConfig.netty.downloadURL = "http://" + address + ":9274/%dirname%/";
|
newConfig.netty.downloadURL = "http://" + address + ":9274/%dirname%/";
|
||||||
newConfig.netty.launcherURL = "http://" + address + ":9274/Launcher.jar";
|
newConfig.netty.launcherURL = "http://" + address + ":9274/%binaryName%.jar";
|
||||||
newConfig.netty.launcherEXEURL = "http://" + address + ":9274/Launcher.exe";
|
newConfig.netty.launcherEXEURL = "http://" + address + ":9274/%binaryName%.exe";
|
||||||
|
|
||||||
// Write LaunchServer config
|
// Write LaunchServer config
|
||||||
logger.info("Writing LaunchServer config file");
|
logger.info("Writing LaunchServer config file");
|
||||||
|
|
|
@ -21,6 +21,8 @@
|
||||||
import pro.gravit.utils.helper.JVMHelper;
|
import pro.gravit.utils.helper.JVMHelper;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.net.URLEncoder;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
public final class LaunchServerConfig {
|
public final class LaunchServerConfig {
|
||||||
|
@ -134,6 +136,14 @@ public void setBinaryName(String binaryName) {
|
||||||
this.binaryName = binaryName;
|
this.binaryName = binaryName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getLauncherURL() {
|
||||||
|
return URLEncoder.encode(this.netty.launcherURL.replaceAll("%binaryName%", this.binaryName), StandardCharsets.UTF_8);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getLauncherEXEURL() {
|
||||||
|
return URLEncoder.encode(this.netty.launcherEXEURL.replaceAll("%binaryName%", this.binaryName), StandardCharsets.UTF_8);
|
||||||
|
}
|
||||||
|
|
||||||
public void setEnv(LauncherConfig.LauncherEnvironment env) {
|
public void setEnv(LauncherConfig.LauncherEnvironment env) {
|
||||||
this.env = env;
|
this.env = env;
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,22 +47,22 @@ public void execute(ChannelHandlerContext ctx, Client client) {
|
||||||
{
|
{
|
||||||
byte[] hash = server.launcherBinary.getDigest();
|
byte[] hash = server.launcherBinary.getDigest();
|
||||||
if (hash == null)
|
if (hash == null)
|
||||||
service.sendObjectAndClose(ctx, new LauncherRequestEvent(true, server.config.netty.launcherURL));
|
service.sendObjectAndClose(ctx, new LauncherRequestEvent(true, server.config.getLauncherURL()));
|
||||||
if (Arrays.equals(bytes, hash) && checkSecure(secureHash, secureSalt)) {
|
if (Arrays.equals(bytes, hash) && checkSecure(secureHash, secureSalt)) {
|
||||||
client.checkSign = true;
|
client.checkSign = true;
|
||||||
sendResult(new LauncherRequestEvent(false, server.config.netty.launcherURL, createLauncherExtendedToken()));
|
sendResult(new LauncherRequestEvent(false, server.config.getLauncherURL(), createLauncherExtendedToken()));
|
||||||
} else {
|
} else {
|
||||||
sendResultAndClose(new LauncherRequestEvent(true, server.config.netty.launcherURL, createLauncherExtendedToken()));
|
sendResultAndClose(new LauncherRequestEvent(true, server.config.getLauncherURL(), createLauncherExtendedToken()));
|
||||||
}
|
}
|
||||||
} else if (launcher_type == 2) //EXE
|
} else if (launcher_type == 2) //EXE
|
||||||
{
|
{
|
||||||
byte[] hash = server.launcherEXEBinary.getDigest();
|
byte[] hash = server.launcherEXEBinary.getDigest();
|
||||||
if (hash == null) sendResultAndClose(new LauncherRequestEvent(true, server.config.netty.launcherEXEURL));
|
if (hash == null) sendResultAndClose(new LauncherRequestEvent(true, server.config.getLauncherEXEURL()));
|
||||||
if (Arrays.equals(bytes, hash) && checkSecure(secureHash, secureSalt)) {
|
if (Arrays.equals(bytes, hash) && checkSecure(secureHash, secureSalt)) {
|
||||||
client.checkSign = true;
|
client.checkSign = true;
|
||||||
sendResult(new LauncherRequestEvent(false, server.config.netty.launcherEXEURL, createLauncherExtendedToken()));
|
sendResult(new LauncherRequestEvent(false, server.config.getLauncherEXEURL(), createLauncherExtendedToken()));
|
||||||
} else {
|
} else {
|
||||||
sendResultAndClose(new LauncherRequestEvent(true, server.config.netty.launcherEXEURL, createLauncherExtendedToken()));
|
sendResultAndClose(new LauncherRequestEvent(true, server.config.getLauncherEXEURL(), createLauncherExtendedToken()));
|
||||||
}
|
}
|
||||||
} else sendError("Request launcher type error");
|
} else sendError("Request launcher type error");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue