private void bSsl_Click(object sender, EventArgs e) { try { stateText = "Starting SSL..."; connect_socket(); TcpMessage m = new TcpMessage(TcpMessage.SslStart, null); TcpMessage m2 = m.SendAndReceiveReply(stream); if (m2.BodyAsText.Trim() != TcpMessage.Success) { throw new Exception(m2.BodyAsText); } //Message.Inform("Response: " + m2.BodyAsText); stateText = "Starting SSL-2..."; SslStream sstream = new SslStream(stream, false); stream = sstream; byte[] certificateBuffer = SslRoutines.GetBytesFromPEM(File.ReadAllText("server_certificate.pem"), SslRoutines.PemStringType.Certificate); X509Certificate2 certificate = new X509Certificate2(certificateBuffer); byte[] keyBuffer = SslRoutines.GetBytesFromPEM(File.ReadAllText("server_key.pem"), SslRoutines.PemStringType.PrivateKey); certificate.PrivateKey = SslRoutines.CreateRsaProviderFromPrivateKey(keyBuffer); sstream.AuthenticateAsServer(certificate); bSsl.Enabled = false; } catch (Exception ex) { Message.Error(ex); } finally { //disconnect_socket(); } }
private void stop_Click(object sender, EventArgs e) { try { stateText = "Stopping MPEG..."; connect_socket(); TcpMessage m = new TcpMessage(TcpMessage.FfmpegStop, null); TcpMessage m2 = m.SendAndReceiveReply(stream); //Message.Inform("Response: " + m2.BodyAsText); stateText = "MPEG stopped"; startEnabled = true; stopEnabled = false; } catch (Exception ex) { Message.Error(ex); } finally { //disconnect_socket(); } }