class FFI::PCap::Dumper

See ‘pcap_dumper_t` in `pcap.h`.

A ‘pcap_dumper`, {Dumper} is handled opaquely so that it can be implemented differently on different platforms. In {PCap}, we simply wrap the `pcap_dumper_t` pointer with a ruby interface.

Public Class Methods

new(dumper) click to toggle source
# File lib/ffi/pcap/dumper.rb, line 12
def initialize(dumper)
  @dumper = dumper
end

Public Instance Methods

_write(header, bytes) click to toggle source
# File lib/ffi/pcap/dumper.rb, line 16
def _write(header, bytes)
  PCap.pcap_dump(@dumper, header, bytes)
end
close() click to toggle source
# File lib/ffi/pcap/dumper.rb, line 39
def close
  PCap.pcap_dump_close(@dumper)
end
flush() click to toggle source
# File lib/ffi/pcap/dumper.rb, line 35
def flush
  PCap.pcap_dump_flush(@dumper)
end
tell() click to toggle source
# File lib/ffi/pcap/dumper.rb, line 31
def tell
  PCap.pcap_dump_ftell(@dumper)
end
write(*args) click to toggle source
# File lib/ffi/pcap/dumper.rb, line 20
def write(*args)
  case args.first
  when Packet then write_pkt(*args)
  else             _write(*args)
  end
end
write_pkt(pkt) click to toggle source
# File lib/ffi/pcap/dumper.rb, line 27
def write_pkt(pkt)
  _write(pkt.header, pkt.body_ptr)
end