fixed a bug where switching projects wouldn't

switch projects.
This commit is contained in:
pyro57000
2025-04-30 09:59:50 -05:00
parent 0cbe33357a
commit f99e395241
3 changed files with 55 additions and 2 deletions

View File

@@ -135,7 +135,7 @@ pub fn run_command(cmd: String,
} }
match cmd.as_str(){ match cmd.as_str(){
"list projects" | "lp" | "listp" | "list p" => {project_controls::list_projects(&projects); return None}, "list projects" | "lp" | "listp" | "list p" => {project_controls::list_projects(&projects); return None},
"switch project" | "swp" | "switch p" | "switchp" => {project_controls::switch_project(&mut projects.clone()); return None}, "switch project" | "swp" | "switch p" | "switchp" => {project_controls::switch_project(&mut projects); return None},
"show active project" | "show active" | "sa" | "show a" => {println!("\nclient: {}\n\nproject: {}\n\nbox: {}\n\nproject files: {}\n\nproject notes: {}\n", active_project.customer ,active_project.project_name, active_project.boxname, active_project.files_folder.display(), active_project.notes_folder.display()); return None}, "show active project" | "show active" | "sa" | "show a" => {println!("\nclient: {}\n\nproject: {}\n\nbox: {}\n\nproject files: {}\n\nproject notes: {}\n", active_project.customer ,active_project.project_name, active_project.boxname, active_project.files_folder.display(), active_project.notes_folder.display()); return None},
"create new project" | "cnp" | "new project" | "np" => {new_id = new_id + 1; start_pentest::start_pentest(&config_path, &mut projects, new_id, upcoming_files, upcoming_notes, &boxtemplate, password_spray_file); return None}, "create new project" | "cnp" | "new project" | "np" => {new_id = new_id + 1; start_pentest::start_pentest(&config_path, &mut projects, new_id, upcoming_files, upcoming_notes, &boxtemplate, password_spray_file); return None},
"save projects" | "sp" | "save" | "s" => {project_controls::save_projects(&projects, &config_path); return None}, "save projects" | "sp" | "save" | "s" => {project_controls::save_projects(&projects, &config_path); return None},

View File

@@ -1164,4 +1164,57 @@ pub fn parse_csportscan(project: &Project){
} }
println!("DONE all files saved to {}", outfile.display()); println!("DONE all files saved to {}", outfile.display());
println!("note if no hosts were found for a protocol their files will be empty."); println!("note if no hosts were found for a protocol their files will be empty.");
}
/*fn get_scope(general: &PathBuf){
println!("opening general notes...");
let mut working = general.clone();
working.push("general.md");
let working_read = fs::read_to_string(working);
if working_read.is_err(){
let error = working_read.err().unwrap();
println!("error reading general notes file!");
println!("{}", error);
return
}
let general_string = working_read.unwrap();
println!("reading scop from general notes...");
let mut scope_ranges = Vec::new();
let general_lines: Vec<&str> = general_string.split("\n").collect();
for line in general_lines{
if line.contains("|"){
if !line.contains("range"){
if !line.contains("--"){
let items: Vec<&str> = line.split("|").collect();
let scop_item = items[1].trim();
println!("{} LOADED!!", scop_item);
scope_ranges.push(scop_item);
}
}
}
}
println!("scope loaded, parsing ip ranges...");
let mut ips = Vec::new();
for item in scope_ranges{
if item.contains("/"){
let network_split: Vec<&str> = item.split("/").collect();
let network_part = network_split[0];
let cidr = network_split[1];
let network_octets: Vec<&str> = network_part.split(".").collect();
let mut ip = String::new();
match cidr{
"24" => {let partial_ip = format!("{}.{}.{}.N", network_octets[0], network_octets[1], network_octets[2]);
ip.push_str(partial_ip);
},
"16" => {let partial_ip = format!("{}.{}.N.N", network_octets[0], network_octets[1]);
ip.push_str(partial_ip);},
"8" => {let partial_ip = format!("{}.N.N.N", network_octets[0]); ip.push_str(partial_ip)}
}
}
}
}
*/
pub fn get_all_host_addresses(project: &Project){
println!("to do");
} }

View File

@@ -33,7 +33,7 @@ pub fn switch_project(projects: &mut Vec<Project>){
project.active = false; project.active = false;
} }
else{ else{
println!("error unknown project id") println!("error unknown project id");
} }
} }
} }