summaryrefslogtreecommitdiffstats
path: root/btimec.c
blob: d766e8e05cd4592e430025a9e2a8282a57ad7a3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/* 
 * btimec.c --
 *
 *	Example program for libbtime
 */

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>

#include "btime.h"

char usage[] = "USAGE: %s [-r] <host>\n";

int
main(int argc, char **argv)
{
	unsigned int bt;
	char *btimedhost;
	int readable = 0;
	int c;

	while ((c = getopt(argc, argv, "r")) != -1) {
		switch (c) {
			case 'r': 
				readable = 1; 
				break;
			default: 
				fprintf(stderr, usage, argv[0]);
				exit(2);
		}
	}

	if (optind >= argc) {
		fprintf(stderr, usage, argv[0]);
		exit(2);
	}
	srandom(time(0));
	for ( ; optind < argc; optind++) {
		btimedhost = argv[optind];
		bt = btime(btimedhost);
		if (readable) {
			time_t tt = bt;
			time_t *ttp = &tt;
			printf("%s: %s", btimedhost, bt ? ctime(ttp) : "down\n");
		} else {
			printf("%s: %u\n", btimedhost, bt);
		}
	}
	exit(0);
}