diff options
Diffstat (limited to 'src/output/null.lua')
-rw-r--r-- | src/output/null.lua | 63 |
1 files changed, 7 insertions, 56 deletions
diff --git a/src/output/null.lua b/src/output/null.lua index b634c56..b0e167f 100644 --- a/src/output/null.lua +++ b/src/output/null.lua @@ -17,64 +17,15 @@ -- along with dnsjit. If not, see <http://www.gnu.org/licenses/>. -- dnsjit.output.null --- Output to nothing (/dev/null) --- local output = require("dnsjit.output.null").new() +-- Dummy layer to example.output.null -- --- Output module for those that doesn't really like packets. +-- This module has moved to example.output.null, see examples/modules/output-example in +-- dnsjit source repository. module(...,package.seeall) -require("dnsjit.output.null_h") -local ffi = require("ffi") -local C = ffi.C - -local t_name = "output_null_t" -local output_null_t = ffi.typeof(t_name) -local Null = {} - --- Create a new Null output. -function Null.new() - local self = { - _producer = nil, - obj = output_null_t(), - } - C.output_null_init(self.obj) - ffi.gc(self.obj, C.output_null_destroy) - return setmetatable(self, { __index = Null }) -end - --- Return the Log object to control logging of this instance or module. -function Null:log() - if self == nil then - return C.output_null_log() - end - return self.obj._log -end - --- Return the C functions and context for receiving objects. -function Null:receive() - return C.output_null_receiver(), self.obj -end - --- Set the producer to get objects from. -function Null:producer(o) - self.obj.prod, self.obj.ctx = o:produce() - self._producer = o -end - --- Retrieve all objects from the producer, if the optional --- .I num --- is a positive number then stop after that amount of objects have been --- retrieved. -function Null:run(num) - if num == nil then - num = -1 - end - C.output_null_run(self.obj, num) -end - --- Return the number of packets we sent into the void. -function Null:packets() - return tonumber(self.obj.pkts) +ok, cls = pcall(require, "example.output.null") +if not ok then + error("You need to install the example module output-example\n" .. cls) end -return Null +return cls |