Class SOCKSUDPPort

  • All Implemented Interfaces:
    Sink, Source

    public class SOCKSUDPPort
    extends Object
    implements Source, Sink
    Implements a UDP port and Socks encapsulation / decapsulation. This is for a single port. If there is demuxing for multiple ports, it happens outside of here. TX: UDPSource -> SOCKSUDPUnwrapper -> ReplyTracker ( -> I2PSink in SOCKSUDPTunnel) RX: UDPSink <- SOCKSUDPWrapper ( <- MultiSink <- I2PSource in SOCKSUDPTunnel) The Unwrapper passes headers to the Wrapper through a cache. The ReplyTracker passes sinks to MultiSink through a cache.
    Author:
    zzz
    • Method Detail

      • getPort

        public int getPort()
        Socks passes this back to the client on the TCP connection
      • setSink

        public void setSink​(Sink sink)
        Specified by:
        setSink in interface Source
      • start

        public void start()
        Specified by:
        start in interface Source
      • stop

        public void stop()
      • send

        public void send​(Destination from,
                         byte[] data)
        May throw RuntimeException from underlying sink
        Specified by:
        send in interface Sink
        Parameters:
        from - some implementations may ignore
        Throws:
        RuntimeException