metasploit-framework/lib/rex/script.rb

38 lines
558 B
Ruby

#!/usr/bin/env ruby
module Rex
###
#
# This class provides an easy interface for loading and executing ruby
# scripts.
#
###
module Script
class Completed < ::RuntimeError
end
#
# Reads the contents of the supplied file and exeutes them.
#
def self.execute_file(file, in_binding = nil)
str = ''
buf = ::File.read(file, ::File.size(file))
execute(buf, in_binding)
end
#
# Executes arbitrary ruby from the supplied string.
#
def self.execute(str, in_binding = nil)
begin
eval(str, in_binding)
rescue Completed
end
end
end
end