/contrib/bind9/lib/dns/rdata/in_1/apl_42.h

https://bitbucket.org/freebsd/freebsd-head/ · C Header · 56 lines · 23 code · 9 blank · 24 comment · 0 complexity · 610b208e1107fe323607c6737afe57c5 MD5 · raw file

  1. /*
  2. * Copyright (C) 2004, 2005, 2007 Internet Systems Consortium, Inc. ("ISC")
  3. * Copyright (C) 2002 Internet Software Consortium.
  4. *
  5. * Permission to use, copy, modify, and/or distribute this software for any
  6. * purpose with or without fee is hereby granted, provided that the above
  7. * copyright notice and this permission notice appear in all copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
  10. * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
  11. * AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
  12. * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
  13. * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
  14. * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  15. * PERFORMANCE OF THIS SOFTWARE.
  16. */
  17. /* */
  18. #ifndef IN_1_APL_42_H
  19. #define IN_1_APL_42_H 1
  20. /* $Id: apl_42.h,v 1.6 2007/06/19 23:47:17 tbox Exp $ */
  21. typedef struct dns_rdata_apl_ent {
  22. isc_boolean_t negative;
  23. isc_uint16_t family;
  24. isc_uint8_t prefix;
  25. isc_uint8_t length;
  26. unsigned char *data;
  27. } dns_rdata_apl_ent_t;
  28. typedef struct dns_rdata_in_apl {
  29. dns_rdatacommon_t common;
  30. isc_mem_t *mctx;
  31. /* type & class specific elements */
  32. unsigned char *apl;
  33. isc_uint16_t apl_len;
  34. /* private */
  35. isc_uint16_t offset;
  36. } dns_rdata_in_apl_t;
  37. /*
  38. * ISC_LANG_BEGINDECLS and ISC_LANG_ENDDECLS are already done
  39. * via rdatastructpre.h and rdatastructsuf.h.
  40. */
  41. isc_result_t
  42. dns_rdata_apl_first(dns_rdata_in_apl_t *);
  43. isc_result_t
  44. dns_rdata_apl_next(dns_rdata_in_apl_t *);
  45. isc_result_t
  46. dns_rdata_apl_current(dns_rdata_in_apl_t *, dns_rdata_apl_ent_t *);
  47. #endif /* IN_1_APL_42_H */