#include <u.h> | |
#include <libc.h> | |
#include <bio.h> | |
#include <ndb.h> | |
#include <ip.h> | |
/* | |
* search the database for matches | |
*/ | |
void | |
usage(void) | |
{ | |
fprint(2, "usage: ipquery attr value rattribute\n"); | |
exits("usage"); | |
} | |
void | |
search(Ndb *db, char *attr, char *val, char **rattr, int nrattr) | |
{ | |
Ndbtuple *t; | |
t = ndbipinfo(db, attr, val, rattr, nrattr); | |
for(; t; t = t->entry) | |
print("%s=%s ", t->attr, t->val); | |
print("\n"); | |
ndbfree(t); | |
} | |
void | |
main(int argc, char **argv) | |
{ | |
Ndb *db; | |
char *dbfile = 0; | |
ARGBEGIN{ | |
case 'f': | |
dbfile = ARGF(); | |
break; | |
}ARGEND; | |
if(argc < 3) | |
usage(); | |
db = ndbopen(dbfile); | |
if(db == 0){ | |
fprint(2, "no db files\n"); | |
exits("no db"); | |
} | |
search(db, argv[0], argv[1], argv+2, argc-2); | |
ndbclose(db); | |
exits(0); | |
} |