.\" Copyright (c) 2018-2022, OARC, Inc. .\" All rights reserved. .\" .\" This file is part of dnsjit. .\" .\" dnsjit is free software: you can redistribute it and/or modify .\" it under the terms of the GNU General Public License as published by .\" the Free Software Foundation, either version 3 of the License, or .\" (at your option) any later version. .\" .\" dnsjit is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with dnsjit. If not, see . .\" .TH dnsjit.output.udpcli 3 "1.2.3" "dnsjit" .SH NAME dnsjit.output.udpcli \- Simple and dumb UDP DNS client .SH SYNOPSIS local output = require("dnsjit.output.udpcli").new("127.0.0.1", "53") .SH DESCRIPTION Simple and rather dumb DNS client that takes any payload you give it and sends the full payload over UDP. .SS Attributes .TP timeout A .I core.timespec that is used when producing objects. .SS Functions .TP .BR Udpcli.new "()" Create a new Udpcli output. .TP .BR Udpcli:timeout "(seconds, nanoseconds)" Set the timeout when producing objects. .TP .BR Udpcli:connect "(host, port)" Connect to the .I host and .I port and return 0 if successful. .TP .BR Udpcli:nonblocking "(bool)" Enable (true) or disable (false) nonblocking mode and return 0 if successful, if .I bool is not specified then return if nonblocking mode is on (true) or off (false). .TP .BR Udpcli:receive "()" Return the C functions and context for receiving objects, these objects will be sent. .TP .BR Udpcli:produce "()" Return the C functions and context for producing objects, these objects are received. If nonblocking mode is enabled the producer will return a payload object with length zero if there was nothing to receive. If nonblocking mode is disabled the producer will wait for data and if timed out (see .IR timeout ) it will return a payload object with length zero. The producer returns nil on error. .TP .BR Udpcli:packets "()" Return the number of "packets" sent, actually the number of completely sent payloads. .TP .BR Udpcli:received "()" Return the number of "packets" received, actually the number of successful calls to .IR recvfrom (2) that returned data. .TP .BR Udpcli:errors "()" Return the number of errors when sending or receiving. .SH AUTHORS and CONTRIBUTORS Jerry Lundström (DNS-OARC), Tomáš Křížek (CZ.NIC), Petr Špaček (ISC) .LP Maintained by DNS-OARC .LP .RS .I https://www.dns-oarc.net/ .RE .LP .SH BUGS For issues and feature requests please use: .LP .RS \fIhttps://github.com/DNS-OARC/dnsjit/issues\fP .RE .LP For question and help please use: .LP .RS \fIadmin@dns-oarc.net\fP .RE .LP