---
name: "dnsjit.output.udpcli"
section: "3"
platform: "linux"
package: "dnsjit"
version: "1.5.0-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/dnsjit.output.udpcli"
---

# dnsjit.output.udpcli(3)

Simple and dumb UDP DNS client

## NAME

dnsjit.output.udpcli - Simple and dumb UDP DNS client

## SYNOPSIS

  local output = require("dnsjit.output.udpcli").new("127.0.0.1", "53")

## DESCRIPTION

Simple and rather dumb DNS client that takes any payload you give it and sends the full payload over UDP.

### Attributes

- timeout

  A *core.timespec* that is used when producing objects.

### Functions

- **Udpcli.new**()

  Create a new Udpcli output.

- **Udpcli:timeout**(seconds, nanoseconds)

  Set the timeout when producing objects.

- **Udpcli:connect**(host, port)

  Connect to the *host* and *port* and return 0 if successful.

- **Udpcli:nonblocking**(bool)

  Enable (true) or disable (false) nonblocking mode and return 0 if successful, if *bool* is not specified then return if nonblocking mode is on (true) or off (false).

- **Udpcli:receive**()

  Return the C functions and context for receiving objects, these objects will be sent.

- **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 *timeout*) it will return a payload object with length zero. The producer returns nil on error.

- **Udpcli:packets**()

  Return the number of "packets" sent, actually the number of completely sent payloads.

- **Udpcli:received**()

  Return the number of "packets" received, actually the number of successful calls to [*recvfrom*(2)](/recvfrom/2.md) that returned data.

- **Udpcli:errors**()

  Return the number of errors when sending or receiving.

## AUTHORS and CONTRIBUTORS

Jerry Lundström (DNS-OARC), Tomáš Křížek (CZ.NIC), Petr Špaček (ISC)

Maintained by DNS-OARC

*https://www.dns-oarc.net/*

## BUGS

For issues and feature requests please use:

*https://github.com/DNS-OARC/dnsjit/issues*

For question and help please use:

*admin@dns-oarc.net*
