view src/net/sourceforge/jsocks/UDPEncapsulation.java @ 293:e730b8a5321e
ganymed
start conversion from trilead to ganymed
author
Carl Byington <carl@five-ten-sg.com>
date
Fri, 18 Jul 2014 20:39:28 -0700 (2014-07-19)
parents
0ce5cc452d02
children
205ee2873330
line source
+ − package net.sourceforge.jsocks;
+ − /**
+ − This interface provides for datagram encapsulation for SOCKSv5 protocol.
+ − <p>
+ − SOCKSv5 allows for datagrams to be encapsulated for purposes of integrity
+ − and/or authenticity. How it should be done is aggreed during the
+ − authentication stage, and is authentication dependent. This interface is
+ − provided to allow this encapsulation.
+ − @see Authentication
+ − */
+ − public interface UDPEncapsulation {
+ −
+ − /**
+ − This method should provide any authentication depended transformation
+ − on datagrams being send from/to the client.
+ −
+ − @param data Datagram data (including any SOCKS related bytes), to be
+ − encapsulated/decapsulated.
+ − @param out Wether the data is being send out. If true method should
+ − encapsulate/encrypt data, otherwise it should decapsulate/
+ − decrypt data.
+ − @throw IOException if for some reason data can be transformed correctly.
+ − @return Should return byte array containing data after transformation.
+ − It is possible to return same array as input, if transformation
+ − only involves bit mangling, and no additional data is being
+ − added or removed.
+ − */
+ − byte[] udpEncapsulate(byte[] data, boolean out) throws java.io.IOException;
+ − }