29 lines
1000 B
Diff
29 lines
1000 B
Diff
|
diff --git a/backend/ipp.c b/backend/ipp.c
|
||
|
index 0a70a87..f8bf7e1 100644
|
||
|
--- a/backend/ipp.c
|
||
|
+++ b/backend/ipp.c
|
||
|
@@ -327,6 +327,7 @@ main(int argc, /* I - Number of command-line args */
|
||
|
get_job_attrs = 0, /* Does printer support Get-Job-Attributes? */
|
||
|
send_document = 0, /* Does printer support Send-Document? */
|
||
|
validate_job = 0, /* Does printer support Validate-Job? */
|
||
|
+ validation_retried = 0, /* Indicate whether Validate-Job was retried */
|
||
|
copies, /* Number of copies for job */
|
||
|
copies_remaining; /* Number of copies remaining */
|
||
|
const char *content_type, /* CONTENT_TYPE environment variable */
|
||
|
@@ -1597,7 +1598,15 @@ main(int argc, /* I - Number of command-line args */
|
||
|
ipp_status == IPP_BAD_REQUEST)
|
||
|
break;
|
||
|
else if (job_auth == NULL && ipp_status > IPP_BAD_REQUEST)
|
||
|
+ {
|
||
|
+ if (!validation_retried)
|
||
|
+ {
|
||
|
+ validation_retried = 1;
|
||
|
+ sleep(10);
|
||
|
+ continue;
|
||
|
+ }
|
||
|
goto cleanup;
|
||
|
+ }
|
||
|
}
|
||
|
|
||
|
/*
|