Method: Netfilter::Log#process
- Defined in:
- lib/nflog.rb
#process(&callback) ⇒ Object
Processes logged packets, passing them through the provided callback.
372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 |
# File 'lib/nflog.rb', line 372 def process(&callback) @callback = callback fd = Log.nflog_fd(@nflog_handle) raise LogError, "nfq_fd has failed" if fd < 0 io = IO.new(fd) io.autoclose = false begin while data = io.sysread(4096) Log.nflog_handle_packet(@nflog_handle, data, data.size) end ensure io.close end end |