summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2018-07-10 19:57:55 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2018-07-10 19:57:55 +0200
commit24611cf5ed0f34edc6b843a621b63b710f51570a (patch)
tree96235cd57cd90694fa583caf5fecd1b3e528579e
parenta8a642920444ec6689ccfae81a1b1e148f75190e (diff)
ndb/cs: add -6 flag for v6 only lookups and "ipv4" control message to toggle v4 lookups.
-rw-r--r--sys/man/8/ndb12
-rw-r--r--sys/src/cmd/ndb/cs.c14
2 files changed, 23 insertions, 3 deletions
diff --git a/sys/man/8/ndb b/sys/man/8/ndb
index 52fa8a009..6cf2405ba 100644
--- a/sys/man/8/ndb
+++ b/sys/man/8/ndb
@@ -35,7 +35,7 @@ query, ipquery, mkhash, mkdb, mkhosts, cs, csquery, dns, dnstcp, dnsquery, dnsde
.br
.B ndb/cs
[
-.B -4n
+.B -46n
] [
.B -f
.I dbfile
@@ -257,10 +257,18 @@ The options are:
Only look up IPv4 addresses (A records) when consulting DNS.
The default is to also look up v6 addresses (AAAA records).
Writing
+.L ipv4
+to
+.B /net/cs
+will toggle IP v4 look-ups.
+.TP
+.B -6
+Only look up IPv6 addresses in DNS.
+Writing
.L ipv6
to
.B /net/cs
-will toggle IP v6 look-ups.
+toggles v6 lookups.
.TP
.B -f
supplies the name of the data base file to use,
diff --git a/sys/src/cmd/ndb/cs.c b/sys/src/cmd/ndb/cs.c
index ba3d5e622..3fc9d0b3e 100644
--- a/sys/src/cmd/ndb/cs.c
+++ b/sys/src/cmd/ndb/cs.c
@@ -196,7 +196,7 @@ nstrcpy(char *to, char *from, int len)
void
usage(void)
{
- fprint(2, "usage: %s [-dn] [-f ndb-file] [-x netmtpt]\n", argv0);
+ fprint(2, "usage: %s [-46dn] [-f ndb-file] [-x netmtpt]\n", argv0);
exits("usage");
}
@@ -238,6 +238,9 @@ main(int argc, char *argv[])
case '4':
lookipvers = V4;
break;
+ case '6':
+ lookipvers = V6;
+ break;
case 'd':
debug = 1;
break;
@@ -800,6 +803,15 @@ rwrite(Job *job, Mfile *mf)
}
/*
+ * toggle ipv4 lookups
+ */
+ if(strncmp(job->request.data, "ipv4", 4)==0){
+ lookipvers ^= V4;
+ syslog(1, logfile, "ipv4lookups %d", (lookipvers & V4) != 0);
+ goto send;
+ }
+
+ /*
* toggle ipv6 lookups
*/
if(strncmp(job->request.data, "ipv6", 4)==0){