Cosmetic improvements to a few recvjob-related error messages.

This commit is contained in:
Garance A Drosehn 2000-11-06 04:37:56 +00:00
parent 7c17eaa6a8
commit 3aeddf3c1b
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=68380

View File

@ -79,7 +79,7 @@ static void frecverr __P((const char *, ...));
static int noresponse __P((void));
static void rcleanup __P((int));
static int read_number __P((char *));
static int readfile __P((char *, int));
static int readfile __P((struct printer *pp, char *, int));
static int readjob __P((struct printer *pp));
@ -156,14 +156,18 @@ readjob(pp)
cp = line;
do {
if ((size = read(1, cp, 1)) != 1) {
if (size < 0)
if (size < 0) {
frecverr("%s: lost connection",
pp->printer);
/*NOTREACHED*/
}
return (cfcnt);
}
} while (*cp++ != '\n' && (cp - line + 1) < sizeof(line));
if (cp - line + 1 >= sizeof(line))
frecverr("readjob overflow");
if (cp - line + 1 >= sizeof(line)) {
frecverr("%s: readjob overflow", pp->printer);
/*NOTREACHED*/
}
*--cp = '\0';
cp = line;
switch (*cp++) {
@ -196,7 +200,7 @@ readjob(pp)
(void) write(1, "\2", 1);
continue;
}
if (!readfile(tfname, size)) {
if (!readfile(pp, tfname, size)) {
rcleanup(0);
continue;
}
@ -221,17 +225,20 @@ readjob(pp)
}
(void) strncpy(dfname, cp, sizeof(dfname) - 1);
dfname[sizeof(dfname) - 1] = '\0';
if (strchr(dfname, '/'))
if (strchr(dfname, '/')) {
frecverr("readjob: %s: illegal path name",
dfname);
/*NOTREACHED*/
}
dfcnt++;
trstat_init(pp, dfname, dfcnt);
(void) readfile(dfname, size);
(void) readfile(pp, dfname, size);
trstat_write(pp, TR_RECVING, size, givenid, from,
givenhost);
continue;
}
frecverr("protocol screwup: %s", line);
/*NOTREACHED*/
}
}
@ -239,7 +246,8 @@ readjob(pp)
* Read files send by lpd and copy them to the spooling directory.
*/
static int
readfile(file, size)
readfile(pp, file, size)
struct printer *pp;
char *file;
int size;
{
@ -249,8 +257,11 @@ readfile(file, size)
int fd, err;
fd = open(file, O_CREAT|O_EXCL|O_WRONLY, FILMOD);
if (fd < 0)
frecverr("readfile: %s: illegal path name: %m", file);
if (fd < 0) {
frecverr("%s: readfile: error on open(%s): %m",
pp->printer, file);
/*NOTREACHED*/
}
ack();
err = 0;
for (i = 0; i < size; i += BUFSIZ) {
@ -260,8 +271,10 @@ readfile(file, size)
amt = size - i;
do {
j = read(1, cp, amt);
if (j <= 0)
frecverr("lost connection");
if (j <= 0) {
frecverr("%s: lost connection", pp->printer);
/*NOTREACHED*/
}
amt -= j;
cp += j;
} while (amt > 0);
@ -274,15 +287,17 @@ readfile(file, size)
}
}
(void) close(fd);
if (err)
frecverr("%s: write error", file);
if (err) {
frecverr("%s: write error on close(%s)", pp->printer, file);
/*NOTREACHED*/
}
if (noresponse()) { /* file sent had bad data in it */
if (strchr(file, '/') == NULL)
(void) unlink(file);
return(0);
return (0);
}
ack();
return(1);
return (1);
}
static int
@ -290,8 +305,10 @@ noresponse()
{
char resp;
if (read(1, &resp, 1) != 1)
frecverr("lost connection");
if (read(1, &resp, 1) != 1) {
frecverr("lost connection in noresponse()");
/*NOTREACHED*/
}
if (resp == '\0')
return(0);
return(1);