ronin 0.2.4 → 0.3.0

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 (240) hide show
  1. data.tar.gz.sig +0 -0
  2. data/History.txt +95 -0
  3. data/Manifest.txt +55 -25
  4. data/README.txt +64 -52
  5. data/Rakefile +21 -14
  6. data/bin/ronin +1 -1
  7. data/bin/ronin-add +1 -1
  8. data/bin/ronin-console +1 -1
  9. data/bin/ronin-help +1 -1
  10. data/bin/ronin-install +1 -1
  11. data/bin/ronin-list +1 -1
  12. data/bin/ronin-remove +1 -1
  13. data/bin/ronin-uninstall +1 -1
  14. data/bin/ronin-update +1 -1
  15. data/lib/ronin.rb +2 -4
  16. data/lib/ronin/arch.rb +66 -21
  17. data/lib/ronin/author.rb +27 -18
  18. data/lib/ronin/cacheable.rb +63 -23
  19. data/lib/ronin/code/emittable.rb +1 -4
  20. data/lib/ronin/code/reference.rb +2 -5
  21. data/lib/ronin/code/symbol_table.rb +1 -4
  22. data/lib/ronin/code/token.rb +1 -4
  23. data/lib/ronin/config.rb +31 -10
  24. data/lib/ronin/database.rb +1 -4
  25. data/lib/ronin/database/database.rb +42 -23
  26. data/lib/ronin/database/exceptions.rb +1 -4
  27. data/lib/ronin/database/exceptions/invalid_config.rb +1 -4
  28. data/lib/ronin/environment.rb +1 -5
  29. data/lib/ronin/extensions.rb +1 -5
  30. data/lib/ronin/extensions/array.rb +8 -6
  31. data/lib/ronin/extensions/file.rb +9 -4
  32. data/lib/ronin/extensions/ip_addr.rb +33 -13
  33. data/lib/ronin/extensions/kernel.rb +44 -9
  34. data/lib/ronin/extensions/meta.rb +1 -4
  35. data/lib/ronin/extensions/string.rb +8 -7
  36. data/lib/ronin/extensions/uri.rb +1 -4
  37. data/lib/ronin/extensions/uri/http.rb +1 -48
  38. data/lib/ronin/extensions/uri/query_params.rb +27 -8
  39. data/lib/ronin/formatting.rb +1 -4
  40. data/lib/ronin/formatting/binary.rb +1 -4
  41. data/lib/ronin/formatting/digest.rb +1 -4
  42. data/lib/ronin/formatting/extensions.rb +1 -4
  43. data/lib/ronin/formatting/extensions/binary.rb +1 -4
  44. data/lib/ronin/formatting/extensions/binary/file.rb +3 -28
  45. data/lib/ronin/formatting/extensions/binary/integer.rb +31 -12
  46. data/lib/ronin/formatting/extensions/binary/string.rb +59 -36
  47. data/lib/ronin/formatting/extensions/digest.rb +1 -4
  48. data/lib/ronin/formatting/extensions/digest/string.rb +31 -9
  49. data/lib/ronin/formatting/extensions/http.rb +1 -4
  50. data/lib/ronin/formatting/extensions/http/string.rb +16 -9
  51. data/lib/ronin/formatting/extensions/text.rb +1 -4
  52. data/lib/ronin/formatting/extensions/text/array.rb +17 -7
  53. data/lib/ronin/formatting/extensions/text/string.rb +70 -27
  54. data/lib/ronin/formatting/http.rb +1 -4
  55. data/lib/ronin/formatting/text.rb +1 -4
  56. data/lib/ronin/license.rb +72 -65
  57. data/lib/ronin/model.rb +1 -4
  58. data/lib/ronin/model/has_description.rb +37 -8
  59. data/lib/ronin/model/has_license.rb +12 -8
  60. data/lib/ronin/model/has_name.rb +10 -7
  61. data/lib/ronin/model/has_version.rb +14 -4
  62. data/lib/ronin/model/model.rb +71 -14
  63. data/lib/ronin/network.rb +1 -4
  64. data/lib/ronin/network/esmtp.rb +1 -4
  65. data/lib/ronin/network/extensions.rb +1 -4
  66. data/lib/ronin/network/extensions/esmtp.rb +1 -4
  67. data/lib/ronin/network/extensions/esmtp/net.rb +49 -21
  68. data/lib/ronin/network/extensions/http.rb +1 -4
  69. data/lib/ronin/network/extensions/http/net.rb +319 -531
  70. data/lib/ronin/network/extensions/imap.rb +1 -4
  71. data/lib/ronin/network/extensions/imap/net.rb +50 -23
  72. data/lib/ronin/network/extensions/pop3.rb +1 -4
  73. data/lib/ronin/network/extensions/pop3/net.rb +40 -17
  74. data/lib/ronin/network/extensions/smtp.rb +1 -4
  75. data/lib/ronin/network/extensions/smtp/net.rb +49 -21
  76. data/lib/ronin/network/extensions/tcp.rb +1 -4
  77. data/lib/ronin/network/extensions/tcp/net.rb +234 -31
  78. data/lib/ronin/network/extensions/telnet.rb +1 -4
  79. data/lib/ronin/network/extensions/telnet/net.rb +83 -51
  80. data/lib/ronin/network/extensions/udp.rb +1 -4
  81. data/lib/ronin/network/extensions/udp/net.rb +164 -27
  82. data/lib/ronin/{sessions.rb → network/helpers.rb} +10 -13
  83. data/lib/ronin/network/helpers/esmtp.rb +129 -0
  84. data/lib/ronin/{sessions/session.rb → network/helpers/helper.rb} +25 -17
  85. data/lib/ronin/network/helpers/http.rb +444 -0
  86. data/lib/ronin/network/helpers/imap.rb +115 -0
  87. data/lib/ronin/network/helpers/pop3.rb +110 -0
  88. data/lib/ronin/network/helpers/smtp.rb +123 -0
  89. data/lib/ronin/network/helpers/tcp.rb +309 -0
  90. data/lib/ronin/network/helpers/telnet.rb +158 -0
  91. data/lib/ronin/network/helpers/udp.rb +197 -0
  92. data/lib/ronin/network/http.rb +3 -156
  93. data/lib/ronin/network/http/exceptions.rb +1 -4
  94. data/lib/ronin/network/http/exceptions/unknown_request.rb +1 -4
  95. data/lib/ronin/network/http/http.rb +214 -0
  96. data/lib/ronin/network/http/proxy.rb +308 -0
  97. data/lib/ronin/network/imap.rb +7 -6
  98. data/lib/ronin/network/pop3.rb +7 -6
  99. data/lib/ronin/network/smtp.rb +1 -4
  100. data/lib/ronin/network/smtp/email.rb +34 -18
  101. data/lib/ronin/network/smtp/smtp.rb +19 -7
  102. data/lib/ronin/network/tcp.rb +1 -4
  103. data/lib/ronin/network/telnet.rb +25 -12
  104. data/lib/ronin/network/udp.rb +1 -4
  105. data/lib/ronin/os.rb +43 -21
  106. data/lib/ronin/path.rb +29 -9
  107. data/lib/ronin/platform.rb +1 -4
  108. data/lib/ronin/platform/exceptions.rb +1 -4
  109. data/lib/ronin/platform/exceptions/extension_not_found.rb +1 -4
  110. data/lib/ronin/platform/exceptions/overlay_cached.rb +1 -4
  111. data/lib/ronin/platform/exceptions/overlay_not_found.rb +1 -4
  112. data/lib/ronin/platform/extension.rb +195 -52
  113. data/lib/ronin/platform/extension_cache.rb +60 -24
  114. data/lib/ronin/platform/maintainer.rb +15 -8
  115. data/lib/ronin/platform/object_cache.rb +29 -8
  116. data/lib/ronin/platform/overlay.rb +82 -26
  117. data/lib/ronin/platform/overlay_cache.rb +179 -56
  118. data/lib/ronin/platform/platform.rb +154 -58
  119. data/lib/ronin/platform/ronin.rb +38 -11
  120. data/lib/ronin/product.rb +17 -17
  121. data/lib/ronin/rpc.rb +1 -4
  122. data/lib/ronin/rpc/call.rb +1 -4
  123. data/lib/ronin/rpc/client.rb +1 -4
  124. data/lib/ronin/rpc/console.rb +1 -4
  125. data/lib/ronin/rpc/exceptions.rb +1 -4
  126. data/lib/ronin/rpc/exceptions/not_implemented.rb +1 -4
  127. data/lib/ronin/rpc/exceptions/response_missing.rb +1 -4
  128. data/lib/ronin/rpc/response.rb +1 -4
  129. data/lib/ronin/rpc/service.rb +1 -4
  130. data/lib/ronin/rpc/shell.rb +1 -4
  131. data/lib/ronin/scanners.rb +1 -4
  132. data/lib/ronin/scanners/exceptions.rb +1 -4
  133. data/lib/ronin/scanners/exceptions/unknown_category.rb +1 -4
  134. data/lib/ronin/scanners/scanner.rb +82 -26
  135. data/lib/ronin/static.rb +1 -4
  136. data/lib/ronin/static/finders.rb +1 -4
  137. data/lib/ronin/static/static.rb +16 -7
  138. data/lib/ronin/templates.rb +2 -4
  139. data/lib/ronin/templates/erb.rb +24 -10
  140. data/lib/ronin/templates/template.rb +130 -0
  141. data/lib/ronin/ui.rb +2 -6
  142. data/lib/ronin/ui/command_line.rb +1 -4
  143. data/lib/ronin/ui/command_line/command.rb +137 -68
  144. data/lib/ronin/ui/command_line/command_line.rb +52 -29
  145. data/lib/ronin/ui/command_line/commands/add.rb +39 -67
  146. data/lib/ronin/ui/command_line/commands/console.rb +23 -27
  147. data/lib/ronin/ui/command_line/commands/help.rb +10 -29
  148. data/lib/ronin/ui/command_line/commands/install.rb +31 -56
  149. data/lib/ronin/ui/command_line/commands/list.rb +34 -52
  150. data/lib/ronin/ui/command_line/commands/remove.rb +12 -32
  151. data/lib/ronin/ui/command_line/commands/uninstall.rb +11 -31
  152. data/lib/ronin/ui/command_line/commands/update.rb +15 -35
  153. data/lib/ronin/ui/command_line/exceptions.rb +1 -4
  154. data/lib/ronin/ui/command_line/exceptions/unknown_command.rb +1 -4
  155. data/lib/ronin/ui/console.rb +54 -23
  156. data/lib/ronin/ui/hexdump.rb +1 -4
  157. data/lib/ronin/ui/hexdump/extensions.rb +1 -4
  158. data/lib/ronin/ui/hexdump/extensions/file.rb +8 -6
  159. data/lib/ronin/ui/hexdump/extensions/kernel.rb +4 -5
  160. data/lib/ronin/ui/hexdump/hexdump.rb +8 -5
  161. data/lib/ronin/{sessions/exceptions.rb → ui/output.rb} +3 -5
  162. data/lib/ronin/ui/output/handler.rb +121 -0
  163. data/lib/ronin/ui/output/helpers.rb +110 -0
  164. data/lib/ronin/ui/output/output.rb +144 -0
  165. data/lib/ronin/ui/shell.rb +38 -12
  166. data/lib/ronin/version.rb +2 -5
  167. data/lib/ronin/{sessions/exceptions/variable_missing.rb → yard.rb} +2 -10
  168. data/lib/ronin/{ronin.rb → yard/handlers.rb} +5 -15
  169. data/lib/ronin/yard/handlers/ruby.rb +27 -0
  170. data/lib/ronin/yard/handlers/ruby/base.rb +27 -0
  171. data/lib/ronin/yard/handlers/ruby/belongs_to_handler.rb +45 -0
  172. data/lib/ronin/yard/handlers/ruby/eval_block_handler.rb +18 -0
  173. data/lib/ronin/yard/handlers/ruby/has_handler.rb +49 -0
  174. data/lib/ronin/yard/handlers/ruby/legacy.rb +26 -0
  175. data/lib/ronin/yard/handlers/ruby/legacy/belongs_to_handler.rb +41 -0
  176. data/lib/ronin/yard/handlers/ruby/legacy/eval_block_handler.rb +19 -0
  177. data/lib/ronin/yard/handlers/ruby/legacy/has_handler.rb +34 -0
  178. data/lib/ronin/yard/handlers/ruby/legacy/metaclass_eval_handler.rb +21 -0
  179. data/lib/ronin/yard/handlers/ruby/legacy/property_handler.rb +41 -0
  180. data/lib/ronin/yard/handlers/ruby/legacy/scanner_handler.rb +61 -0
  181. data/lib/ronin/yard/handlers/ruby/metaclass_eval_handler.rb +18 -0
  182. data/lib/ronin/yard/handlers/ruby/property_handler.rb +45 -0
  183. data/lib/ronin/yard/handlers/ruby/scanner_handler.rb +66 -0
  184. data/spec/author_spec.rb +3 -3
  185. data/spec/extensions/classes/some_class.rb +2 -0
  186. data/spec/extensions/kernel_spec.rb +17 -0
  187. data/spec/extensions/uri/http_spec.rb +0 -31
  188. data/spec/formatting/binary/integer_spec.rb +4 -0
  189. data/spec/formatting/text/string_spec.rb +96 -0
  190. data/spec/license_spec.rb +6 -6
  191. data/spec/model/classes/basic_model.rb +13 -0
  192. data/spec/model/classes/custom_model.rb +17 -0
  193. data/spec/model/classes/described_model.rb +10 -0
  194. data/spec/model/has_description_spec.rb +42 -0
  195. data/spec/model/has_license_spec.rb +18 -4
  196. data/spec/model/model_spec.rb +68 -0
  197. data/spec/network/helpers/classes/test_helper.rb +11 -0
  198. data/spec/network/helpers/classes/uses_test_helper.rb +10 -0
  199. data/spec/network/helpers/helper_spec.rb +25 -0
  200. data/spec/network/{http_spec.rb → http/http_spec.rb} +0 -0
  201. data/spec/network/http/proxy_spec.rb +116 -0
  202. data/spec/os_spec.rb +4 -4
  203. data/spec/platform/extension_cache_spec.rb +14 -0
  204. data/spec/platform/extension_spec.rb +11 -0
  205. data/spec/platform/platform_spec.rb +8 -0
  206. data/spec/product_spec.rb +9 -9
  207. data/spec/spec_helper.rb +1 -1
  208. data/spec/templates/classes/{uses_erb.rb → example_erb.rb} +1 -1
  209. data/spec/templates/classes/example_template.rb +21 -0
  210. data/spec/templates/erb_spec.rb +2 -2
  211. data/spec/templates/helpers/static.rb +5 -0
  212. data/spec/templates/helpers/static/templates/_relative.erb +1 -0
  213. data/spec/templates/helpers/static/templates/example.erb +1 -0
  214. data/spec/templates/template_spec.rb +41 -0
  215. data/spec/ui/command_line/classes/test_command.rb +23 -0
  216. data/spec/ui/command_line/command_spec.rb +31 -0
  217. data/spec/ui/output_spec.rb +29 -0
  218. data/static/ronin/platform/overlay.xsl +135 -114
  219. data/tasks/spec.rb +1 -0
  220. data/tasks/yard.rb +18 -0
  221. metadata +98 -59
  222. metadata.gz.sig +0 -0
  223. data/TODO.txt +0 -15
  224. data/lib/ronin/extensions/hash.rb +0 -62
  225. data/lib/ronin/sessions/esmtp.rb +0 -57
  226. data/lib/ronin/sessions/http.rb +0 -678
  227. data/lib/ronin/sessions/imap.rb +0 -54
  228. data/lib/ronin/sessions/pop3.rb +0 -52
  229. data/lib/ronin/sessions/smtp.rb +0 -57
  230. data/lib/ronin/sessions/tcp.rb +0 -100
  231. data/lib/ronin/sessions/telnet.rb +0 -55
  232. data/lib/ronin/sessions/udp.rb +0 -73
  233. data/lib/ronin/ui/command_line/options.rb +0 -136
  234. data/lib/ronin/ui/diagnostics.rb +0 -66
  235. data/lib/ronin/ui/verbose.rb +0 -58
  236. data/spec/extensions/hash_spec.rb +0 -38
  237. data/spec/sessions/classes/test_session.rb +0 -11
  238. data/spec/sessions/classes/uses_test_session.rb +0 -10
  239. data/spec/sessions/session_spec.rb +0 -25
  240. data/spec/ui/verbose_spec.rb +0 -17
data.tar.gz.sig CHANGED
Binary file
data/History.txt CHANGED
@@ -1,3 +1,98 @@
1
+ === 0.3.0 / 2009-09-24
2
+
3
+ * Require yard >= 0.2.3.5.
4
+ * Require nokogiri >= 1.3.3.
5
+ * Require extlib >= 0.9.13.
6
+ * Require data_objects >= 0.10.0.
7
+ * Require do_sqlite3 >= 0.10.0.
8
+ * Require dm-core >= 0.10.0.
9
+ * Require dm-types >= 0.10.0.
10
+ * Require dm-validations >= 0.10.0.
11
+ * Require dm-predefined >= 0.2.0.
12
+ * Require chars >= 0.1.2.
13
+ * Require parameters >= 0.1.8.
14
+ * Require contextify >= 0.1.3.
15
+ * Require repertoire >= 0.2.3.
16
+ * Require thor >= 0.11.5.
17
+ * Require rspec >= 1.1.12.
18
+ * Moved to YARD based documentation.
19
+ * Added YARD handlers for detecting DataMapper property, has and belongs_to
20
+ method-calles.
21
+ * Added YARD handlers for detecting Ronin::Scanners::Scanner.scanner
22
+ method-calles.
23
+ * Added Ronin::Config.tmp_dir.
24
+ * Added Kernel.require_within.
25
+ * Added Net.tcp_server.
26
+ * Added Net.tcp_server_session.
27
+ * Added Net.tcp_single_server.
28
+ * Added Net.udp_server.
29
+ * Added Net.udp_server_session.
30
+ * Added Ronin::Network::HTTP::Proxy.
31
+ * Added Ronin::Model#humanize_attributes.
32
+ * Added Ronin::Model::HasVersion.revision.
33
+ * Added Ronin::Templates::Template.
34
+ * Added Ronin::Platform::Overlays#gems.
35
+ * Added attr_reader, attr_writer and attr_accessor instance methods to
36
+ Ronin::Platform::Extension.
37
+ * Added Ronin::Platform::Overlay#load!.
38
+ * Added Ronin::Platform::Overlay#reload!.
39
+ * Added Ronin::Platform::Extension#tmp_dir.
40
+ * Added Ronin::Platform::ExtensionCache#reload!.
41
+ * Added Ronin::Platform.reload!.
42
+ * Added Ronin::UI::Output.verbose=.
43
+ * Added Ronin::UI::Output.verbose?.
44
+ * Added Ronin::UI::Output.quiet=.
45
+ * Added Ronin::UI::Output.quiet?.
46
+ * Added Ronin::UI::Output.silent=.
47
+ * Added Ronin::UI::Output.silent?.
48
+ * Added Ronin::UI::Output::Helpers.
49
+ * Added Ronin::UI::CommandLine::Command#indent.
50
+ * Added Ronin::UI::CommandLine::Command#print_title.
51
+ * Added Ronin::UI::CommandLine::Command#print_array.
52
+ * Added Ronin::UI::CommandLine::Command#print_hash.
53
+ * Renamed Ronin::License.gpl_2 to Ronin::License.gpl2.
54
+ * Renamed Ronin::License.gpl_3 to Ronin::License.gpl3.
55
+ * Renamed Ronin::License.lgpl_3 to Ronin::License.lgpl3.
56
+ * Renamed the :post_data option to :postdata for the Net.http_post and
57
+ Net.http_post_body methods.
58
+ * Renamed Ronin::Sessions to Ronin::Network::Helpers.
59
+ * Renamed Ronin::Platform::ExtensionCache#has_extension? to
60
+ Ronin::Platform::ExtensionCache#has?.
61
+ * Renamed Ronin::Platform::ExtensionCache#extension_with to
62
+ Ronin::Platform::ExtensionCache#with.
63
+ * Renamed Ronin::UI::Diagnostics to Ronin::UI::Output.
64
+ * Removed Hash#explode.
65
+ * Removed URI::HTTP#explode_query_params and URI::HTTP#test_query_params.
66
+ * Removed Ronin::Model.first_or_new, since it is provided by
67
+ dm-core 0.10.0.
68
+ * Removed Ronin.console.
69
+ * Removed Ronin::License.predefine.
70
+ * Updated the summary and 3-point description of Ronin.
71
+ * Aliased Integer#char to Integer#chr.
72
+ * Changed Ronin::Database::DEFAULT_CONFIG to be a String, for printability.
73
+ * Overrode Ronin::Model.allocate so that the initialize method of models
74
+ is always called when resources are allocated.
75
+ * Improved the white-space removal in Ronin::Model::HasDescription.
76
+ * Have Ronin::Model::HasLicense auto-define a relationship with
77
+ Ronin::License.
78
+ * Fixed formatting issue in Ronin::Product#to_s.
79
+ * Allow Ronin::Cacheable.load_first to accept a block.
80
+ * Make sure Ronin::Static.directory raises a RuntimeError if the given
81
+ directory is missing or not a directory.
82
+ * Allow the :proxy option passed to Net.http_* methods to be a String,
83
+ Hash or Ronin::Network::HTTP::Proxy.
84
+ * Make sure Ronin::Network::Helpers::Helper.require_variable raises
85
+ a RuntimeError if the required instance variable is not set.
86
+ * Merged Ronin::Platform::Extension.load into
87
+ Ronin::Platform::ExtensionCache#load_extension.
88
+ * Updated the overlay.xsl used to render the ronin.xml files within
89
+ Overlays.
90
+ * Merged Ronin::UI::Verbose into Ronin::UI::Output.
91
+ * Rewrote Ronin::UI::CommandLine::Command to inherit from Thor.
92
+ * Rewrote the Ronin::UI::CommandLine commands to use Thor options.
93
+ * Include Ronin::UI::Output::Helpers into Ronin::Sessions::Session.
94
+ * Include Ronin::UI::Output::Helpers into Ronin::Console sessions.
95
+
1
96
  === 0.2.4 / 2009-07-02
2
97
 
3
98
  * Require Hoe >= 2.0.0
data/Manifest.txt CHANGED
@@ -2,7 +2,6 @@ History.txt
2
2
  COPYING.txt
3
3
  Manifest.txt
4
4
  README.txt
5
- TODO.txt
6
5
  Rakefile
7
6
  bin/ronin
8
7
  bin/ronin-add
@@ -19,13 +18,13 @@ lib/ronin/static.rb
19
18
  lib/ronin/static/static.rb
20
19
  lib/ronin/static/finders.rb
21
20
  lib/ronin/templates.rb
21
+ lib/ronin/templates/template.rb
22
22
  lib/ronin/templates/erb.rb
23
23
  lib/ronin/extensions.rb
24
24
  lib/ronin/extensions/meta.rb
25
25
  lib/ronin/extensions/meta/object.rb
26
26
  lib/ronin/extensions/kernel.rb
27
27
  lib/ronin/extensions/array.rb
28
- lib/ronin/extensions/hash.rb
29
28
  lib/ronin/extensions/uri.rb
30
29
  lib/ronin/extensions/uri/query_params.rb
31
30
  lib/ronin/extensions/uri/http.rb
@@ -68,6 +67,16 @@ lib/ronin/network/extensions/telnet.rb
68
67
  lib/ronin/network/extensions/telnet/net.rb
69
68
  lib/ronin/network/extensions/http.rb
70
69
  lib/ronin/network/extensions/http/net.rb
70
+ lib/ronin/network/helpers.rb
71
+ lib/ronin/network/helpers/helper.rb
72
+ lib/ronin/network/helpers/tcp.rb
73
+ lib/ronin/network/helpers/udp.rb
74
+ lib/ronin/network/helpers/smtp.rb
75
+ lib/ronin/network/helpers/esmtp.rb
76
+ lib/ronin/network/helpers/pop3.rb
77
+ lib/ronin/network/helpers/imap.rb
78
+ lib/ronin/network/helpers/telnet.rb
79
+ lib/ronin/network/helpers/http.rb
71
80
  lib/ronin/network/tcp.rb
72
81
  lib/ronin/network/udp.rb
73
82
  lib/ronin/network/smtp.rb
@@ -80,6 +89,8 @@ lib/ronin/network/telnet.rb
80
89
  lib/ronin/network/http.rb
81
90
  lib/ronin/network/http/exceptions.rb
82
91
  lib/ronin/network/http/exceptions/unknown_request.rb
92
+ lib/ronin/network/http/proxy.rb
93
+ lib/ronin/network/http/http.rb
83
94
  lib/ronin/code/emittable.rb
84
95
  lib/ronin/code/token.rb
85
96
  lib/ronin/code/reference.rb
@@ -98,18 +109,6 @@ lib/ronin/scanners.rb
98
109
  lib/ronin/scanners/exceptions.rb
99
110
  lib/ronin/scanners/exceptions/unknown_category.rb
100
111
  lib/ronin/scanners/scanner.rb
101
- lib/ronin/sessions.rb
102
- lib/ronin/sessions/exceptions.rb
103
- lib/ronin/sessions/exceptions/variable_missing.rb
104
- lib/ronin/sessions/session.rb
105
- lib/ronin/sessions/tcp.rb
106
- lib/ronin/sessions/udp.rb
107
- lib/ronin/sessions/smtp.rb
108
- lib/ronin/sessions/esmtp.rb
109
- lib/ronin/sessions/pop3.rb
110
- lib/ronin/sessions/imap.rb
111
- lib/ronin/sessions/telnet.rb
112
- lib/ronin/sessions/http.rb
113
112
  lib/ronin/database.rb
114
113
  lib/ronin/database/exceptions.rb
115
114
  lib/ronin/database/exceptions/invalid_config.rb
@@ -142,8 +141,10 @@ lib/ronin/platform/extension.rb
142
141
  lib/ronin/platform/platform.rb
143
142
  lib/ronin/platform/ronin.rb
144
143
  lib/ronin/ui.rb
145
- lib/ronin/ui/verbose.rb
146
- lib/ronin/ui/diagnostics.rb
144
+ lib/ronin/ui/output.rb
145
+ lib/ronin/ui/output/handler.rb
146
+ lib/ronin/ui/output/helpers.rb
147
+ lib/ronin/ui/output/output.rb
147
148
  lib/ronin/ui/hexdump.rb
148
149
  lib/ronin/ui/hexdump/hexdump.rb
149
150
  lib/ronin/ui/hexdump/extensions.rb
@@ -155,7 +156,6 @@ lib/ronin/ui/command_line.rb
155
156
  lib/ronin/ui/command_line/exceptions.rb
156
157
  lib/ronin/ui/command_line/exceptions/unknown_command.rb
157
158
  lib/ronin/ui/command_line/command.rb
158
- lib/ronin/ui/command_line/options.rb
159
159
  lib/ronin/ui/command_line/commands/console.rb
160
160
  lib/ronin/ui/command_line/commands/add.rb
161
161
  lib/ronin/ui/command_line/commands/install.rb
@@ -165,9 +165,26 @@ lib/ronin/ui/command_line/commands/remove.rb
165
165
  lib/ronin/ui/command_line/commands/uninstall.rb
166
166
  lib/ronin/ui/command_line/commands/help.rb
167
167
  lib/ronin/ui/command_line/command_line.rb
168
- lib/ronin/ronin.rb
168
+ lib/ronin/yard.rb
169
+ lib/ronin/yard/handlers.rb
170
+ lib/ronin/yard/handlers/ruby.rb
171
+ lib/ronin/yard/handlers/ruby/base.rb
172
+ lib/ronin/yard/handlers/ruby/eval_block_handler.rb
173
+ lib/ronin/yard/handlers/ruby/metaclass_eval_handler.rb
174
+ lib/ronin/yard/handlers/ruby/property_handler.rb
175
+ lib/ronin/yard/handlers/ruby/belongs_to_handler.rb
176
+ lib/ronin/yard/handlers/ruby/has_handler.rb
177
+ lib/ronin/yard/handlers/ruby/scanner_handler.rb
178
+ lib/ronin/yard/handlers/ruby/legacy.rb
179
+ lib/ronin/yard/handlers/ruby/legacy/eval_block_handler.rb
180
+ lib/ronin/yard/handlers/ruby/legacy/metaclass_eval_handler.rb
181
+ lib/ronin/yard/handlers/ruby/legacy/property_handler.rb
182
+ lib/ronin/yard/handlers/ruby/legacy/belongs_to_handler.rb
183
+ lib/ronin/yard/handlers/ruby/legacy/has_handler.rb
184
+ lib/ronin/yard/handlers/ruby/legacy/scanner_handler.rb
169
185
  lib/ronin/version.rb
170
186
  tasks/spec.rb
187
+ tasks/yard.rb
171
188
  spec/spec_helper.rb
172
189
  spec/classes/cacheable_model.rb
173
190
  spec/helpers/database.rb
@@ -180,13 +197,18 @@ spec/static/helpers/static2/dir/two.txt
180
197
  spec/static/helpers/static.rb
181
198
  spec/static/finders_spec.rb
182
199
  spec/static/static_spec.rb
183
- spec/templates/classes/uses_erb.rb
200
+ spec/templates/classes/example_template.rb
201
+ spec/templates/classes/example_erb.rb
202
+ spec/templates/helpers/static.rb
203
+ spec/templates/helpers/static/templates/example.erb
204
+ spec/templates/helpers/static/templates/_relative.erb
205
+ spec/templates/template_spec.rb
184
206
  spec/templates/erb_spec.rb
185
207
  spec/arch_spec.rb
186
208
  spec/author_spec.rb
209
+ spec/extensions/classes/some_class.rb
187
210
  spec/extensions/kernel_spec.rb
188
211
  spec/extensions/array_spec.rb
189
- spec/extensions/hash_spec.rb
190
212
  spec/extensions/string_spec.rb
191
213
  spec/extensions/ip_addr_spec.rb
192
214
  spec/extensions/uri/http_spec.rb
@@ -218,11 +240,20 @@ spec/formatting/digest/string_spec.rb
218
240
  spec/formatting/http/string_spec.rb
219
241
  spec/formatting/text/string_spec.rb
220
242
  spec/formatting/text/array_spec.rb
221
- spec/network/http_spec.rb
243
+ spec/network/helpers/classes/test_helper.rb
244
+ spec/network/helpers/classes/uses_test_helper.rb
245
+ spec/network/helpers/helper_spec.rb
246
+ spec/network/http/proxy_spec.rb
247
+ spec/network/http/http_spec.rb
222
248
  spec/code/classes/thing.rb
223
249
  spec/code/reference_spec.rb
224
250
  spec/code/symbol_table_spec.rb
251
+ spec/model/classes/basic_model.rb
252
+ spec/model/classes/custom_model.rb
253
+ spec/model/classes/described_model.rb
225
254
  spec/model/classes/licensed_model.rb
255
+ spec/model/model_spec.rb
256
+ spec/model/has_description_spec.rb
226
257
  spec/model/has_license_spec.rb
227
258
  spec/license_spec.rb
228
259
  spec/path_spec.rb
@@ -232,9 +263,6 @@ spec/cacheable_spec.rb
232
263
  spec/scanners/classes/example_scanner.rb
233
264
  spec/scanners/classes/another_scanner.rb
234
265
  spec/scanners/scanner_spec.rb
235
- spec/sessions/classes/test_session.rb
236
- spec/sessions/classes/uses_test_session.rb
237
- spec/sessions/session_spec.rb
238
266
  spec/platform/helpers/overlays.rb
239
267
  spec/platform/helpers/overlays.yaml.erb
240
268
  spec/platform/helpers/overlays/test1/ronin.xml
@@ -255,6 +283,8 @@ spec/platform/overlay_cache_spec.rb
255
283
  spec/platform/extension_cache_spec.rb
256
284
  spec/platform/platform_spec.rb
257
285
  spec/platform/ronin_spec.rb
258
- spec/ui/verbose_spec.rb
286
+ spec/ui/output_spec.rb
287
+ spec/ui/command_line/classes/test_command.rb
288
+ spec/ui/command_line/command_spec.rb
259
289
  spec/ronin_spec.rb
260
290
  static/ronin/platform/overlay.xsl
data/README.txt CHANGED
@@ -2,37 +2,35 @@
2
2
 
3
3
  * http://ronin.rubyforge.org/
4
4
  * http://github.com/postmodern/ronin
5
- * irc.freenode.net ##ronin
5
+ * irc.freenode.net #ronin
6
6
  * Postmodern (postmodern.mod3 at gmail.com)
7
7
 
8
8
  == DESCRIPTION:
9
9
 
10
- Ronin is a Ruby platform designed for information security and data
11
- exploration tasks. Ronin allows for the rapid development and distribution
12
- of code over many of the common Source-Code-Management (SCM) systems.
10
+ Ronin is a Ruby platform for exploit development and security research.
11
+ Ronin allows for the rapid development and distribution of code, exploits
12
+ or payloads over many common Source-Code-Management (SCM) systems.
13
13
 
14
- === Free
14
+ === Ruby
15
15
 
16
- All source code within Ronin is licensed under the GPL-2, therefore no user
17
- will ever have to pay for Ronin or updates to Ronin. Not only is the
18
- source code free, the Ronin project will not sell enterprise grade security
19
- snake-oil solutions, give private training classes or later turn Ronin into
20
- commercial software.
16
+ Ronin's Ruby environment allows security researchers to leverage Ruby with
17
+ ease. The Ruby environment contains a multitude of convenience methods
18
+ for working with data in Ruby, a Ruby Object Database, a customized Ruby
19
+ Console and an extendable command-line interface.
21
20
 
22
- === Modular
21
+ === Extend
23
22
 
24
- Ronin was not designed as one monolithic framework but instead as a
25
- collection of libraries which can be individually installed. This allows
26
- users to pick and choose what functionality they want in Ronin.
23
+ Ronin's more specialized features are provided by additional Ronin
24
+ libraries, which users can choose to install. These libraries can allow
25
+ one to write and run Exploits and Payloads, scan for PHP vulnerabilities,
26
+ perform Google Dorks or run 3rd party scanners.
27
27
 
28
- === Decentralized
28
+ === Publish
29
29
 
30
- Ronin does not have a central repository of exploits and payloads which
31
- all developers contribute to. Instead Ronin has Overlays, repositories of
32
- code that can be hosted on any SVN/Hg/Git/Rsync server. Users can then use
33
- Ronin to quickly install or update Overlays. This allows developers and
34
- users to form their own communities, independent of the main developers
35
- of Ronin.
30
+ Ronin allows users to publish and share code, exploits, payloads or other
31
+ data via Overlays. Overlays are directories of code and data that can be
32
+ hosted on any SVN, Hg, Git or Rsync server. Ronin makes it easy to create,
33
+ install or update Overlays.
36
34
 
37
35
  == FEATURES:
38
36
 
@@ -43,8 +41,8 @@ of Ronin.
43
41
  * Git
44
42
  * Rsync
45
43
  * Allows for the loading of Extensions from one or more Overlays.
46
- * Provides persistent storage of objects using DataMapper.
47
- * Caches and mirrors objects stored in Overlays using DataMapper.
44
+ * Provides Object Database using DataMapper.
45
+ * Caches and mirrors Objects stored in Overlays using DataMapper.
48
46
  * Provides convenience methods for:
49
47
  * Formatting data:
50
48
  * Binary
@@ -55,44 +53,29 @@ of Ronin.
55
53
  * Networking:
56
54
  * TCP
57
55
  * UDP
58
- * SMTP
59
- * POP
56
+ * SMTP / ESMTP
57
+ * POP3
60
58
  * Imap
61
59
  * Telnet
62
60
  * HTTP / HTTPS
63
- * Provides an IRB styled console with:
61
+ * Enumerating IP ranges:
62
+ * IPv4 / IPv6 addresses.
63
+ * CIDR / globbed ranges.
64
+ * (Un-)Hexdumping data.
65
+ * Handling exceptions.
66
+ * Provides a customized Ruby Console with:
64
67
  * Tab-completion enabled.
65
68
  * Auto-indentation enabled.
66
69
  * Pretty-Print loaded.
67
-
68
- == REQUIREMENTS:
69
-
70
- * {libxml2}[http://xmlsoft.org/]
71
- * {libsqlite3}[http://sqlite.org/]
72
- * {nokogiri}[http://nokogiri.rubyforge.org/] >= 1.2.0
73
- * {DataMapper}[http://datamapper.org/]:
74
- * extlib >= 0.9.12
75
- * dm-core >= 0.9.11
76
- * data_objects >= 0.9.11
77
- * do_sqlite3 >= 0.9.11
78
- * dm-types >= 0.9.11
79
- * dm-serializer >= 0.9.11
80
- * dm-validations >= 0.9.11
81
- * {dm-prefined}[http://dm-predefined.rubyforge.org/] >= 0.1.0
82
- * {parameters}[http://parameters.rubyforge.org/] >= 0.1.5
83
- * {contextify}[http://contextify.rubyforge.org/] >= 0.1.2
84
- * {reverse-require}[http://reverserequire.rubyforge.org/] >= 0.3.1
85
- * {repertoire}[http://repertoire.rubyforge.org/] >= 0.2.1
86
-
87
- == INSTALL:
88
-
89
- $ sudo gem install ronin
70
+ * print_info, print_error, print_warning and print_debug output helper
71
+ methods with color-output.
72
+ * Provides an extendable command-line interface based on Thor.
90
73
 
91
74
  == SYNOPSIS:
92
75
 
93
76
  * Install an Overlay:
94
77
 
95
- $ ronin install svn://example.com/var/svn/overlay
78
+ $ ronin install svn://example.com/path/to/overlay
96
79
 
97
80
  * List installed Overlays:
98
81
 
@@ -114,6 +97,36 @@ of Ronin.
114
97
 
115
98
  $ ronin
116
99
 
100
+ * View available commands:
101
+
102
+ $ ronin help
103
+
104
+ == REQUIREMENTS:
105
+
106
+ * {yard}[http://yard.soen.ca/] >= 0.2.3.5
107
+ * {nokogiri}[http://nokogiri.rubyforge.org/] >= 1.3.3
108
+ * {libxml2}[http://xmlsoft.org/]
109
+ * {libxslt1}[http://xmlsoft.org/XSLT/]
110
+ * {DataMapper}[http://datamapper.org/]:
111
+ * extlib >= 0.9.13
112
+ * dm-core >= 0.10.0
113
+ * data_objects >= 0.10.0
114
+ * do_sqlite3 >= 0.10.0
115
+ * {libsqlite3}[http://sqlite.org/]
116
+ * dm-types >= 0.10.0
117
+ * dm-validations >= 0.10.0
118
+ * {dm-predefined}[http://dm-predefined.rubyforge.org/] >= 0.2.0
119
+ * {chars}[http://chars.rubyforge.org/] >= 0.1.2
120
+ * {parameters}[http://parameters.rubyforge.org/] >= 0.1.8
121
+ * {contextify}[http://contextify.rubyforge.org/] >= 0.1.3
122
+ * {reverse-require}[http://reverserequire.rubyforge.org/] >= 0.3.1
123
+ * {repertoire}[http://repertoire.rubyforge.org/] >= 0.2.3
124
+ * thor >= 0.11.5
125
+
126
+ == INSTALL:
127
+
128
+ $ sudo gem install ronin
129
+
117
130
  == RONIN LIBRARIES:
118
131
 
119
132
  === Ronin ASM
@@ -174,8 +187,7 @@ scraping and spidering functionality.
174
187
 
175
188
  == LICENSE:
176
189
 
177
- Ronin - A Ruby platform designed for information security and data
178
- exploration tasks.
190
+ Ronin - A Ruby platform for exploit development and security research.
179
191
 
180
192
  Copyright (c) 2006-2009 Hal Brodigan (postmodern.mod3 at gmail.com)
181
193
 
data/Rakefile CHANGED
@@ -4,28 +4,35 @@ require 'rubygems'
4
4
  require 'hoe'
5
5
  require 'hoe/signing'
6
6
  require './tasks/spec.rb'
7
+ require './tasks/yard.rb'
7
8
 
8
9
  Hoe.spec('ronin') do
9
10
  self.rubyforge_name = 'ronin'
10
11
  self.developer('Postmodern','postmodern.mod3@gmail.com')
11
12
  self.remote_rdoc_dir = 'docs/ronin'
12
13
  self.extra_deps = [
13
- ['hoe', '>=2.0.0'],
14
- ['nokogiri', '>=1.2.0'],
15
- ['addressable', '=2.0.2'],
16
- ['extlib', '>=0.9.12'],
17
- ['data_objects', '>=0.9.12'],
18
- ['do_sqlite3', '>=0.9.12'],
19
- ['dm-core', '>=0.9.11'],
20
- ['dm-types', '>=0.9.11'],
21
- ['dm-validations', '>=0.9.11'],
22
- ['dm-predefined', '>=0.1.1'],
23
- ['chars', '>=0.1.1'],
24
- ['parameters', '>=0.1.7'],
25
- ['contextify', '>=0.1.2'],
14
+ ['yard', '>=0.2.3.5'],
15
+ ['nokogiri', '>=1.3.3'],
16
+ ['extlib', '>=0.9.13'],
17
+ ['data_objects', '>=0.10.0'],
18
+ ['do_sqlite3', '>=0.10.0'],
19
+ ['dm-core', '>=0.10.0'],
20
+ ['dm-types', '>=0.10.0'],
21
+ ['dm-validations', '>=0.10.0'],
22
+ ['dm-predefined', '>=0.2.0'],
23
+ ['chars', '>=0.1.2'],
24
+ ['parameters', '>=0.1.8'],
25
+ ['contextify', '>=0.1.3'],
26
26
  ['reverse-require', '>=0.3.1'],
27
- ['repertoire', '>=0.2.1']
27
+ ['repertoire', '>=0.2.3'],
28
+ ['thor', '>=0.11.5']
28
29
  ]
30
+
31
+ self.extra_dev_deps = [
32
+ ['rspec', '>=1.1.12']
33
+ ]
34
+
35
+ self.spec_extras = {:has_rdoc => 'yard'}
29
36
  end
30
37
 
31
38
  # vim: syntax=Ruby