windows_error 0.1.4 → 0.1.6
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.
- checksums.yaml +4 -4
- data/cortex.yaml +16 -0
- data/lib/windows_error/error_code.rb +1 -1
- data/lib/windows_error/h_result/facility.rb +212 -0
- data/lib/windows_error/h_result.rb +8853 -0
- data/lib/windows_error/nt_status.rb +2 -0
- data/lib/windows_error/version.rb +1 -1
- data/lib/windows_error/win32.rb +2 -0
- data/spec/lib/windows_error/h_result/facility_spec.rb +35 -0
- data/spec/lib/windows_error/h_result_spec.rb +24 -0
- metadata +14 -93
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- metadata.gz.sig +0 -0
data/lib/windows_error/win32.rb
CHANGED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'windows_error/h_result/facility'
|
|
3
|
+
|
|
4
|
+
describe WindowsError::HResult::Facility do
|
|
5
|
+
|
|
6
|
+
describe '#find_by_code' do
|
|
7
|
+
|
|
8
|
+
it 'raises an argument error when passed an invalid value' do
|
|
9
|
+
expect { WindowsError::HResult::Facility.find_by_code('foo') }.to raise_error ArgumentError, 'Invalid value!'
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
it 'returns the facility code for the supplied value' do
|
|
13
|
+
expect(WindowsError::HResult::Facility.find_by_code(0x0007)).to eq WindowsError::HResult::Facility::FACILITY_WIN32
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it 'returns nil if there is no matching facility code' do
|
|
17
|
+
expect(WindowsError::HResult::Facility.find_by_code(0x0fff)).to be_nil
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
describe '#find_by_h_result' do
|
|
22
|
+
|
|
23
|
+
it 'raises an argument error when passed an invalid value' do
|
|
24
|
+
expect { WindowsError::HResult::Facility.find_by_h_result('foo') }.to raise_error ArgumentError, 'Invalid value!'
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it 'returns the facility code embedded in an HRESULT' do
|
|
28
|
+
expect(WindowsError::HResult::Facility.find_by_h_result(0x80070547)).to eq WindowsError::HResult::Facility::FACILITY_WIN32
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
it 'returns nil if there is no matching facility code' do
|
|
32
|
+
expect(WindowsError::HResult::Facility.find_by_h_result(0x8fff0547)).to be_nil
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
require 'windows_error/h_result'
|
|
3
|
+
|
|
4
|
+
describe WindowsError::HResult do
|
|
5
|
+
|
|
6
|
+
describe '#find_by_retval' do
|
|
7
|
+
|
|
8
|
+
it 'raises an argument error when passed an invalid value' do
|
|
9
|
+
expect { WindowsError::HResult.find_by_retval('foo') }.to raise_error ArgumentError, 'Invalid value!'
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
it 'maps FACILITY_WIN32 HRESULTs to Win32 error codes' do
|
|
13
|
+
expect(WindowsError::HResult.find_by_retval(0x80070547)).to match_array([WindowsError::Win32::ERROR_CANT_ACCESS_DOMAIN_INFO])
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
it 'returns HRESULT error codes for non-Win32 facilities' do
|
|
17
|
+
expect(WindowsError::HResult.find_by_retval(0x800401f3)).to match_array([WindowsError::HResult::CO_E_CLASSSTRING])
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
it 'returns an empty array if there is no match' do
|
|
21
|
+
expect(WindowsError::HResult.find_by_retval(0xffffffff)).to match_array([])
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
metadata
CHANGED
|
@@ -1,99 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: windows_error
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- David Maloney
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
|
-
cert_chain:
|
|
11
|
-
-
|
|
12
|
-
-----BEGIN CERTIFICATE-----
|
|
13
|
-
MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
|
|
14
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
15
|
-
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
|
16
|
-
b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
|
|
17
|
-
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
|
18
|
-
cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
|
|
19
|
-
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
|
|
20
|
-
JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
|
|
21
|
-
mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
|
|
22
|
-
wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
|
|
23
|
-
VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
|
|
24
|
-
AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
|
|
25
|
-
AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
|
|
26
|
-
BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
|
|
27
|
-
pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
|
|
28
|
-
dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
|
|
29
|
-
fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
|
|
30
|
-
NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
|
|
31
|
-
H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
|
|
32
|
-
+o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
|
|
33
|
-
-----END CERTIFICATE-----
|
|
34
|
-
- |
|
|
35
|
-
-----BEGIN CERTIFICATE-----
|
|
36
|
-
MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl
|
|
37
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
38
|
-
d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
|
|
39
|
-
b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG
|
|
40
|
-
EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
|
|
41
|
-
cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT
|
|
42
|
-
aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O
|
|
43
|
-
Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq
|
|
44
|
-
8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp
|
|
45
|
-
wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p
|
|
46
|
-
fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3
|
|
47
|
-
jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye
|
|
48
|
-
n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
|
|
49
|
-
HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr
|
|
50
|
-
MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH
|
|
51
|
-
MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ
|
|
52
|
-
RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj
|
|
53
|
-
ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6
|
|
54
|
-
Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww
|
|
55
|
-
TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
|
|
56
|
-
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq
|
|
57
|
-
CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP
|
|
58
|
-
MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX
|
|
59
|
-
fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf
|
|
60
|
-
RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al
|
|
61
|
-
EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+
|
|
62
|
-
L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8
|
|
63
|
-
B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv
|
|
64
|
-
-----END CERTIFICATE-----
|
|
65
|
-
- |
|
|
66
|
-
-----BEGIN CERTIFICATE-----
|
|
67
|
-
MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
|
|
68
|
-
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
|
69
|
-
d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
|
|
70
|
-
SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
|
|
71
|
-
MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
|
|
72
|
-
BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
|
|
73
|
-
IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
|
|
74
|
-
4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
|
|
75
|
-
WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
|
|
76
|
-
gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
|
|
77
|
-
9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
|
|
78
|
-
yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
|
|
79
|
-
r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
|
|
80
|
-
dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
|
|
81
|
-
B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
|
|
82
|
-
L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
|
|
83
|
-
L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
|
|
84
|
-
MEwGA1UdIARFMEMwNwYJYIZIAYb9bAMBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
|
|
85
|
-
d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYw
|
|
86
|
-
JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
|
|
87
|
-
AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
|
|
88
|
-
ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
|
|
89
|
-
BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
|
|
90
|
-
37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
|
|
91
|
-
YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
|
|
92
|
-
dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
|
|
93
|
-
EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
|
|
94
|
-
9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
|
|
95
|
-
-----END CERTIFICATE-----
|
|
96
|
-
date: 2022-03-30 00:00:00.000000000 Z
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2026-07-09 00:00:00.000000000 Z
|
|
97
12
|
dependencies:
|
|
98
13
|
- !ruby/object:Gem::Dependency
|
|
99
14
|
name: bundler
|
|
@@ -172,12 +87,17 @@ files:
|
|
|
172
87
|
- LICENSE.txt
|
|
173
88
|
- README.md
|
|
174
89
|
- Rakefile
|
|
90
|
+
- cortex.yaml
|
|
175
91
|
- lib/windows_error.rb
|
|
176
92
|
- lib/windows_error/error_code.rb
|
|
93
|
+
- lib/windows_error/h_result.rb
|
|
94
|
+
- lib/windows_error/h_result/facility.rb
|
|
177
95
|
- lib/windows_error/nt_status.rb
|
|
178
96
|
- lib/windows_error/version.rb
|
|
179
97
|
- lib/windows_error/win32.rb
|
|
180
98
|
- spec/lib/windows_error/error_code_spec.rb
|
|
99
|
+
- spec/lib/windows_error/h_result/facility_spec.rb
|
|
100
|
+
- spec/lib/windows_error/h_result_spec.rb
|
|
181
101
|
- spec/lib/windows_error/nt_status_spec.rb
|
|
182
102
|
- spec/lib/windows_error/win32_spec.rb
|
|
183
103
|
- spec/spec_helper.rb
|
|
@@ -186,7 +106,7 @@ homepage: https://github.com/rapid7/windows_error
|
|
|
186
106
|
licenses:
|
|
187
107
|
- BSD
|
|
188
108
|
metadata: {}
|
|
189
|
-
post_install_message:
|
|
109
|
+
post_install_message:
|
|
190
110
|
rdoc_options: []
|
|
191
111
|
require_paths:
|
|
192
112
|
- lib
|
|
@@ -201,13 +121,14 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
201
121
|
- !ruby/object:Gem::Version
|
|
202
122
|
version: '0'
|
|
203
123
|
requirements: []
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
signing_key:
|
|
124
|
+
rubygems_version: 3.4.19
|
|
125
|
+
signing_key:
|
|
207
126
|
specification_version: 4
|
|
208
127
|
summary: Provides a way to look up Windows NTSTATUS and Win32 Error Codes
|
|
209
128
|
test_files:
|
|
210
129
|
- spec/lib/windows_error/error_code_spec.rb
|
|
130
|
+
- spec/lib/windows_error/h_result/facility_spec.rb
|
|
131
|
+
- spec/lib/windows_error/h_result_spec.rb
|
|
211
132
|
- spec/lib/windows_error/nt_status_spec.rb
|
|
212
133
|
- spec/lib/windows_error/win32_spec.rb
|
|
213
134
|
- spec/spec_helper.rb
|
checksums.yaml.gz.sig
DELETED
|
Binary file
|
data.tar.gz.sig
DELETED
|
Binary file
|
metadata.gz.sig
DELETED
|
Binary file
|