ChannelForwardedTcpip.NET40.cs 921 B

123456789101112131415161718192021222324252627282930
  1. using System.Net;
  2. using System.Net.Sockets;
  3. namespace Renci.SshNet.Channels
  4. {
  5. /// <summary>
  6. /// Implements "forwarded-tcpip" SSH channel.
  7. /// </summary>
  8. internal partial class ChannelForwardedTcpip : Channel
  9. {
  10. partial void OpenSocket(IPAddress connectedHost, uint connectedPort)
  11. {
  12. var ep = new IPEndPoint(connectedHost, (int)connectedPort);
  13. this._socket = new Socket(ep.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
  14. this._socket.Connect(ep);
  15. this._socket.SetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.NoDelay, 1);
  16. }
  17. partial void InternalSocketReceive(byte[] buffer, ref int read)
  18. {
  19. read = this._socket.Receive(buffer);
  20. }
  21. partial void InternalSocketSend(byte[] data)
  22. {
  23. this._socket.Send(data);
  24. }
  25. }
  26. }