From b989b00d4af33fa73af7ff5b421d2a83e375fb74 Mon Sep 17 00:00:00 2001 From: Jeroen Ketelaar Date: Tue, 18 Feb 2014 17:14:49 +0100 Subject: [PATCH 1/2] Started on proxy support --- .gitignore | 5 ++-- .../src/org/parabot/core/proxy/Proxy.java | 28 +++++++++++++++++++ 2 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 parabotv2/src/org/parabot/core/proxy/Proxy.java diff --git a/.gitignore b/.gitignore index 5111752..5a61642 100644 --- a/.gitignore +++ b/.gitignore @@ -47,12 +47,11 @@ parabotv2/src/META-INF/MANIFEST.MF .idea/uiDesigner.xml -<<<<<<< HEAD .idea/libraries/jfxrt.xml -======= *.jar *.classpath *.project ->>>>>>> 18cffe02674768c9927a96cc05d2ae09e803974d + +*.xml diff --git a/parabotv2/src/org/parabot/core/proxy/Proxy.java b/parabotv2/src/org/parabot/core/proxy/Proxy.java new file mode 100644 index 0000000..b6499d3 --- /dev/null +++ b/parabotv2/src/org/parabot/core/proxy/Proxy.java @@ -0,0 +1,28 @@ +package org.parabot.core.proxy; + +import socks.Socks4Proxy; +import socks.Socks5Proxy; + +import java.net.UnknownHostException; + +/** + * User: Jeroen + * Date: 18/02/14 + * Time: 16:54 + */ +public class Proxy { + public static Socks5Proxy proxy5; + public static Socks4Proxy proxy4; + + public static void setProxy4() throws UnknownHostException { + + } + + public static void setProxy5() throws UnknownHostException { + proxy5 = new Socks5Proxy("80.63.56.146", 1080); + } + + public static void main(String[] args) throws UnknownHostException { + setProxy5(); + } +} From 6b5f1bb8081238a9d300f705331c7f35cc933cc5 Mon Sep 17 00:00:00 2001 From: Jeroen Ketelaar Date: Tue, 18 Feb 2014 17:14:56 +0100 Subject: [PATCH 2/2] Added UI for proxy --- parabotv2/src/org/parabot/core/ui/BotUI.java | 8 +- .../src/org/parabot/core/ui/NetworkUI.java | 101 ++++++++++++++++++ 2 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 parabotv2/src/org/parabot/core/ui/NetworkUI.java diff --git a/parabotv2/src/org/parabot/core/ui/BotUI.java b/parabotv2/src/org/parabot/core/ui/BotUI.java index b5a8dd6..f0a958f 100644 --- a/parabotv2/src/org/parabot/core/ui/BotUI.java +++ b/parabotv2/src/org/parabot/core/ui/BotUI.java @@ -100,10 +100,12 @@ public class BotUI extends JFrame implements ActionListener { case "Exit": System.exit(0); break; + case "Network": + System.out.println("Starting up the proxy UI"); + //NetworkUI.main(); + break; default: - System.out.println("Invalid command: "); + System.out.println("Invalid command: " + command); } } - - } diff --git a/parabotv2/src/org/parabot/core/ui/NetworkUI.java b/parabotv2/src/org/parabot/core/ui/NetworkUI.java new file mode 100644 index 0000000..d0b1c55 --- /dev/null +++ b/parabotv2/src/org/parabot/core/ui/NetworkUI.java @@ -0,0 +1,101 @@ +package org.parabot.core.ui; + +import javax.swing.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.util.HashMap; + + +public class NetworkUI { + + private JFrame frame; + private JTextField proxyHostField; + private JTextField proxyPortField; + private HashMap socksVersions = new HashMap<>(); + + public NetworkUI() { + initialize(); + } + + public static void main(String[] args){ + NetworkUI window = new NetworkUI(); + window.frame.setVisible(true); + } + + private void initialize() { + socksVersions.put("Socks 4", 4); + socksVersions.put("Socks 5", 5); + frame = new JFrame(); + frame.setResizable(false); + frame.setBounds(100, 100, 450, 300); + frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); + frame.getContentPane().setLayout(null); + + JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP); + tabbedPane.setBounds(6, 6, 438, 233); + frame.getContentPane().add(tabbedPane); + + JPanel proxy = new JPanel(); + tabbedPane.addTab("Proxy", null, proxy, null); + proxy.setLayout(null); + + JLabel socksOption = new JLabel("Socks version"); + socksOption.setBounds(6, 6, 87, 16); + proxy.add(socksOption); + + final JComboBox socksOptions = new JComboBox(); + for (String key : socksVersions.keySet()) { + socksOptions.addItem(key); + } + socksOptions.setBounds(105, 2, 127, 27); + proxy.add(socksOptions); + + JLabel proxyHost = new JLabel("Proxy host"); + proxyHost.setBounds(6, 66, 87, 16); + proxy.add(proxyHost); + + proxyHostField = new JTextField(); + proxyHostField.setBounds(105, 60, 127, 28); + proxy.add(proxyHostField); + proxyHostField.setColumns(10); + + JLabel proxyPort = new JLabel("Proxy port"); + proxyPort.setBounds(6, 126, 87, 16); + proxy.add(proxyPort); + + proxyPortField = new JTextField(); + proxyPortField.setBounds(105, 120, 127, 28); + proxy.add(proxyPortField); + proxyPortField.setColumns(10); + + JPanel macAddress = new JPanel(); + tabbedPane.addTab("Mac address", null, macAddress, null); + macAddress.setLayout(null); + + JLabel enableSpoofer = new JLabel("Enable spoofer"); + enableSpoofer.setBounds(6, 80, 99, 16); + macAddress.add(enableSpoofer); + + final ButtonGroup bg = new ButtonGroup(); + JRadioButton spooferYes = new JRadioButton("Yes"); + spooferYes.setBounds(117, 76, 59, 23); + macAddress.add(spooferYes); + + JRadioButton spooferNo = new JRadioButton("No"); + spooferNo.setBounds(188, 76, 59, 23); + macAddress.add(spooferNo); + spooferNo.setSelected(true); + + bg.add(spooferYes); + bg.add(spooferNo); + + JButton submit = new JButton("Submit"); + submit.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + System.out.println(socksVersions.get(socksOptions.getSelectedItem())); + } + }); + submit.setBounds(327, 243, 117, 29); + frame.getContentPane().add(submit); + } +}