lwIP 2.1.0 Lightweight IP stack

Functions
mdns_priv.h File Reference
`#include "lwip/apps/mdns_opts.h"`
`#include "lwip/pbuf.h"`

## Functions
err_t | mdns_domain_add_label (struct mdns_domain *domain, const char *label, u8_t len)
u16_t | mdns_readname (struct pbuf *p, u16_t offset, struct mdns_domain *domain)
int | mdns_domain_eq (struct mdns_domain *a, struct mdns_domain *b)
u16_t | mdns_compress_domain (struct pbuf *pbuf, u16_t *offset, struct mdns_domain *domain)

## Detailed Description

MDNS responder private definitions

## Function Documentation

## ◆ mdns_compress_domain()

u16_t mdns_compress_domain | ( | struct pbuf * | pbuf,
|  | u16_t * | offset,
|  | struct mdns_domain * | domain
| ) |  |

Return bytes needed to write before jump for best result of compressing supplied domain against domain in outpacket starting at specified offset. If a match is found, offset is updated to where to jump to

Parameters

  pbuf | Pointer to pbuf with the partially constructed DNS packet
  offset | Start position of a domain written earlier. If this location is suitable for compression, the pointer is updated to where in the domain to jump to.
  domain | The domain to write

Returns
  Number of bytes to write of the new domain before writing a jump to the offset. If compression can not be done against this previous domain name, the full new domain length is returned.

## ◆ mdns_domain_add_label()

err_t mdns_domain_add_label | ( | struct mdns_domain * | domain,
|  | const char * | label,
|  | u8_t | len
| ) |  |

Add a label part to a domain

Parameters

  domain | The domain to add a label to
  label | The label to add, like <hostname>, 'local', 'com' or ''
  len | The length of the label

Returns
  ERR_OK on success, an err_t otherwise if label too long

## ◆ mdns_domain_eq()

int mdns_domain_eq | ( | struct mdns_domain * | a,
|  | struct mdns_domain * | b
| ) |  |

Return 1 if contents of domains match (case-insensitive)

Parameters

  a | Domain name to compare 1
  b | Domain name to compare 2

Returns
  1 if domains are equal ignoring case, 0 otherwise

## ◆ mdns_readname()

u16_t mdns_readname | ( | struct pbuf * | p,
|  | u16_t | offset,
|  | struct mdns_domain * | domain
| ) |  |

Read possibly compressed domain name from packet buffer

Parameters

  p | The packet
  offset | start position of domain name in packet
  domain | The domain name destination

Returns
  The new offset after the domain, or MDNS_READNAME_ERROR if reading failed