windows_error 0.0.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- checksums.yaml.gz.sig +0 -0
- data/.pullreview.yml +6 -0
- data/.travis.yml +2 -1
- data/Gemfile +1 -3
- data/README.md +4 -0
- data/Rakefile +2 -0
- data/lib/windows_error/error_code.rb +18 -9
- data/lib/windows_error/nt_status.rb +4 -4
- data/lib/windows_error/version.rb +1 -39
- data/lib/windows_error/win32.rb +4 -4
- data/spec/lib/windows_error/error_code_spec.rb +21 -16
- data/spec/lib/windows_error/nt_status_spec.rb +2 -2
- data/spec/lib/windows_error/win32_spec.rb +1 -1
- data/spec/spec_helper.rb +1 -31
- data/windows_error.gemspec +4 -3
- data.tar.gz.sig +0 -0
- metadata +99 -18
- metadata.gz.sig +2 -0
- data/spec/lib/windows_error/version_spec.rb +0 -5
- data/spec/lib/windows_error_spec.rb +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 38bc0fe086fabfe00ffe0290a40710604508c085ee81a2582eab86632dd6e091
|
4
|
+
data.tar.gz: 9ef17bbef37fcb281f5b23e66dea6cf0374afae14ab71092519fe226ad959faa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a6ddd6b7b0e8724f0fe47fff33eb37501fd3366b2022d4938f5f076e3d816273514a5fc2f3c632cdb3a8face75992e4355bb303fc605c88adb5ad51a012ff438
|
7
|
+
data.tar.gz: 3827d3d4703b49027a701616ba6a4bf828be196c0d014ffc305a2ebe099037bf0d3650841fb4b2a4290e1db2b521784dd9077f9ee83b9bf205784137a7f15afb
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data/.pullreview.yml
ADDED
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
# WindowsError
|
2
|
+
[![Gem Version](https://badge.fury.io/rb/windows_error.svg)](http://badge.fury.io/rb/windows_error)
|
2
3
|
[![Build Status](https://travis-ci.org/rapid7/windows_error.svg)](https://travis-ci.org/rapid7/windows_error)
|
3
4
|
[![Code Climate](https://codeclimate.com/github/rapid7/windows_error/badges/gpa.svg)](https://codeclimate.com/github/rapid7/windows_error)
|
5
|
+
[![Coverage Status](https://coveralls.io/repos/rapid7/windows_error/badge.svg?branch=master)](https://coveralls.io/r/rapid7/windows_error?branch=master)
|
6
|
+
[![PullReview stats](https://www.pullreview.com/github/rapid7/windows_error/badges/master.svg?)](https://www.pullreview.com/github/rapid7/windows_error/reviews/master)
|
7
|
+
|
4
8
|
|
5
9
|
The WindowsError gem provides an easily accessible reference for standard Windows API Error Codes. It allows you to do comparisons as well as direct lookups of error codes to translate the numerical value returned by the API, into a meaningful and human readable message. WindowsError currently supports [NTSTATUS](https://msdn.microsoft.com/en-us/library/cc231200.aspx) and [Win32 Error Codes](https://msdn.microsoft.com/en-us/library/cc231199.aspx). See [Windows Error Codes](https://msdn.microsoft.com/en-us/library/cc231196.aspx) for more details on all Windows Error Codes.
|
6
10
|
|
data/Rakefile
CHANGED
@@ -8,17 +8,17 @@ module WindowsError
|
|
8
8
|
attr_reader :description
|
9
9
|
# @return [String] the name of the error code
|
10
10
|
attr_reader :name
|
11
|
-
# @return [
|
11
|
+
# @return [Integer] the error code that was given as a return value
|
12
12
|
attr_reader :value
|
13
13
|
|
14
14
|
# @param [String] name the 'name' of the error code (i.e STATUS_SUCCESS)
|
15
|
-
# @param [
|
15
|
+
# @param [Integer] value the return value that represents that error
|
16
16
|
# @param [String] description the verbose description of the error
|
17
17
|
# @raise [ArgumentError] if any of the parameters are of an invalid type
|
18
|
-
def initialize(name,value,description)
|
19
|
-
raise ArgumentError,
|
20
|
-
raise ArgumentError,
|
21
|
-
raise ArgumentError,
|
18
|
+
def initialize(name, value, description)
|
19
|
+
raise ArgumentError, 'Invalid Error Name!' unless name.kind_of? String and !(name.empty?)
|
20
|
+
raise ArgumentError, 'Invalid Error Code Value!' unless value.kind_of? Integer
|
21
|
+
raise ArgumentError, 'Invalid Error Description!' unless description.kind_of? String and !(description.empty?)
|
22
22
|
@name = name
|
23
23
|
@value = value
|
24
24
|
@description = description
|
@@ -32,18 +32,27 @@ module WindowsError
|
|
32
32
|
# always tested against the #value of the error code.
|
33
33
|
#
|
34
34
|
# @param [Object] other_object the object to test equality against
|
35
|
-
# @raise [ArgumentError] if the other object is not either another ErrorCode or a
|
35
|
+
# @raise [ArgumentError] if the other object is not either another ErrorCode or a Integer
|
36
36
|
# @return [Boolean] whether the equality test passed
|
37
37
|
def ==(other_object)
|
38
38
|
if other_object.kind_of? self.class
|
39
39
|
self.value == other_object.value
|
40
|
-
elsif other_object.kind_of?
|
40
|
+
elsif other_object.kind_of? Integer
|
41
41
|
self.value == other_object
|
42
|
+
elsif other_object.nil?
|
43
|
+
false
|
42
44
|
else
|
43
45
|
raise ArgumentError, "Cannot compare a #{self.class} to a #{other_object.class}"
|
44
46
|
end
|
45
47
|
end
|
48
|
+
|
49
|
+
alias :=== :==
|
50
|
+
|
51
|
+
def to_s
|
52
|
+
code = sprintf "%08x", self.value
|
53
|
+
"(0x#{code}) #{self.name}: #{self.description}"
|
54
|
+
end
|
46
55
|
end
|
47
56
|
|
48
|
-
|
57
|
+
|
49
58
|
end
|
@@ -8,11 +8,11 @@ module WindowsError
|
|
8
8
|
# Returns all the {WindowsError::ErrorCode} objects that match
|
9
9
|
# the return value supplied.
|
10
10
|
#
|
11
|
-
# @param [
|
12
|
-
# @raise [ArgumentError] if something other than a
|
11
|
+
# @param [Integer] retval the return value you want the error code for
|
12
|
+
# @raise [ArgumentError] if something other than a Integer is supplied
|
13
13
|
# @return [Array<WindowsError::ErrorCode>] all NTStatus ErrorCodes that matched
|
14
14
|
def self.find_by_retval(retval)
|
15
|
-
raise ArgumentError, "Invalid Return Code!" unless retval.kind_of?
|
15
|
+
raise ArgumentError, "Invalid Return Code!" unless retval.kind_of? Integer
|
16
16
|
error_codes = []
|
17
17
|
self.constants.each do |constant_name|
|
18
18
|
error_code = self.const_get(constant_name)
|
@@ -5404,4 +5404,4 @@ module WindowsError
|
|
5404
5404
|
STATUS_VHD_DIFFERENCING_CHAIN_CYCLE_DETECTED = WindowsError::ErrorCode.new("STATUS_VHD_DIFFERENCING_CHAIN_CYCLE_DETECTED",0xC03A0018,"The chain of virtual hard disks is corrupted. A differencing disk is indicated in its own parent chain.")
|
5405
5405
|
|
5406
5406
|
end
|
5407
|
-
end
|
5407
|
+
end
|
@@ -1,41 +1,3 @@
|
|
1
1
|
module WindowsError
|
2
|
-
|
3
|
-
module Version
|
4
|
-
# The major version number.
|
5
|
-
MAJOR = 0
|
6
|
-
# The minor version number, scoped to the {MAJOR} version number.
|
7
|
-
MINOR = 0
|
8
|
-
# The patch number, scoped to the {MINOR} version number.
|
9
|
-
PATCH = 2
|
10
|
-
|
11
|
-
# The full version string, including the {MAJOR}, {MINOR}, {PATCH}, and optionally, the `PRERELEASE` in the
|
12
|
-
# {http://semver.org/spec/v2.0.0.html semantic versioning v2.0.0} format.
|
13
|
-
#
|
14
|
-
# @return [String] '{MAJOR}.{MINOR}.{PATCH}' on master. '{MAJOR}.{MINOR}.{PATCH}-PRERELEASE' on any branch
|
15
|
-
# other than master.
|
16
|
-
def self.full
|
17
|
-
version = "#{MAJOR}.#{MINOR}.#{PATCH}"
|
18
|
-
|
19
|
-
if defined? PRERELEASE
|
20
|
-
version = "#{version}-#{PRERELEASE}"
|
21
|
-
end
|
22
|
-
|
23
|
-
version
|
24
|
-
end
|
25
|
-
|
26
|
-
# The full gem version string, including the {MAJOR}, {MINOR}, {PATCH}, and optionally, the `PRERELEASE` in the
|
27
|
-
# {http://guides.rubygems.org/specification-reference/#version RubyGems versioning} format.
|
28
|
-
#
|
29
|
-
# @return [String] '{MAJOR}.{MINOR}.{PATCH}' on master. '{MAJOR}.{MINOR}.{PATCH}.PRERELEASE' on any branch
|
30
|
-
# other than master.
|
31
|
-
def self.gem
|
32
|
-
full.gsub('-', '.pre.')
|
33
|
-
end
|
34
|
-
end
|
35
|
-
|
36
|
-
# @see Version.gem
|
37
|
-
GEM_VERSION = Version.gem
|
38
|
-
|
39
|
-
# @see Version.full
|
40
|
-
VERSION = Version.full
|
2
|
+
VERSION = "0.1.3"
|
41
3
|
end
|
data/lib/windows_error/win32.rb
CHANGED
@@ -8,11 +8,11 @@ module WindowsError
|
|
8
8
|
# Returns all the {WindowsError::ErrorCode} objects that match
|
9
9
|
# the return value supplied.
|
10
10
|
#
|
11
|
-
# @param [
|
12
|
-
# @raise [ArgumentError] if something other than a
|
11
|
+
# @param [Integer] retval the return value you want the error code for
|
12
|
+
# @raise [ArgumentError] if something other than a Integer is supplied
|
13
13
|
# @return [Array<WindowsError::ErrorCode>] all Win32 ErrorCodes that matched
|
14
14
|
def self.find_by_retval(retval)
|
15
|
-
raise ArgumentError, "Invalid Return Code!" unless retval.kind_of?
|
15
|
+
raise ArgumentError, "Invalid Return Code!" unless retval.kind_of? Integer
|
16
16
|
error_codes = []
|
17
17
|
self.constants.each do |constant_name|
|
18
18
|
error_code = self.const_get(constant_name)
|
@@ -8124,4 +8124,4 @@ module WindowsError
|
|
8124
8124
|
# (0x00003B92) The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria.
|
8125
8125
|
ERROR_AMBIGUOUS_SYSTEM_DEVICE = WindowsError::ErrorCode.new("ERROR_AMBIGUOUS_SYSTEM_DEVICE",0x00003B92,"The requested system device cannot be identified due to multiple indistinguishable devices potentially matching the identification criteria.")
|
8126
8126
|
end
|
8127
|
-
end
|
8127
|
+
end
|
@@ -2,16 +2,16 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe WindowsError::ErrorCode do
|
4
4
|
|
5
|
-
subject(:error_code) { described_class.new(name,value,description) }
|
6
|
-
let(:name) {
|
5
|
+
subject(:error_code) { described_class.new(name, value, description) }
|
6
|
+
let(:name) { 'STATUS_TIMEOUT' }
|
7
7
|
let(:value) { 0x00000102 }
|
8
|
-
let(:description) {
|
8
|
+
let(:description) { 'The given Timeout interval expired.' }
|
9
9
|
|
10
10
|
context 'with a non-number value' do
|
11
|
-
let(:value) {
|
11
|
+
let(:value) { 'Bogus' }
|
12
12
|
|
13
13
|
it 'will raise an ArgumentError' do
|
14
|
-
expect{described_class.new(name,value,description)}.to raise_error ArgumentError,
|
14
|
+
expect { described_class.new(name, value, description) }.to raise_error ArgumentError, 'Invalid Error Code Value!'
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
@@ -19,7 +19,7 @@ describe WindowsError::ErrorCode do
|
|
19
19
|
let(:description) { 42 }
|
20
20
|
|
21
21
|
it 'will raise an ArgumentError' do
|
22
|
-
expect{described_class.new(name,value,description)}.to raise_error ArgumentError,
|
22
|
+
expect { described_class.new(name, value, description) }.to raise_error ArgumentError, 'Invalid Error Description!'
|
23
23
|
end
|
24
24
|
end
|
25
25
|
|
@@ -27,7 +27,7 @@ describe WindowsError::ErrorCode do
|
|
27
27
|
let(:description) { '' }
|
28
28
|
|
29
29
|
it 'will raise an ArgumentError' do
|
30
|
-
expect{described_class.new(name,value,description)}.to raise_error ArgumentError,
|
30
|
+
expect { described_class.new(name, value, description) }.to raise_error ArgumentError, 'Invalid Error Description!'
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
@@ -35,7 +35,7 @@ describe WindowsError::ErrorCode do
|
|
35
35
|
let(:name) { 42 }
|
36
36
|
|
37
37
|
it 'will raise an ArgumentError' do
|
38
|
-
expect{described_class.new(name,value,description)}.to raise_error ArgumentError,
|
38
|
+
expect { described_class.new(name, value, description) }.to raise_error ArgumentError, 'Invalid Error Name!'
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
@@ -43,7 +43,7 @@ describe WindowsError::ErrorCode do
|
|
43
43
|
let(:name) { '' }
|
44
44
|
|
45
45
|
it 'will raise an ArgumentError' do
|
46
|
-
expect{described_class.new(name,value,description)}.to raise_error ArgumentError,
|
46
|
+
expect { described_class.new(name, value, description) }.to raise_error ArgumentError, 'Invalid Error Name!'
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
@@ -60,13 +60,13 @@ describe WindowsError::ErrorCode do
|
|
60
60
|
end
|
61
61
|
|
62
62
|
describe '#==' do
|
63
|
-
let(:invalid_str) {
|
63
|
+
let(:invalid_str) { 'foo' }
|
64
64
|
|
65
65
|
it 'raises an ArgumentError for an invalid comparison' do
|
66
|
-
expect{ error_code == invalid_str}.to raise_error ArgumentError, "Cannot compare a WindowsError::ErrorCode to a #{invalid_str.class}"
|
66
|
+
expect { error_code == invalid_str }.to raise_error ArgumentError, "Cannot compare a WindowsError::ErrorCode to a #{invalid_str.class}"
|
67
67
|
end
|
68
68
|
|
69
|
-
context 'when passed a
|
69
|
+
context 'when passed a Integer' do
|
70
70
|
let(:fixnum_value) { 258 }
|
71
71
|
let(:other_fixnum) { 42 }
|
72
72
|
|
@@ -80,8 +80,8 @@ describe WindowsError::ErrorCode do
|
|
80
80
|
end
|
81
81
|
|
82
82
|
context 'when passed another error code' do
|
83
|
-
let(:matching_error_code) { described_class.new(name,value,description) }
|
84
|
-
let(:other_error_code) { described_class.new(name,42,description) }
|
83
|
+
let(:matching_error_code) { described_class.new(name, value, description) }
|
84
|
+
let(:other_error_code) { described_class.new(name, 42, description) }
|
85
85
|
|
86
86
|
it 'returns true when the values match' do
|
87
87
|
expect(error_code == matching_error_code).to eq true
|
@@ -93,5 +93,10 @@ describe WindowsError::ErrorCode do
|
|
93
93
|
end
|
94
94
|
end
|
95
95
|
|
96
|
-
|
97
|
-
|
96
|
+
describe '#to_s' do
|
97
|
+
it 'outputs all of the relvant data in one useful string' do
|
98
|
+
expect(error_code.to_s).to eq '(0x00000102) STATUS_TIMEOUT: The given Timeout interval expired.'
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
end
|
@@ -6,7 +6,7 @@ describe WindowsError::NTStatus do
|
|
6
6
|
describe '#find_by_retval' do
|
7
7
|
|
8
8
|
it 'raises an argument error when passed an invalid value' do
|
9
|
-
expect{ WindowsError::NTStatus.find_by_retval(
|
9
|
+
expect { WindowsError::NTStatus.find_by_retval('foo') }.to raise_error ArgumentError, 'Invalid Return Code!'
|
10
10
|
end
|
11
11
|
|
12
12
|
it 'returns an array with the error_codes for that return value' do
|
@@ -14,7 +14,7 @@ describe WindowsError::NTStatus do
|
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'returns multiple entries if there are more than one match' do
|
17
|
-
expect(WindowsError::NTStatus.find_by_retval(0x00000000)).to match_array([WindowsError::NTStatus::STATUS_SUCCESS,WindowsError::NTStatus::STATUS_WAIT_0])
|
17
|
+
expect(WindowsError::NTStatus.find_by_retval(0x00000000)).to match_array([WindowsError::NTStatus::STATUS_SUCCESS, WindowsError::NTStatus::STATUS_WAIT_0])
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'returns an empty array if there is no match' do
|
@@ -6,7 +6,7 @@ describe WindowsError::Win32 do
|
|
6
6
|
describe '#find_by_retval' do
|
7
7
|
|
8
8
|
it 'raises an argument error when passed an invalid value' do
|
9
|
-
expect{ WindowsError::Win32.find_by_retval(
|
9
|
+
expect { WindowsError::Win32.find_by_retval('foo') }.to raise_error ArgumentError, 'Invalid Return Code!'
|
10
10
|
end
|
11
11
|
|
12
12
|
it 'returns an array with the error_codes for that return value' do
|
data/spec/spec_helper.rb
CHANGED
@@ -1,32 +1,2 @@
|
|
1
|
-
|
2
|
-
require 'simplecov'
|
3
|
-
require 'coveralls'
|
4
|
-
|
5
|
-
if ENV['TRAVIS'] == 'true'
|
6
|
-
# don't generate local report as it is inaccessible on travis-ci, which is
|
7
|
-
# why coveralls is being used.
|
8
|
-
SimpleCov.formatter = Coveralls::SimpleCov::Formatter
|
9
|
-
else
|
10
|
-
SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
|
11
|
-
end
|
12
|
-
|
13
|
-
require 'rspec'
|
1
|
+
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
|
14
2
|
require 'windows_error'
|
15
|
-
|
16
|
-
# Use find_all_by_name instead of find_by_name as find_all_by_name will return pre-release versions
|
17
|
-
gem_specification = Gem::Specification.find_all_by_name('metasploit-version').first
|
18
|
-
|
19
|
-
Dir[File.join(gem_specification.gem_dir, 'spec', 'support', '**', '*.rb')].each do |f|
|
20
|
-
require f
|
21
|
-
end
|
22
|
-
|
23
|
-
# add project lib directory to load path
|
24
|
-
spec_pathname = Pathname.new(__FILE__).dirname
|
25
|
-
root_pathname = spec_pathname.join('..').expand_path
|
26
|
-
# Requires supporting ruby files with custom matchers and macros, etc,
|
27
|
-
# in spec/support/ and its subdirectories.
|
28
|
-
support_glob = root_pathname.join('spec', 'support', '**', '*.rb')
|
29
|
-
|
30
|
-
Dir.glob(support_glob) do |path|
|
31
|
-
require path
|
32
|
-
end
|
data/windows_error.gemspec
CHANGED
@@ -15,15 +15,16 @@ Gem::Specification.new do |spec|
|
|
15
15
|
value returned by the API, into a meaningful and human readable message.}
|
16
16
|
spec.homepage = "https://github.com/rapid7/windows_error"
|
17
17
|
spec.license = "BSD"
|
18
|
-
|
18
|
+
|
19
|
+
spec.required_ruby_version = '>= 2.2.0'
|
19
20
|
|
20
21
|
spec.files = `git ls-files -z`.split("\x0")
|
21
22
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
22
23
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
23
24
|
spec.require_paths = ["lib"]
|
24
25
|
|
25
|
-
spec.add_development_dependency "bundler"
|
26
|
-
spec.add_development_dependency "rake"
|
26
|
+
spec.add_development_dependency "bundler"
|
27
|
+
spec.add_development_dependency "rake"
|
27
28
|
spec.add_development_dependency "yard"
|
28
29
|
spec.add_development_dependency "fivemat"
|
29
30
|
|
data.tar.gz.sig
ADDED
Binary file
|
metadata
CHANGED
@@ -1,43 +1,128 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: windows_error
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Maloney
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
|
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-01-11 00:00:00.000000000 Z
|
12
97
|
dependencies:
|
13
98
|
- !ruby/object:Gem::Dependency
|
14
99
|
name: bundler
|
15
100
|
requirement: !ruby/object:Gem::Requirement
|
16
101
|
requirements:
|
17
|
-
- - "
|
102
|
+
- - ">="
|
18
103
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
104
|
+
version: '0'
|
20
105
|
type: :development
|
21
106
|
prerelease: false
|
22
107
|
version_requirements: !ruby/object:Gem::Requirement
|
23
108
|
requirements:
|
24
|
-
- - "
|
109
|
+
- - ">="
|
25
110
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
111
|
+
version: '0'
|
27
112
|
- !ruby/object:Gem::Dependency
|
28
113
|
name: rake
|
29
114
|
requirement: !ruby/object:Gem::Requirement
|
30
115
|
requirements:
|
31
|
-
- - "
|
116
|
+
- - ">="
|
32
117
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
118
|
+
version: '0'
|
34
119
|
type: :development
|
35
120
|
prerelease: false
|
36
121
|
version_requirements: !ruby/object:Gem::Requirement
|
37
122
|
requirements:
|
38
|
-
- - "
|
123
|
+
- - ">="
|
39
124
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
125
|
+
version: '0'
|
41
126
|
- !ruby/object:Gem::Dependency
|
42
127
|
name: yard
|
43
128
|
requirement: !ruby/object:Gem::Requirement
|
@@ -78,6 +163,7 @@ extensions: []
|
|
78
163
|
extra_rdoc_files: []
|
79
164
|
files:
|
80
165
|
- ".gitignore"
|
166
|
+
- ".pullreview.yml"
|
81
167
|
- ".rspec"
|
82
168
|
- ".simplecov"
|
83
169
|
- ".travis.yml"
|
@@ -93,9 +179,7 @@ files:
|
|
93
179
|
- lib/windows_error/win32.rb
|
94
180
|
- spec/lib/windows_error/error_code_spec.rb
|
95
181
|
- spec/lib/windows_error/nt_status_spec.rb
|
96
|
-
- spec/lib/windows_error/version_spec.rb
|
97
182
|
- spec/lib/windows_error/win32_spec.rb
|
98
|
-
- spec/lib/windows_error_spec.rb
|
99
183
|
- spec/spec_helper.rb
|
100
184
|
- windows_error.gemspec
|
101
185
|
homepage: https://github.com/rapid7/windows_error
|
@@ -110,7 +194,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
110
194
|
requirements:
|
111
195
|
- - ">="
|
112
196
|
- !ruby/object:Gem::Version
|
113
|
-
version:
|
197
|
+
version: 2.2.0
|
114
198
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
115
199
|
requirements:
|
116
200
|
- - ">="
|
@@ -118,15 +202,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
202
|
version: '0'
|
119
203
|
requirements: []
|
120
204
|
rubyforge_project:
|
121
|
-
rubygems_version: 2.
|
205
|
+
rubygems_version: 2.7.10
|
122
206
|
signing_key:
|
123
207
|
specification_version: 4
|
124
208
|
summary: Provides a way to look up Windows NTSTATUS and Win32 Error Codes
|
125
209
|
test_files:
|
126
210
|
- spec/lib/windows_error/error_code_spec.rb
|
127
211
|
- spec/lib/windows_error/nt_status_spec.rb
|
128
|
-
- spec/lib/windows_error/version_spec.rb
|
129
212
|
- spec/lib/windows_error/win32_spec.rb
|
130
|
-
- spec/lib/windows_error_spec.rb
|
131
213
|
- spec/spec_helper.rb
|
132
|
-
has_rdoc:
|
metadata.gz.sig
ADDED