ares_parse_naptr_reply.3 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. .\"
  2. .\" Copyright 1998 by the Massachusetts Institute of Technology.
  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_NAPTR_REPLY 3 "23 February 2012"
  17. .SH NAME
  18. ares_parse_naptr_reply \- Parse a reply to a DNS query of type NAPTR
  19. .SH SYNOPSIS
  20. .nf
  21. .B #include <ares.h>
  22. .PP
  23. .B int ares_parse_naptr_reply(const unsigned char* \fIabuf\fP, int \fIalen\fP,
  24. .B struct ares_naptr_reply** \fInaptr_out\fP);
  25. .fi
  26. .SH DESCRIPTION
  27. The
  28. .B ares_parse_naptr_reply
  29. function parses the response to a query of type NAPTR into a
  30. linked list of
  31. .I struct ares_naptr_reply
  32. The parameters
  33. .I abuf
  34. and
  35. .I alen
  36. give the contents of the response. The result is stored in allocated
  37. memory and a pointer to it stored into the variable pointed to by
  38. .IR naptr_out .
  39. It is the caller's responsibility to free the resulting
  40. .IR naptr_out
  41. structure when it is no longer needed using the function
  42. .B ares_free_data
  43. .PP
  44. The structure
  45. .I ares_naptr_reply
  46. contains the following fields:
  47. .sp
  48. .in +4n
  49. .nf
  50. struct ares_naptr_reply {
  51. struct ares_naptr_reply *next;
  52. unsigned char *flags;
  53. unsigned char *service;
  54. unsigned char *regexp;
  55. char *replacement;
  56. unsigned short order;
  57. unsigned short preference;
  58. };
  59. .fi
  60. .in
  61. .PP
  62. .SH RETURN VALUES
  63. .B ares_parse_naptr_reply
  64. can return any of the following values:
  65. .TP 15
  66. .B ARES_SUCCESS
  67. The response was successfully parsed.
  68. .TP 15
  69. .B ARES_EBADRESP
  70. The response was malformatted.
  71. .TP 15
  72. .B ARES_ENODATA
  73. The response did not contain an answer to the query.
  74. .TP 15
  75. .B ARES_ENOMEM
  76. Memory was exhausted.
  77. .SH AVAILABILITY
  78. This function was first introduced in c-ares version 1.7.6.
  79. .SH SEE ALSO
  80. .BR ares_query (3)
  81. .BR ares_free_data (3)
  82. .SH AUTHOR
  83. Written by Jakub Hrozek <[email protected]>, on behalf of Red Hat, Inc http://www.redhat.com