ronin 1.5.0 → 1.5.1
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 +7 -0
- data/.editorconfig +11 -0
- data/.github/workflows/ruby.yml +32 -0
- data/.gitignore +7 -7
- data/.ruby-version +1 -0
- data/COPYING.txt +3 -3
- data/ChangeLog.md +25 -11
- data/Gemfile +21 -20
- data/README.md +102 -81
- data/Rakefile +4 -5
- data/bin/ronin +7 -12
- data/bin/ronin-campaigns +7 -12
- data/bin/ronin-console +7 -12
- data/bin/ronin-creds +7 -12
- data/bin/ronin-database +7 -12
- data/bin/ronin-emails +7 -12
- data/bin/ronin-exec +7 -12
- data/bin/ronin-fuzzer +7 -12
- data/bin/ronin-help +7 -12
- data/bin/ronin-hosts +7 -12
- data/bin/ronin-install +7 -12
- data/bin/ronin-ips +7 -12
- data/bin/ronin-net-proxy +7 -12
- data/bin/ronin-repos +7 -12
- data/bin/ronin-uninstall +7 -12
- data/bin/ronin-update +7 -12
- data/bin/ronin-urls +7 -12
- data/bin/ronin-wordlist +7 -12
- data/gemspec.yml +8 -8
- data/lib/bond/completions/ronin.rb +23 -23
- data/lib/ronin.rb +3 -3
- data/lib/ronin/address.rb +6 -7
- data/lib/ronin/arch.rb +3 -3
- data/lib/ronin/author.rb +5 -7
- data/lib/ronin/auto_load.rb +5 -5
- data/lib/ronin/bootstrap.rb +3 -3
- data/lib/ronin/campaign.rb +3 -3
- data/lib/ronin/config.rb +5 -7
- data/lib/ronin/credential.rb +3 -3
- data/lib/ronin/database.rb +3 -3
- data/lib/ronin/database/database.rb +8 -12
- data/lib/ronin/database/exceptions.rb +3 -3
- data/lib/ronin/database/exceptions/invalid_config.rb +3 -3
- data/lib/ronin/database/exceptions/unknown_repository.rb +3 -3
- data/lib/ronin/database/migrations.rb +3 -3
- data/lib/ronin/database/migrations/1.0.0.rb +3 -3
- data/lib/ronin/database/migrations/1.1.0.rb +3 -3
- data/lib/ronin/database/migrations/exceptions.rb +3 -3
- data/lib/ronin/database/migrations/exceptions/duplicate_migration.rb +3 -3
- data/lib/ronin/database/migrations/exceptions/unknown_migration.rb +3 -3
- data/lib/ronin/database/migrations/graph.rb +3 -3
- data/lib/ronin/database/migrations/migration.rb +3 -3
- data/lib/ronin/database/migrations/migrations.rb +3 -3
- data/lib/ronin/email_address.rb +5 -7
- data/lib/ronin/environment.rb +3 -3
- data/lib/ronin/exceptions.rb +3 -3
- data/lib/ronin/exceptions/duplicate_repository.rb +3 -3
- data/lib/ronin/exceptions/repository_not_found.rb +3 -3
- data/lib/ronin/host_name.rb +3 -3
- data/lib/ronin/host_name_ip_address.rb +3 -3
- data/lib/ronin/installation.rb +5 -7
- data/lib/ronin/ip_address.rb +6 -8
- data/lib/ronin/ip_address_mac_address.rb +3 -3
- data/lib/ronin/license.rb +6 -6
- data/lib/ronin/mac_address.rb +3 -3
- data/lib/ronin/model.rb +3 -3
- data/lib/ronin/model/has_authors.rb +3 -3
- data/lib/ronin/model/has_description.rb +3 -3
- data/lib/ronin/model/has_license.rb +3 -3
- data/lib/ronin/model/has_name.rb +3 -3
- data/lib/ronin/model/has_title.rb +3 -3
- data/lib/ronin/model/has_unique_name.rb +5 -7
- data/lib/ronin/model/has_version.rb +3 -3
- data/lib/ronin/model/importable.rb +3 -3
- data/lib/ronin/model/model.rb +7 -8
- data/lib/ronin/model/types.rb +3 -3
- data/lib/ronin/model/types/description.rb +9 -12
- data/lib/ronin/open_port.rb +5 -7
- data/lib/ronin/organization.rb +3 -3
- data/lib/ronin/os.rb +5 -7
- data/lib/ronin/os_guess.rb +3 -3
- data/lib/ronin/password.rb +3 -3
- data/lib/ronin/port.rb +3 -3
- data/lib/ronin/repositories.rb +3 -3
- data/lib/ronin/repository.rb +3 -3
- data/lib/ronin/ronin.rb +3 -3
- data/lib/ronin/script.rb +3 -3
- data/lib/ronin/script/buildable.rb +3 -3
- data/lib/ronin/script/deployable.rb +3 -3
- data/lib/ronin/script/exceptions.rb +3 -3
- data/lib/ronin/script/exceptions/build_failed.rb +3 -3
- data/lib/ronin/script/exceptions/deploy_failed.rb +3 -3
- data/lib/ronin/script/exceptions/exception.rb +3 -3
- data/lib/ronin/script/exceptions/not_built.rb +3 -3
- data/lib/ronin/script/exceptions/test_failed.rb +3 -3
- data/lib/ronin/script/path.rb +3 -3
- data/lib/ronin/script/script.rb +3 -3
- data/lib/ronin/script/testable.rb +3 -3
- data/lib/ronin/service.rb +3 -3
- data/lib/ronin/service_credential.rb +3 -3
- data/lib/ronin/software.rb +3 -3
- data/lib/ronin/spec/database.rb +27 -21
- data/lib/ronin/target.rb +3 -3
- data/lib/ronin/tcp_port.rb +3 -3
- data/lib/ronin/udp_port.rb +3 -3
- data/lib/ronin/ui.rb +3 -3
- data/lib/ronin/ui/cli.rb +3 -3
- data/lib/ronin/ui/cli/class_command.rb +14 -7
- data/lib/ronin/ui/cli/cli.rb +5 -5
- data/lib/ronin/ui/cli/command.rb +5 -7
- data/lib/ronin/ui/cli/commands.rb +3 -3
- data/lib/ronin/ui/cli/commands/campaigns.rb +5 -7
- data/lib/ronin/ui/cli/commands/console.rb +3 -3
- data/lib/ronin/ui/cli/commands/creds.rb +3 -3
- data/lib/ronin/ui/cli/commands/database.rb +3 -3
- data/lib/ronin/ui/cli/commands/emails.rb +3 -3
- data/lib/ronin/ui/cli/commands/exec.rb +3 -3
- data/lib/ronin/ui/cli/commands/fuzzer.rb +16 -16
- data/lib/ronin/ui/cli/commands/help.rb +3 -3
- data/lib/ronin/ui/cli/commands/hosts.rb +5 -7
- data/lib/ronin/ui/cli/commands/install.rb +7 -11
- data/lib/ronin/ui/cli/commands/ips.rb +5 -7
- data/lib/ronin/ui/cli/commands/net/proxy.rb +19 -12
- data/lib/ronin/ui/cli/commands/repos.rb +3 -3
- data/lib/ronin/ui/cli/commands/uninstall.rb +3 -3
- data/lib/ronin/ui/cli/commands/update.rb +3 -3
- data/lib/ronin/ui/cli/commands/urls.rb +3 -3
- data/lib/ronin/ui/cli/commands/wordlist.rb +3 -3
- data/lib/ronin/ui/cli/exceptions.rb +3 -3
- data/lib/ronin/ui/cli/exceptions/unknown_command.rb +3 -3
- data/lib/ronin/ui/cli/model_command.rb +6 -9
- data/lib/ronin/ui/cli/printing.rb +3 -3
- data/lib/ronin/ui/cli/resources_command.rb +7 -11
- data/lib/ronin/ui/cli/script_command.rb +5 -10
- data/lib/ronin/ui/console.rb +3 -3
- data/lib/ronin/ui/console/commands.rb +3 -3
- data/lib/ronin/ui/console/console.rb +3 -3
- data/lib/ronin/ui/console/context.rb +3 -3
- data/lib/ronin/ui/console/shell.rb +3 -3
- data/lib/ronin/url.rb +5 -7
- data/lib/ronin/url_query_param.rb +3 -3
- data/lib/ronin/url_query_param_name.rb +6 -6
- data/lib/ronin/url_scheme.rb +4 -4
- data/lib/ronin/user_name.rb +3 -3
- data/lib/ronin/vendor.rb +3 -3
- data/lib/ronin/version.rb +5 -5
- data/lib/ronin/web_credential.rb +5 -7
- data/man/ronin-campaigns.1.md +20 -20
- data/man/ronin-console.1.md +17 -17
- data/man/ronin-creds.1.md +16 -16
- data/man/ronin-database.1.md +23 -23
- data/man/ronin-emails.1.md +18 -18
- data/man/ronin-exec.1.md +11 -11
- data/man/ronin-fuzzer.1.md +23 -23
- data/man/ronin-help.1.md +5 -5
- data/man/ronin-hosts.1.md +20 -20
- data/man/ronin-install.1.md +18 -18
- data/man/ronin-ips.1.md +21 -21
- data/man/ronin-net-proxy.1.md +24 -24
- data/man/ronin-repos.1.md +18 -18
- data/man/ronin-uninstall.1.md +14 -14
- data/man/ronin-update.1.md +14 -14
- data/man/ronin-urls.1.md +22 -22
- data/man/ronin-wordlist.1.md +14 -13
- data/man/ronin.1.md +1 -1
- data/spec/arch_spec.rb +59 -46
- data/spec/author_spec.rb +14 -14
- data/spec/campaign_spec.rb +8 -0
- data/spec/credential_spec.rb +11 -8
- data/spec/database_spec.rb +6 -6
- data/spec/email_address_spec.rb +23 -20
- data/spec/host_name_spec.rb +24 -22
- data/spec/installation_spec.rb +6 -6
- data/spec/ip_address_spec.rb +31 -26
- data/spec/license_spec.rb +15 -9
- data/spec/mac_address_spec.rb +17 -8
- data/spec/model/has_authors_spec.rb +56 -37
- data/spec/model/has_description_spec.rb +36 -23
- data/spec/model/has_license_spec.rb +38 -28
- data/spec/model/has_name_spec.rb +36 -19
- data/spec/model/has_title_spec.rb +27 -14
- data/spec/model/has_version_spec.rb +64 -35
- data/spec/model/model_spec.rb +57 -33
- data/spec/model/models/{basic_model.rb → base_model.rb} +1 -1
- data/spec/model/models/{custom_model.rb → inherited_model.rb} +2 -3
- data/spec/os_spec.rb +24 -20
- data/spec/password_spec.rb +17 -9
- data/spec/port_spec.rb +30 -22
- data/spec/repository_spec.rb +59 -60
- data/spec/ronin_spec.rb +4 -4
- data/spec/script/buildable_spec.rb +8 -8
- data/spec/script/deployable_spec.rb +7 -7
- data/spec/script/path_spec.rb +42 -40
- data/spec/script/script_spec.rb +23 -23
- data/spec/script/testable_spec.rb +20 -20
- data/spec/service_spec.rb +14 -8
- data/spec/software_spec.rb +30 -17
- data/spec/spec_helper.rb +4 -4
- data/spec/ui/cli/classes/test_command.rb +2 -4
- data/spec/ui/cli/cli_spec.rb +5 -5
- data/spec/ui/cli/command_spec.rb +34 -30
- data/spec/url_query_param_spec.rb +23 -14
- data/spec/url_scheme_spec.rb +12 -9
- data/spec/url_spec.rb +64 -61
- data/spec/vendor_spec.rb +15 -8
- metadata +122 -150
- data/.gemtest +0 -0
data/bin/ronin-repos
CHANGED
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
|
5
|
-
|
6
|
-
if File.
|
7
|
-
Dir.chdir(
|
8
|
-
require 'bundler'
|
9
|
-
|
5
|
+
root = File.expand_path(File.join(File.dirname(__FILE__),'..'))
|
6
|
+
if File.file?(File.join(root,'Gemfile.lock'))
|
7
|
+
Dir.chdir(root) do
|
10
8
|
begin
|
11
|
-
|
12
|
-
rescue
|
9
|
+
require 'bundler/setup'
|
10
|
+
rescue LoadError => e
|
13
11
|
warn e.message
|
14
|
-
warn "Run `
|
15
|
-
exit
|
12
|
+
warn "Run `gem install bundler` to install Bundler"
|
13
|
+
exit -1
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
19
17
|
|
20
|
-
lib_dir = File.join(root_dir,'lib')
|
21
|
-
$LOAD_PATH << lib_dir unless $LOAD_PATH.include?(lib_dir)
|
22
|
-
|
23
18
|
require 'ronin/ui/cli/commands/repos'
|
24
19
|
|
25
20
|
Ronin::UI::CLI::Commands::Repos.start
|
data/bin/ronin-uninstall
CHANGED
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
|
5
|
-
|
6
|
-
if File.
|
7
|
-
Dir.chdir(
|
8
|
-
require 'bundler'
|
9
|
-
|
5
|
+
root = File.expand_path(File.join(File.dirname(__FILE__),'..'))
|
6
|
+
if File.file?(File.join(root,'Gemfile.lock'))
|
7
|
+
Dir.chdir(root) do
|
10
8
|
begin
|
11
|
-
|
12
|
-
rescue
|
9
|
+
require 'bundler/setup'
|
10
|
+
rescue LoadError => e
|
13
11
|
warn e.message
|
14
|
-
warn "Run `
|
15
|
-
exit
|
12
|
+
warn "Run `gem install bundler` to install Bundler"
|
13
|
+
exit -1
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
19
17
|
|
20
|
-
lib_dir = File.join(root_dir,'lib')
|
21
|
-
$LOAD_PATH << lib_dir unless $LOAD_PATH.include?(lib_dir)
|
22
|
-
|
23
18
|
require 'ronin/ui/cli/commands/uninstall'
|
24
19
|
|
25
20
|
Ronin::UI::CLI::Commands::Uninstall.start
|
data/bin/ronin-update
CHANGED
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
|
5
|
-
|
6
|
-
if File.
|
7
|
-
Dir.chdir(
|
8
|
-
require 'bundler'
|
9
|
-
|
5
|
+
root = File.expand_path(File.join(File.dirname(__FILE__),'..'))
|
6
|
+
if File.file?(File.join(root,'Gemfile.lock'))
|
7
|
+
Dir.chdir(root) do
|
10
8
|
begin
|
11
|
-
|
12
|
-
rescue
|
9
|
+
require 'bundler/setup'
|
10
|
+
rescue LoadError => e
|
13
11
|
warn e.message
|
14
|
-
warn "Run `
|
15
|
-
exit
|
12
|
+
warn "Run `gem install bundler` to install Bundler"
|
13
|
+
exit -1
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
19
17
|
|
20
|
-
lib_dir = File.join(root_dir,'lib')
|
21
|
-
$LOAD_PATH << lib_dir unless $LOAD_PATH.include?(lib_dir)
|
22
|
-
|
23
18
|
require 'ronin/ui/cli/commands/update'
|
24
19
|
|
25
20
|
Ronin::UI::CLI::Commands::Update.start
|
data/bin/ronin-urls
CHANGED
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
|
5
|
-
|
6
|
-
if File.
|
7
|
-
Dir.chdir(
|
8
|
-
require 'bundler'
|
9
|
-
|
5
|
+
root = File.expand_path(File.join(File.dirname(__FILE__),'..'))
|
6
|
+
if File.file?(File.join(root,'Gemfile.lock'))
|
7
|
+
Dir.chdir(root) do
|
10
8
|
begin
|
11
|
-
|
12
|
-
rescue
|
9
|
+
require 'bundler/setup'
|
10
|
+
rescue LoadError => e
|
13
11
|
warn e.message
|
14
|
-
warn "Run `
|
15
|
-
exit
|
12
|
+
warn "Run `gem install bundler` to install Bundler"
|
13
|
+
exit -1
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
19
17
|
|
20
|
-
lib_dir = File.join(root_dir,'lib')
|
21
|
-
$LOAD_PATH << lib_dir unless $LOAD_PATH.include?(lib_dir)
|
22
|
-
|
23
18
|
require 'ronin/ui/cli/commands/urls'
|
24
19
|
|
25
20
|
Ronin::UI::CLI::Commands::Urls.start
|
data/bin/ronin-wordlist
CHANGED
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
|
5
|
-
|
6
|
-
if File.
|
7
|
-
Dir.chdir(
|
8
|
-
require 'bundler'
|
9
|
-
|
5
|
+
root = File.expand_path(File.join(File.dirname(__FILE__),'..'))
|
6
|
+
if File.file?(File.join(root,'Gemfile.lock'))
|
7
|
+
Dir.chdir(root) do
|
10
8
|
begin
|
11
|
-
|
12
|
-
rescue
|
9
|
+
require 'bundler/setup'
|
10
|
+
rescue LoadError => e
|
13
11
|
warn e.message
|
14
|
-
warn "Run `
|
15
|
-
exit
|
12
|
+
warn "Run `gem install bundler` to install Bundler"
|
13
|
+
exit -1
|
16
14
|
end
|
17
15
|
end
|
18
16
|
end
|
19
17
|
|
20
|
-
lib_dir = File.join(root_dir,'lib')
|
21
|
-
$LOAD_PATH << lib_dir unless $LOAD_PATH.include?(lib_dir)
|
22
|
-
|
23
18
|
require 'ronin/ui/cli/commands/wordlist'
|
24
19
|
|
25
20
|
Ronin::UI::CLI::Commands::Wordlist.start
|
data/gemspec.yml
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
name: ronin
|
2
|
-
summary: A Ruby platform for
|
2
|
+
summary: A Ruby platform for vulnerability research and exploit development.
|
3
3
|
description:
|
4
|
-
Ronin is a Ruby platform for
|
5
|
-
Ronin allows for the rapid development and distribution of code,
|
6
|
-
|
4
|
+
Ronin is a Ruby platform for vulnerability research and exploit development.
|
5
|
+
Ronin allows for the rapid development and distribution of code, Exploits
|
6
|
+
Payloads, Scanners, etc, via Repositories.
|
7
7
|
|
8
|
-
license: GPL-3
|
8
|
+
license: GPL-3.0
|
9
9
|
authors: Postmodern
|
10
10
|
email: postmodern.mod3@gmail.com
|
11
|
-
homepage:
|
11
|
+
homepage: https://ronin-rb.dev
|
12
12
|
has_yard: true
|
13
13
|
post_install_message: |
|
14
14
|
*************************************************************************
|
@@ -81,10 +81,10 @@ dependencies:
|
|
81
81
|
ripl-short_errors: ~> 0.1
|
82
82
|
ripl-color_result: ~> 0.3
|
83
83
|
# Ronin dependencies:
|
84
|
-
ronin-support: ~> 0.5
|
84
|
+
ronin-support: ~> 0.5, >= 0.5.2
|
85
85
|
|
86
86
|
development_dependencies:
|
87
|
-
bundler: ~>
|
87
|
+
bundler: ~> 2.0
|
88
88
|
yard: ~> 0.8
|
89
89
|
yard-dm: ~> 0.1
|
90
90
|
yard-dm-is-predefined: ~> 0.2
|
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
require 'ronin/config'
|
@@ -68,11 +68,11 @@ complete(:anywhere => /[a-z]+:\/\/([^:\/\?]+(:\d+)?(\/[^\?;]*(\?[^\?;]*)?)?)?/)
|
|
68
68
|
query = Ronin::URL.all('scheme.name' => match[1])
|
69
69
|
|
70
70
|
if match[2]
|
71
|
-
unless (match[4] || match[3])
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
71
|
+
query = unless (match[4] || match[3])
|
72
|
+
query.all('host_name.address.like' => "#{match[2]}%")
|
73
|
+
else
|
74
|
+
query.all('host_name.address' => match[2])
|
75
|
+
end
|
76
76
|
end
|
77
77
|
|
78
78
|
if match[3]
|
@@ -80,11 +80,11 @@ complete(:anywhere => /[a-z]+:\/\/([^:\/\?]+(:\d+)?(\/[^\?;]*(\?[^\?;]*)?)?)?/)
|
|
80
80
|
end
|
81
81
|
|
82
82
|
if match[4]
|
83
|
-
unless match[5]
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
83
|
+
query = unless match[5]
|
84
|
+
query.all(:path.like => "#{match[4]}%")
|
85
|
+
else
|
86
|
+
query.all(:path => match[4])
|
87
|
+
end
|
88
88
|
end
|
89
89
|
|
90
90
|
if match[5]
|
@@ -93,19 +93,19 @@ complete(:anywhere => /[a-z]+:\/\/([^:\/\?]+(:\d+)?(\/[^\?;]*(\?[^\?;]*)?)?)?/)
|
|
93
93
|
params[0..-2].each do |name,value|
|
94
94
|
query = query.all(
|
95
95
|
'query_params.name.name' => name,
|
96
|
-
'query_params.value'
|
96
|
+
'query_params.value' => value
|
97
97
|
)
|
98
98
|
end
|
99
99
|
|
100
100
|
if (param = params.last)
|
101
|
-
if param[1].empty?
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
101
|
+
query = if param[1].empty?
|
102
|
+
query.all('query_params.name.name.like' => "#{param[0]}%")
|
103
|
+
else
|
104
|
+
query.all(
|
105
|
+
'query_params.name.name' => param[0],
|
106
|
+
'query_params.value.like' => "#{param[1]}%"
|
107
|
+
)
|
108
|
+
end
|
109
109
|
end
|
110
110
|
end
|
111
111
|
|
@@ -139,7 +139,7 @@ complete(:anywhere => /[a-zA-Z0-9\._-]+@[a-zA-Z0-9\._-]*/) do |email|
|
|
139
139
|
user, host = email.split('@',2)
|
140
140
|
|
141
141
|
Ronin::EmailAddress.all(
|
142
|
-
'user_name.name'
|
142
|
+
'user_name.name' => user,
|
143
143
|
'host_name.address.like' => "#{host}%"
|
144
144
|
)
|
145
145
|
end
|
data/lib/ronin.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
#
|
data/lib/ronin/address.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
require 'ronin/model'
|
@@ -86,10 +86,9 @@ module Ronin
|
|
86
86
|
# @api public
|
87
87
|
#
|
88
88
|
def self.[](key)
|
89
|
-
|
90
|
-
|
91
|
-
else
|
92
|
-
super(key)
|
89
|
+
case key
|
90
|
+
when String then first(:address => key)
|
91
|
+
else super(key)
|
93
92
|
end
|
94
93
|
end
|
95
94
|
|
data/lib/ronin/arch.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
require 'ronin/model'
|
data/lib/ronin/author.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
require 'ronin/model'
|
@@ -57,10 +57,8 @@ module Ronin
|
|
57
57
|
# @api public
|
58
58
|
#
|
59
59
|
def to_s
|
60
|
-
if self.email
|
61
|
-
|
62
|
-
else
|
63
|
-
super
|
60
|
+
if self.email then "#{self.name} <#{self.email}>"
|
61
|
+
else super
|
64
62
|
end
|
65
63
|
end
|
66
64
|
|
data/lib/ronin/auto_load.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
require 'open_namespace'
|
@@ -53,7 +53,7 @@ module Ronin
|
|
53
53
|
const = super(name)
|
54
54
|
|
55
55
|
if (const && const < DataMapper::Resource)
|
56
|
-
|
56
|
+
DataMapper.finalize
|
57
57
|
end
|
58
58
|
|
59
59
|
return const
|
@@ -81,7 +81,7 @@ module Ronin
|
|
81
81
|
|
82
82
|
# if the loaded Class is a DataMapper Resource, re-finalize
|
83
83
|
if const < DataMapper::Resource
|
84
|
-
|
84
|
+
DataMapper.finalize
|
85
85
|
end
|
86
86
|
|
87
87
|
return const
|
data/lib/ronin/bootstrap.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2021 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
|
-
# This file is part of
|
4
|
+
# This file is part of ronin.
|
5
5
|
#
|
6
6
|
# Ronin is free software: you can redistribute it and/or modify
|
7
7
|
# it under the terms of the GNU General Public License as published by
|
@@ -14,7 +14,7 @@
|
|
14
14
|
# GNU General Public License for more details.
|
15
15
|
#
|
16
16
|
# You should have received a copy of the GNU General Public License
|
17
|
-
# along with Ronin. If not, see <
|
17
|
+
# along with Ronin. If not, see <https://www.gnu.org/licenses/>.
|
18
18
|
#
|
19
19
|
|
20
20
|
#
|