1 2005-07-29 Andrew Lunn <andrew.lunn@ascom.ch>
3 * src/dns.c Various casts and type fixes to stop gcc 4 warnings.
5 2004-07-13 Andrew Lunn <andrew.lunn@ascom.ch>
7 * src/dns.c (cyg_dns_getaddrinfo): Typo spotted by Andy Jackson.
8 * src/dns.c (cyg_dns_getnameinfo): And another typo
10 2003-09-04 Andrew Lunn <andrew.lunn@ascom.ch>
12 * cdl/dns.cdl: CDL control of what DNS server to use for the tests
13 * tests/dns1.c: Fine tuned the information for my server and added
14 Iztok Zupet's Server to the test.
16 2003-05-22 Andrew Lunn <andrew.lunn@ascom.cd>
18 * src/dns.c: (cyg_dns_res_start) New: Allow IPv6 to be used to
19 transport queries to the DNS server. This requires a new API
20 function to start the client which if protocol family
22 * tests/dns1.c: Added a test which uses IPv6 as the transport to
24 * doc/dns.sgml: Documentation of new API function for IPv6.
25 * cdl/dns.cdl: Comment that the default DNS server can be an IPv6
28 2003-05-14 Mark Salter <msalter@redhat.com>
30 * include/dns_impl.inl: Use strrchr instead of rindex.
32 2003-04-25 Andrew Lunn <andrew.lunn@ascom.ch>
34 * doc/dns.sgml: Updated to reflect changes for IPv6.
36 2003-04-24 Andrew Lunn <andrew.lunn@ascom.ch>
38 * include/dns_impl.inl (setdomainname): Append a . to the end of
39 the domainname if it does not have one.
40 * cdl/dns.cdl: CYGOPT_NS_DNS_FIRST_FAMILTY to control order of
42 * src/dns.c: Order the results from cyg_dns_getaddrinfo.
43 * test/dns1.c: Re-written to perform better testing and for
44 getaddrinfo and getnameinfo.
45 * test/dns2.c: Removed. It does not add anything useful.
47 2003-04-21 Andrew Lunn <andrew.lunn@ascom.ch>
49 * src/dns.c (cyg_dns_getnameinfo): New. Interface between
50 getnameinfo and the DNS client.
52 2003-04-19 Andrew Lunn <andrew.lunn@ascom.ch>
54 * src/dns.c (cyg_dns_getaddrinfo): New. Interface between
55 getaddrinfo and the DNS client. This supports both IPv4 and IPv6
56 * test/dns1.c: Added tests for getnameinfo using both IPv4 and
59 2003-03-03 Jonathan Larmour <jifl@eCosCentric.com>
61 * tests/dns1.c: Use BOOTP info where possible in preference to
62 (likely incorrect!) hardcoded info. Use non-Red Hat test
65 * tests/dns2.c: Use non-Red Hat test addresses. And don't check
66 BOOTP-derived domainname as we don't know what it should be!
68 2003-02-24 Jonathan Larmour <jifl@eCosCentric.com>
70 * cdl/dns.cdl: Add doc link.
72 2003-01-22 Jonathan Larmour <jifl@eCosCentric.com>
74 * doc/dns.sgml: Use correct (and working!) docbook.
76 2003-01-18 Jonathan Larmour <jifl@eCosCentric.com>
78 * include/dns_impl.inl (setdomainname): define with const name
80 * include/dns.h: Ditto.
81 * doc/dns.sgml: Document const in setdomainname proto here.
83 2003-01-10 Andrew Lunn <andrew.lunn@ascom.ch>
85 * cdl/dns.cdl: Added the ability to hard code a domain name.
86 Inspired by Motoya Kurotsu.
87 * doc/dns.sgml: Documentation for this.
89 2003-01-10 Motoya Kurotsu <kurotsu@allied-telesis.co.jp>
91 * tests/dns2.c: Verify domain name from the DHCP server with
92 _LOOKUP_DOMAINNAME, not _DNS_IP which is the address of the DNS
95 2003-01-09 Andrew Lunn <andrew.lunn@ascom.ch>
97 * cdl/dns.cdl: Added the ability to hard code a DNS server
98 address into the image which is used as the default.
99 * doc/dns.sgml: Documentation for this.
101 2002-10-18 Jonathan Larmour <jifl@eCosCentric.com>
103 * cdl/dns.cdl: Move CYGBLD_ISO_DNS_HEADER requires in with
104 CYGINT_ISO_DNS which is where it should always be beside.
106 2002-10-11 Andrew Lunn <andrew.lunn@ascom.ch>
108 * cdl/dns.cdl: If CYGPKG_NS_DNS_BUILD is disable we don't
109 implement the CYGINT_ISO_DNS interface.
111 2002-08-29 Roland Caßebohm <roland.cassebohm@visionsystems.de>
113 * include/dns_priv.h: Make dns_header structure endian dependent.
115 * include/dns_impl.inl: Don't use htons() for bitfields <= 8 bit.
116 Change the way setting the type and class fields in build_query()
117 to work with big-endian.
119 2002-05-30 Jesper Skov <jskov@redhat.com>
121 * src/dns.c: fixed index->ptdindex oversight.
123 2002-05-24 Jonathan Larmour <jlarmour@redhat.com>
125 * src/dns.c (free_hent): Actually free hent itself!
127 2002-05-23 Jonathan Larmour <jlarmour@redhat.com>
129 * cdl/dns.cdl (CYGPKG_NS_DNS_BUILD): Require thread destructors in
131 * include/dns_impl.inl: Instead of using cyg_thread_get_data
132 and _set_data directly, instead use store_hent and free_stored_hent
134 * src/dns.c: Define store_hent() and free_stored_hent() and make
135 them use thread destructors thus fixing a memory leak.
137 2002-05-14 Jesper Skov <jskov@redhat.com>
139 * tests/dns2.c: Fix warning.
141 2002-02-22 Hugo Tyson <hmt@redhat.com>
143 * doc/dns.sgml: New file. Documentation separated from monolithic
146 2002-02-01 Gary Thomas <gthomas@redhat.com>
148 * src/dns.c (cyg_dns_res_init): Need valid value for sin_len.
150 2002-01-31 Jonathan Larmour <jlarmour@redhat.com>
152 * cdl/dns.cdl: Don't build tests if no DNS!
154 2001-12-06 Andrew Lunn <andrew.lunn@ascom.ch>
156 * src/dns.c (cyg_dns_res_init): Allow this to be called more than
157 once. The DHCP client will do this when interfaces YoYo.
158 Restarting requires closing the socket (if any) and freeing the
159 per-thread-data slot number.
161 * include/dns_impl.inl (setdomainname): Allow the name to be
162 cleared. Check for NULL pointers variously before checking for
163 valid pointer asserts.
165 * tests/dns2.c: New file: Test the DNS configuration via DHCP.
167 * tests/dns1.c: Initially clear the domainname.
169 2001-11-29 Jonathan Larmour <jlarmour@redhat.com>
171 * src/dns.c: Rename index -> ptdindex to avoid conflict with BSD
173 * include/dns_impl.inl: Ditto.
175 2001-09-28 Jesper Skov <jskov@redhat.com>
177 * tests/dns1.c (_DNS_IP): Changed to IP used in farm.
179 2001-09-27 Jesper Skov <jskov@redhat.com>
181 * include/dns_priv.h: Added DNS_REPLY definitions.
183 * include/dns_impl.inl: Handle NXDomain returns.
185 * include/dns_impl.inl: Added tracing.
188 2001-09-26 Jesper Skov <jskov@redhat.com>
190 * tests/dns1.c (dns_test): Use hstrerror instead of strerror.
192 * include/dns.h: Added h_errno support.
193 * include/dns_impl.inl: Use h_errno instead of errno. Added
194 hstrerror(). Make hostname lookups before hostname.domainmain
197 2001-09-25 Jesper Skov <jskov@redhat.com>
199 * include/dns.h: Moved some more defs to..
200 * include/dns_priv.h: ...here.
202 * src/dns-priv.h: [deleted]
203 * include/dns_priv.h: [added]
205 * tests/dns1.c: Include netdb.h instead of dns.h.
207 * src/dns.c: Moved all DNS protocol functions into
208 dns_impl.inl. Allow for RedBoot to share the implementation with a
210 * include/dns_impl.inl: Added.
212 * cdl/dns.cdl: Moved compile statement and requirements into
213 CYGPKG_NS_DNS_BUILD option which can be forced off by RedBoot.
214 Moved headers to cyg/ns/dns.
216 * src/dns.c (alloc_hent, free_hent, alloc_string, free_string):
217 Added these wrapper functions for malloc/free calls - allow easier
218 maintaining of cloned function in RedBoot which uses static
219 variables for storage. Incidently removed a little code
222 * include/dns.h: Only include exported information.
223 * src/dns-priv.h: Everything else moved to this file.
225 * cdl/dns.cdl: Added feature requirements and CYGINT_ISO_DNS
228 * include/dns.h: Renamed res_init to cyg_dns_res_init.
230 * tests/dns1.c: Same.
232 * src/dns.c: Use drv_api mutex, removed some include statements.
233 * include/dns.h: Provide hostent definition and function
236 * tests/dns1.c: Use cambridge.redhat.com addresses. Changed to
239 * src/dns.c (parse_answer): On PTR lookups, alloc space for
240 in_addr, so caller can copy data there. Fix gethostbyaddr() to
242 Note that error values do not match gethostbyaddr(3).
244 2001-09-20 Jesper Skov <jskov@redhat.com>
246 * src/dns.c: More cosmetic changes, a few htons -> ntohs changes,
247 reducing size of critical section a few places, rely on
248 build_query setting errno, and set errno when getdomainname can't
249 copy domain name out due to size limitation.
251 2001-09-19 Jesper Skov <jskov@redhat.com>
253 * tests/dns1.c (dns_test): Fix inet_aton check.
254 * src/dns.c: A few comment and cosmetic changes.
256 2001-09-18 Jesper Skov <jskov@redhat.com>
258 * src/dns.c: Added DNS code contributed by Andrew Lunn
259 <andrew.lunn@ascom.ch>
260 * include/dns.h: Same.
261 * tests/dns1.c: Same.
263 //===========================================================================
264 //####ECOSGPLCOPYRIGHTBEGIN####
265 // -------------------------------------------
266 // This file is part of eCos, the Embedded Configurable Operating System.
267 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
269 // eCos is free software; you can redistribute it and/or modify it under
270 // the terms of the GNU General Public License as published by the Free
271 // Software Foundation; either version 2 or (at your option) any later version.
273 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
274 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
275 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
278 // You should have received a copy of the GNU General Public License along
279 // with eCos; if not, write to the Free Software Foundation, Inc.,
280 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
282 // As a special exception, if other files instantiate templates or use macros
283 // or inline functions from this file, or you compile this file and link it
284 // with other works to produce a work based on this file, this file does not
285 // by itself cause the resulting work to be covered by the GNU General Public
286 // License. However the source code for this file must still be made available
287 // in accordance with section (3) of the GNU General Public License.
289 // This exception does not invalidate any other reasons why a work based on
290 // this file might be covered by the GNU General Public License.
292 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
293 // at http://sources.redhat.com/ecos/ecos-license/
294 // -------------------------------------------
295 //####ECOSGPLCOPYRIGHTEND####
296 //===========================================================================