summaryrefslogtreecommitdiff
path: root/src/skadns/skadns_packetlen.c
blob: 34cbb280ef6adc05a592fa19bd151e6d07afdab6 (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>

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