diff -u -N flpr-2.4-0/man2h.c BUILD/man2hflpr.c
--- flpr-2.4-0/man2h.c	Mon Feb  8 13:26:05 1999
+++ BUILD/man2h.c	Tue Aug 28 12:34:41 2001
@@ -108,7 +108,7 @@
 	int Blanks = 0;
 	Line_p lp;
 	if(!(Anchor.fore && Anchor.fore->text)) {
-	    fprintf(stderr,"Logic error -- no 1st line oor it is blank.\n");
+	    fprintf(stderr,"Logic error -- no 1st line or it is blank.\n");
 	    exit(1);
 	}
 	for(lp = Anchor.fore->fore; !lp->text; lp = lp->fore) ++Blanks;
@@ -137,7 +137,7 @@
 			    if(*cp >= ' ' && *cp <= '~') {
 				putc(*cp,stdout);
 			    } else {
-				fprintf(stdout,"\\#03o",0xFF && *cp);
+				fprintf(stdout,"\\%03o",0xFF && *cp);
 			    }
 			}
 		    }
diff -u -N flpr-2.4-0/flpr.c BUILD/flpr.c
--- flpr-2.4-0/flpr.c	Thu Apr  8 13:13:55 1999
+++ BUILD/flpr.c	Tue Aug 28 11:58:36 2001
@@ -645,13 +645,15 @@
 };
 
 static char *msg_sysdflt_open[] = {
-   "A system defaults file, %f, is not open(2)-able by root.",
+   "A system defaults file, %f, is not openable by root.",
+   "See the open(2) system call documentation for more information.",
    "This file will be ignored.",
    (char *) 0
 };
 
 static char *msg_usrdflt_open[] = {
-   "The user defaults file, %f, is not open(2)-able by root.",
+   "The user defaults file, %f, is not openable by root.",
+   "See the open(2) system call documentation for more information.",
    "This file will be ignored.",
    (char *) 0
 };
@@ -739,7 +741,8 @@
 };
 
 static char *msg_bad_creat[] = {
-   "Unable to creat(2) the temporary file.",
+   "Unable to creat[e] the temporary file.",
+   "See the creat(2) system call documentation for more information.",
    "",
    "%n first creates a temporary intermediate file via creat(2).",
    "Then %n opens that file via open(2) for reading and writing.",
@@ -749,7 +752,8 @@
 };
 
 static char *msg_bad_creat_fstat[] = {
-   "Unable to obtain the creat(2)ed file's identification via fstat(2).",
+   "Unable to obtain the created file's identification via fstat(2).",
+   "See the fstat(2) system call documentation for more information.",
    "",
    "%n first creates a temporary intermediate file via creat(2).",
    "Then %n opens that file via open(2) for reading and writing.",
@@ -759,7 +763,8 @@
 };
 
 static char *msg_bad_open[] = {
-   "Unable to obtain the open(2) the temporary file.",
+   "Unable to open the temporary file.",
+   "See the open(2) system call documentation for more information.",
    "",
    "%n first creates a temporary intermediate file via creat(2).",
    "Then %n opens that file via open(2) for reading and writing.",
@@ -769,7 +774,8 @@
 };
 
 static char *msg_bad_open_fstat[] = {
-   "Unable to obtain the open(2)ed file's identification via fstat(2).",
+   "Unable to obtain the opened file's identification via fstat(2).",
+   "See the fstat(2) system call documentation for more information.",
    "",
    "%n first creates a temporary intermediate file via creat(2).",
    "Then %n opens that file via open(2) for reading and writing.",
@@ -1473,7 +1479,13 @@
     struct utsname ubfr;
 
     uname(&ubfr);
-    copystr(thismachine, ubfr.nodename);
+    if(ubfr.nodename) {
+	copystr(thismachine, ubfr.nodename);
+#ifdef GETHOSTNAME_CALL
+    } else {
+	gethostname(thismachine, sizeof(thismachine));
+#endif /* GETHOSTNAME_CALL */
+    }
 #else
 #ifdef GETHOSTNAME_CALL
     gethostname(thismachine, sizeof(thismachine));
@@ -1553,15 +1565,22 @@
 #endif /* GHNAME */
 #endif /* UNAME */
     hostp = gethostbyname(thismachine);
-    copynstr(FQDN,hostp ? hostp->h_name : thismachine,sizeof FQDN);
+    if(hostp) {
+	copynstr(FQDN,hostp->h_name,sizeof FQDN);
 #ifdef HOSTIP
-    fill((char *)&sin,'\0',sizeof sin);
-    sin.sin_family = hostp->h_addrtype;
-    copyn((char *)(&sin.sin_addr),(char *)(*(hostp->h_addr_list)),
-	  (int)(hostp->h_length));
-    copynstr(FQDNip,inet_ntoa(*(struct in_addr *)(&sin.sin_addr)),
-	 sizeof FQDNip);
+	fill((char *)&sin,'\0',sizeof sin);
+	sin.sin_family = hostp->h_addrtype;
+	copyn((char *)(&sin.sin_addr),(char *)(*(hostp->h_addr_list)),
+	      (int)(hostp->h_length));
+	copynstr(FQDNip,inet_ntoa(*(struct in_addr *)(&sin.sin_addr)),
+	     sizeof FQDNip);
 #endif /* HOSTIP */
+    } else {
+	copynstr(FQDN,thismachine,sizeof FQDN);
+#ifdef HOSTIP
+	copynstr(FQDNip,"IP address was not availed",sizeof FQDN);
+#endif /* HOSTIP */
+    }
     for(tcp=thismachine;
 	*tcp && *tcp!='.' && *tcp!='\n' && *tcp!=' ' && *tcp!='\t';
 	++tcp) {}
