diff --git a/scripts/menu.pl b/scripts/menu.pl index 34cd8e4..4171858 100644 --- a/scripts/menu.pl +++ b/scripts/menu.pl @@ -201,59 +201,7 @@ my %handlers = ( '10. Open Experiment In Explorer' => sub { do "$local_scripts_dir/explore.pl" }, - '11. Open Experiment in Ghidra' => sub { - - my @projects = - map { s/\.gpr//r } Util::find_files($local_ghidra_projects); - my @selected_projects = - TUI::select_from_list( "Select Project to Open in Ghidra", - 0, @projects ); - die "No project selected" unless @selected_projects; - my $project = $selected_projects[0]; - system( - join " ", - ( - "_JAVA_AWT_WM_NONREPARENTING=1", "ghidra", - "$local_ghidra_projects/$project.gpr", - ) - ); - }, - - '12. Open Experiment in Binsider' => sub { - my $selected_experiment = Util::select_experiment(0); - - system( 'binsider', - "$local_archive_dir/$selected_experiment/system.elf" ); - }, - - '13. Open Experiment in ResultBrowser' => sub { - - my @db_names = Mars::db_list(); - my @selected_dbs = - TUI::select_from_list( "Select Database for ResultBrowser", - 0, @db_names ); - die "No database selected" unless @selected_dbs; - my $selected_db = $selected_dbs[0]; - - Util::rewrite_file( $local_db_conf, "database=", - "database=$selected_db\n" ); - - system( $resultbrowser, '-c', $local_db_conf, '--host=0.0.0.0', - "--port=$resultbrowser_port" ); - }, - - '14. Open Database in LazySQL' => sub { - my $experiment = - Util::select_experiment(0) =~ s/T(\d\d)-(\d\d)-(\d\d)/T$1:$2:$3/r; - my $ssh = Mars::ssh_connect(); - my $db_password = Mars::read_db_password_file(); - - system( 'lazysql', '-read-only', -"mariadb://$db_user:$db_password\@$db_host:$db_port/${db_user}_$experiment" - ); - }, - - '15. Compare Experiment Results' => sub { + '11. Compare Experiment Results' => sub { my @selected_experiments = Util::select_experiment(1); @@ -319,6 +267,58 @@ my %handlers = ( 0, @entries ); }, + '12. Open Experiment in Ghidra' => sub { + + my @projects = + map { s/\.gpr//r } Util::find_files($local_ghidra_projects); + my @selected_projects = + TUI::select_from_list( "Select Project to Open in Ghidra", + 0, @projects ); + die "No project selected" unless @selected_projects; + my $project = $selected_projects[0]; + system( + join " ", + ( + "_JAVA_AWT_WM_NONREPARENTING=1", "ghidra", + "$local_ghidra_projects/$project.gpr", + ) + ); + }, + + '13. Open Experiment in Binsider' => sub { + my $selected_experiment = Util::select_experiment(0); + + system( 'binsider', + "$local_archive_dir/$selected_experiment/system.elf" ); + }, + + '14. Open Database in ResultBrowser (Mars)' => sub { + + my @db_names = Mars::db_list(); + my @selected_dbs = + TUI::select_from_list( "Select Database for ResultBrowser", + 0, @db_names ); + die "No database selected" unless @selected_dbs; + my $selected_db = $selected_dbs[0]; + + Util::rewrite_file( $local_db_conf, "database=", + "database=$selected_db\n" ); + + system( $resultbrowser, '-c', $local_db_conf, '--host=0.0.0.0', + "--port=$resultbrowser_port" ); + }, + + '15. Open Database in LazySQL (Mars)' => sub { + my $experiment = + Util::select_experiment(0) =~ s/T(\d\d)-(\d\d)-(\d\d)/T$1:$2:$3/r; + my $ssh = Mars::ssh_connect(); + my $db_password = Mars::read_db_password_file(); + + system( 'lazysql', '-read-only', +"mariadb://$db_user:$db_password\@$db_host:$db_port/${db_user}_$experiment" + ); + }, + '16. Plot Results' => sub { # Generate R ggplot2 charts diff --git a/scripts/runner.pl b/scripts/runner.pl index 36a166c..50dbdef 100644 --- a/scripts/runner.pl +++ b/scripts/runner.pl @@ -231,8 +231,9 @@ sub inject { "-Wf,--state-dir=$remote_builds_dir/$experiment/state", "-Wf,--trap", - # "-Wf,--catch-outerspace", - "-Wf,--catch-write-textsegment", + "-Wf,--catch-outerspace", + + # "-Wf,--catch-write-textsegment", "-Wf,--timeout=500000", "-Wf,--ok-marker=fail_marker_positive", "-Wf,--fail-marker=fail_marker_negative",