New xorriso-tcltk start option --no_extract

This commit is contained in:
Thomas Schmitt 2013-01-06 10:00:46 +00:00
parent 7502ab594e
commit a033121f6f
3 changed files with 29 additions and 3 deletions

View File

@ -86,6 +86,9 @@ Options:
--silent_start --silent_start
Do not issue the start message xorriso-tcltk-version. Do not issue the start message xorriso-tcltk-version.
This works only if --silent_start is the first argument. This works only if --silent_start is the first argument.
--no_extract
Do not allow extraction of files from ISO filesystem to
hard disk. This is not revokable during the program run.
--no_bwidget --no_bwidget
Do not try to load the Tcl/Tk package BWidget which is Do not try to load the Tcl/Tk package BWidget which is
a prerequisite for the "/" file browser buttons. a prerequisite for the "/" file browser buttons.

View File

@ -49,6 +49,9 @@ proc print_usage {argv0} {
puts stderr " --silent_start" puts stderr " --silent_start"
puts stderr " Do not issue the start message xorriso-tcltk-version." puts stderr " Do not issue the start message xorriso-tcltk-version."
puts stderr " This works only if --silent_start is the first argument." puts stderr " This works only if --silent_start is the first argument."
puts stderr " --no_extract"
puts stderr " Do not allow extraction of files from ISO filesystem to"
puts stderr " hard disk. This is not revokable during the program run."
puts stderr " --no_bwidget" puts stderr " --no_bwidget"
puts stderr " Do not try to load the Tcl/Tk package BWidget which is" puts stderr " Do not try to load the Tcl/Tk package BWidget which is"
puts stderr " a prerequisite for the \"/\" file browser buttons." puts stderr " a prerequisite for the \"/\" file browser buttons."
@ -200,7 +203,7 @@ set execute_script_conn ""
# Whether extraction to disk shall be allowed in scripts # Whether extraction to disk shall be allowed in scripts
set script_with_osirrox 0 set script_with_osirrox 0
# Whether extraction to disk is currently allowed # Whether extraction to disk is allowed
set osirrox_allowed 1 set osirrox_allowed 1
@ -835,6 +838,8 @@ proc check_xorriso_version {} {
# is expected by this frontend. # is expected by this frontend.
# #
proc setup_xorriso {} { proc setup_xorriso {} {
global osirrox_allowed
set cmd "" set cmd ""
# Invalidate possible -mark 1 # Invalidate possible -mark 1
@ -859,6 +864,10 @@ proc setup_xorriso {} {
set cmd "$cmd -iso_rr_pattern off" set cmd "$cmd -iso_rr_pattern off"
set cmd "$cmd -disk_pattern off" set cmd "$cmd -disk_pattern off"
if {$osirrox_allowed == 0} {
set cmd "$cmd -osirrox banned"
}
set cmd "$cmd [xorriso_loggable_init_cmds]" set cmd "$cmd [xorriso_loggable_init_cmds]"
send_marked_cmd $cmd send_marked_cmd $cmd
@ -2431,6 +2440,10 @@ proc osirrox_banned {} {
send_loggable_cmd "-osirrox banned" send_loggable_cmd "-osirrox banned"
set osirrox_allowed 0 set osirrox_allowed 0
set m ".script_log.menu"
$m entryconfigure "Allow extract to disk" -state "disabled"
$m entryconfigure "Permanently ban extraction" -state "disabled"
} }
@ -3536,10 +3549,13 @@ proc init_gui {} {
# #
proc init_input {} { proc init_input {} {
global borderwidth busy_text_exists xorriso_version debug_logging global borderwidth busy_text_exists xorriso_version debug_logging
global cmd_logging_mode cmd_log_target global cmd_logging_mode cmd_log_target osirrox_allowed
global .input .input_line1 .xorriso_version .busy .busy_text global .input .input_line1 .xorriso_version .busy .busy_text
global .refresh_state .end_button .cmdline .log_pipes_switch global .refresh_state .end_button .cmdline .log_pipes_switch
set extract_state "normal"
if {$osirrox_allowed == 0} {set extract_state "disabled"}
frame .input -borderwidth $borderwidth frame .input -borderwidth $borderwidth
frame .input_line1 -borderwidth 0 frame .input_line1 -borderwidth 0
pack .input_line1 -in .input \ pack .input_line1 -in .input \
@ -3588,11 +3604,13 @@ proc init_input {} {
$m add command -label "Execute command script" \ $m add command -label "Execute command script" \
-command "start_script_execution" -command "start_script_execution"
$m add checkbutton -label "Allow extract to disk" \ $m add checkbutton -label "Allow extract to disk" \
-state $extract_state \
-indicatoron 1 -selectcolor "" \ -indicatoron 1 -selectcolor "" \
-variable script_with_osirrox \ -variable script_with_osirrox \
-onvalue 1 -offvalue 0 -onvalue 1 -offvalue 0
$m add separator $m add separator
$m add command -label "Permanently ban extraction" \ $m add command -label "Permanently ban extraction" \
-state $extract_state \
-command "osirrox_banned" -command "osirrox_banned"
button .help -text "Help" -command {window_help "Help" "grey"} \ button .help -text "Help" -command {window_help "Help" "grey"} \
@ -5802,6 +5820,7 @@ proc unescape_string {text} {
proc setup_by_args {argv0 argv} { proc setup_by_args {argv0 argv} {
global cmd_pipe_adr reply_pipe_adr main_window_geometry click_to_focus global cmd_pipe_adr reply_pipe_adr main_window_geometry click_to_focus
global have_bwidget cmd_conn reply_conn geometry stdout stdin global have_bwidget cmd_conn reply_conn geometry stdout stdin
global osirrox_allowed
# wish normally eats the -geometry option and puts the result into $geometry # wish normally eats the -geometry option and puts the result into $geometry
catch {set main_window_geometry $geometry} catch {set main_window_geometry $geometry}
@ -5867,6 +5886,10 @@ proc setup_by_args {argv0 argv} {
# postpone actual log start until start_xorriso has been passed # postpone actual log start until start_xorriso has been passed
set script_logging 1 set script_logging 1
} }
if {$opt == "--no_extract"} {
set ok "1"
set osirrox_allowed 0
}
if {$opt == "--no_bwidget"} { if {$opt == "--no_bwidget"} {
set ok "1" set ok "1"
set have_bwidget "-1" set have_bwidget "-1"

View File

@ -1 +1 @@
#define Xorriso_timestamP "2013.01.06.093550" #define Xorriso_timestamP "2013.01.06.095957"