diff --git a/src/main/java/org/openautonomousconnection/webclient/Main.java b/src/main/java/org/openautonomousconnection/webclient/Main.java index 9e5fa2b..5fea7e5 100644 --- a/src/main/java/org/openautonomousconnection/webclient/Main.java +++ b/src/main/java/org/openautonomousconnection/webclient/Main.java @@ -21,13 +21,10 @@ import java.io.File; public class Main { public static MainFrame mainFrame; - public static final String DEFAULT_INS = "ins.open-autonomous-connection.org"; + public static final String DEFAULT_INS = "open-autonomous-connection.org"; public static final int DEFAULT_INS_PORT_TCP = 1026; - public static final int DEFAULT_INS_PORT_UDP = 1025; - public static final int DEFAULT_WEB_PORT_TCP = 1028; - public static final int DEFAULT_WEB_PORT_UDP = 1027; private static final ProtocolVersion PROTOCOL_VERSION = ProtocolVersion.PV_1_0_0_BETA; @@ -70,7 +67,7 @@ public class Main { ); // TODO - client.connectToINSServer("127.0.0.1", -1, -1); + client.connectToINSServer(Main.DEFAULT_INS, -1); } catch (Exception e) { throw new RuntimeException(e); } diff --git a/src/main/java/org/openautonomousconnection/webclient/network/WebClient.java b/src/main/java/org/openautonomousconnection/webclient/network/WebClient.java index d92e62c..f1a5b51 100644 --- a/src/main/java/org/openautonomousconnection/webclient/network/WebClient.java +++ b/src/main/java/org/openautonomousconnection/webclient/network/WebClient.java @@ -10,7 +10,6 @@ import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebRequestP import org.openautonomousconnection.protocol.side.client.ProtocolClient; import org.openautonomousconnection.protocol.versions.v1_0_0.beta.INSRecord; import org.openautonomousconnection.protocol.versions.v1_0_0.beta.INSResponseStatus; -import org.openautonomousconnection.protocol.versions.v1_0_0.beta.TOFUFeedback; import org.openautonomousconnection.protocol.versions.v1_0_0.beta.WebRequestMethod; import org.openautonomousconnection.webclient.network.type.NTFType; import org.openautonomousconnection.webclient.network.type.NetTransmitFile; @@ -62,23 +61,16 @@ public class WebClient extends ProtocolClient { * Connect to INServer with URLs (ip based) * @param ip ip to server * @param tcpPort tcp ins port - * @param udpPort tcp ins port */ - public void connectToINSServer(String ip, int tcpPort, int udpPort) throws NoSuchAlgorithmException, KeyManagementException { + public void connectToINSServer(String ip, int tcpPort) throws NoSuchAlgorithmException, KeyManagementException { tcpPort = tcpPort != -1 ? tcpPort : DEFAULT_INS_PORT_TCP; - udpPort = udpPort != -1 ? udpPort : DEFAULT_INS_PORT_UDP; // UDP is always preset try { this.buildINSConnection(); this.getClientINSConnection().connect(ip, tcpPort); - - while (getClientINSConnection().isConnected()) { - System.out.println("c"); - Thread.sleep(1000); - } } catch (Exception e) { throw new RuntimeException(e); } @@ -123,16 +115,22 @@ public class WebClient extends ProtocolClient { public void onResponse(INSResponseStatus insResponseStatus, List list) { } + // TODO: Just an example (ui would be better than console) @Override - public TOFUFeedback trustINS(String caFingerprint) { - // Reminder for enum: TRUST_ONE doesnt do anything. I forgot to remove it. Just use TRUST or DISCONNECT - return null; + public boolean trustINS(String caFingerprint) { + getProtocolBridge().getLogger().info("You never connected to this INS before.\n" + + "Fingerprint: " + caFingerprint + "\n" + + "Do you want to connect? (y/N)"); + return true; } @Override - public TOFUFeedback insFingerprintChanged(String oldCAFingerprint, String newCAFingerprint) { - // Reminder for enum: TRUST_ONE doesnt do anything. I forgot to remove it. Just use TRUST or DISCONNECT - return null; + public boolean trustNewINSFingerprint(String oldCAFingerprint, String newCAFingerprint) { + getProtocolBridge().getLogger().warn("INS root Certificate changed.\n" + + "Old fingerprint: " + oldCAFingerprint + "\n" + + "New fingerprint: " + newCAFingerprint + "\n" + + "Do you want to connect? (y/N)"); + return true; } /** diff --git a/src/main/java/org/openautonomousconnection/webclient/network/handlers/ServerPacketHandler.java b/src/main/java/org/openautonomousconnection/webclient/network/handlers/ServerPacketHandler.java index 976b06a..b471833 100644 --- a/src/main/java/org/openautonomousconnection/webclient/network/handlers/ServerPacketHandler.java +++ b/src/main/java/org/openautonomousconnection/webclient/network/handlers/ServerPacketHandler.java @@ -5,11 +5,15 @@ package org.openautonomousconnection.webclient.network.handlers; import dev.unlegitdqrk.unlegitlibrary.event.EventListener; +import dev.unlegitdqrk.unlegitlibrary.event.Listener; import dev.unlegitdqrk.unlegitlibrary.network.system.client.events.packets.C_PacketReadEvent; +import dev.unlegitdqrk.unlegitlibrary.network.system.client.events.packets.C_PacketSendEvent; import dev.unlegitdqrk.unlegitlibrary.network.system.packets.Packet; import dev.unlegitdqrk.unlegitlibrary.network.system.utils.TransportProtocol; +import org.openautonomousconnection.protocol.packets.OACPacket; import org.openautonomousconnection.protocol.packets.v1_0_0.beta.AuthPacket; import org.openautonomousconnection.protocol.packets.v1_0_0.beta.web.WebResponsePacket; +import org.openautonomousconnection.protocol.side.client.events.ConnectedToProtocolINSServerEvent; import org.openautonomousconnection.webclient.packetlistener.PacketListener; import java.util.ArrayList; @@ -23,6 +27,7 @@ public class ServerPacketHandler extends EventListener { listeners.add(packetListener); } + @Listener public void onPacketReceived(C_PacketReadEvent packetReceivedEvent) { Packet packet = packetReceivedEvent.getPacket(); @@ -33,5 +38,6 @@ public class ServerPacketHandler extends EventListener { .forEach(l -> l.onAuthPacketReceived((AuthPacket) packet, transport)); case 9 -> listeners .forEach(l -> l.onWebResponsePacketReceived((WebResponsePacket) packet, transport));} + } }