Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions src/main/java/core/packetproxy/DNSSpoofingIPGetter.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,29 +15,29 @@
*/
package packetproxy;

import packetproxy.gui.GUIOptionPrivateDNS;
import packetproxy.platform.SpoofingIPSource;

public class DNSSpoofingIPGetter {

private final GUIOptionPrivateDNS gui;
private final SpoofingIPSource source;

public DNSSpoofingIPGetter(GUIOptionPrivateDNS gui) {
this.gui = gui;
public DNSSpoofingIPGetter(SpoofingIPSource source) {
this.source = source;
}

public boolean isAuto() {
return gui.isAutoSpoofing();
return source.isAuto();
}

public String get() {
return gui.getSpoofingIP();
return source.get();
}

public String get6() {
return gui.getSpoofingIP6();
return source.get6();
}

public String getInt() {
return gui.getBindInterface();
return source.getInt();
}
}
47 changes: 24 additions & 23 deletions src/main/java/core/packetproxy/Duplex.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@
import java.io.PipedInputStream;
import java.io.PipedOutputStream;
import java.util.EventListener;
import javax.swing.event.EventListenerList;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

public abstract class Duplex {
protected EventListenerList duplexEventListenerList = new EventListenerList();
private final List<DuplexEventListener> duplexEventListeners = new CopyOnWriteArrayList<>();
private boolean flag_event_listener;
private int PIPE_SIZE = 65536;
private PipedOutputStream clientOutputForFlowControl;
Expand Down Expand Up @@ -61,7 +62,7 @@ boolean isEnabledDuplexEventListener() {
}

public void addDuplexEventListener(DuplexEventListener listener) {
duplexEventListenerList.add(DuplexEventListener.class, listener);
duplexEventListeners.add(listener);
enableDuplexEventListener();
}

Expand All @@ -70,7 +71,7 @@ public int callOnClientPacketReceived(byte[] data) throws Exception {

return data.length;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientPacketReceived(data);
}
Expand All @@ -82,7 +83,7 @@ public int callOnServerPacketReceived(byte[] data) throws Exception {

return data.length;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerPacketReceived(data);
}
Expand All @@ -94,7 +95,7 @@ public void callOnClientChunkArrived(byte[] data) throws Exception {

inputClientData.write(data);
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.onClientChunkArrived(data);
}
Expand All @@ -105,7 +106,7 @@ public void callOnServerChunkArrived(byte[] data) throws Exception {

inputServerData.write(data);
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.onServerChunkArrived(data);
}
Expand All @@ -116,7 +117,7 @@ public byte[] callOnClientChunkPassThrough() throws Exception {

return null;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientChunkPassThrough();
}
Expand All @@ -128,7 +129,7 @@ public byte[] callOnServerChunkPassThrough() throws Exception {

return null;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerChunkPassThrough();
}
Expand All @@ -142,7 +143,7 @@ public byte[] callOnClientChunkAvailable() throws Exception {
inputClientData.reset();
return ret;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientChunkAvailable();
}
Expand All @@ -156,7 +157,7 @@ public byte[] callOnServerChunkAvailable() throws Exception {
inputServerData.reset();
return ret;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerChunkAvailable();
}
Expand All @@ -168,7 +169,7 @@ public byte[] callOnClientChunkReceived(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientChunkReceived(data);
}
Expand All @@ -180,7 +181,7 @@ public byte[] callOnServerChunkReceived(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerChunkReceived(data);
}
Expand All @@ -192,7 +193,7 @@ public byte[] callOnClientChunkSend(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientChunkSend(data);
}
Expand All @@ -204,7 +205,7 @@ public byte[] callOnServerChunkSend(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerChunkSend(data);
}
Expand All @@ -216,7 +217,7 @@ public byte[] callOnClientChunkSendForced(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onClientChunkSendForced(data);
}
Expand All @@ -228,7 +229,7 @@ public byte[] callOnServerChunkSendForced(byte[] data) throws Exception {

return data;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.onServerChunkSendForced(data);
}
Expand All @@ -241,7 +242,7 @@ public void callOnClientChunkFlowControl(byte[] data) throws Exception {
clientOutputForFlowControl.write(data);
clientOutputForFlowControl.flush();
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.onClientChunkFlowControl(data);
}
Expand All @@ -252,7 +253,7 @@ public void closeOnClientChunkFlowControl() throws Exception {

clientOutputForFlowControl.close();
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.closeClientChunkFlowControl();
}
Expand All @@ -263,7 +264,7 @@ public InputStream getClientChunkFlowControlSink() throws Exception {

return clientInputForFlowControl;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.getClientChunkFlowControlSink();
}
Expand All @@ -276,7 +277,7 @@ public void callOnServerChunkFlowControl(byte[] data) throws Exception {
serverOutputForFlowControl.write(data);
serverOutputForFlowControl.flush();
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.onServerChunkFlowControl(data);
}
Expand All @@ -287,7 +288,7 @@ public void closeOnServerChunkFlowControl() throws Exception {

serverOutputForFlowControl.close();
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

listener.closeServerChunkFlowControl();
}
Expand All @@ -298,7 +299,7 @@ public InputStream getServerChunkFlowControlSink() throws Exception {

return serverInputForFlowControl;
}
for (DuplexEventListener listener : duplexEventListenerList.getListeners(DuplexEventListener.class)) {
for (DuplexEventListener listener : duplexEventListeners) {

return listener.getServerChunkFlowControlSink();
}
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/core/packetproxy/PPContextMenuManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,14 @@
import javax.tools.JavaFileObject;
import javax.tools.StandardLocation;
import javax.tools.ToolProvider;
import packetproxy.ppcontextmenu.PPContextMenu;
import packetproxy.gui.ppcontextmenu.PPContextMenu;

public class PPContextMenuManager {

private static PPContextMenuManager instance;
private List<PPContextMenu> module_list;
private static final String item_package = "packetproxy.ppcontextmenu";
private static final Class<PPContextMenu> item_class = packetproxy.ppcontextmenu.PPContextMenu.class;
private static final String item_package = "packetproxy.gui.ppcontextmenu";
private static final Class<PPContextMenu> item_class = packetproxy.gui.ppcontextmenu.PPContextMenu.class;

public static PPContextMenuManager getInstance() throws Exception {
if (instance == null) {
Expand Down
20 changes: 6 additions & 14 deletions src/main/java/core/packetproxy/common/ConfigHttpServer.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.swing.*;
import packetproxy.gui.GUIMain;
import packetproxy.model.*;
import packetproxy.platform.ConfigHttpUiActions;

public class ConfigHttpServer extends NanoHTTPD {

private final String allowedAccessToken;
private final ConfigHttpUiActions uiActions;

private static class DaoHub {

Expand All @@ -30,9 +30,10 @@ private static class DaoHub {
List<SSLPassThrough> sslPassThroughList;
}

public ConfigHttpServer(String hostname, int port, String allowedAccessToken) {
public ConfigHttpServer(String hostname, int port, String allowedAccessToken, ConfigHttpUiActions uiActions) {
super(hostname, port);
this.allowedAccessToken = allowedAccessToken;
this.uiActions = uiActions;
}

private void fixUpServerList(Map<Integer, Integer> serverMap, List<Server> serverList) {
Expand Down Expand Up @@ -133,18 +134,9 @@ public Response serve(IHTTPSession session) {

try {

GUIMain.getInstance().setAlwaysOnTop(true);
GUIMain.getInstance().setVisible(true);
uiActions.showOptionsTab();

GUIMain.getInstance().getTabbedPane().setSelectedIndex(GUIMain.Panes.OPTIONS.ordinal());

int option = JOptionPane.showConfirmDialog(GUIMain.getInstance(),
I18nString.get("Do you want to overwrite config?"), I18nString.get("Loading config"),
JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE);

GUIMain.getInstance().setAlwaysOnTop(false);

if (option == JOptionPane.NO_OPTION) {
if (!uiActions.confirmOverwriteConfig()) {

return NanoHTTPD.newFixedLengthResponse(Response.Status.UNAUTHORIZED, MIME_HTML, null);
}
Expand Down
Loading
Loading