2 Commits
Author SHA1 Message Date
mysticmomba eb1d0ba0fd Updated README 2026-09-23 10:23:27 -04:00
mysticmomba 293c3b137d Fixed popup window 2026-09-23 10:22:06 -04:00
6 changed files with 44 additions and 14 deletions
+3
View File
@@ -0,0 +1,3 @@
[target.x86_64-pc-windows-gnu]
linker = "x86_64-w64-mingw32-gcc"
rustflags = ["-C", "link-arg=-fuse-ld=lld"]
+3
View File
@@ -61,6 +61,9 @@ cargo tauri dev
# Production build
cargo tauri build
# Cross Compiling Windows on Linux
cargo tauri build --runner cargo-xwin --target x86_64-pc-windows-msvc
```
## Privileges
+6 -1
View File
@@ -48,7 +48,12 @@ pub async fn run_nmap(app: AppHandle, config: NmapConfig) -> Result<(), String>
}
cmd.stdout(Stdio::piped());
cmd.stderr(Stdio::piped());
#[cfg(target_os = "windows")]
{
use std::os::windows::process::CommandExt;
const CREATE_NO_WINDOW: u32 = 0x08000000;
cmd.creation_flags(CREATE_NO_WINDOW);
}
let mut child = cmd
.spawn()
.map_err(|e| format!("Failed to start nmap: {}", e))?;
+24 -10
View File
@@ -15,18 +15,30 @@ pub async fn run_traceroute(app: AppHandle, ip: String) -> Result<(), String> {
.stdout(Stdio::piped())
.stderr(Stdio::piped())
.spawn()
.map_err(|e| format!("Failed to start tracepath: {}. Is iputils-tracepath installed?", e))?;
.map_err(|e| {
format!(
"Failed to start tracepath: {}. Is iputils-tracepath installed?",
e
)
})?;
#[cfg(target_os = "windows")]
let mut child = Command::new("tracert")
.arg("-d")
.arg(&ip)
.stdout(Stdio::piped())
.stderr(Stdio::piped())
.spawn()
.map_err(|e| format!("Failed to start tracert: {}", e))?;
let mut child = {
use std::os::windows::process::CommandExt;
const CREATE_NO_WINDOW: u32 = 0x08000000;
Command::new("tracert")
.arg("-d")
.arg(&ip)
.stdout(Stdio::piped())
.stderr(Stdio::piped())
.creation_flags(CREATE_NO_WINDOW)
.spawn()
.map_err(|e| format!("Failed to start tracert: {}", e))?
};
let stdout = child.stdout.take()
let stdout = child
.stdout
.take()
.ok_or_else(|| "Failed to capture stdout".to_string())?;
let mut reader = BufReader::new(stdout).lines();
@@ -35,7 +47,9 @@ pub async fn run_traceroute(app: AppHandle, ip: String) -> Result<(), String> {
let _ = app.emit("traceroute:hop", &line);
}
let status = child.wait().await
let status = child
.wait()
.await
.map_err(|e| format!("tracepath failed: {}", e))?;
if status.success() {
+1 -1
View File
@@ -76,7 +76,7 @@ pub async fn ping_sweep(
while let Some(result) = join_set.join_next().await {
done += 1;
match result {
Ok(mut host_result) => {
Ok(host_result) => {
// Emit immediately so the host shows up in the table
let _ = app.emit("scan:host-found", &host_result);
+5
View File
@@ -22,6 +22,11 @@
"bundle": {
"active": true,
"targets": "all",
"windows": {
"webviewInstallMode": {
"type": "embedBootstrapper"
}
},
"icon": [
"icons/32x32.png",
"icons/128x128.png",