diff --git a/tools/exe2vba.rb b/tools/exe2vba.rb index dbc4db4a1a..3acf2e0279 100755 --- a/tools/exe2vba.rb +++ b/tools/exe2vba.rb @@ -8,8 +8,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/base' diff --git a/tools/exe2vbs.rb b/tools/exe2vbs.rb index 04db88a5cb..755b913548 100755 --- a/tools/exe2vbs.rb +++ b/tools/exe2vbs.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/base' diff --git a/tools/find_badchars.rb b/tools/find_badchars.rb index aa45f88ebf..e106f1def7 100755 --- a/tools/find_badchars.rb +++ b/tools/find_badchars.rb @@ -8,8 +8,15 @@ # $Revision$ # -$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' OutStatus = "[*] " diff --git a/tools/halflm_second.rb b/tools/halflm_second.rb index b1f79d9c98..44b8dc0b30 100755 --- a/tools/halflm_second.rb +++ b/tools/halflm_second.rb @@ -10,9 +10,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' def usage diff --git a/tools/list_interfaces.rb b/tools/list_interfaces.rb index bc649e192c..57bbee2133 100755 --- a/tools/list_interfaces.rb +++ b/tools/list_interfaces.rb @@ -8,6 +8,18 @@ # To use th interface option under Windows use the Index value displayed by this tool (ex: "SET INTERFACE 1") # # + +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] + + if RUBY_PLATFORM == "i386-mingw32" begin require 'pcaprub' diff --git a/tools/lm2ntcrack.rb b/tools/lm2ntcrack.rb index 9ff9bdebb3..5613d7da8f 100755 --- a/tools/lm2ntcrack.rb +++ b/tools/lm2ntcrack.rb @@ -8,8 +8,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'rex/proto/ntlm/crypt' diff --git a/tools/metasm_shell.rb b/tools/metasm_shell.rb index c214c2f3a1..aa121ade5f 100755 --- a/tools/metasm_shell.rb +++ b/tools/metasm_shell.rb @@ -14,7 +14,15 @@ # # Licence is LGPL, see LICENCE in the top-level directory -$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'rex/ui' diff --git a/tools/module_author.rb b/tools/module_author.rb index d8fdc2a2bb..6414f9281e 100755 --- a/tools/module_author.rb +++ b/tools/module_author.rb @@ -7,8 +7,15 @@ # the number of modules per author # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_changelog.rb b/tools/module_changelog.rb index 030440a301..f3ba6ac56a 100755 --- a/tools/module_changelog.rb +++ b/tools/module_changelog.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_disclodate.rb b/tools/module_disclodate.rb index a88bee0fb3..c9df6d4b57 100755 --- a/tools/module_disclodate.rb +++ b/tools/module_disclodate.rb @@ -6,8 +6,15 @@ # This script lists each module by its disclosure date # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_license.rb b/tools/module_license.rb index 21d928fb59..923d58c9e8 100755 --- a/tools/module_license.rb +++ b/tools/module_license.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_mixins.rb b/tools/module_mixins.rb index d3e8543d4f..519924918e 100755 --- a/tools/module_mixins.rb +++ b/tools/module_mixins.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_ports.rb b/tools/module_ports.rb index e4d0d8588a..1c8038d880 100755 --- a/tools/module_ports.rb +++ b/tools/module_ports.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_rank.rb b/tools/module_rank.rb index 40c0413916..ab0a60d21f 100755 --- a/tools/module_rank.rb +++ b/tools/module_rank.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_reference.rb b/tools/module_reference.rb index b81dd8c092..8db5cbffee 100755 --- a/tools/module_reference.rb +++ b/tools/module_reference.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/module_targets.rb b/tools/module_targets.rb index 2c102dfcfe..b31c465ca5 100755 --- a/tools/module_targets.rb +++ b/tools/module_targets.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/msf_irb_shell.rb b/tools/msf_irb_shell.rb index 188f08951d..7a0d1bacd7 100755 --- a/tools/msf_irb_shell.rb +++ b/tools/msf_irb_shell.rb @@ -4,8 +4,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/core' @@ -14,4 +21,4 @@ require 'msf/ui' framework = Msf::Simple::Framework.create -Rex::Ui::Text::IrbShell.new(binding).run \ No newline at end of file +Rex::Ui::Text::IrbShell.new(binding).run diff --git a/tools/nasm_shell.rb b/tools/nasm_shell.rb index 5a2859cd71..c382ba76f1 100755 --- a/tools/nasm_shell.rb +++ b/tools/nasm_shell.rb @@ -9,7 +9,15 @@ # $Revision$ # -$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'rex/ui' diff --git a/tools/pattern_create.rb b/tools/pattern_create.rb index ea7631919c..e038144f9b 100755 --- a/tools/pattern_create.rb +++ b/tools/pattern_create.rb @@ -4,7 +4,15 @@ # $Revision$ # -$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' diff --git a/tools/pattern_offset.rb b/tools/pattern_offset.rb index 6c9580d319..56fec1959c 100755 --- a/tools/pattern_offset.rb +++ b/tools/pattern_offset.rb @@ -2,7 +2,15 @@ # $Id$ # $Revision$ -$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' diff --git a/tools/payload_lengths.rb b/tools/payload_lengths.rb index 1134cbe939..7839488841 100755 --- a/tools/payload_lengths.rb +++ b/tools/payload_lengths.rb @@ -7,8 +7,15 @@ # NOTE: No encoding or BadChar handling is performed # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui' diff --git a/tools/reg.rb b/tools/reg.rb index dc6815ed61..59a5f66efd 100755 --- a/tools/reg.rb +++ b/tools/reg.rb @@ -7,8 +7,15 @@ # $Revision$ # -msfbase = File.symlink?(__FILE__) ? File.readlink(__FILE__) : __FILE__ -$:.unshift(File.join(File.dirname(msfbase), '..', 'lib')) +msfbase = __FILE__ +while File.symlink?(msfbase) + msfbase = File.expand_path(File.readlink(msfbase), File.dirname(msfbase)) +end + +$:.unshift(File.expand_path(File.join(File.dirname(msfbase), '..', 'lib'))) +require 'fastlib' + +$:.unshift(ENV['MSF_LOCAL_LIB']) if ENV['MSF_LOCAL_LIB'] require 'rex' require 'msf/ui'