]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/cmd/ndb/dns.h
/sys/src/cmd/ndb/dns.h:
[plan9front.git] / sys / src / cmd / ndb / dns.h
index 1e0ae2e86ce2846fbd0d7a6a9604845cb4323f79..c3d3efcbcf2d11197293e6a4e52f415b0806346b 100644 (file)
@@ -71,6 +71,7 @@ enum
        Tmailb= 253,    /* { Tmb, Tmg, Tmr } */
        Tmaila= 254,    /* obsolete */
        Tall=   255,    /* all records */
+       Tcaa=   257,    /* certification authority authorization */
 
        /* classes */
        Csym=   0,      /* internal symbols */
@@ -150,8 +151,8 @@ enum
        /* parallelism: tune; was 32; allow lots */
        Maxactive=      250,
 
-       /* tune; was 60*1000; keep it short */
-       Maxreqtm=       8*1000, /* max. ms to process a request */
+       /* tune; was 8*1000; that was too short */
+       Maxreqtm=       60*1000,        /* max. ms to process a request */
 
        Notauthoritative = 0,
        Authoritative,
@@ -171,6 +172,7 @@ typedef struct Server       Server;
 typedef struct Sig     Sig;
 typedef struct Srv     Srv;
 typedef struct Txt     Txt;
+typedef struct Caa     Caa;
 
 /*
  *  a structure to track a request and any slave process handling it
@@ -182,6 +184,7 @@ struct Request
        jmp_buf mret;           /* where master jumps to after starting a slave */
        int     id;
        char    *from;          /* who asked us? */
+       void    *aux;
 };
 
 /*
@@ -215,6 +218,12 @@ struct Key
        int     alg;
        Block;
 };
+struct Caa
+{
+       int     flags;
+       DN      *tag;
+       Block;
+};
 struct Cert
 {
        int     type;
@@ -287,6 +296,7 @@ struct RR
                SOA     *soa;   /* soa timers - soa */
                Srv     *srv;
                Key     *key;
+               Caa     *caa;
                Cert    *cert;
                Sig     *sig;
                Null    *null;
@@ -422,7 +432,6 @@ extern vlong        nowns;
 extern Area    *owned;
 extern int     sendnotifies;
 extern ulong   target;
-extern int     testing;        /* test cache whenever removing a DN */
 extern char    *trace;
 extern int     traceactivity;
 extern char    *zonerefreshprogram;
@@ -432,7 +441,6 @@ extern char *zonerefreshprogram;
 
 
 /* dn.c */
-extern char    *rrtname[];
 extern char    *rname[];
 extern unsigned        nrname;
 extern char    *opname[];
@@ -447,14 +455,13 @@ void      dnageall(int);
 void   dnagedb(void);
 void   dnagenever(DN *);
 void   dnauthdb(void);
-void   dncheck(void);
 void   dndump(char*);
-void   dnget(void);
 void   dninit(void);
 DN*    dnlookup(char*, int, int);
+DN*    idnlookup(char*, int, int);
+DN*    ipalookup(uchar*, int, int);
 void   dnptr(uchar*, uchar*, char*, int, int, int);
 void   dnpurge(void);
-void   dnput(void);
 void   dnslog(char*, ...);
 void   dnstats(char *file);
 void*  emalloc(int);
@@ -477,6 +484,8 @@ RR* rrlookup(DN*, int, int);
 char*  rrname(int, char*, int);
 RR*    rrremneg(RR**);
 RR*    rrremtype(RR**, int);
+RR*    rrremowner(RR**, DN*);
+RR*    rrremfilter(RR**, int (*)(RR*, void*), void*);
 int    rrsupported(int);
 int    rrtype(char*);
 void   slave(Request*);
@@ -492,13 +501,12 @@ void      addarea(DN *dp, RR *rp, Ndbtuple *t);
 
 /* dblookup.c */
 int    baddelegation(RR*, RR*, uchar*);
-RR*    dbinaddr(DN*, int);
 RR*    dblookup(char*, int, int, int, int);
 RR*    dnsservers(int);
 RR*    domainlist(int);
 int    insideaddr(char *dom);
 int    insidens(uchar *ip);
-int    myaddr(char *addr);
+int    myip(uchar *ip);
 int    opendatabase(void);
 int    outsidensip(int, uchar *ip);
 
@@ -507,7 +515,6 @@ char*       walkup(char*);
 RR*    getdnsservers(int);
 void   logreply(int, uchar*, DNSmsg*);
 void   logsend(int, int, uchar*, char*, char*, int);
-void   procsetname(char *fmt, ...);
 
 /* dnresolve.c */
 RR*    dnresolve(char*, int, int, Request*, RR**, int, int, int, int*);
@@ -519,7 +526,6 @@ void        initdnsmsg(DNSmsg *mp, RR *rp, int flags, ushort reqno);
 /* dnserver.c */
 void   dnserver(DNSmsg*, DNSmsg*, Request*, uchar *, int);
 void   dnudpserver(char*);
-void   dntcpserver(char*);
 
 /* dnnotify.c */
 void   dnnotify(DNSmsg*, DNSmsg*, Request*);