1 import java.net.*; 2 import java.io.*; 3 import socks.*; 4 5 11 public class SocksUDPEcho{ 12 13 public static void usage(){ 14 System.err.print( 15 "Usage: java SocksUDPEcho host port [socksHost socksPort]\n"); 16 } 17 18 static final int defaultProxyPort = 1080; static final String defaultProxyHost = "www-proxy"; 21 public static void main(String args[]){ 22 int port; 23 String host; 24 int proxyPort; 25 String proxyHost; 26 InetAddress ip; 27 28 if(args.length > 1 && args.length < 5){ 29 try{ 30 31 host = args[0]; 32 port = Integer.parseInt(args[1]); 33 34 proxyPort =(args.length > 3)? Integer.parseInt(args[3]) 35 : defaultProxyPort; 36 37 host = args[0]; 38 ip = InetAddress.getByName(host); 39 40 proxyHost =(args.length > 2)? args[2] 41 : defaultProxyHost; 42 43 Proxy.setDefaultProxy(proxyHost,proxyPort); 44 Proxy p = Proxy.getDefaultProxy(); 45 p.addDirect("lux"); 46 47 48 DatagramSocket ds = new Socks5DatagramSocket(); 49 50 51 BufferedReader in = new BufferedReader( 52 new InputStreamReader(System.in)); 53 String s; 54 55 System.out.print("Enter line:"); 56 s = in.readLine(); 57 58 while(s != null){ 59 byte[] data = (s+"\r\n").getBytes(); 60 DatagramPacket dp = new DatagramPacket(data,0,data.length, 61 ip,port); 62 System.out.println("Sending to: "+ip+":"+port); 63 ds.send(dp); 64 dp = new DatagramPacket(new byte[1024],1024); 65 66 System.out.println("Trying to recieve on port:"+ 67 ds.getLocalPort()); 68 ds.receive(dp); 69 System.out.print("Recieved:\n"+ 70 "From:"+dp.getAddress()+":"+dp.getPort()+ 71 "\n\n"+ 72 new String (dp.getData(),dp.getOffset(),dp.getLength())+"\n" 73 ); 74 System.out.print("Enter line:"); 75 s = in.readLine(); 76 77 } 78 ds.close(); 79 System.exit(1); 80 81 }catch(SocksException s_ex){ 82 System.err.println("SocksException:"+s_ex); 83 s_ex.printStackTrace(); 84 System.exit(1); 85 }catch(IOException io_ex){ 86 io_ex.printStackTrace(); 87 System.exit(1); 88 }catch(NumberFormatException num_ex){ 89 usage(); 90 num_ex.printStackTrace(); 91 System.exit(1); 92 } 93 94 }else{ 95 usage(); 96 } 97 } 98 } 99 | Popular Tags |