add submodule rdp-rs

This commit is contained in:
Jovi Hsu 2022-10-21 07:33:35 +00:00
parent ea90cf2b63
commit dcf5532938
16 changed files with 17 additions and 13 deletions

3
.gitmodules vendored
View File

@ -1,3 +1,6 @@
[submodule "axum-websockify"]
path = axum-websockify
url = https://github.com/HsuJv/axum-websockify.git
[submodule "webrdp/rdp-rs"]
path = webrdp/rdp-rs
url = git@github.com:HsuJv/rdp-rs.git

1
webrdp/rdp-rs Submodule

@ -0,0 +1 @@
Subproject commit e7a7693b46c7ba56483e464a2a2e478d08c2a9ea

View File

@ -2,7 +2,7 @@ use std::rc::Rc;
use crate::{
console_log, log,
rdp::{ImageData, ImageType, MouseEventType, Rdp},
rdp_client::{ImageData, ImageType, MouseEventType, Rdp},
};
use wasm_bindgen::prelude::*;
use wasm_bindgen::{Clamped, JsCast};

View File

@ -1,9 +1,9 @@
mod canvas;
mod rdp;
mod rdp_client;
mod utils;
use canvas::CanvasUtils;
use rdp::Rdp;
use rdp_client::Rdp;
use wasm_bindgen::prelude::*;
use wasm_bindgen::JsCast;
use web_sys::{ErrorEvent, HtmlButtonElement, MessageEvent, WebSocket};
@ -42,33 +42,33 @@ fn rdp_out_handler(ws: &WebSocket, rdp: &Rdp, canvas: &CanvasUtils) {
if let Some(out) = out {
for ref o in out {
match o {
rdp::RdpOutput::Err(err) => {
rdp_client::RdpOutput::Err(err) => {
console_log!("Err {}", err);
rdp_close_handle(rdp, canvas, err);
}
rdp::RdpOutput::WsBuf(buf) => match ws.send_with_u8_array(buf) {
rdp_client::RdpOutput::WsBuf(buf) => match ws.send_with_u8_array(buf) {
Ok(_) => {}
Err(err) => {
let err = format!("error sending message: {:?}", err);
rdp_close_handle(rdp, canvas, &err);
}
},
rdp::RdpOutput::RequireSSL => match ws.send_with_str("SSL") {
rdp_client::RdpOutput::RequireSSL => match ws.send_with_str("SSL") {
Ok(_) => {}
Err(err) => {
let err = format!("error launching ssl: {:?}", err);
rdp_close_handle(rdp, canvas, &err);
}
},
rdp::RdpOutput::RequirePassword => {
rdp_client::RdpOutput::RequirePassword => {
// let pwd = prompt("Please input the password");
// rdp.set_credential(&pwd);
// rdp_out_handler(ws, rdp, canvas);
}
rdp::RdpOutput::RenderImage(ri) => {
rdp_client::RdpOutput::RenderImage(ri) => {
canvas.draw(ri);
}
rdp::RdpOutput::SetResolution(x, y) => {
rdp_client::RdpOutput::SetResolution(x, y) => {
canvas.init(*x as u32, *y as u32);
canvas.bind(rdp);
// rdp.require_frame(0);
@ -90,7 +90,7 @@ fn rdp_out_handler(ws: &WebSocket, rdp: &Rdp, canvas: &CanvasUtils) {
// REFRESHER = Some(refersher);
// }
}
rdp::RdpOutput::SetClipboard(text) => {
rdp_client::RdpOutput::SetClipboard(text) => {
setClipBoard(text.to_owned());
// ConsoleService::log(&self.error_msg);
}

View File

@ -3,7 +3,7 @@
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
use crate::rdp::StreamWriter;
use crate::rdp_client::StreamWriter;
/* Class - bits 8 and 7 */
const BER_CLASS_UNIV: u8 = 0x00;

View File

@ -2,7 +2,7 @@
use super::ntlm::*;
use super::{super::ber::*, to_unicode};
use crate::rdp::rdp_impl::{ConnectCb, FailCb, RdpInitializer, RdpInner};
use crate::rdp_client::rdp_impl::{ConnectCb, FailCb, RdpInitializer, RdpInner};
use x509_parser::prelude::*;
enum State {

View File

@ -5,7 +5,7 @@
use super::rc4::Rc4;
use super::*;
use crate::rdp::StreamWriter;
use crate::rdp_client::StreamWriter;
use hmac::{Hmac, Mac};
#[cfg(not(test))]
use js_sys::Math::random;