X-Git-Url: https://git.distorted.org.uk/~mdw/adns/blobdiff_plain/59fbb06aa915cb3e22889a458b2cfa914efaf796..82a3a6be5ffc04e0ec590227df235e5098c67298:/src/adns.h diff --git a/src/adns.h b/src/adns.h index 2df4000..5b25e66 100644 --- a/src/adns.h +++ b/src/adns.h @@ -1,11 +1,9 @@ /* - * Copyright (C)1998 Ian Jackson. - * This version provided for review and comment only. - * - * $Id: adns.h,v 1.38 1998/12/05 18:51:37 ian Exp $ + * adns.h + * - adns user-visible API (single-threaded, without any locking) */ /* - * This file is part of adns, which is Copyright (C) 1997, 1998 Ian Jackson + * This file is part of adns, which is Copyright (C) 1997-1999 Ian Jackson * * 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 @@ -19,7 +17,9 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + * $Id: adns.h,v 1.45 1999/04/11 21:01:49 ian Exp $ */ #ifndef ADNS_H_INCLUDED @@ -42,6 +42,7 @@ typedef enum { adns_if_debug= 0x0008, /* enable all output to stderr plus debug msgs */ adns_if_noautosys= 0x0010, /* do not make syscalls at every opportunity */ adns_if_eintr= 0x0020, /* allow _wait and _synchronous to return EINTR */ + adns_if_nosigpipe= 0x0040, /* applic has SIGPIPE set to SIG_IGN, do not protect */ } adns_initflags; typedef enum { @@ -89,7 +90,7 @@ typedef enum { } adns_rrtype; -/* In queries without qtf_anyquote, all domains must have standard +/* In queries without qtf_quoteok_*, all domains must have standard * legal syntax. In queries _with_ qtf_anyquote, domains in the query * or response may contain any characters, quoted according to * RFC1035 5.1. On input to adns, the char* is a pointer to the @@ -195,6 +196,7 @@ typedef struct { adns_status status; char *cname; /* always NULL if query was for CNAME records */ adns_rrtype type; /* guaranteed to be same as in query */ + time_t expires; /* expiry time, defined only if _s_ok, nxdomain or nodata. NOT TTL! */ int nrrs, rrsz; union { void *untyped; @@ -268,6 +270,7 @@ int adns_wait(adns_state ads, adns_query *query_io, adns_answer **answer_r, void **context_r); +/* fixme: minor cache */ void adns_cancel(adns_query query);