D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
lib
/
scsi
/
Filename :
inquiry
back
Copy
#!/usr/bin/wish -f # Copyright 1993 Yggdrasil Computing, Incorporated # You may copy this file according to the terms and conditions of version 2 # of the GNU General Public License as published by the Free Software # Foundation. frame .h label .h.info -bitmap info -bg pink message .h.message -width 400 -bg pink -text \ {Scsi Device Information.} pack .h.info .h.message -padx 10 -side left pack .h -pady 10 frame .buttons button .buttons.quit -text Quit \ -activeforeground white -activebackground red -command exit pack .buttons.quit -side left -padx 10 -pady 3 pack .buttons frame .space1 pack .space1 -pady 10 frame .info1 frame .manufacturer label .manufacturer.label -text "Manufacturer " text .manufacturer.text -width 16 -height 1 \ -relief sunken -borderwidth 2 pack .manufacturer.label .manufacturer.text -side left frame .model label .model.label -text "Model " text .model.text -width 16 -height 1 \ -relief sunken -borderwidth 2 pack .model.label .model.text -side left frame .revision label .revision.label -text "Firmware rev. " text .revision.text -width 16 -height 1 \ -relief sunken -borderwidth 2 pack .revision.label .revision.text -side left pack .manufacturer .model .revision -side left -in .info1 -padx 3m pack .info1 -pady 10 frame .err_buttons frame .col1 frame .col2 frame .col3 frame .col4 frame .f1 frame .f2 frame .f3 checkbutton .remove -text "Removable" checkbutton .ra -text "Relative address" checkbutton .wb32 -text "Wide-bus 32" checkbutton .wb16 -text "Wide-bus 16" checkbutton .sn -text "Sync neg." checkbutton .link -text "Linked Commands" checkbutton .tag -text "Tagged Queueing" checkbutton .sftre -text "SftRe" label .dummy -text " " pack .ra .link -in .col1 -anchor w pack .wb32 .tag -in .col2 -anchor w pack .wb16 .sftre -in .col3 -anchor w pack .sn .dummy -in .col4 -anchor w pack .col1 .col2 .col3 .col4 -in .err_buttons -side left -padx 3m pack .err_buttons frame .devicetype label .devicetype.label -text "Device Type " -width 21 -anchor w text .devicetype.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .devicetype.label .devicetype.text -side left frame .periphqual label .periphqual.label -text "Peripheral Qualifier " -width 21 -anchor w text .periphqual.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .periphqual.label .periphqual.text -side left frame .removable label .removable.label -text "Removable " -width 21 -anchor w text .removable.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .removable.label .removable.text -side left frame .devtypemod label .devtypemod.label -text "Device Type Modifier " -width 21 -anchor w text .devtypemod.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .devtypemod.label .devtypemod.text -side left frame .isovers label .isovers.label -text "ISO Version " -width 21 -anchor w text .isovers.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .isovers.label .isovers.text -side left frame .ecmaversion label .ecmaversion.label -text "ECMA Version " -width 21 -anchor w text .ecmaversion.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .ecmaversion.label .ecmaversion.text -side left frame .ansiversion label .ansiversion.label -text "ANSI Version " -width 21 -anchor w text .ansiversion.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .ansiversion.label .ansiversion.text -side left frame .aenc label .aenc.label -text "AENC " -width 21 -anchor w text .aenc.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .aenc.label .aenc.text -side left frame .trmiop label .trmiop.label -text "TrmIOP " -width 21 -anchor w text .trmiop.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .trmiop.label .trmiop.text -side left frame .response label .response.label -anchor w -text "Response Data Format " -width 21 text .response.text -width 10 -height 1 \ -relief sunken -borderwidth 2 pack .response.label .response.text -side left pack .devicetype .periphqual .removable .devtypemod .isovers -in .f1 -pady 5 -anchor w pack .ecmaversion .ansiversion .aenc .trmiop .response -in .f2 -pady 5 -anchor w pack .f1 .f2 -in .f3 -side left -padx 3m -pady 3m pack .f3 -padx 3m -pady 3m # Here we set the bits that depend upon the menu we are in set button_list { ra wb32 wb16 sn link tag sftre } set text_list {devicetype periphqual removable devtypemod isovers ecmaversion ansiversion aenc trmiop response } set switch {-i} # the rest from here on should be pretty independent. proc read_page { device option } { global button_list global text_list global switch set line {} exec /sbin/scsiinfo -X $switch $option $device > /var/run/cachepage if {[catch {set file [open /var/run/cachepage r]}] == 1} return; gets $file line set first [lindex $line 0] set second [lindex $line 1] set lineno 0 foreach x $button_list { .$x deselect if { [ string compare [lindex $line $lineno] "0" ] != 0} then { .$x select } .$x configure -state disabled -disabledforeground Black set lineno [expr $lineno+1] } foreach x $text_list { .$x.text delete 1.0 end .$x.text insert end [lindex $line $lineno] .$x.text configure -state disabled set lineno [expr $lineno+1] } gets $file line .manufacturer.text delete 1.0 end .manufacturer.text insert end [lindex $line 0] .manufacturer.text configure -state disabled gets $file line .model.text delete 1.0 end .model.text insert end $line .model.text configure -state disabled gets $file line .revision.text delete 1.0 end .revision.text insert end $line .revision.text configure -state disabled close $file exec rm /var/run/cachepage } read_page $argv "-X" set device_type {Disk Tape Unknown Unknown WORM ROM Unknown Magneto-Optical} .devicetype.text configure -state normal set r1 [.devicetype.text get 1.0 end] .devicetype.text delete 1.0 end .devicetype.text insert end [lindex $device_type $r1] .devicetype.text configure -state disabled