chiark / gitweb /
types.c: Pass real adns_rrtype to all cs_* functions and some csp_*
[adns.git] / src / internal.h
index 43f6d4359848fda3eba8fd0ebbf482b10f25c4b2..45d8ab1dac903187f37a16df938a9b78202faa45 100644 (file)
@@ -53,7 +53,7 @@ typedef unsigned char byte;
 
 /* Configuration and constants */
 
-#define MAXSERVERS 5
+#define MAXSERVERS 5 /* do not increase beyond no. of bits in `unsigned'! */
 #define MAXSORTLIST 15
 #define UDPMAXRETRIES 15
 #define UDPRETRYMS 2000
@@ -170,7 +170,7 @@ typedef struct typeinfo {
    * Previously, used alloc_interim, now use alloc_final.
    */
 
-  adns_status (*convstring)(vbuf *vb, const void *data);
+  adns_status (*convstring)(vbuf *vb, adns_rrtype, const void *data);
   /* Converts the RR data to a string representation in vbuf.
    * vbuf will be appended to (it must have been initialised),
    * and will not be null-terminated by convstring.
@@ -371,7 +371,8 @@ struct adns__state {
   int configerrno;
   struct query_queue udpw, tcpw, childw, output, intdone;
   adns_query forallnext;
-  int nextid, tcpsocket;
+  unsigned nextid;
+  int tcpsocket;
   struct udpsocket { int af; int fd; } udpsockets[MAXUDP];
   int nudpsockets;
   vbuf tcpsend, tcprecv;
@@ -719,6 +720,8 @@ void adns__returning(adns_state ads, adns_query qu);
  * external-faciing functions which call adns__returning should
  * normally be avoided in internal code. */
 
+void adns__intdone_process(adns_state ads);
+
 /* From reply.c: */
 
 void adns__procdgram(adns_state ads, const byte *dgram, int len,