summaryrefslogtreecommitdiff
path: root/src/skadns/skadns_packet.c
blob: c34b3a168ba63a2e91ced69c547774de76d4c98b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* ISC license. */

#include <errno.h>
#include <skalibs/uint16.h>
#include <skalibs/gensetdyn.h>
#include <s6-dns/skadns.h>

char const *skadns_packet (skadns_t const *a, uint16 id)
{
  register skadnsanswer_t *p = GENSETDYN_P(skadnsanswer_t, &a->q, id) ;
  switch (p->status)
  {
    case 0 : return (char const *)p->data ;
    default : return (errno = p->status, (char const *)0) ;
  }
}