metasploit-framework/lib/rex/script.rb

40 lines
592 B
Ruby

# -*- coding: binary -*-
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