diff options
author | Philip Hands <phil@hands.com> | 2016-03-14 15:36:16 +0100 |
---|---|---|
committer | Holger Levsen <holger@layer-acht.org> | 2016-04-28 21:52:10 +0200 |
commit | da080c472fc415b0ce918f4dd4a1ab143bb1bca4 (patch) | |
tree | bf63179f32f0eda0c2d5796e3e31c18c3c1185cf /features/support/helpers/net_helper.rb | |
parent | 26a9e8ec2bcae03db4d663d87b44d8708d64fdc2 (diff) | |
download | jenkins.debian.net-da080c472fc415b0ce918f4dd4a1ab143bb1bca4.tar.xz |
rough attempt to grab the good cucumber bits from recent tails
Diffstat (limited to 'features/support/helpers/net_helper.rb')
-rw-r--r-- | features/support/helpers/net_helper.rb | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/features/support/helpers/net_helper.rb b/features/support/helpers/net_helper.rb deleted file mode 100644 index 29119195..00000000 --- a/features/support/helpers/net_helper.rb +++ /dev/null @@ -1,42 +0,0 @@ -# -# Sniffer is a very dumb wrapper to start and stop tcpdumps instances, possibly -# with customized filters. Captured traffic is stored in files whose name -# depends on the sniffer name. The resulting captured packets for each sniffers -# can be accessed as an array through its `packets` method. -# -# Use of more rubyish internal ways to sniff a network like with pcap-able gems -# is waaay to much resource consumming, notmuch reliable and soooo slow. Let's -# not bother too much with that. :) -# -# Should put all that in a Module. - -class Sniffer - - attr_reader :name, :pcap_file, :pid - - def initialize(name, bridge_name) - @name = name - @bridge_name = bridge_name - @bridge_mac = File.open("/sys/class/net/#{@bridge_name}/address", "rb").read.chomp - @pcap_file = "#{$tmp_dir}/#{name}.pcap" - end - - def capture(filter="not ether src host #{@bridge_mac} and not ether proto \\arp and not ether proto \\rarp") - job = IO.popen("/usr/sbin/tcpdump -n -i #{@bridge_name} -w #{@pcap_file} -U '#{filter}' >/dev/null 2>&1") - @pid = job.pid - end - - def stop - begin - Process.kill("TERM", @pid) - rescue - # noop - end - end - - def clear - if File.exist?(@pcap_file) - File.delete(@pcap_file) - end - end -end |