smcutil 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.idea/.rakeTasks +7 -0
- data/.idea/smcutil.iml +7 -0
- data/.idea/workspace.xml +336 -83
- data/README.md +22 -18
- data/exe/smcutil +2 -2
- data/lib/smcutil/file_extractor.rb +25 -0
- data/lib/smcutil/file_reader.rb +60 -0
- data/lib/smcutil/file_validator.rb +1 -1
- data/lib/smcutil/version.rb +1 -1
- data/lib/smcutil.rb +3 -1
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c4bb933bb6f5f67cd3df1439465c31ea4e2bc98
|
4
|
+
data.tar.gz: 9e473e109138ab90e03d6aec19267ef494a15bb9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f6ee078e9cd3e827bae43c9a69ba6fec82c7cb73b9e4a24aa565eb38f4747de909e1958fbfc3cde64a70f180bff6402195829692a5a9a355f0f310c347d51d56
|
7
|
+
data.tar.gz: 8644ee2a9b45a9aed11e5d551399626d4f19f3c6f15f289c127ff41224bd1e3553aef19dc2f489c60fa6384865045ac08ff529cfadb552f20fd1541843cebfb8
|
data/.idea/.rakeTasks
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<Settings><!--This file was automatically generated by Ruby plugin.
|
3
|
+
You are allowed to:
|
4
|
+
1. Remove rake task
|
5
|
+
2. Add existing rake tasks
|
6
|
+
To add existing rake tasks automatically delete this file and reload the project.
|
7
|
+
--><RakeGroup description="" fullCmd="" taksId="rake"><RakeTask description="Build smcutil-0.1.0.gem into the pkg directory" fullCmd="build" taksId="build" /><RakeTask description="Remove any temporary products" fullCmd="clean" taksId="clean" /><RakeTask description="Remove any generated files" fullCmd="clobber" taksId="clobber" /><RakeTask description="Build and install smcutil-0.1.0.gem into system gems" fullCmd="install" taksId="install" /><RakeGroup description="" fullCmd="" taksId="install"><RakeTask description="Build and install smcutil-0.1.0.gem into system gems without network access" fullCmd="install:local" taksId="local" /></RakeGroup><RakeTask description="Create tag v0.1.0 and build and push smcutil-0.1.0.gem to Rubygems" fullCmd="release[remote]" taksId="release[remote]" /><RakeTask description="Run RSpec code examples" fullCmd="spec" taksId="spec" /><RakeTask description="" fullCmd="default" taksId="default" /><RakeTask description="" fullCmd="release" taksId="release" /><RakeGroup description="" fullCmd="" taksId="release"><RakeTask description="" fullCmd="release:guard_clean" taksId="guard_clean" /><RakeTask description="" fullCmd="release:rubygem_push" taksId="rubygem_push" /><RakeTask description="" fullCmd="release:source_control_push" taksId="source_control_push" /></RakeGroup></RakeGroup></Settings>
|
data/.idea/smcutil.iml
CHANGED
@@ -8,5 +8,12 @@
|
|
8
8
|
<orderEntry type="inheritedJdk" />
|
9
9
|
<orderEntry type="sourceFolder" forTests="false" />
|
10
10
|
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.15.4, rbenv: 2.4.2) [gem]" level="application" />
|
11
|
+
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.3, rbenv: 2.4.2) [gem]" level="application" />
|
12
|
+
<orderEntry type="library" scope="PROVIDED" name="rake (v10.5.0, rbenv: 2.4.2) [gem]" level="application" />
|
13
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec (v3.6.0, rbenv: 2.4.2) [gem]" level="application" />
|
14
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.6.0, rbenv: 2.4.2) [gem]" level="application" />
|
15
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v3.6.0, rbenv: 2.4.2) [gem]" level="application" />
|
16
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.6.0, rbenv: 2.4.2) [gem]" level="application" />
|
17
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.6.0, rbenv: 2.4.2) [gem]" level="application" />
|
11
18
|
</component>
|
12
19
|
</module>
|
data/.idea/workspace.xml
CHANGED
@@ -1,31 +1,17 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<project version="4">
|
3
|
+
<component name="AutoTestManager">
|
4
|
+
<enabled-run-configurations>
|
5
|
+
<run-configuration type="RakeRunConfigurationType" name="Rake: spec" />
|
6
|
+
</enabled-run-configurations>
|
7
|
+
</component>
|
3
8
|
<component name="ChangeListManager">
|
4
9
|
<list default="true" id="79f8e064-6b6b-45b7-a43f-11c6b4aaa82e" name="Default" comment="">
|
5
|
-
<change type="
|
6
|
-
<change type="
|
7
|
-
<change type="
|
8
|
-
<change type="
|
9
|
-
<change type="
|
10
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
11
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.rspec" />
|
12
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/.travis.yml" />
|
13
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/CODE_OF_CONDUCT.md" />
|
14
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Gemfile" />
|
15
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/LICENSE.txt" />
|
16
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/README.md" />
|
17
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/Rakefile" />
|
18
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/bin/console" />
|
19
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/bin/setup" />
|
20
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/exe/smcutil" />
|
21
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/smcutil.rb" />
|
22
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/smcutil/file_validator.rb" />
|
23
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/lib/smcutil/version.rb" />
|
24
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/smcutil.gemspec" />
|
25
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/fixtures/flasher_base.smc" />
|
26
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb" />
|
27
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/smcutil_spec.rb" />
|
28
|
-
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/spec/spec_helper.rb" />
|
10
|
+
<change type="DELETED" beforePath="$PROJECT_DIR$/smcutil-0.1.0.gem" afterPath="" />
|
11
|
+
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
|
12
|
+
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/README.md" afterPath="$PROJECT_DIR$/README.md" />
|
13
|
+
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/exe/smcutil" afterPath="$PROJECT_DIR$/exe/smcutil" />
|
14
|
+
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/lib/smcutil/version.rb" afterPath="$PROJECT_DIR$/lib/smcutil/version.rb" />
|
29
15
|
</list>
|
30
16
|
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
31
17
|
<option name="TRACKING_ENABLED" value="true" />
|
@@ -34,53 +20,56 @@
|
|
34
20
|
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
35
21
|
<option name="LAST_RESOLUTION" value="IGNORE" />
|
36
22
|
</component>
|
23
|
+
<component name="CoverageDataManager">
|
24
|
+
<SUITE FILE_PATH="coverage/smcutil@Rake__spec.coverage" NAME="Rake: spec Coverage Results" MODIFIED="1507714768825" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="rcov" COVERAGE_BY_TEST_ENABLED="true" COVERAGE_TRACING_ENABLED="false" WORKING_DIRECTORY="$PROJECT_DIR$" MODULE_NAME="smcutil" />
|
25
|
+
</component>
|
37
26
|
<component name="FileEditorManager">
|
38
|
-
<leaf>
|
39
|
-
<file leaf-file-name="
|
40
|
-
<entry file="file://$PROJECT_DIR$/lib/smcutil.rb">
|
27
|
+
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
28
|
+
<file leaf-file-name="file_extractor.rb" pinned="false" current-in-tab="false">
|
29
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_extractor.rb">
|
41
30
|
<provider selected="true" editor-type-id="text-editor">
|
42
|
-
<state relative-caret-position="
|
43
|
-
<caret line="
|
31
|
+
<state relative-caret-position="0">
|
32
|
+
<caret line="24" column="3" lean-forward="false" selection-start-line="24" selection-start-column="3" selection-end-line="24" selection-end-column="3" />
|
44
33
|
<folding />
|
45
34
|
</state>
|
46
35
|
</provider>
|
47
36
|
</entry>
|
48
37
|
</file>
|
49
|
-
<file leaf-file-name="smcutil
|
50
|
-
<entry file="file://$PROJECT_DIR$/smcutil
|
38
|
+
<file leaf-file-name="smcutil" pinned="false" current-in-tab="false">
|
39
|
+
<entry file="file://$PROJECT_DIR$/exe/smcutil">
|
51
40
|
<provider selected="true" editor-type-id="text-editor">
|
52
|
-
<state relative-caret-position="
|
53
|
-
<caret line="
|
41
|
+
<state relative-caret-position="105">
|
42
|
+
<caret line="7" column="12" lean-forward="false" selection-start-line="7" selection-start-column="12" selection-end-line="7" selection-end-column="12" />
|
54
43
|
<folding />
|
55
44
|
</state>
|
56
45
|
</provider>
|
57
46
|
</entry>
|
58
47
|
</file>
|
59
|
-
<file leaf-file-name="
|
60
|
-
<entry file="file://$PROJECT_DIR$/
|
48
|
+
<file leaf-file-name="smcutil.gemspec" pinned="false" current-in-tab="false">
|
49
|
+
<entry file="file://$PROJECT_DIR$/smcutil.gemspec">
|
61
50
|
<provider selected="true" editor-type-id="text-editor">
|
62
|
-
<state relative-caret-position="
|
63
|
-
<caret line="
|
51
|
+
<state relative-caret-position="283">
|
52
|
+
<caret line="19" column="62" lean-forward="false" selection-start-line="19" selection-start-column="62" selection-end-line="19" selection-end-column="62" />
|
64
53
|
<folding />
|
65
54
|
</state>
|
66
55
|
</provider>
|
67
56
|
</entry>
|
68
57
|
</file>
|
69
|
-
<file leaf-file-name="version.rb" pinned="false" current-in-tab="
|
58
|
+
<file leaf-file-name="version.rb" pinned="false" current-in-tab="true">
|
70
59
|
<entry file="file://$PROJECT_DIR$/lib/smcutil/version.rb">
|
71
60
|
<provider selected="true" editor-type-id="text-editor">
|
72
|
-
<state relative-caret-position="
|
73
|
-
<caret line="
|
61
|
+
<state relative-caret-position="15">
|
62
|
+
<caret line="1" column="18" lean-forward="false" selection-start-line="1" selection-start-column="18" selection-end-line="1" selection-end-column="18" />
|
74
63
|
<folding />
|
75
64
|
</state>
|
76
65
|
</provider>
|
77
66
|
</entry>
|
78
67
|
</file>
|
79
|
-
<file leaf-file-name="
|
80
|
-
<entry file="file://$PROJECT_DIR$/
|
68
|
+
<file leaf-file-name="file_reader_spec.rb" pinned="false" current-in-tab="false">
|
69
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_reader_spec.rb">
|
81
70
|
<provider selected="true" editor-type-id="text-editor">
|
82
|
-
<state relative-caret-position="
|
83
|
-
<caret line="
|
71
|
+
<state relative-caret-position="75">
|
72
|
+
<caret line="5" column="0" lean-forward="false" selection-start-line="4" selection-start-column="0" selection-end-line="5" selection-end-column="0" />
|
84
73
|
<folding />
|
85
74
|
</state>
|
86
75
|
</provider>
|
@@ -88,19 +77,29 @@
|
|
88
77
|
</file>
|
89
78
|
<file leaf-file-name="file_validator_spec.rb" pinned="false" current-in-tab="false">
|
90
79
|
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb">
|
80
|
+
<provider selected="true" editor-type-id="text-editor">
|
81
|
+
<state relative-caret-position="240">
|
82
|
+
<caret line="16" column="0" lean-forward="false" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
|
83
|
+
<folding />
|
84
|
+
</state>
|
85
|
+
</provider>
|
86
|
+
</entry>
|
87
|
+
</file>
|
88
|
+
<file leaf-file-name="file_extractor_spec.rb" pinned="false" current-in-tab="false">
|
89
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_extractor_spec.rb">
|
91
90
|
<provider selected="true" editor-type-id="text-editor">
|
92
91
|
<state relative-caret-position="135">
|
93
|
-
<caret line="9" column="
|
92
|
+
<caret line="9" column="42" lean-forward="false" selection-start-line="9" selection-start-column="42" selection-end-line="9" selection-end-column="42" />
|
94
93
|
<folding />
|
95
94
|
</state>
|
96
95
|
</provider>
|
97
96
|
</entry>
|
98
97
|
</file>
|
99
|
-
<file leaf-file-name="
|
100
|
-
<entry file="file://$PROJECT_DIR$/
|
98
|
+
<file leaf-file-name="file_validator.rb" pinned="false" current-in-tab="false">
|
99
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_validator.rb">
|
101
100
|
<provider selected="true" editor-type-id="text-editor">
|
102
|
-
<state relative-caret-position="
|
103
|
-
<caret line="
|
101
|
+
<state relative-caret-position="45">
|
102
|
+
<caret line="3" column="21" lean-forward="false" selection-start-line="3" selection-start-column="21" selection-end-line="3" selection-end-column="21" />
|
104
103
|
<folding />
|
105
104
|
</state>
|
106
105
|
</provider>
|
@@ -114,12 +113,24 @@
|
|
114
113
|
<component name="IdeDocumentHistory">
|
115
114
|
<option name="CHANGED_PATHS">
|
116
115
|
<list>
|
117
|
-
<option value="$PROJECT_DIR$/
|
118
|
-
<option value="$PROJECT_DIR$/lib/smcutil/
|
119
|
-
<option value="$PROJECT_DIR$/spec/
|
116
|
+
<option value="$PROJECT_DIR$/smcutil.gemspec" />
|
117
|
+
<option value="$PROJECT_DIR$/lib/smcutil/file_parser.rb" />
|
118
|
+
<option value="$PROJECT_DIR$/spec/smcutil_spec.rb" />
|
120
119
|
<option value="$PROJECT_DIR$/lib/smcutil/file_validator.rb" />
|
120
|
+
<option value="$PROJECT_DIR$/spec/smcutil/file_spec.rb" />
|
121
|
+
<option value="$PROJECT_DIR$/lib/smcutil/file.rb" />
|
122
|
+
<option value="$PROJECT_DIR$/spec/smcutil/file_reader_spec.rb" />
|
123
|
+
<option value="$PROJECT_DIR$/spec/fixtures/flasher_base_unknown_command.smc" />
|
124
|
+
<option value="$PROJECT_DIR$/spec/fixtures/flasher_base_lenth.smc" />
|
125
|
+
<option value="$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb" />
|
126
|
+
<option value="$PROJECT_DIR$/spec/fixtures/flasher_base_checksum.smc" />
|
127
|
+
<option value="$PROJECT_DIR$/lib/smcutil.rb" />
|
128
|
+
<option value="$PROJECT_DIR$/spec/smcutil/file_extractor_spec.rb" />
|
129
|
+
<option value="$PROJECT_DIR$/lib/smcutil/file_reader.rb" />
|
130
|
+
<option value="$PROJECT_DIR$/lib/smcutil/file_extractor.rb" />
|
121
131
|
<option value="$PROJECT_DIR$/exe/smcutil" />
|
122
|
-
<option value="$PROJECT_DIR$/
|
132
|
+
<option value="$PROJECT_DIR$/README.md" />
|
133
|
+
<option value="$PROJECT_DIR$/lib/smcutil/version.rb" />
|
123
134
|
</list>
|
124
135
|
</option>
|
125
136
|
</component>
|
@@ -129,10 +140,10 @@
|
|
129
140
|
<detection-done>true</detection-done>
|
130
141
|
<sorting>DEFINITION_ORDER</sorting>
|
131
142
|
</component>
|
132
|
-
<component name="ProjectFrameBounds">
|
143
|
+
<component name="ProjectFrameBounds" extendedState="6">
|
133
144
|
<option name="y" value="23" />
|
134
145
|
<option name="width" value="1680" />
|
135
|
-
<option name="height" value="
|
146
|
+
<option name="height" value="983" />
|
136
147
|
</component>
|
137
148
|
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
138
149
|
<component name="ProjectView">
|
@@ -151,6 +162,7 @@
|
|
151
162
|
</navigator>
|
152
163
|
<panes>
|
153
164
|
<pane id="Scope" />
|
165
|
+
<pane id="Scratches" />
|
154
166
|
<pane id="ProjectPane">
|
155
167
|
<subPane>
|
156
168
|
<expand>
|
@@ -190,15 +202,21 @@
|
|
190
202
|
<item name="spec" type="462c0819:PsiDirectoryNode" />
|
191
203
|
<item name="fixtures" type="462c0819:PsiDirectoryNode" />
|
192
204
|
</path>
|
205
|
+
<path>
|
206
|
+
<item name="smcutil" type="b2602c69:ProjectViewProjectNode" />
|
207
|
+
<item name="smcutil" type="462c0819:PsiDirectoryNode" />
|
208
|
+
<item name="spec" type="462c0819:PsiDirectoryNode" />
|
209
|
+
<item name="smcutil" type="462c0819:PsiDirectoryNode" />
|
210
|
+
</path>
|
193
211
|
</expand>
|
194
212
|
<select />
|
195
213
|
</subPane>
|
196
214
|
</pane>
|
197
|
-
<pane id="Scratches" />
|
198
215
|
</panes>
|
199
216
|
</component>
|
200
217
|
<component name="PropertiesComponent">
|
201
218
|
<property name="WebServerToolWindowFactoryState" value="false" />
|
219
|
+
<property name="settings.editor.selected.configurable" value="preferences.lookFeel" />
|
202
220
|
</component>
|
203
221
|
<component name="RecentsManager">
|
204
222
|
<key name="CopyFile.RECENT_KEYS">
|
@@ -217,10 +235,37 @@
|
|
217
235
|
</list>
|
218
236
|
</option>
|
219
237
|
</component>
|
238
|
+
<component name="RunManager" selected="Rake.Rake: spec">
|
239
|
+
<configuration name="Rake: spec" type="RakeRunConfigurationType" factoryName="Rake">
|
240
|
+
<module name="smcutil" />
|
241
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
|
242
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="$MODULE_DIR$" />
|
243
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
|
244
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
|
245
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
|
246
|
+
<envs />
|
247
|
+
<EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
|
248
|
+
<EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
|
249
|
+
<EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
|
250
|
+
<COVERAGE_PATTERN ENABLED="true">
|
251
|
+
<PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
|
252
|
+
</COVERAGE_PATTERN>
|
253
|
+
</EXTENSION>
|
254
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_NAME" VALUE="spec" />
|
255
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ARGS" VALUE="" />
|
256
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_ATTACHED_TEST_FRAMEWORKS" VALUE=":rspec " />
|
257
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_TRACE" VALUE="false" />
|
258
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_DRYRUN" VALUE="false" />
|
259
|
+
<RAKE_RUN_CONFIG_SETTINGS_ID NAME="RAKE_TASK_OPTION_PREREQS" VALUE="false" />
|
260
|
+
</configuration>
|
261
|
+
</component>
|
220
262
|
<component name="ShelveChangesManager" show_recycled="false">
|
221
263
|
<option name="remove_strategy" value="false" />
|
222
264
|
</component>
|
223
265
|
<component name="SpringUtil" SPRING_PRE_LOADER_OPTION="true" />
|
266
|
+
<component name="SvnConfiguration">
|
267
|
+
<configuration />
|
268
|
+
</component>
|
224
269
|
<component name="TaskManager">
|
225
270
|
<task active="true" id="Default" summary="Default task">
|
226
271
|
<changelist id="79f8e064-6b6b-45b7-a43f-11c6b4aaa82e" name="Default" comment="" />
|
@@ -228,33 +273,67 @@
|
|
228
273
|
<option name="number" value="Default" />
|
229
274
|
<option name="presentableId" value="Default" />
|
230
275
|
<updated>1507637323942</updated>
|
231
|
-
<workItem from="1507637325399" duration="
|
276
|
+
<workItem from="1507637325399" duration="2380000" />
|
277
|
+
<workItem from="1507706458195" duration="11326000" />
|
278
|
+
<workItem from="1507771477082" duration="56000" />
|
232
279
|
</task>
|
233
280
|
<servers />
|
234
281
|
</component>
|
282
|
+
<component name="TestHistory">
|
283
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 32m 45s.xml">
|
284
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
285
|
+
</history-entry>
|
286
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 32m 58s.xml">
|
287
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
288
|
+
</history-entry>
|
289
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 35m 01s.xml">
|
290
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
291
|
+
</history-entry>
|
292
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 35m 22s.xml">
|
293
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
294
|
+
</history-entry>
|
295
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 35m 36s.xml">
|
296
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
297
|
+
</history-entry>
|
298
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 36m 23s.xml">
|
299
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
300
|
+
</history-entry>
|
301
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 37m 07s.xml">
|
302
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
303
|
+
</history-entry>
|
304
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 37m 18s.xml">
|
305
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
306
|
+
</history-entry>
|
307
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 39m 08s.xml">
|
308
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
309
|
+
</history-entry>
|
310
|
+
<history-entry file="Rake__spec - 2017.10.11 at 02h 39m 29s.xml">
|
311
|
+
<configuration name="Rake: spec" configurationId="RakeRunConfigurationType" />
|
312
|
+
</history-entry>
|
313
|
+
</component>
|
235
314
|
<component name="TimeTrackingManager">
|
236
|
-
<option name="totallyTimeSpent" value="
|
315
|
+
<option name="totallyTimeSpent" value="13762000" />
|
237
316
|
</component>
|
238
317
|
<component name="ToolWindowManager">
|
239
|
-
<frame x="0" y="23" width="1680" height="
|
318
|
+
<frame x="0" y="23" width="1680" height="983" extended-state="6" />
|
240
319
|
<editor active="true" />
|
241
320
|
<layout>
|
242
|
-
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.
|
321
|
+
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.1990232" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
243
322
|
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
244
|
-
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="
|
245
|
-
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="
|
246
|
-
<window_info id="
|
247
|
-
<window_info id="
|
323
|
+
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
|
324
|
+
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
325
|
+
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
326
|
+
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.33151582" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
248
327
|
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
249
|
-
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="
|
328
|
+
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
329
|
+
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
250
330
|
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
251
|
-
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="-1" side_tool="true" content_ui="tabs" />
|
252
331
|
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
253
|
-
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
254
332
|
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
255
333
|
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
256
|
-
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
257
334
|
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
335
|
+
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
336
|
+
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32934782" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
258
337
|
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
259
338
|
</layout>
|
260
339
|
</component>
|
@@ -269,11 +348,84 @@
|
|
269
348
|
<watches-manager />
|
270
349
|
</component>
|
271
350
|
<component name="editorHistoryManager">
|
351
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_extractor.rb">
|
352
|
+
<provider selected="true" editor-type-id="text-editor">
|
353
|
+
<state relative-caret-position="360">
|
354
|
+
<caret line="24" column="3" lean-forward="false" selection-start-line="24" selection-start-column="3" selection-end-line="24" selection-end-column="3" />
|
355
|
+
<folding />
|
356
|
+
</state>
|
357
|
+
</provider>
|
358
|
+
</entry>
|
359
|
+
<entry file="file://$PROJECT_DIR$/exe/smcutil">
|
360
|
+
<provider selected="true" editor-type-id="text-editor">
|
361
|
+
<state relative-caret-position="105">
|
362
|
+
<caret line="7" column="12" lean-forward="false" selection-start-line="7" selection-start-column="12" selection-end-line="7" selection-end-column="12" />
|
363
|
+
<folding />
|
364
|
+
</state>
|
365
|
+
</provider>
|
366
|
+
</entry>
|
367
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_reader_spec.rb">
|
368
|
+
<provider selected="true" editor-type-id="text-editor">
|
369
|
+
<state relative-caret-position="75">
|
370
|
+
<caret line="5" column="0" lean-forward="false" selection-start-line="4" selection-start-column="0" selection-end-line="5" selection-end-column="0" />
|
371
|
+
<folding />
|
372
|
+
</state>
|
373
|
+
</provider>
|
374
|
+
</entry>
|
375
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb">
|
376
|
+
<provider selected="true" editor-type-id="text-editor">
|
377
|
+
<state relative-caret-position="240">
|
378
|
+
<caret line="16" column="0" lean-forward="false" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
|
379
|
+
<folding />
|
380
|
+
</state>
|
381
|
+
</provider>
|
382
|
+
</entry>
|
383
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_extractor_spec.rb">
|
384
|
+
<provider selected="true" editor-type-id="text-editor">
|
385
|
+
<state relative-caret-position="135">
|
386
|
+
<caret line="9" column="42" lean-forward="false" selection-start-line="9" selection-start-column="42" selection-end-line="9" selection-end-column="42" />
|
387
|
+
<folding />
|
388
|
+
</state>
|
389
|
+
</provider>
|
390
|
+
</entry>
|
391
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_validator.rb">
|
392
|
+
<provider selected="true" editor-type-id="text-editor">
|
393
|
+
<state relative-caret-position="45">
|
394
|
+
<caret line="3" column="21" lean-forward="false" selection-start-line="3" selection-start-column="21" selection-end-line="3" selection-end-column="21" />
|
395
|
+
<folding />
|
396
|
+
</state>
|
397
|
+
</provider>
|
398
|
+
</entry>
|
399
|
+
<entry file="file://$PROJECT_DIR$/README.md">
|
400
|
+
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
401
|
+
<state split_layout="SPLIT">
|
402
|
+
<first_editor relative-caret-position="210">
|
403
|
+
<caret line="14" column="37" lean-forward="true" selection-start-line="14" selection-start-column="37" selection-end-line="14" selection-end-column="37" />
|
404
|
+
<folding />
|
405
|
+
</first_editor>
|
406
|
+
<second_editor />
|
407
|
+
</state>
|
408
|
+
</provider>
|
409
|
+
</entry>
|
410
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil.rb">
|
411
|
+
<provider selected="true" editor-type-id="text-editor">
|
412
|
+
<state relative-caret-position="45">
|
413
|
+
<caret line="3" column="32" lean-forward="false" selection-start-line="3" selection-start-column="32" selection-end-line="3" selection-end-column="32" />
|
414
|
+
</state>
|
415
|
+
</provider>
|
416
|
+
</entry>
|
417
|
+
<entry file="file://$PROJECT_DIR$/smcutil.gemspec">
|
418
|
+
<provider selected="true" editor-type-id="text-editor">
|
419
|
+
<state relative-caret-position="285">
|
420
|
+
<caret line="19" column="62" lean-forward="false" selection-start-line="19" selection-start-column="62" selection-end-line="19" selection-end-column="62" />
|
421
|
+
<folding />
|
422
|
+
</state>
|
423
|
+
</provider>
|
424
|
+
</entry>
|
272
425
|
<entry file="file://$PROJECT_DIR$/spec/spec_helper.rb">
|
273
426
|
<provider selected="true" editor-type-id="text-editor">
|
274
427
|
<state relative-caret-position="0">
|
275
428
|
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
276
|
-
<folding />
|
277
429
|
</state>
|
278
430
|
</provider>
|
279
431
|
</entry>
|
@@ -285,50 +437,143 @@
|
|
285
437
|
</state>
|
286
438
|
</provider>
|
287
439
|
</entry>
|
288
|
-
<entry file="file://$PROJECT_DIR$/
|
440
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_validator.rb">
|
441
|
+
<provider selected="true" editor-type-id="text-editor">
|
442
|
+
<state relative-caret-position="45">
|
443
|
+
<caret line="3" column="18" lean-forward="false" selection-start-line="3" selection-start-column="18" selection-end-line="3" selection-end-column="18" />
|
444
|
+
<folding />
|
445
|
+
</state>
|
446
|
+
</provider>
|
447
|
+
</entry>
|
448
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb">
|
449
|
+
<provider selected="true" editor-type-id="text-editor">
|
450
|
+
<state relative-caret-position="135">
|
451
|
+
<caret line="9" column="3" lean-forward="false" selection-start-line="9" selection-start-column="3" selection-end-line="9" selection-end-column="3" />
|
452
|
+
<folding />
|
453
|
+
</state>
|
454
|
+
</provider>
|
455
|
+
</entry>
|
456
|
+
<entry file="file://$PROJECT_DIR$/spec/fixtures/flasher_base.smc" />
|
457
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_reader.rb">
|
458
|
+
<provider selected="true" editor-type-id="text-editor">
|
459
|
+
<state relative-caret-position="210">
|
460
|
+
<caret line="14" column="3" lean-forward="true" selection-start-line="14" selection-start-column="3" selection-end-line="14" selection-end-column="3" />
|
461
|
+
</state>
|
462
|
+
</provider>
|
463
|
+
</entry>
|
464
|
+
<entry file="file://$PROJECT_DIR$/Gemfile">
|
465
|
+
<provider selected="true" editor-type-id="text-editor">
|
466
|
+
<state relative-caret-position="90">
|
467
|
+
<caret line="6" column="0" lean-forward="false" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
|
468
|
+
<folding />
|
469
|
+
</state>
|
470
|
+
</provider>
|
471
|
+
</entry>
|
472
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil_spec.rb">
|
473
|
+
<provider selected="true" editor-type-id="text-editor">
|
474
|
+
<state relative-caret-position="105">
|
475
|
+
<caret line="7" column="0" lean-forward="true" selection-start-line="7" selection-start-column="0" selection-end-line="7" selection-end-column="0" />
|
476
|
+
</state>
|
477
|
+
</provider>
|
478
|
+
</entry>
|
479
|
+
<entry file="file://$PROJECT_DIR$/spec/fixtures/flasher_base_unknown_command.smc">
|
480
|
+
<provider selected="true" editor-type-id="text-editor">
|
481
|
+
<state relative-caret-position="285">
|
482
|
+
<caret line="19" column="1" lean-forward="false" selection-start-line="19" selection-start-column="1" selection-end-line="19" selection-end-column="1" />
|
483
|
+
</state>
|
484
|
+
</provider>
|
485
|
+
</entry>
|
486
|
+
<entry file="file://$PROJECT_DIR$/spec/fixtures/flasher_base_lenth.smc">
|
487
|
+
<provider selected="true" editor-type-id="text-editor">
|
488
|
+
<state relative-caret-position="59">
|
489
|
+
<caret line="7" column="4" lean-forward="false" selection-start-line="7" selection-start-column="4" selection-end-line="7" selection-end-column="4" />
|
490
|
+
</state>
|
491
|
+
</provider>
|
492
|
+
</entry>
|
493
|
+
<entry file="file://$PROJECT_DIR$/spec/fixtures/flasher_base_checksum.smc">
|
494
|
+
<provider selected="true" editor-type-id="text-editor">
|
495
|
+
<state relative-caret-position="195">
|
496
|
+
<caret line="13" column="72" lean-forward="false" selection-start-line="13" selection-start-column="72" selection-end-line="13" selection-end-column="72" />
|
497
|
+
</state>
|
498
|
+
</provider>
|
499
|
+
</entry>
|
500
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil.rb">
|
501
|
+
<provider selected="true" editor-type-id="text-editor">
|
502
|
+
<state relative-caret-position="75">
|
503
|
+
<caret line="5" column="51" lean-forward="false" selection-start-line="5" selection-start-column="51" selection-end-line="5" selection-end-column="51" />
|
504
|
+
</state>
|
505
|
+
</provider>
|
506
|
+
</entry>
|
507
|
+
<entry file="file://$PROJECT_DIR$/spec/spec_helper.rb">
|
289
508
|
<provider selected="true" editor-type-id="text-editor">
|
290
509
|
<state relative-caret-position="0">
|
291
510
|
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
511
|
+
</state>
|
512
|
+
</provider>
|
513
|
+
</entry>
|
514
|
+
<entry file="file://$PROJECT_DIR$/spec/fixtures/flasher_base.smc" />
|
515
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_reader_spec.rb">
|
516
|
+
<provider selected="true" editor-type-id="text-editor">
|
517
|
+
<state relative-caret-position="75">
|
518
|
+
<caret line="5" column="0" lean-forward="false" selection-start-line="4" selection-start-column="0" selection-end-line="5" selection-end-column="0" />
|
292
519
|
<folding />
|
293
520
|
</state>
|
294
521
|
</provider>
|
295
522
|
</entry>
|
296
523
|
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_validator_spec.rb">
|
524
|
+
<provider selected="true" editor-type-id="text-editor">
|
525
|
+
<state relative-caret-position="240">
|
526
|
+
<caret line="16" column="0" lean-forward="false" selection-start-line="16" selection-start-column="0" selection-end-line="16" selection-end-column="0" />
|
527
|
+
<folding />
|
528
|
+
</state>
|
529
|
+
</provider>
|
530
|
+
</entry>
|
531
|
+
<entry file="file://$PROJECT_DIR$/spec/smcutil/file_extractor_spec.rb">
|
297
532
|
<provider selected="true" editor-type-id="text-editor">
|
298
533
|
<state relative-caret-position="135">
|
299
|
-
<caret line="9" column="
|
534
|
+
<caret line="9" column="42" lean-forward="false" selection-start-line="9" selection-start-column="42" selection-end-line="9" selection-end-column="42" />
|
300
535
|
<folding />
|
301
536
|
</state>
|
302
537
|
</provider>
|
303
538
|
</entry>
|
304
539
|
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_validator.rb">
|
305
540
|
<provider selected="true" editor-type-id="text-editor">
|
306
|
-
<state relative-caret-position="
|
307
|
-
<caret line="
|
541
|
+
<state relative-caret-position="45">
|
542
|
+
<caret line="3" column="21" lean-forward="false" selection-start-line="3" selection-start-column="21" selection-end-line="3" selection-end-column="21" />
|
308
543
|
<folding />
|
309
544
|
</state>
|
310
545
|
</provider>
|
311
546
|
</entry>
|
312
|
-
<entry file="file://$PROJECT_DIR$/
|
547
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_reader.rb">
|
313
548
|
<provider selected="true" editor-type-id="text-editor">
|
314
|
-
<state relative-caret-position="
|
315
|
-
<caret line="
|
316
|
-
<folding />
|
549
|
+
<state relative-caret-position="120">
|
550
|
+
<caret line="8" column="0" lean-forward="false" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
|
317
551
|
</state>
|
318
552
|
</provider>
|
319
553
|
</entry>
|
320
|
-
<entry file="file://$PROJECT_DIR$/
|
554
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/file_extractor.rb">
|
321
555
|
<provider selected="true" editor-type-id="text-editor">
|
322
|
-
<state relative-caret-position="
|
323
|
-
<caret line="
|
556
|
+
<state relative-caret-position="0">
|
557
|
+
<caret line="24" column="3" lean-forward="false" selection-start-line="24" selection-start-column="3" selection-end-line="24" selection-end-column="3" />
|
324
558
|
<folding />
|
325
559
|
</state>
|
326
560
|
</provider>
|
327
561
|
</entry>
|
328
|
-
<entry file="file://$PROJECT_DIR$/
|
562
|
+
<entry file="file://$PROJECT_DIR$/README.md">
|
563
|
+
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]">
|
564
|
+
<state split_layout="SPLIT">
|
565
|
+
<first_editor relative-caret-position="210">
|
566
|
+
<caret line="14" column="37" lean-forward="false" selection-start-line="14" selection-start-column="37" selection-end-line="14" selection-end-column="37" />
|
567
|
+
<folding />
|
568
|
+
</first_editor>
|
569
|
+
<second_editor />
|
570
|
+
</state>
|
571
|
+
</provider>
|
572
|
+
</entry>
|
573
|
+
<entry file="file://$PROJECT_DIR$/exe/smcutil">
|
329
574
|
<provider selected="true" editor-type-id="text-editor">
|
330
|
-
<state relative-caret-position="
|
331
|
-
<caret line="
|
575
|
+
<state relative-caret-position="105">
|
576
|
+
<caret line="7" column="12" lean-forward="false" selection-start-line="7" selection-start-column="12" selection-end-line="7" selection-end-column="12" />
|
332
577
|
<folding />
|
333
578
|
</state>
|
334
579
|
</provider>
|
@@ -341,5 +586,13 @@
|
|
341
586
|
</state>
|
342
587
|
</provider>
|
343
588
|
</entry>
|
589
|
+
<entry file="file://$PROJECT_DIR$/lib/smcutil/version.rb">
|
590
|
+
<provider selected="true" editor-type-id="text-editor">
|
591
|
+
<state relative-caret-position="15">
|
592
|
+
<caret line="1" column="18" lean-forward="false" selection-start-line="1" selection-start-column="18" selection-end-line="1" selection-end-column="18" />
|
593
|
+
<folding />
|
594
|
+
</state>
|
595
|
+
</provider>
|
596
|
+
</entry>
|
344
597
|
</component>
|
345
598
|
</project>
|
data/README.md
CHANGED
@@ -1,28 +1,32 @@
|
|
1
|
-
#
|
1
|
+
# `smcutil` for Appple SMC
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
TODO: Delete this and the text above, and describe your gem
|
3
|
+
`smcutil` is a command line tool for reading Apple's SMC payloads, validating them, fingerprinting them and extracting the contents for disassembly.
|
6
4
|
|
7
5
|
## Installation
|
8
6
|
|
9
|
-
|
10
|
-
|
11
|
-
```ruby
|
12
|
-
gem 'smcutil'
|
13
|
-
```
|
14
|
-
|
15
|
-
And then execute:
|
16
|
-
|
17
|
-
$ bundle
|
18
|
-
|
19
|
-
Or install it yourself as:
|
7
|
+
Install it yourself as:
|
20
8
|
|
21
9
|
$ gem install smcutil
|
22
10
|
|
23
11
|
## Usage
|
24
12
|
|
25
|
-
|
13
|
+
$ smcutil
|
14
|
+
|
15
|
+
Usage: smcutil {command} [PARAMS]
|
16
|
+
|
17
|
+
Command is one of:
|
18
|
+
|
19
|
+
validate {file.smc}:
|
20
|
+
Causes smcutil to parse the Apple SMC file and validate correctness.
|
21
|
+
|
22
|
+
info {file.smc}:
|
23
|
+
Prints information about the SMC update file.
|
24
|
+
|
25
|
+
flashfile {file.smc} {output.bin}:
|
26
|
+
Pretends to execute an update of the SMC flash as though the output.bin file is the SMC flash ROM.
|
27
|
+
|
28
|
+
save {output.bin}:
|
29
|
+
Has magical cow powers. Assuming I can make this work: GOLDEN TICKET
|
26
30
|
|
27
31
|
## Development
|
28
32
|
|
@@ -32,7 +36,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
32
36
|
|
33
37
|
## Contributing
|
34
38
|
|
35
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
39
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/rickmark/smcutil. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
36
40
|
|
37
41
|
## License
|
38
42
|
|
@@ -40,4 +44,4 @@ The gem is available as open source under the terms of the [MIT License](http://
|
|
40
44
|
|
41
45
|
## Code of Conduct
|
42
46
|
|
43
|
-
Everyone interacting in the
|
47
|
+
Everyone interacting in the SmcUtil project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/rickmark/smcutil/blob/master/CODE_OF_CONDUCT.md).
|
data/exe/smcutil
CHANGED
@@ -5,7 +5,7 @@ require 'optparse'
|
|
5
5
|
|
6
6
|
|
7
7
|
options = {}
|
8
|
-
|
8
|
+
OptionParser.new do |opts|
|
9
9
|
opts.banner = <<-BANNER
|
10
10
|
Usage: smcutil {command} [PARAMS]
|
11
11
|
|
@@ -23,4 +23,4 @@ OptParse.new do |opts|
|
|
23
23
|
save {output.bin}:
|
24
24
|
Has magical cow powers. Assuming I can make this work: GOLDEN TICKET
|
25
25
|
BANNER
|
26
|
-
end
|
26
|
+
end.parse!
|
@@ -0,0 +1,25 @@
|
|
1
|
+
class SmcUtil::FileExtractor
|
2
|
+
OUTPUT_FILE_FLAGS = File::CREAT | File::TRUNC | File::WRONLY
|
3
|
+
|
4
|
+
def initialize(file_reader)
|
5
|
+
@file_reader = file_reader
|
6
|
+
end
|
7
|
+
|
8
|
+
|
9
|
+
def extract_to(path)
|
10
|
+
File.open(File.join(path, 'header.bin'), OUTPUT_FILE_FLAGS) do |file|
|
11
|
+
file.write @file_reader.header
|
12
|
+
end
|
13
|
+
|
14
|
+
File.open(File.join(path, 'signature.bin'), OUTPUT_FILE_FLAGS) do |file|
|
15
|
+
file.write @file_reader.signature
|
16
|
+
end
|
17
|
+
|
18
|
+
File.open(File.join(path, 'binary.bin'), OUTPUT_FILE_FLAGS) do |file|
|
19
|
+
@file_reader.regions.each do |offset, content|
|
20
|
+
file.seek offset
|
21
|
+
file.write content
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
module SmcUtil
|
2
|
+
LINE_COMMAND = /((?<type>[[:upper:]]):(?<offset>([[:xdigit:]]{2})+:)?|(?<continue>\+\s+:))(?<length>\d+):(?<data>([[:xdigit:]]{2})+):(?<check>[[:xdigit:]]{2})/
|
3
|
+
|
4
|
+
class FileReader
|
5
|
+
attr_reader :header
|
6
|
+
attr_reader :signature
|
7
|
+
attr_reader :regions
|
8
|
+
|
9
|
+
|
10
|
+
def initialize(data)
|
11
|
+
|
12
|
+
# Setup the collected data
|
13
|
+
@header = String.new
|
14
|
+
@signature = String.new
|
15
|
+
@regions = {}
|
16
|
+
|
17
|
+
current_region = nil
|
18
|
+
|
19
|
+
data.each_line.with_index do |line, index|
|
20
|
+
# Zero based indexing is not compatible with how people think about lines in a file
|
21
|
+
index += 1
|
22
|
+
|
23
|
+
# Prepare to parse the line
|
24
|
+
line ||= line.strip!
|
25
|
+
puts "INFO: #{line}" && next if line.nil? or line.start_with? '#'
|
26
|
+
match = LINE_COMMAND.match(line)
|
27
|
+
raise "LINE #{index}: Does not match format" unless match
|
28
|
+
|
29
|
+
# Validate Length
|
30
|
+
raise "LINE #{index}: Length mismatch on line; expected #{match[:length]}, got #{match[:data].length / 2}" unless match[:length].to_i == match[:data].length / 2
|
31
|
+
|
32
|
+
# Validate check digit
|
33
|
+
data = match[:data].scan(/../).map { |x| x.hex.chr }.join
|
34
|
+
check = match[:check].to_i(16)
|
35
|
+
sum = data.codepoints.map { |c| c.to_i }.reduce(:+) & 0xFF
|
36
|
+
raise "LINE #{index}: Checksum does not match; exptected #{check}, got #{sum}" unless sum == check
|
37
|
+
|
38
|
+
case match[:type]
|
39
|
+
when 'H'
|
40
|
+
@header += data
|
41
|
+
when 'S'
|
42
|
+
@signature += data
|
43
|
+
when 'D'
|
44
|
+
current_region = match[:offset].to_i(16)
|
45
|
+
@regions[current_region] = String.new
|
46
|
+
@regions[current_region] += data
|
47
|
+
else
|
48
|
+
raise "LINE #{index}: Command #{match[:type]} not recognised" unless match[:continue]
|
49
|
+
raise "LINE #{index}: Continuation row with no data region set" unless current_region
|
50
|
+
|
51
|
+
@regions[current_region] += data
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def self.parse(path)
|
57
|
+
FileReader.new(File.open(path))
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
data/lib/smcutil/version.rb
CHANGED
data/lib/smcutil.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smcutil
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rick Mark
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-10-
|
11
|
+
date: 2017-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -62,6 +62,7 @@ extensions: []
|
|
62
62
|
extra_rdoc_files: []
|
63
63
|
files:
|
64
64
|
- ".gitignore"
|
65
|
+
- ".idea/.rakeTasks"
|
65
66
|
- ".idea/misc.xml"
|
66
67
|
- ".idea/modules.xml"
|
67
68
|
- ".idea/smcutil.iml"
|
@@ -78,6 +79,8 @@ files:
|
|
78
79
|
- bin/setup
|
79
80
|
- exe/smcutil
|
80
81
|
- lib/smcutil.rb
|
82
|
+
- lib/smcutil/file_extractor.rb
|
83
|
+
- lib/smcutil/file_reader.rb
|
81
84
|
- lib/smcutil/file_validator.rb
|
82
85
|
- lib/smcutil/version.rb
|
83
86
|
- smcutil.gemspec
|