X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=client%2Fadnslogres.c;h=2f13fb02fbca246ff6143f2c003c13f6a2d7aa9d;hb=0d66e3739146c9349ceb7600adc814d7d968e14c;hp=3aa7e0eea867e619a4e9c577760e1eb1323c9240;hpb=bef232aebeabbef525faa7d7f5b08cf7a1427f95;p=adns.git diff --git a/client/adnslogres.c b/client/adnslogres.c index 3aa7e0e..2f13fb0 100644 --- a/client/adnslogres.c +++ b/client/adnslogres.c @@ -46,6 +46,7 @@ static const char * const cvsid = #include "config.h" #include "adns.h" +#include "client.h" #ifdef ADNS_REGRESS_TEST # include "hredirect.h" @@ -218,9 +219,18 @@ static void proclog(FILE *inf, FILE *outf, int maxpending, int opts) { adns_finish(adns); } +static void printhelp(FILE *file) { + fputs("usage: adnslogres [] []\n" + " adnslogres --version|--help\n" + "options: -c set max number of outstanding queries\n" + " -p use poll(2) instead of select(2)\n" + " -d turn on debugging\n" + " -C use instead of contents of resolv.conf\n", + stdout); +} + static void usage(void) { - fprintf(stderr, "usage: %s [-d] [-p] [-c concurrency] [-C config] [logfile]\n", - progname); + printhelp(stderr); exit(1); } @@ -229,6 +239,18 @@ int main(int argc, char *argv[]) { extern char *optarg; FILE *inf; + if (argv[1] && !strncmp(argv[1],"--",2)) { + if (!strcmp(argv[1],"--help")) { + printhelp(stdout); + } else if (!strcmp(argv[1],"--version")) { + fputs(VERSION_MESSAGE("adnslogres"),stdout); + } else { + usage(); + } + if (ferror(stdout) || fclose(stdout)) { perror("stdout"); exit(1); } + exit(0); + } + maxpending= DEFMAXPENDING; opts= 0; while ((c= getopt(argc, argv, "c:C:dp")) != -1)