<PackageReference Include="SSH.NET" Version="2023.0.1" />

X11ForwardingRequestInfo

Represents "x11-req" type channel request information.
using Renci.SshNet.Common; namespace Renci.SshNet.Messages.Connection { internal sealed class X11ForwardingRequestInfo : RequestInfo { private byte[] _authenticationProtocol; public const string Name = "x11-req"; public override string RequestName => "x11-req"; public bool IsSingleConnection { get; set; } public string AuthenticationProtocol { get { return SshData.Ascii.GetString(_authenticationProtocol, 0, _authenticationProtocol.Length); } private set { _authenticationProtocol = SshData.Ascii.GetBytes(value); } } public byte[] AuthenticationCookie { get; set; } public uint ScreenNumber { get; set; } protected override int BufferCapacity => base.BufferCapacity + 1 + 4 + _authenticationProtocol.Length + 4 + AuthenticationCookie.Length + 4; public X11ForwardingRequestInfo() { base.WantReply = true; } public X11ForwardingRequestInfo(bool isSingleConnection, string protocol, byte[] cookie, uint screenNumber) : this() { IsSingleConnection = isSingleConnection; AuthenticationProtocol = protocol; AuthenticationCookie = cookie; ScreenNumber = screenNumber; } protected override void LoadData() { base.LoadData(); IsSingleConnection = ReadBoolean(); _authenticationProtocol = ReadBinary(); AuthenticationCookie = ReadBinary(); ScreenNumber = ReadUInt32(); } protected override void SaveData() { base.SaveData(); Write(IsSingleConnection); WriteBinaryString(_authenticationProtocol); WriteBinaryString(AuthenticationCookie); Write(ScreenNumber); } } }