ronin-db 0.2.0.rc1-java → 0.2.1-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +1 -0
  3. data/.ruby-version +1 -1
  4. data/ChangeLog.md +7 -1
  5. data/README.md +1 -1
  6. data/data/completions/ronin-db +181 -93
  7. data/gemspec.yml +3 -3
  8. data/lib/ronin/db/cli/command.rb +2 -2
  9. data/lib/ronin/db/cli/commands/add.rb +4 -4
  10. data/lib/ronin/db/cli/commands/asn.rb +3 -3
  11. data/lib/ronin/db/cli/commands/certs.rb +2 -2
  12. data/lib/ronin/db/cli/commands/completion.rb +3 -2
  13. data/lib/ronin/db/cli/commands/creds.rb +3 -3
  14. data/lib/ronin/db/cli/commands/edit.rb +3 -3
  15. data/lib/ronin/db/cli/commands/emails.rb +3 -3
  16. data/lib/ronin/db/cli/commands/hosts.rb +3 -3
  17. data/lib/ronin/db/cli/commands/ips.rb +3 -3
  18. data/lib/ronin/db/cli/commands/irb.rb +4 -4
  19. data/lib/ronin/db/cli/commands/list.rb +3 -3
  20. data/lib/ronin/db/cli/commands/migrate.rb +4 -4
  21. data/lib/ronin/db/cli/commands/open_ports.rb +2 -2
  22. data/lib/ronin/db/cli/commands/oses.rb +2 -2
  23. data/lib/ronin/db/cli/commands/passwords.rb +3 -3
  24. data/lib/ronin/db/cli/commands/people.rb +3 -3
  25. data/lib/ronin/db/cli/commands/phone_numbers.rb +3 -3
  26. data/lib/ronin/db/cli/commands/ports.rb +3 -3
  27. data/lib/ronin/db/cli/commands/remove.rb +3 -3
  28. data/lib/ronin/db/cli/commands/services.rb +3 -3
  29. data/lib/ronin/db/cli/commands/software.rb +2 -2
  30. data/lib/ronin/db/cli/commands/street_addresses.rb +2 -2
  31. data/lib/ronin/db/cli/commands/urls.rb +3 -3
  32. data/lib/ronin/db/cli/commands/web_vulns.rb +2 -2
  33. data/lib/ronin/db/cli/database_options.rb +3 -3
  34. data/lib/ronin/db/cli/deletable.rb +1 -1
  35. data/lib/ronin/db/cli/importable.rb +1 -1
  36. data/lib/ronin/db/cli/model_command.rb +4 -4
  37. data/lib/ronin/db/cli/modifiable.rb +3 -3
  38. data/lib/ronin/db/cli/printing.rb +1 -1
  39. data/lib/ronin/db/cli/ruby_shell.rb +1 -1
  40. data/lib/ronin/db/cli/uri_methods.rb +3 -3
  41. data/lib/ronin/db/cli.rb +5 -2
  42. data/lib/ronin/db/config_file.rb +3 -3
  43. data/lib/ronin/db/exceptions.rb +1 -1
  44. data/lib/ronin/db/home.rb +1 -1
  45. data/lib/ronin/db/root.rb +1 -1
  46. data/lib/ronin/db/tasks.rb +1 -1
  47. data/lib/ronin/db/version.rb +2 -2
  48. data/lib/ronin/db.rb +4 -4
  49. metadata +7 -7
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8e85a6b6a3de8992b78286596848fabaceb34ae2f4787f134cdade52b3591a50
4
- data.tar.gz: b0431eab3c3bb2e7335ec7a8aaccc9beafdacc082efe55f362b6bd06a433e565
3
+ metadata.gz: 198ef5973bd7443917cb4197a1de0b3a074344d66758a3de8924b4406e79de8c
4
+ data.tar.gz: fbdd5c473026070044a6e7beab743bc5bdf561acffeea580822dfb9ce4f37050
5
5
  SHA512:
6
- metadata.gz: bed19615be36b63f69078f6adf6330ce357ff743566b819d37d9d2500e860412dea0413ab686dfe2ead8736e5eedb5f2daf6683cb1a182013fa00e17088d66bb
7
- data.tar.gz: fbb146bbcc81d05d1dc3b1e890adce347b7313d1059505af9f42f379adb6bda8137eaa358d8229747e72d423ea81f22a7abaa992cdbb6fe550abe68cc9f1e21e
6
+ metadata.gz: 616a342e416d976e3c894215bb687d1de67142bb2183e74438be9380fca345dcda4a6823373b225f5570d744d1d4096c8e88440d9c8281e7782a6e198c458f6f
7
+ data.tar.gz: ba7974aced23bf889f4ab44277bb4e7ae3a56d9c01c99f4651f3b575ecb1634075ea0d0f03110a398d268588b859adcf305411b26aa4c0987e04b25a91d25051
@@ -13,6 +13,7 @@ jobs:
13
13
  - '3.1'
14
14
  - '3.2'
15
15
  - '3.3'
16
+ - '3.4'
16
17
  - jruby
17
18
  - truffleruby
18
19
  name: Ruby ${{ matrix.ruby }}
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-3.1
1
+ ruby-3.3
data/ChangeLog.md CHANGED
@@ -1,6 +1,11 @@
1
- ### 0.2.0 / 2024-XX-XX
1
+ ### 0.2.1 / 2025-02-14
2
+
3
+ * Use `require_relative` to improve load times.
4
+
5
+ ### 0.2.0 / 2024-07-22
2
6
 
3
7
  * Require [ronin-db-activerecord] ~> 0.2.
8
+ * Require [ronin-core] ~> 0.2.
4
9
  * Added {Ronin::DB::Tasks}.
5
10
  * Added the `pool:` keyword argument to {Ronin::DB.connect}.
6
11
  * Allow {Ronin::DB.connect} to accept a String URL.
@@ -56,3 +61,4 @@
56
61
 
57
62
  [sqlite]: https://sqlite.org/
58
63
  [ronin-db-activerecord]: https://github.com/ronin-rb/ronin-db-activerecord#readme
64
+ [ronin-core]: https://github.com/ronin-rb/ronin-core#readme
data/README.md CHANGED
@@ -257,7 +257,7 @@ local database console.
257
257
 
258
258
  ## License
259
259
 
260
- Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
260
+ Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
261
261
 
262
262
  ronin-db is free software: you can redistribute it and/or modify
263
263
  it under the terms of the GNU Lesser General Public License as published
@@ -11,7 +11,7 @@ _ronin-db_completions_filter() {
11
11
 
12
12
  if [[ "${cur:0:1}" == "-" ]]; then
13
13
  echo "$words"
14
-
14
+
15
15
  else
16
16
  for word in $words; do
17
17
  [[ "${word:0:1}" != "-" ]] && result+=("$word")
@@ -28,244 +28,332 @@ _ronin-db_completions() {
28
28
  local compline="${compwords[*]}"
29
29
 
30
30
  case "$compline" in
31
+ 'street-addresses'*'--db-file')
32
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
33
+ ;;
34
+
31
35
  'certs'*'--subject-alt-name')
32
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
36
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
37
+ ;;
38
+
39
+ 'phone-numbers'*'--db-file')
40
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
33
41
  ;;
34
42
 
35
43
  'phone-numbers'*'--import')
36
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
44
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
37
45
  ;;
38
46
 
39
- 'passwords'*'--for-user')
40
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
47
+ 'web-vulns'*'--for-path')
48
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
49
+ ;;
50
+
51
+ 'open-ports'*'--db-file')
52
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
41
53
  ;;
42
54
 
43
55
  'web-vulns'*'--for-host')
44
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
56
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
57
+ ;;
58
+
59
+ 'passwords'*'--for-user')
60
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
61
+ ;;
62
+
63
+ 'web-vulns'*'--db-file')
64
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
65
+ ;;
66
+
67
+ 'passwords'*'--db-file')
68
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
45
69
  ;;
46
70
 
47
71
  'certs'*'--common-name')
48
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
72
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
73
+ ;;
74
+
75
+ 'emails'*'--with-user')
76
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
49
77
  ;;
50
78
 
51
79
  'emails'*'--with-host')
52
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
80
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
53
81
  ;;
54
82
 
55
- 'emails'*'--with-user')
56
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
83
+ 'software'*'--db-file')
84
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
57
85
  ;;
58
86
 
59
87
  'passwords'*'--import')
60
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
88
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
89
+ ;;
90
+
91
+ 'services'*'--db-file')
92
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
61
93
  ;;
62
94
 
63
95
  'services'*'--import')
64
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
96
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
65
97
  ;;
66
98
 
67
- 'creds'*'--for-user')
68
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
99
+ 'migrate'*'--db-file')
100
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
69
101
  ;;
70
102
 
71
- 'street-addresses'*)
72
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --for-person -P --for-organization -O --with-address -a --with-city -c --with-state -s --with-country -C --with-zipcode -z")" -- "$cur" )
103
+ 'people'*'--db-file')
104
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
73
105
  ;;
74
106
 
75
107
  'urls'*'--directory')
76
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A directory -- "$cur" )
108
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
77
109
  ;;
78
110
 
79
- 'emails'*'--import')
80
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
111
+ 'creds'*'--for-user')
112
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
113
+ ;;
114
+
115
+ 'street-addresses'*)
116
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --for-person -P --for-organization -O --with-address -a --with-city -c --with-state -s --with-country -C --with-zipcode -z")" -- "$cur")
117
+ ;;
118
+
119
+ 'emails'*'--db-file')
120
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
81
121
  ;;
82
122
 
83
123
  'ips'*'--with-host')
84
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
124
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
125
+ ;;
126
+
127
+ 'hosts'*'--db-file')
128
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
129
+ ;;
130
+
131
+ 'ports'*'--db-file')
132
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
133
+ ;;
134
+
135
+ 'emails'*'--import')
136
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
85
137
  ;;
86
138
 
87
139
  'people'*'--import')
88
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
140
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
141
+ ;;
142
+
143
+ 'creds'*'--db-file')
144
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
145
+ ;;
146
+
147
+ 'certs'*'--db-file')
148
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
149
+ ;;
150
+
151
+ 'ports'*'--import')
152
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
153
+ ;;
154
+
155
+ 'oses'*'--db-file')
156
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
157
+ ;;
158
+
159
+ 'urls'*'--db-file')
160
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
161
+ ;;
162
+
163
+ 'hosts'*'--import')
164
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
89
165
  ;;
90
166
 
91
167
  'add'*'--username')
92
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
168
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
93
169
  ;;
94
170
 
95
171
  'certs'*'--import')
96
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
172
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
97
173
  ;;
98
174
 
99
175
  'creds'*'--import')
100
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
176
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
101
177
  ;;
102
178
 
103
- 'hosts'*'--import')
104
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
179
+ 'ips'*'--db-file')
180
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
105
181
  ;;
106
182
 
107
- 'ports'*'--import')
108
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
183
+ 'add'*'--sqlite3')
184
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
109
185
  ;;
110
186
 
111
- 'add'*'--sqlite3')
112
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
187
+ 'urls'*'--import')
188
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
113
189
  ;;
114
190
 
115
- 'phone-numbers'*)
116
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-person -P --for-organization -O --with-country-code -c --with-area-code -a --with-prefix -p --with-line-number -l --similar-to -S")" -- "$cur" )
191
+ 'irb'*'--db-file')
192
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
117
193
  ;;
118
194
 
119
- 'urls'*'--import')
120
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
195
+ 'asn'*'--db-file')
196
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
121
197
  ;;
122
198
 
123
- 'ips'*'--import')
124
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
199
+ 'phone-numbers'*)
200
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-person -P --for-organization -O --with-country-code -c --with-area-code -a --with-prefix -p --with-line-number -l --similar-to -S")" -- "$cur")
125
201
  ;;
126
202
 
127
- 'passwords'*'-u')
128
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
203
+ 'web-vulns'*'-p')
204
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
129
205
  ;;
130
206
 
131
207
  'web-vulns'*'-H')
132
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
208
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
133
209
  ;;
134
210
 
135
- 'urls'*'--host')
136
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
211
+ 'passwords'*'-u')
212
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
137
213
  ;;
138
214
 
139
- 'add'*'--host')
140
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
215
+ 'ips'*'--import')
216
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
141
217
  ;;
142
218
 
143
- 'asn'*'--file')
144
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
219
+ 'urls'*'--path')
220
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -A directory -- "$cur")
221
+ ;;
222
+
223
+ 'urls'*'--host')
224
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
145
225
  ;;
146
226
 
147
227
  'completion'*)
148
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--print --install --uninstall")" -- "$cur" )
228
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--print --install --uninstall")" -- "$cur")
149
229
  ;;
150
230
 
151
- 'open-ports'*)
152
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --with-port -p --with-protocol -P --with-service -S --with-ip -I")" -- "$cur" )
231
+ 'asn'*'--file')
232
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
153
233
  ;;
154
234
 
155
- 'emails'*'-H')
156
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
235
+ 'open-ports'*)
236
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --with-port -p --with-protocol -P --with-service -S --with-ip -I")" -- "$cur")
157
237
  ;;
158
238
 
159
- 'emails'*'-u')
160
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
239
+ 'add'*'--host')
240
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
161
241
  ;;
162
242
 
163
243
  'passwords'*)
164
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-user -u --with-email -e")" -- "$cur" )
244
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-user -u --with-email -e")" -- "$cur")
165
245
  ;;
166
246
 
167
247
  'web-vulns'*)
168
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --with-type -t --for-host -H --for-domain -d --for-path -p --with-query-param -q --with-header-name --with-cookie-param -c --with-form-param -f --with-request-method -M")" -- "$cur" )
248
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --with-type -t --for-host -H --for-domain -d --for-path -p --with-query-param -q --with-header-name --with-cookie-param -c --with-form-param -f --with-request-method -M")" -- "$cur")
169
249
  ;;
170
250
 
171
- 'creds'*'-u')
172
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
251
+ 'emails'*'-H')
252
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
173
253
  ;;
174
254
 
175
- 'services'*)
176
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --named --with-port -p --with-protocol -P --with-ip -I")" -- "$cur" )
255
+ 'emails'*'-u')
256
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
257
+ ;;
258
+
259
+ 'creds'*'-u')
260
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
177
261
  ;;
178
262
 
179
263
  'software'*)
180
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --name -N --named --version -V --vendor")" -- "$cur" )
264
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --name -N --named --version -V --vendor")" -- "$cur")
181
265
  ;;
182
266
 
183
- 'migrate'*)
184
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file")" -- "$cur" )
267
+ 'services'*)
268
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --named --with-port -p --with-protocol -P --with-ip -I")" -- "$cur")
269
+ ;;
270
+
271
+ 'urls'*'-d')
272
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A directory -- "$cur")
185
273
  ;;
186
274
 
187
275
  'urls'*'-H')
188
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
276
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
189
277
  ;;
190
278
 
191
- 'urls'*'-d')
192
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A directory -- "$cur" )
279
+ 'migrate'*)
280
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file")" -- "$cur")
193
281
  ;;
194
282
 
195
283
  'add'*'-H')
196
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
284
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
197
285
  ;;
198
286
 
199
- 'add'*'-u')
200
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A user -- "$cur" )
287
+ 'people'*)
288
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-address -a --for-city -c --for-state -s --for-province -p --for-zipcode -z --for-country -C --with-prefix -P --with-first-name -f --with-middle-name -m --with-middle-initial -M --with-last-name -l --with-suffix -S")" -- "$cur")
201
289
  ;;
202
290
 
203
- 'asn'*'-f')
204
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A file -- "$cur" )
291
+ 'add'*'-u')
292
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A user -- "$cur")
205
293
  ;;
206
294
 
207
- 'emails'*)
208
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --with-host -H --with-ip -I --with-user -u --for-person -P --for-organization -O")" -- "$cur" )
295
+ 'asn'*'-f')
296
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A file -- "$cur")
209
297
  ;;
210
298
 
211
299
  'ips'*'-H')
212
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -A hostname -- "$cur" )
300
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -A hostname -- "$cur")
213
301
  ;;
214
302
 
215
- 'people'*)
216
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-address -a --for-city -c --for-state -s --for-province -p --for-zipcode -z --for-country -C --with-prefix -P --with-first-name -f --with-middle-name -m --with-middle-initial -M --with-last-name -l --with-suffix -S")" -- "$cur" )
303
+ 'emails'*)
304
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --with-host -H --with-ip -I --with-user -u --for-person -P --for-organization -O")" -- "$cur")
217
305
  ;;
218
306
 
219
307
  'certs'*)
220
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --active -A --expired -E --issuer-common-name --issuer-organization --issuer-organizational-unit --issuer-locality --issuer-state --issuer-country --common-name --subject-alt-name --organization --organizational-unit --locality --state --country --import")" -- "$cur" )
308
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --active -A --expired -E --issuer-common-name --issuer-organization --issuer-organizational-unit --issuer-locality --issuer-state --issuer-country --common-name --subject-alt-name --organization --organizational-unit --locality --state --country --import")" -- "$cur")
221
309
  ;;
222
310
 
223
311
  'creds'*)
224
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-user -u --with-password -P")" -- "$cur" )
312
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --for-user -u --with-password -P")" -- "$cur")
225
313
  ;;
226
314
 
227
315
  'hosts'*)
228
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --with-ip -I --with-port -p --domain -D --tld -T")" -- "$cur" )
316
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --with-ip -I --with-port -p --domain -D --tld -T")" -- "$cur")
229
317
  ;;
230
318
 
231
319
  'ports'*)
232
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --number -N --with-protocol -P --with-service -S --with-ip -I")" -- "$cur" )
320
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --number -N --with-protocol -P --with-service -S --with-ip -I")" -- "$cur")
321
+ ;;
322
+
323
+ 'urls'*)
324
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --http --https --host -H --port -p --path --fragment --directory -d --with-ext -E --query-string -q --with-query-param -P --with-query-param-name --with-query-param-value")" -- "$cur")
233
325
  ;;
234
326
 
235
327
  'list'*)
236
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--verbose -v")" -- "$cur" )
328
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--verbose -v")" -- "$cur")
237
329
  ;;
238
330
 
239
331
  'oses'*)
240
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --name -N --named --flavor -F --version -V")" -- "$cur" )
332
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --name -N --named --flavor -F --version -V")" -- "$cur")
241
333
  ;;
242
334
 
243
- 'urls'*)
244
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --http --https --host -H --port -p --path --fragment --directory -d --with-ext -E --query-string -q --with-query-param -P --with-query-param-name --with-query-param-value")" -- "$cur" )
335
+ 'ips'*)
336
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --v4 -4 --v6 -6 --with-port -p --with-mac-addr -M --with-host -H")" -- "$cur")
245
337
  ;;
246
338
 
247
- 'add'*)
248
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--adapter -A --sqlite3 --mysql2 --postgresql --host -H --port -p --username -u --password -P --read-password --database -D")" -- "$cur" )
339
+ 'irb'*)
340
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --no-connect")" -- "$cur")
249
341
  ;;
250
342
 
251
343
  'asn'*)
252
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --number -n --country-code -C --name -N --named --ip -I --ipv4 -4 --ipv6 -6 --update -u --url -U --file -f")" -- "$cur" )
253
- ;;
254
-
255
- 'ips'*)
256
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --delete --delete-all --add --import --v4 -4 --v6 -6 --with-port -p --with-mac-addr -M --with-host -H")" -- "$cur" )
344
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --verbose -v --number -n --country-code -C --name -N --named --ip -I --ipv4 -4 --ipv6 -6 --update -u --url -U --file -f")" -- "$cur")
257
345
  ;;
258
346
 
259
- 'irb'*)
260
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--db --db-uri --db-file --no-connect")" -- "$cur" )
347
+ 'add'*)
348
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--adapter -A --sqlite3 --mysql2 --postgresql --host -H --port -p --username -u --password -P --read-password --database -D")" -- "$cur")
261
349
  ;;
262
350
 
263
351
  *)
264
- while read -r; do COMPREPLY+=( "$REPLY" ); done < <( compgen -W "$(_ronin-db_completions_filter "--version -V help add asn certs completion creds edit emails hosts ips irb list migrate open-ports oses passwords people phone-numbers ports remove services software street-addresses urls web-vulns console")" -- "$cur" )
352
+ while read -r; do COMPREPLY+=("$REPLY"); done < <(compgen -W "$(_ronin-db_completions_filter "--version -V help add asn certs completion creds edit emails hosts ips irb list migrate open-ports oses passwords people phone-numbers ports remove services software street-addresses urls web-vulns console")" -- "$cur")
265
353
  ;;
266
354
 
267
355
  esac
268
356
  } &&
269
- complete -F _ronin-db_completions ronin-db
357
+ complete -F _ronin-db_completions ronin-db
270
358
 
271
359
  # ex: filetype=sh
data/gemspec.yml CHANGED
@@ -7,7 +7,7 @@ description: |
7
7
  host names, IPs, ports, etc. ronin-db also provides CLI commands for managing
8
8
  the database(s).
9
9
 
10
- license: LGPL-3.0
10
+ license: LGPL-3.0-or-later
11
11
  authors: Postmodern
12
12
  email: postmodern.mod3@gmail.com
13
13
  homepage: https://ronin-rb.dev
@@ -60,9 +60,9 @@ jruby_dependencies:
60
60
 
61
61
  dependencies:
62
62
  # Ronin dependencies:
63
- ronin-db-activerecord: ~> 0.2.0.rc1
63
+ ronin-db-activerecord: ~> 0.2
64
64
  ronin-support: ~> 1.0
65
- ronin-core: ~> 0.2.0.rc1
65
+ ronin-core: ~> 0.2
66
66
 
67
67
  development_dependencies:
68
68
  bundler: ~> 2.0
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-db - A common database library for managing and querying security data.
4
4
  #
5
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-db is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-db. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/db/root'
21
+ require_relative '../root'
22
22
 
23
23
  require 'ronin/core/cli/command'
24
24
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-db - A common database library for managing and querying security data.
4
4
  #
5
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-db is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,9 @@
18
18
  # along with ronin-db. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/db/cli/command'
22
- require 'ronin/db/cli/uri_methods'
23
- require 'ronin/db/config_file'
21
+ require_relative '../command'
22
+ require_relative '../uri_methods'
23
+ require_relative '../../config_file'
24
24
 
25
25
  require 'command_kit/options/verbose'
26
26
  require 'command_kit/printing'
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-db - A common database library for managing and querying security data.
4
4
  #
5
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-db is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,9 @@
18
18
  # along with ronin-db. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/db/cli/model_command'
22
- require 'ronin/core/cli/logging'
21
+ require_relative '../model_command'
23
22
 
23
+ require 'ronin/core/cli/logging'
24
24
  require 'ronin/support/network/asn'
25
25
  require 'ronin/support/network/asn/list'
26
26
 
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-db - A common database library for managing and querying security data.
4
4
  #
5
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-db is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,7 +18,7 @@
18
18
  # along with ronin-db. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/db/cli/model_command'
21
+ require_relative '../model_command'
22
22
 
23
23
  require 'command_kit/printing/indent'
24
24
  require 'command_kit/printing/fields'
@@ -2,7 +2,7 @@
2
2
  #
3
3
  # ronin-db - A common database library for managing and querying security data.
4
4
  #
5
- # Copyright (c) 2006-2024 Hal Brodigan (postmodern.mod3 at gmail.com)
5
+ # Copyright (c) 2006-2025 Hal Brodigan (postmodern.mod3 at gmail.com)
6
6
  #
7
7
  # ronin-db is free software: you can redistribute it and/or modify
8
8
  # it under the terms of the GNU Lesser General Public License as published
@@ -18,9 +18,10 @@
18
18
  # along with ronin-db. If not, see <https://www.gnu.org/licenses/>.
19
19
  #
20
20
 
21
- require 'ronin/db/root'
22
21
  require 'ronin/core/cli/completion_command'
23
22
 
23
+ require_relative '../../root'
24
+
24
25
  module Ronin
25
26
  module DB
26
27
  class CLI