ares_parse_aaaa_reply.3 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. .\"
  2. .\" Copyright 2005 by Dominick Meglio.
  3. .\"
  4. .\" Permission to use, copy, modify, and distribute this
  5. .\" software and its documentation for any purpose and without
  6. .\" fee is hereby granted, provided that the above copyright
  7. .\" notice appear in all copies and that both that copyright
  8. .\" notice and this permission notice appear in supporting
  9. .\" documentation, and that the name of M.I.T. not be used in
  10. .\" advertising or publicity pertaining to distribution of the
  11. .\" software without specific, written prior permission.
  12. .\" M.I.T. makes no representations about the suitability of
  13. .\" this software for any purpose. It is provided "as is"
  14. .\" without express or implied warranty.
  15. .\"
  16. .TH ARES_PARSE_AAAA_REPLY 3 "20 Nov 2009"
  17. .SH NAME
  18. ares_parse_aaaa_reply \- Parse a reply to a DNS query of type AAAA
  19. .SH SYNOPSIS
  20. .nf
  21. .B #include <ares.h>
  22. .PP
  23. .B int ares_parse_aaaa_reply(const unsigned char *\fIabuf\fP, int \fIalen\fP,
  24. .B struct hostent **\fIhost\fP,
  25. .B struct ares_addr6ttl *\fIaddrttls\fP, int *\fInaddrttls\fP);
  26. .fi
  27. .SH DESCRIPTION
  28. The
  29. .B ares_parse_aaaa_reply
  30. function parses the response to a query of type AAAA into a
  31. .BR "struct hostent"
  32. and/or an array of
  33. .BR "struct ares_addr6ttl" .
  34. The parameters
  35. .I abuf
  36. and
  37. .I alen
  38. give the contents of the response. The result is stored in allocated
  39. memory and a pointer to it stored into the variable pointed to by
  40. .IR host ,
  41. if host is nonnull.
  42. It is the caller's responsibility to free the resulting host structure
  43. using
  44. .BR ares_free_hostent (3)
  45. when it is no longer needed.
  46. .PP
  47. If
  48. .IR addrttls
  49. and
  50. .IR naddrttls
  51. are both nonnull,
  52. then up to *naddrttls
  53. .BR "struct ares_addr6ttl"
  54. records are stored in the array pointed to by addrttls,
  55. and then *naddrttls is set to the number of records so stored.
  56. Note that the memory for these records is supplied by the caller.
  57. .SH RETURN VALUES
  58. .B ares_parse_aaaa_reply
  59. can return any of the following values:
  60. .TP 15
  61. .B ARES_SUCCESS
  62. The response was successfully parsed.
  63. .TP 15
  64. .B ARES_EBADRESP
  65. The response was malformatted.
  66. .TP 15
  67. .B ARES_ENODATA
  68. The response did not contain an answer to the query.
  69. .TP 15
  70. .B ARES_ENOMEM
  71. Memory was exhausted.
  72. .SH SEE ALSO
  73. .BR ares_gethostbyname (3),
  74. .BR ares_free_hostent (3)
  75. .SH AUTHOR
  76. Dominick Meglio
  77. .br
  78. Copyright 2005 by Dominick Meglio.
  79. .BR
  80. Andrew Selivanov <[email protected]>