fing.c revision 1.2 1 1.1 bgrayson #include <err.h>
2 1.1 bgrayson #include <stdio.h>
3 1.1 bgrayson
4 1.1 bgrayson int
5 1.1 bgrayson main(argc, argv)
6 1.1 bgrayson int argc;
7 1.1 bgrayson char **argv;
8 1.1 bgrayson {
9 1.1 bgrayson FILE *fp;
10 1.1 bgrayson char *fingerpath = "portal/tcp/localhost/finger";
11 1.1 bgrayson char *name = "";
12 1.1 bgrayson #define FING_BUFSIZE 16384
13 1.1 bgrayson char buff[FING_BUFSIZE];
14 1.1 bgrayson int n;
15 1.1 bgrayson
16 1.1 bgrayson if (argc > 2)
17 1.2 grant errx(1, "Error: usage: %s [name]", argv[0]);
18 1.1 bgrayson fp = fopen(fingerpath, "r+");
19 1.1 bgrayson if (!fp)
20 1.1 bgrayson err(1, "open of %s", fingerpath);
21 1.1 bgrayson if (argv[1])
22 1.1 bgrayson name = argv[1];
23 1.1 bgrayson fprintf(fp, "%s\n", name);
24 1.1 bgrayson n = fread(buff, (size_t) 1, FING_BUFSIZE, fp);
25 1.1 bgrayson fwrite(buff, (size_t) 1, n, stdout);
26 1.1 bgrayson return 0;
27 1.1 bgrayson }
28