public static void SendHandshake(IO.Stream stream, ByteField20 infoDigest) { stream.WriteByte((byte)protocolString.Length); stream.Write(System.Text.ASCIIEncoding.ASCII.GetBytes(protocolString), 0, protocolString.Length); // 8 zeros stream.Write(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0 }, 0, 8); // SHA digest stream.Write(infoDigest.Data, 0, infoDigest.Data.Length); }
internal override void Write(IO.Stream ostream) { ostream.WriteByte((int)'d'); foreach (BEncode.String key in this.map.Keys) { key.Write(ostream); ((BEncode.Element)this.map[key]).Write(ostream); } ostream.WriteByte((int)'e'); }
private static void SendMessageHeader(IO.Stream stream, PeerMessage type, int length) { // Config.LogDebugMessage("Message sent: " + type.ToString()); WriteInt(stream, length+1); stream.WriteByte((byte)type); }
internal override void Write(IO.Stream ostream) { ostream.WriteByte((int)'l'); foreach (BEncode.Element element in this.list) { element.Write(ostream); } ostream.WriteByte((int)'e'); }