hardsploit_gui 2.3 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +22 -22
  3. data/Rakefile +1 -1
  4. data/bin/hardsploit_gui +3 -3
  5. data/lib/Firmwares/FPGA/I2C/I2C_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_I2C_INTERACT.rpd +0 -0
  6. data/lib/Firmwares/FPGA/PARALLEL/NO_MUX_PARALLEL_MEMORY/HARDSPLOIT_FIRMWARE_FPGA_NO_MUX_PARALLEL_MEMORY.rpd +0 -0
  7. data/lib/Firmwares/FPGA/SPI/SPI_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_SPI_INTERACT.rpd +0 -0
  8. data/lib/Firmwares/FPGA/SPI/SPI_SNIFFER/HARDSPLOIT_FIRMWARE_FPGA_SPI_SNIFFER.rpd +0 -0
  9. data/lib/Firmwares/FPGA/SWD/SWD_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_SWD_INTERACT.rpd +0 -0
  10. data/lib/Firmwares/FPGA/UART/UART_INTERACT/HARDSPLOIT_FIRMWARE_FPGA_UART_INTERACT.rpd +0 -0
  11. data/lib/Firmwares/FPGA/VersionFPGA.rb +5 -5
  12. data/lib/Firmwares/UC/VersionUC.rb +12 -12
  13. data/lib/HardsploitAPI/Core/HardsploitAPI.rb +210 -210
  14. data/lib/HardsploitAPI/Core/HardsploitAPI_CONSTANT.rb +150 -150
  15. data/lib/HardsploitAPI/Core/HardsploitAPI_ERROR.rb +109 -109
  16. data/lib/HardsploitAPI/Core/HardsploitAPI_FIRMWARE.rb +305 -305
  17. data/lib/HardsploitAPI/Core/HardsploitAPI_PROGRESS.rb +28 -28
  18. data/lib/HardsploitAPI/Core/HardsploitAPI_USB_COMMUNICATION.rb +166 -166
  19. data/lib/HardsploitAPI/Modules/I2C/HardsploitAPI_I2C.rb +356 -356
  20. data/lib/HardsploitAPI/Modules/NO_MUX_PARALLEL_MEMORY/HardsploitAPI_NO_MUX_PARALLEL_MEMORY.rb +206 -206
  21. data/lib/HardsploitAPI/Modules/NRF24L01/HardsploitAPI_NRF24L01.rb +306 -306
  22. data/lib/HardsploitAPI/Modules/SPI/HardsploitAPI_SPI.rb +340 -340
  23. data/lib/HardsploitAPI/Modules/SPI_SNIFFER/HardsploitAPI_SPI_SNIFFER.rb +83 -83
  24. data/lib/HardsploitAPI/Modules/SWD/HardsploitAPI_SWD.rb +367 -367
  25. data/lib/HardsploitAPI/Modules/SWD/HardsploitAPI_SWD_DEBUG.rb +89 -89
  26. data/lib/HardsploitAPI/Modules/SWD/HardsploitAPI_SWD_MEM_AP.rb +61 -61
  27. data/lib/HardsploitAPI/Modules/SWD/HardsploitAPI_SWD_STM32.rb +121 -121
  28. data/lib/HardsploitAPI/Modules/TEST/HardsploitAPI_TEST_INTERACT.rb +98 -98
  29. data/lib/HardsploitAPI/Modules/UART/HardsploitAPI_UART.rb +196 -196
  30. data/lib/Hardsploit_gui.rb +96 -96
  31. data/lib/LICENSE.txt +674 -674
  32. data/lib/README.md +22 -22
  33. data/lib/TRADEMARK +2 -2
  34. data/lib/class/Chip_editor.rb +304 -304
  35. data/lib/class/Chip_management.rb +496 -496
  36. data/lib/class/Command_editor.rb +216 -216
  37. data/lib/class/Command_table.rb +233 -233
  38. data/lib/class/Console.rb +26 -26
  39. data/lib/class/ErrorMsg.rb +312 -312
  40. data/lib/class/Export.rb +140 -140
  41. data/lib/class/Export_manager.rb +124 -124
  42. data/lib/class/Firmware.rb +70 -70
  43. data/lib/class/Generic_commands.rb +260 -260
  44. data/lib/class/{i2c → I2C}/I2c_command.rb +51 -51
  45. data/lib/class/{i2c → I2C}/I2c_export.rb +95 -95
  46. data/lib/class/{i2c → I2C}/I2c_import.rb +117 -117
  47. data/lib/class/{i2c → I2C}/I2c_scanner.rb +114 -114
  48. data/lib/class/{i2c → I2C}/I2c_settings.rb +148 -148
  49. data/lib/class/Import.rb +193 -193
  50. data/lib/class/{parallel → PARALLEL}/Parallel_export.rb +118 -118
  51. data/lib/class/{parallel → PARALLEL}/Parallel_import.rb +113 -113
  52. data/lib/class/{parallel → PARALLEL}/Parallel_settings.rb +81 -81
  53. data/lib/class/Progress_bar.rb +32 -32
  54. data/lib/class/{spi → SPI}/Spi_export.rb +108 -108
  55. data/lib/class/{spi → SPI}/Spi_import.rb +159 -159
  56. data/lib/class/{spi → SPI}/Spi_settings.rb +108 -108
  57. data/lib/class/{spi → SPI}/Spi_sniffer.rb +101 -101
  58. data/lib/class/Signal_mapper.rb +120 -120
  59. data/lib/class/Wire_helper.rb +230 -230
  60. data/lib/class/swd/Swd.rb +125 -125
  61. data/lib/class/swd/Swd_scanner.rb +121 -121
  62. data/lib/class/swd/Swd_settings.rb +76 -76
  63. data/lib/class/uart/Uart_baudrate.rb +62 -62
  64. data/lib/class/uart/Uart_console.rb +115 -115
  65. data/lib/class/uart/Uart_settings.rb +102 -102
  66. data/lib/db/associations.rb +138 -138
  67. data/lib/db/database.rb +4 -4
  68. data/lib/db/development.sqlite3 +0 -0
  69. data/lib/db/migrate/004_create_manufacturers.rb +13 -13
  70. data/lib/db/migrate/005_create_packages.rb +13 -13
  71. data/lib/db/migrate/006_create_chip_types.rb +11 -11
  72. data/lib/db/migrate/007_create_buses.rb +11 -11
  73. data/lib/db/migrate/008_create_signals.rb +14 -14
  74. data/lib/db/migrate/009_create_chips.rb +25 -25
  75. data/lib/db/migrate/010_create_commands.rb +21 -21
  76. data/lib/db/migrate/011_create_bytes.rb +19 -19
  77. data/lib/db/migrate/012_create_i2c_settings.rb +21 -21
  78. data/lib/db/migrate/013_create_spi_settings.rb +26 -26
  79. data/lib/db/migrate/014_create_parallel_settings.rb +21 -21
  80. data/lib/db/migrate/015_create_pins.rb +19 -19
  81. data/lib/db/migrate/016_create_uses.rb +17 -17
  82. data/lib/db/migrate/017_create_swd_settings.rb +19 -19
  83. data/lib/db/migrate/018_create_uart_settings.rb +22 -22
  84. data/lib/db/schema.rb +157 -157
  85. data/lib/db/seeds.rb +161 -161
  86. data/lib/gui/gui_chip_editor.rb +349 -349
  87. data/lib/gui/gui_chip_management.rb +377 -377
  88. data/lib/gui/gui_command_editor.rb +219 -219
  89. data/lib/gui/gui_export.rb +132 -132
  90. data/lib/gui/gui_export_manager.rb +93 -93
  91. data/lib/gui/gui_generic_commands.rb +202 -202
  92. data/lib/gui/gui_generic_export.rb +164 -164
  93. data/lib/gui/gui_generic_import.rb +142 -142
  94. data/lib/gui/gui_i2c_command.rb +116 -116
  95. data/lib/gui/gui_i2c_settings.rb +230 -230
  96. data/lib/gui/gui_import.rb +131 -131
  97. data/lib/gui/gui_parallel_settings.rb +195 -195
  98. data/lib/gui/gui_progress_bar.rb +85 -85
  99. data/lib/gui/gui_signal_mapper.rb +121 -121
  100. data/lib/gui/gui_signal_scanner.rb +146 -146
  101. data/lib/gui/gui_spi_import.rb +126 -126
  102. data/lib/gui/gui_spi_settings.rb +313 -313
  103. data/lib/gui/gui_spi_sniffer.rb +112 -112
  104. data/lib/gui/gui_swd_settings.rb +166 -166
  105. data/lib/gui/gui_uart_baudrate.rb +114 -114
  106. data/lib/gui/gui_uart_console.rb +164 -164
  107. data/lib/gui/gui_uart_settings.rb +243 -243
  108. data/lib/gui/gui_wire_helper.rb +99 -99
  109. data/lib/gui_designer/gui_chip_editor.ui +549 -549
  110. data/lib/gui_designer/gui_chip_management.ui +886 -886
  111. data/lib/gui_designer/gui_command_editor.ui +350 -350
  112. data/lib/gui_designer/gui_export.ui +171 -171
  113. data/lib/gui_designer/gui_export_manager.ui +115 -115
  114. data/lib/gui_designer/gui_generic_commands.ui +342 -342
  115. data/lib/gui_designer/gui_generic_export.ui +202 -202
  116. data/lib/gui_designer/gui_generic_import.ui +165 -165
  117. data/lib/gui_designer/gui_i2c_command.ui +148 -148
  118. data/lib/gui_designer/gui_i2c_settings.ui +292 -292
  119. data/lib/gui_designer/gui_import.ui +168 -168
  120. data/lib/gui_designer/gui_parallel_settings.ui +247 -247
  121. data/lib/gui_designer/gui_progress_bar.ui +86 -86
  122. data/lib/gui_designer/gui_signal_mapper.ui +179 -179
  123. data/lib/gui_designer/gui_signal_scanner.ui +261 -261
  124. data/lib/gui_designer/gui_spi_settings.ui +446 -446
  125. data/lib/gui_designer/gui_spi_sniffer.ui +156 -156
  126. data/lib/gui_designer/gui_swd_settings.ui +189 -189
  127. data/lib/gui_designer/gui_uart_baudrate.ui +161 -161
  128. data/lib/gui_designer/gui_uart_console.ui +284 -284
  129. data/lib/gui_designer/gui_uart_settings.ui +280 -280
  130. data/lib/gui_designer/gui_wire_helper.ui +117 -117
  131. data/lib/images/search.png +0 -0
  132. data/lib/logs/error.log +0 -63
  133. data/lib/models/bus.rb +19 -19
  134. data/lib/models/byte.rb +29 -29
  135. data/lib/models/chip.rb +41 -41
  136. data/lib/models/chip_type.rb +14 -14
  137. data/lib/models/command.rb +20 -20
  138. data/lib/models/i2c_setting.rb +41 -41
  139. data/lib/models/manufacturer.rb +14 -14
  140. data/lib/models/package.rb +26 -26
  141. data/lib/models/parallel_setting.rb +37 -37
  142. data/lib/models/pin.rb +14 -14
  143. data/lib/models/signall.rb +20 -20
  144. data/lib/models/spi_setting.rb +67 -67
  145. data/lib/models/swd_setting.rb +25 -25
  146. data/lib/models/uart_setting.rb +52 -52
  147. data/lib/models/use.rb +6 -6
  148. data/lib/startHardsploit.rb +10 -10
  149. metadata +14 -14
@@ -1,113 +1,113 @@
1
- #===================================================
2
- # Hardsploit GUI - By Opale Security
3
- # www.opale-security.com || www.hardsploit.io
4
- # License: GNU General Public License v3
5
- # License URI: http://www.gnu.org/licenses/gpl.txt
6
- #===================================================
7
-
8
- require_relative '../../gui/gui_generic_import'
9
-
10
- class Parallel_import < Qt::Widget
11
- slots 'import()'
12
- slots 'select_import_file()'
13
-
14
- def initialize(chip)
15
- super()
16
- @view = Ui_Generic_import.new
17
- centerWindow(self)
18
- @view.setupUi(self)
19
- @view.lbl_chip.setText(chip.reference)
20
- inputRestrict(@view.lie_start, 0)
21
- end
22
-
23
- def select_import_file
24
- @filepath = Qt::FileDialog.getOpenFileName(self, tr('Select a file'), '/', tr('Bin file (*.bin)'))
25
- unless @filepath.nil?
26
- $file = File.open("#{@filepath}", 'w')
27
- @view.btn_import.setEnabled(true)
28
- end
29
- rescue Exception => msg
30
- ErrorMsg.new.unknow(msg)
31
- end
32
-
33
- def close_file
34
- unless $file.nil?
35
- $file.close
36
- end
37
- rescue Exception => msg
38
- ErrorMsg.new.unknow(msg)
39
- end
40
-
41
- def import
42
- return 0 if control_import_settings.zero?
43
- start = @view.lie_start.text.to_i
44
- Firmware.new('PARALLEL')
45
- time = Time.new
46
- # API COMMAND GOES HERE
47
- rescue HardsploitAPI::ERROR::HARDSPLOIT_NOT_FOUND
48
- ErrorMsg.new.hardsploit_not_found
49
- return false
50
- rescue HardsploitAPI::ERROR::USB_ERROR
51
- ErrorMsg.new.usb_error
52
- return false
53
- rescue HardsploitAPI::ERROR::PARALLEL_ERROR
54
- ErrorMsg.new.swd_error
55
- return false
56
- rescue Exception => msg
57
- ErrorMsg.new.unknown(msg)
58
- return false
59
- end
60
-
61
- def control_import_settings
62
- file_size = File.size("#{@filepath}")
63
- if @chip.parallel_setting.nil?
64
- Qt::MessageBox.new(
65
- Qt::MessageBox::Warning,
66
- 'Missing parallel settings',
67
- 'No settings saved for this chip'
68
- ).exec
69
- return 0
70
- end
71
- if @chip.parallel_setting.total_size.nil? || @chip.parallel_setting.word_size.nil?
72
- Qt::MessageBox.new(
73
- Qt::MessageBox::Warning,
74
- 'Missing parallel settings',
75
- 'Total size or word size settings missing'
76
- ).exec
77
- return 0
78
- end
79
- if @chip.parallel_setting.page_size.nil? || @chip.parallel_setting.write_latency.nil?
80
- Qt::MessageBox.new(
81
- Qt::MessageBox::Warning,
82
- 'Missing parallel settings',
83
- 'Page size or write latency settings missing'
84
- ).exec
85
- return 0
86
- end
87
- if @view.lie_start.text.empty?
88
- Qt::MessageBox.new(
89
- Qt::MessageBox::Warning,
90
- 'Missing start address',
91
- 'Please fill the start address field'
92
- ).exec
93
- return 0
94
- end
95
- if file_size > @chip.parallel_setting.total_size
96
- Qt::MessageBox.new(
97
- Qt::MessageBox::Warning,
98
- 'Incorrect file size',
99
- 'The file size is superior to the chip capacity'
100
- ).exec
101
- return 0
102
- end
103
- if file_size > (@chip.parallel_setting.total_size - @view.lie_start)
104
- Qt::MessageBox.new(
105
- Qt::MessageBox::Warning,
106
- 'Incorrect file size',
107
- 'Starting at this address, the file size is superior to the chip capacity'
108
- ).exec
109
- return 0
110
- end
111
- return 1
112
- end
113
- end
1
+ #===================================================
2
+ # Hardsploit GUI - By Opale Security
3
+ # www.opale-security.com || www.hardsploit.io
4
+ # License: GNU General Public License v3
5
+ # License URI: http://www.gnu.org/licenses/gpl.txt
6
+ #===================================================
7
+
8
+ require_relative '../../gui/gui_generic_import'
9
+
10
+ class Parallel_import < Qt::Widget
11
+ slots 'import()'
12
+ slots 'select_import_file()'
13
+
14
+ def initialize(chip)
15
+ super()
16
+ @view = Ui_Generic_import.new
17
+ centerWindow(self)
18
+ @view.setupUi(self)
19
+ @view.lbl_chip.setText(chip.reference)
20
+ inputRestrict(@view.lie_start, 0)
21
+ end
22
+
23
+ def select_import_file
24
+ @filepath = Qt::FileDialog.getOpenFileName(self, tr('Select a file'), '/', tr('Bin file (*.bin)'))
25
+ unless @filepath.nil?
26
+ $file = File.open("#{@filepath}", 'w')
27
+ @view.btn_import.setEnabled(true)
28
+ end
29
+ rescue Exception => msg
30
+ ErrorMsg.new.unknow(msg)
31
+ end
32
+
33
+ def close_file
34
+ unless $file.nil?
35
+ $file.close
36
+ end
37
+ rescue Exception => msg
38
+ ErrorMsg.new.unknow(msg)
39
+ end
40
+
41
+ def import
42
+ return 0 if control_import_settings.zero?
43
+ start = @view.lie_start.text.to_i
44
+ Firmware.new('PARALLEL')
45
+ time = Time.new
46
+ # API COMMAND GOES HERE
47
+ rescue HardsploitAPI::ERROR::HARDSPLOIT_NOT_FOUND
48
+ ErrorMsg.new.hardsploit_not_found
49
+ return false
50
+ rescue HardsploitAPI::ERROR::USB_ERROR
51
+ ErrorMsg.new.usb_error
52
+ return false
53
+ rescue HardsploitAPI::ERROR::PARALLEL_ERROR
54
+ ErrorMsg.new.swd_error
55
+ return false
56
+ rescue Exception => msg
57
+ ErrorMsg.new.unknown(msg)
58
+ return false
59
+ end
60
+
61
+ def control_import_settings
62
+ file_size = File.size("#{@filepath}")
63
+ if @chip.parallel_setting.nil?
64
+ Qt::MessageBox.new(
65
+ Qt::MessageBox::Warning,
66
+ 'Missing parallel settings',
67
+ 'No settings saved for this chip'
68
+ ).exec
69
+ return 0
70
+ end
71
+ if @chip.parallel_setting.total_size.nil? || @chip.parallel_setting.word_size.nil?
72
+ Qt::MessageBox.new(
73
+ Qt::MessageBox::Warning,
74
+ 'Missing parallel settings',
75
+ 'Total size or word size settings missing'
76
+ ).exec
77
+ return 0
78
+ end
79
+ if @chip.parallel_setting.page_size.nil? || @chip.parallel_setting.write_latency.nil?
80
+ Qt::MessageBox.new(
81
+ Qt::MessageBox::Warning,
82
+ 'Missing parallel settings',
83
+ 'Page size or write latency settings missing'
84
+ ).exec
85
+ return 0
86
+ end
87
+ if @view.lie_start.text.empty?
88
+ Qt::MessageBox.new(
89
+ Qt::MessageBox::Warning,
90
+ 'Missing start address',
91
+ 'Please fill the start address field'
92
+ ).exec
93
+ return 0
94
+ end
95
+ if file_size > @chip.parallel_setting.total_size
96
+ Qt::MessageBox.new(
97
+ Qt::MessageBox::Warning,
98
+ 'Incorrect file size',
99
+ 'The file size is superior to the chip capacity'
100
+ ).exec
101
+ return 0
102
+ end
103
+ if file_size > (@chip.parallel_setting.total_size - @view.lie_start)
104
+ Qt::MessageBox.new(
105
+ Qt::MessageBox::Warning,
106
+ 'Incorrect file size',
107
+ 'Starting at this address, the file size is superior to the chip capacity'
108
+ ).exec
109
+ return 0
110
+ end
111
+ return 1
112
+ end
113
+ end
@@ -1,81 +1,81 @@
1
- #===================================================
2
- # Hardsploit GUI - By Opale Security
3
- # www.opale-security.com || www.hardsploit.io
4
- # License: GNU General Public License v3
5
- # License URI: http://www.gnu.org/licenses/gpl.txt
6
- #===================================================
7
-
8
- require_relative '../../gui/gui_parallel_settings'
9
- class Parallel_settings < Qt::Widget
10
- slots 'save_settings()'
11
-
12
- def initialize(chip)
13
- super()
14
- @view = Ui_Parallel_settings.new
15
- centerWindow(self)
16
- @view.setupUi(self)
17
- @view.lbl_chip.setText(chip.reference)
18
- inputRestrict(@view.lie_total_size, 0)
19
- inputRestrict(@view.lie_write_latency, 0)
20
- inputRestrict(@view.lie_read_latency, 0)
21
- inputRestrict(@view.lie_page_size, 0)
22
- @chip = chip
23
- feed_settings_form unless @chip.parallel_setting.nil?
24
- end
25
-
26
- def save_settings
27
- @chip.parallel_setting.nil? ? create : update
28
- @chip.reload
29
- end
30
-
31
- def feed_settings_form
32
- @view.lie_read_latency.setText(@chip.parallel_setting.read_latency.to_s)
33
- @view.lie_write_latency.setText(@chip.parallel_setting.write_latency.to_s)
34
- @view.lie_page_size.setText(@chip.parallel_setting.page_size.to_s)
35
- @view.lie_total_size.setText(@chip.parallel_setting.total_size.to_s)
36
- @view.rbn_16b.setChecked(true) unless @chip.parallel_setting.word_size.zero?
37
- end
38
-
39
- def create
40
- @view.rbn_8b.isChecked ? word_size = 0 : word_size = 1
41
- chip_setting = ParallelSetting.create(
42
- total_size: @view.lie_total_size.text,
43
- page_size: @view.lie_page_size.text,
44
- word_size: word_size,
45
- read_latency: @view.lie_read_latency.text,
46
- write_latency: @view.lie_write_latency.text,
47
- chip_id: @chip.id
48
- )
49
- unless check_for_errors(chip_setting)
50
- Qt::MessageBox.new(
51
- Qt::MessageBox::Information,
52
- 'Succes',
53
- 'Parallel settings saved'
54
- ).exec
55
- close
56
- end
57
- rescue Exception => msg
58
- ErrorMsg.new.unknown(msg)
59
- end
60
-
61
- def update
62
- @view.rbn_8b.isChecked ? word_size = 0 : word_size = 1
63
- @chip.parallel_setting.update(
64
- total_size: @view.lie_total_size.text,
65
- page_size: @view.lie_page_size.text,
66
- word_size: word_size,
67
- read_latency: @view.lie_read_latency.text,
68
- write_latency: @view.lie_write_latency.text
69
- )
70
- unless check_for_errors(@chip.parallel_setting)
71
- Qt::MessageBox.new(
72
- Qt::MessageBox::Information,
73
- 'Succes',
74
- 'Parallel settings updated'
75
- ).exec
76
- close
77
- end
78
- rescue Exception => msg
79
- ErrorMsg.new.unknown(msg)
80
- end
81
- end
1
+ #===================================================
2
+ # Hardsploit GUI - By Opale Security
3
+ # www.opale-security.com || www.hardsploit.io
4
+ # License: GNU General Public License v3
5
+ # License URI: http://www.gnu.org/licenses/gpl.txt
6
+ #===================================================
7
+
8
+ require_relative '../../gui/gui_parallel_settings'
9
+ class Parallel_settings < Qt::Widget
10
+ slots 'save_settings()'
11
+
12
+ def initialize(chip)
13
+ super()
14
+ @view = Ui_Parallel_settings.new
15
+ centerWindow(self)
16
+ @view.setupUi(self)
17
+ @view.lbl_chip.setText(chip.reference)
18
+ inputRestrict(@view.lie_total_size, 0)
19
+ inputRestrict(@view.lie_write_latency, 0)
20
+ inputRestrict(@view.lie_read_latency, 0)
21
+ inputRestrict(@view.lie_page_size, 0)
22
+ @chip = chip
23
+ feed_settings_form unless @chip.parallel_setting.nil?
24
+ end
25
+
26
+ def save_settings
27
+ @chip.parallel_setting.nil? ? create : update
28
+ @chip.reload
29
+ end
30
+
31
+ def feed_settings_form
32
+ @view.lie_read_latency.setText(@chip.parallel_setting.read_latency.to_s)
33
+ @view.lie_write_latency.setText(@chip.parallel_setting.write_latency.to_s)
34
+ @view.lie_page_size.setText(@chip.parallel_setting.page_size.to_s)
35
+ @view.lie_total_size.setText(@chip.parallel_setting.total_size.to_s)
36
+ @view.rbn_16b.setChecked(true) unless @chip.parallel_setting.word_size.zero?
37
+ end
38
+
39
+ def create
40
+ @view.rbn_8b.isChecked ? word_size = 0 : word_size = 1
41
+ chip_setting = ParallelSetting.create(
42
+ total_size: @view.lie_total_size.text,
43
+ page_size: @view.lie_page_size.text,
44
+ word_size: word_size,
45
+ read_latency: @view.lie_read_latency.text,
46
+ write_latency: @view.lie_write_latency.text,
47
+ chip_id: @chip.id
48
+ )
49
+ unless check_for_errors(chip_setting)
50
+ Qt::MessageBox.new(
51
+ Qt::MessageBox::Information,
52
+ 'Succes',
53
+ 'Parallel settings saved'
54
+ ).exec
55
+ close
56
+ end
57
+ rescue Exception => msg
58
+ ErrorMsg.new.unknown(msg)
59
+ end
60
+
61
+ def update
62
+ @view.rbn_8b.isChecked ? word_size = 0 : word_size = 1
63
+ @chip.parallel_setting.update(
64
+ total_size: @view.lie_total_size.text,
65
+ page_size: @view.lie_page_size.text,
66
+ word_size: word_size,
67
+ read_latency: @view.lie_read_latency.text,
68
+ write_latency: @view.lie_write_latency.text
69
+ )
70
+ unless check_for_errors(@chip.parallel_setting)
71
+ Qt::MessageBox.new(
72
+ Qt::MessageBox::Information,
73
+ 'Succes',
74
+ 'Parallel settings updated'
75
+ ).exec
76
+ close
77
+ end
78
+ rescue Exception => msg
79
+ ErrorMsg.new.unknown(msg)
80
+ end
81
+ end
@@ -1,32 +1,32 @@
1
- #===================================================
2
- # Hardsploit GUI - By Opale Security
3
- # www.opale-security.com || www.hardsploit.io
4
- # License: GNU General Public License v3
5
- # License URI: http://www.gnu.org/licenses/gpl.txt
6
- #===================================================
7
-
8
- require_relative '../gui/gui_progress_bar'
9
- class Progress_bar < Qt::Widget
10
-
11
- def initialize(status)
12
- super()
13
- @pgb_ui = Ui_Progress_bar.new
14
- centerWindow(self)
15
- @pgb_ui.setupUi(self)
16
- self.update_status(status)
17
- @pgb_ui.lbl_close.setEnabled(false)
18
- self.display_time("Total duration:")
19
- end
20
-
21
- def update_status(status)
22
- @pgb_ui.lbl_status.setText(status)
23
- end
24
-
25
- def update_value(value)
26
- @pgb_ui.pgb.setValue(value) if value <= 100 && value >= 0
27
- end
28
-
29
- def display_time(time)
30
- @pgb_ui.lbl_time.setText(time)
31
- end
32
- end
1
+ #===================================================
2
+ # Hardsploit GUI - By Opale Security
3
+ # www.opale-security.com || www.hardsploit.io
4
+ # License: GNU General Public License v3
5
+ # License URI: http://www.gnu.org/licenses/gpl.txt
6
+ #===================================================
7
+
8
+ require_relative '../gui/gui_progress_bar'
9
+ class Progress_bar < Qt::Widget
10
+
11
+ def initialize(status)
12
+ super()
13
+ @pgb_ui = Ui_Progress_bar.new
14
+ centerWindow(self)
15
+ @pgb_ui.setupUi(self)
16
+ self.update_status(status)
17
+ @pgb_ui.lbl_close.setEnabled(false)
18
+ self.display_time("Total duration:")
19
+ end
20
+
21
+ def update_status(status)
22
+ @pgb_ui.lbl_status.setText(status)
23
+ end
24
+
25
+ def update_value(value)
26
+ @pgb_ui.pgb.setValue(value) if value <= 100 && value >= 0
27
+ end
28
+
29
+ def display_time(time)
30
+ @pgb_ui.lbl_time.setText(time)
31
+ end
32
+ end