chiark / gitweb /
+ * bug_if_query_done feature for debugging (SHOULD BE TAKEN OUT FOR RELEASE)
[adns.git] / src / internal.h
index 4fc7d7f342c0e2ba8c86c3360ca15d12e33aaf8c..719a592255c3c0a0f7002b88257bfc73ce5b0845 100644 (file)
@@ -58,6 +58,7 @@ typedef unsigned char byte;
 
 #define DNS_PORT 53
 #define DNS_MAXUDP 512
+#define DNS_MAXLABEL 63
 #define DNS_MAXDOMAIN 255
 #define DNS_HDRSIZE 12
 #define DNS_IDOFFSET 0
@@ -281,6 +282,7 @@ struct adns__state {
   struct query_queue udpw, tcpw, childw, output;
   adns_query forallnext;
   int nextid, udpsocket, tcpsocket;
+  int bug_if_query_done_now;
   vbuf tcpsend, tcprecv;
   int nservers, nsortlist, nsearchlist, searchndots, tcpserver, tcprecv_skip;
   enum adns__tcpstate {
@@ -288,10 +290,10 @@ struct adns__state {
     server_ok, server_broken
   } tcpstate;
   struct timeval tcptimeout;
-  /* This will have tv_sec==0 if it is not valid.
-   * It will always be valid if tcpstate _connecting.
-   * When _ok, it will be nonzero if we are idle
-   * (ie, tcpw queue is empty) and counting down.
+  /* This will have tv_sec==0 if it is not valid.  It will always be
+   * valid if tcpstate _connecting.  When _ok, it will be nonzero if
+   * we are idle (ie, tcpw queue is empty), in which case it is the
+   * absolute time when we will close the connection.
    */
   struct sigaction stdsigpipe;
   sigset_t stdsigmask;