Tamir.SharpSsh.jsch.Session.send_kexinit C# (CSharp) Method

send_kexinit() private method

private send_kexinit ( ) : void
return void
		private void send_kexinit()  
		{
			if(in_kex) return;
			in_kex=true;

			// byte      SSH_MSG_KEXINIT(20)
			// byte[16]  cookie (random bytes)
			// String    kex_algorithms
			// String    server_host_key_algorithms
			// String    encryption_algorithms_client_to_server
			// String    encryption_algorithms_server_to_client
			// String    mac_algorithms_client_to_server
			// String    mac_algorithms_server_to_client
			// String    compression_algorithms_client_to_server
			// String    compression_algorithms_server_to_client
			// String    languages_client_to_server
			// String    languages_server_to_client
			packet.reset();
			buf.WriteByte((byte) SSH_MSG_KEXINIT);
			lock(random)
			{
				random.fill(buf.buffer, buf.index, 16); buf.Skip(16);
			}
			buf.WriteString(getConfig("kex"));
			buf.WriteString(getConfig("server_host_key"));
			buf.WriteString(getConfig("cipher.c2s"));
			buf.WriteString(getConfig("cipher.s2c"));
			buf.WriteString(getConfig("mac.c2s"));
			buf.WriteString(getConfig("mac.s2c"));
			buf.WriteString(getConfig("compression.c2s"));
			buf.WriteString(getConfig("compression.s2c"));
			buf.WriteString(getConfig("lang.c2s"));
			buf.WriteString(getConfig("lang.s2c"));
			buf.WriteByte((byte)0);
			buf.WriteInt(0);

			buf.Offset = 5;
			I_C=new byte[buf.Length];
			buf.ReadByte(I_C);

			write(packet);
		}