about summary refs log tree commit diff
path: root/skim-cli
diff options
context:
space:
mode:
Diffstat (limited to 'skim-cli')
-rw-r--r--skim-cli/Cargo.toml8
-rw-r--r--skim-cli/src/main.rs22
2 files changed, 30 insertions, 0 deletions
diff --git a/skim-cli/Cargo.toml b/skim-cli/Cargo.toml
new file mode 100644
index 0000000..df13b36
--- /dev/null
+++ b/skim-cli/Cargo.toml
@@ -0,0 +1,8 @@
+[package]
+name = "skim-cli"
+version = "0.1.0"
+edition = "2024"
+
+[dependencies]
+facet = "0.27.1"
+facet-json = { version = "0.24.2" }
diff --git a/skim-cli/src/main.rs b/skim-cli/src/main.rs
new file mode 100644
index 0000000..880b99f
--- /dev/null
+++ b/skim-cli/src/main.rs
@@ -0,0 +1,22 @@
+use std::{
+	io::{Read, Write},
+	net::TcpStream,
+};
+
+fn main() {
+	let mut tcp = TcpStream::connect("127.0.0.1:6666").unwrap();
+
+	let query = r#"{"tcp": [80, 443], "udp":[443]}"#;
+	let len = query.len() as u32;
+
+	tcp.write_all(&len.to_be_bytes()).unwrap();
+	tcp.write_all(query.as_bytes()).unwrap();
+
+	let mut size_bytes = [0u8; 4];
+	tcp.read_exact(&mut size_bytes).unwrap();
+	let size = u32::from_be_bytes(size_bytes);
+	let mut response = vec![0; size as usize];
+	tcp.read_exact(&mut response).unwrap();
+
+	println!("{}", unsafe { String::from_utf8_unchecked(response) });
+}