From 06222911f6ba867262ac9b3586fa4a83748b3548 Mon Sep 17 00:00:00 2001 From: Luke Imhoff Date: Wed, 5 Nov 2014 09:40:57 -0600 Subject: [PATCH] Move pcap bundler group to metasploit-framework-pcap.gemspec MSP-11578 This will allow Metasploit Pro to use the metasploit-framework-pcap.gemspec to ensure it has the correct version of gems that were previously only in metasploit-framework's Gemfile and so weren't being checked for version compatibility when Pro used metasploit-framework.gemspec. --- Gemfile | 4 +--- Gemfile.lock | 6 ++++-- metasploit-framework-pcap.gemspec | 32 +++++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 metasploit-framework-pcap.gemspec diff --git a/Gemfile b/Gemfile index 392381ddc7..6ef3775f5c 100755 --- a/Gemfile +++ b/Gemfile @@ -37,9 +37,7 @@ group :development, :test do end group :pcap do - gem 'network_interface', '~> 0.0.1' - # For sniffer and raw socket modules - gem 'pcaprub' + gemspec name: 'metasploit-framework-pcap' end group :test do diff --git a/Gemfile.lock b/Gemfile.lock index 0b8afc4be9..c8433fe3cf 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -26,6 +26,9 @@ PATH metasploit-framework (= 4.10.1.pre.dev) metasploit_data_models (~> 0.21.1) pg (>= 0.11) + metasploit-framework-pcap (4.10.1.pre.dev) + network_interface (~> 0.0.1) + pcaprub GEM remote: https://rubygems.org/ @@ -231,8 +234,7 @@ DEPENDENCIES fivemat (= 1.2.1) metasploit-framework! metasploit-framework-db! - network_interface (~> 0.0.1) - pcaprub + metasploit-framework-pcap! pry rake (>= 10.0.0) rb-readline diff --git a/metasploit-framework-pcap.gemspec b/metasploit-framework-pcap.gemspec new file mode 100644 index 0000000000..c8de87187f --- /dev/null +++ b/metasploit-framework-pcap.gemspec @@ -0,0 +1,32 @@ +# coding: utf-8 + +# During build, the Gemfile is temporarily moved and +# we must manually define the project root +if ENV['MSF_ROOT'] + lib = File.realpath(File.expand_path('lib', ENV['MSF_ROOT'])) +else + # have to use realpath as metasploit-framework is often loaded through a symlink and tools like Coverage and debuggers + # require realpaths. + lib = File.realpath(File.expand_path('../lib', __FILE__)) +end + +$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) +require 'metasploit/framework/version' + +Gem::Specification.new do |spec| + spec.name = 'metasploit-framework-pcap' + spec.version = Metasploit::Framework::GEM_VERSION + spec.authors = ['Metasploit Hackers'] + spec.email = ['metasploit-hackers@lists.sourceforge.net'] + spec.summary = 'metasploit-framework packet capture dependencies' + spec.description = 'Gems needed to capture packets in metasploit-framework' + spec.homepage = 'https://www.metasploit.com' + spec.license = 'BSD-3-clause' + + # no files, just dependencies + spec.files = [] + + spec.add_runtime_dependency 'network_interface', '~> 0.0.1' + # For sniffer and raw socket modules + spec.add_runtime_dependency 'pcaprub' +end