bobvan (09/17/82)
Our 4.1BSD catman(8) didn't support the local, new, and public sections of the manual, as the Berkeley man(1) command did. The fix is simple and is given below as diff -c output. *** catman.orig.c Wed Oct 1 19:55:48 1980 --- catman.c Thu Sep 16 16:30:31 1982 *************** *** 15,20 nflag = 0, wflag = 0; main(ac, av) int ac; char *av[]; { --- 15,22 ----- nflag = 0, wflag = 0; + char *rindex(); + main(ac, av) int ac; char *av[]; { *************** *** 45,51 if (ac == 2) sections = *av; else if (ac < 2) ! sections = "12345678"; else { usage: printf("usage: catman [ -p ] [ -n ] [ -w ] [ sections ]\n"); --- 47,53 ----- if (ac == 2) sections = *av; else if (ac < 2) ! sections = "12345678lnp"; else { usage: printf("usage: catman [ -p ] [ -n ] [ -w ] [ sections ]\n"); *************** *** 85,92 tsp = rindex(dir.d_name, '.'); if (tsp == NULL) continue; ! if (!isdigit(*++tsp) || ((*++tsp && !isalpha(*tsp)) || *++tsp)) ! continue; strncpy(msp, dir.d_name, DIRSIZ); if ((inf = fopen(man, "r")) == NULL) { --- 87,101 ----- tsp = rindex(dir.d_name, '.'); if (tsp == NULL) continue; ! switch (*++tsp) { ! case '1': case '2': case '3': case '4': ! case '5': case '6': case '7': case '8': ! case 'l': case 'n': case 'p': ! if (isalpha(*++tsp) || *tsp=='\0') ! break; ! default: ! continue; ! } strncpy(msp, dir.d_name, DIRSIZ); if ((inf = fopen(man, "r")) == NULL) { ------------------------ Bob Van Valzah (...!decvax!ittvax!tpdcvax!bobvan)