summaryrefslogtreecommitdiff
path: root/sys/src/cmd/ndb/inform.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@flatbox.9hal>2012-03-09 06:02:17 +0100
committercinap_lenrek <cinap_lenrek@flatbox.9hal>2012-03-09 06:02:17 +0100
commit0d926a251269277214ab0ce5e84f5c4674576d6f (patch)
tree98b9399d29bd6555f870b084152b8a89e71bbbba /sys/src/cmd/ndb/inform.c
parentf7bc3526b3acfe70263167e0a78dbb4a4050c6e4 (diff)
dns: import changes from sources
Diffstat (limited to 'sys/src/cmd/ndb/inform.c')
-rw-r--r--sys/src/cmd/ndb/inform.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/sys/src/cmd/ndb/inform.c b/sys/src/cmd/ndb/inform.c
index 6398f7c07..58e3936fd 100644
--- a/sys/src/cmd/ndb/inform.c
+++ b/sys/src/cmd/ndb/inform.c
@@ -24,11 +24,6 @@ char *errmsgs[] = {
[10] "domain name not in zone",
};
-char *dnsrch[] = {
- "dnsdomain",
- "dom",
-};
-
void
usage(void)
{
@@ -98,12 +93,12 @@ main(int argc, char *argv[])
{
int debug, len, fd;
uint err;
- char *sysname, *dnsdomain, *dom, *ns, net[32];
+ char *sysname, *dnsdomain, *dom, *inform, *ns, net[32];
uchar *p, buf[4096], addr[IPv4addrlen], v6addr[IPaddrlen];
ushort txid;
Ndb *db;
Ndbtuple *t, *tt;
- static char *query[] = { "dom", "dnsdomain", "ns", };
+ static char *query[] = { "dom", "dnsdomain", "ns", "inform" };
fmtinstall('I', eipfmt);
fmtinstall('V', eipfmt);
@@ -112,6 +107,7 @@ main(int argc, char *argv[])
debug = 0;
ns = nil;
dom = nil;
+ inform = nil;
dnsdomain = nil;
ARGBEGIN{
case 'd':
@@ -133,16 +129,22 @@ main(int argc, char *argv[])
if((db = ndbopen(nil)) == nil)
sysfatal("can't open ndb: %r");
tt = ndbipinfo(db, "sys", sysname, query, nelem(query));
- for(t = tt; t; t = t->entry)
+ for(t = tt; t; t = t->entry){
if(strcmp(t->attr, "ns") == 0)
ns = t->val;
else if(strcmp(t->attr, "dom") == 0)
dom = t->val;
else if(strcmp(t->attr, "dnsdomain") == 0)
dnsdomain = t->val;
+ else if(strcmp(t->attr, "inform") == 0)
+ inform = t->val;
+ }
+
ndbfree(tt);
ndbclose(db);
+ if(inform)
+ dom = inform;
if(!ns)
sysfatal("no relevant ns=");
if(!dom)