* - comments regarding library data structures
*/
/*
- * This file is
- * Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
- *
- * It is part of adns, which is
- * Copyright (C) 1997-2000 Ian Jackson <ian@davenant.greenend.org.uk>
- * Copyright (C) 1999-2000 Tony Finch <dot@dotat.at>
+ * This file is part of adns, which is
+ * Copyright (C) 1997-2000,2003,2006 Ian Jackson
+ * Copyright (C) 1999-2000,2003,2006 Tony Finch
+ * Copyright (C) 1991 Massachusetts Institute of Technology
+ * (See the file INSTALL for full details.)
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
/* Shared data structures */
-typedef union {
- adns_status status;
- char *cp;
- adns_rrtype type;
- int i;
- struct in_addr ia;
- unsigned long ul;
-} rr_align;
-
typedef struct {
int used, avail;
byte *buf;
typedef struct {
void *ext;
void (*callback)(adns_query parent, adns_query child);
+
+ union {
+ adns_rr_addr ptr_addr;
+ } tinfo; /* type-specific state for the query itself: zero-init if you
+ * don't know better. */
+
union {
- adns_rr_addr ptr_parent_addr;
adns_rr_hostaddr *hostaddr;
- } info;
+ } pinfo; /* state for use by parent's callback function */
} qcontext;
struct adns__query {