lib/ronin/ui/command_line/commands/console.rb in ronin-0.2.4 vs lib/ronin/ui/command_line/commands/console.rb in ronin-0.3.0
- old
+ new
@@ -1,9 +1,7 @@
#
-#--
-# Ronin - A Ruby platform designed for information security and data
-# exploration tasks.
+# Ronin - A Ruby platform for exploit development and security research.
#
# Copyright (c) 2006-2009 Hal Brodigan (postmodern.mod3 at gmail.com)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -16,53 +14,51 @@
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#++
#
require 'ronin/ui/command_line/command'
-require 'ronin/ui/verbose'
+require 'ronin/ui/output'
require 'ronin/ui/console'
require 'ronin/database'
+require 'ronin/version'
module Ronin
module UI
module CommandLine
module Commands
class Console < Command
- def define_options(opts)
- opts.usage = '<command> [options]'
- opts.options do
- opts.on('-D','--database URI','The URI for the Database') do |uri|
- Database.config = uri.to_s
- end
+ map '-V' => :version
- opts.on('-r','--require LIB','Require the specified library or path') do |lib|
- UI::Console.auto_load << lib.to_s
- end
+ desc "console", "start the Ronin Console"
+ method_option :database, :type => :string, :aliases => '-D'
+ method_option :require, :type => :array, :aliases => '-r'
+ method_option :verbose, :type => :boolean, :aliases => '-v'
- opts.on('-v','--verbose','Enables verbose output') do
- UI::Verbose.enable!
+ def default
+ if options[:require]
+ options[:require].each do |path|
+ UI::Console.auto_load << path
end
+ end
- opts.on('-V','--version','Print version information and exit') do
- success do
- puts "Ronin #{Ronin::VERSION}"
- end
- end
+ if options[:database]
+ Database.config = options[:database]
end
- opts.summary %{
- Ronin is a Ruby development platform designed for information
- security and data exploration tasks.
- }
+ UI::Console.start
end
- def arguments(*args)
- UI::Console.start
+ desc "version", "displays the version"
+
+ #
+ # Prints the version information and exists.
+ #
+ def version
+ puts "Ronin #{Ronin::VERSION}"
end
end
end
end