diff --git a/src/main.rs b/src/main.rs index 0e54e2a..ef0b282 100644 --- a/src/main.rs +++ b/src/main.rs @@ -17,6 +17,7 @@ use tracing::{error, info}; use crate::config::Config; use crate::database::{Database, country_tracking}; +use crate::scanning::discovery::DiscoveryScanner; use crate::scanning::rescanner::Rescanner; #[derive(Parser, Debug)] @@ -126,7 +127,13 @@ async fn main() { } match arguments.mode { - Mode::Scanning => todo!(), + Mode::Scanning => { + let scanner = DiscoveryScanner { + database: Database { connection: pool }, + }; + + scanner.scan().await; + } Mode::Rescanner => { let rescanner = Rescanner { is_active: true, diff --git a/src/scanning/discovery.rs b/src/scanning/discovery.rs index dd3a17d..78ae087 100644 --- a/src/scanning/discovery.rs +++ b/src/scanning/discovery.rs @@ -10,11 +10,11 @@ use crate::database::ServerUpdateOperation; use crate::database::Database; pub struct DiscoveryScanner { - database: Database, + pub database: Database, } impl DiscoveryScanner { - async fn scan(&self) { + pub async fn scan(&self) { // Spawn masscan let mut command = Command::new("sudo") .args(["masscan", "-c", &CONFIG.masscan.config_file])