📄 querymethodsocks5message.cs
字号:
namespace Imps.Client.CommLayer.SocksSipConnection
{
using System;
using System.IO;
using System.Text;
internal sealed class QueryMethodSocks5Message : Socks5Message
{
private SocksMethod[] _methods;
public QueryMethodSocks5Message()
{
SocksMethod[] methodArray = new SocksMethod[2];
methodArray[1] = SocksMethod.Password;
this._methods = methodArray;
}
public QueryMethodSocks5Message(params SocksMethod[] methods)
{
SocksMethod[] methodArray = new SocksMethod[2];
methodArray[1] = SocksMethod.Password;
this._methods = methodArray;
if (methods == null)
{
throw new ArgumentNullException("methods");
}
this.Methods = methods;
}
public override byte[] ToBinary()
{
MemoryStream stream = new MemoryStream();
stream.WriteByte((byte) base.Ver);
stream.WriteByte((byte) this.Methods.Length);
foreach (SocksMethod method in this.Methods)
{
stream.WriteByte((byte) method);
}
return stream.ToArray();
}
public override string ToString()
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat("VER : {0}\n", base.Ver);
builder.Append("METHODS : ");
foreach (SocksMethod method in this.Methods)
{
builder.AppendFormat("{0},", method);
}
return builder.ToString().TrimEnd(new char[] { ',' });
}
public SocksMethod[] Methods
{
get
{
return this._methods;
}
set
{
this._methods = value;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -