From 4cf66fef48e992ae8f8196db50a742c6276e415b Mon Sep 17 00:00:00 2001 From: Michael Sweet Date: Thu, 5 Oct 2017 15:04:19 -0400 Subject: [PATCH] The network backends now retry on more error conditions (Issue #5123) --- backend/ipp.c | 5 ++--- backend/lpd.c | 5 ++--- backend/socket.c | 5 ++--- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/backend/ipp.c b/backend/ipp.c index 685d4d9df..588ad995e 100644 --- a/backend/ipp.c +++ b/backend/ipp.c @@ -743,8 +743,7 @@ main(int argc, /* I - Number of command-line args */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(errno)); - if (errno == ECONNREFUSED || errno == EHOSTDOWN || - errno == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -763,13 +762,13 @@ main(int argc, /* I - Number of command-line args */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at this " "time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; diff --git a/backend/lpd.c b/backend/lpd.c index 835f9eaee..4325b7c78 100644 --- a/backend/lpd.c +++ b/backend/lpd.c @@ -867,8 +867,7 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(error)); - if (error == ECONNREFUSED || error == EHOSTDOWN || - error == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -886,13 +885,13 @@ lpd_queue(const char *hostname, /* I - Host to connect to */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at " "this time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; diff --git a/backend/socket.c b/backend/socket.c index 7fc0880f1..c16a1a097 100644 --- a/backend/socket.c +++ b/backend/socket.c @@ -330,8 +330,7 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ fprintf(stderr, "DEBUG: Connection error: %s\n", strerror(error)); - if (error == ECONNREFUSED || error == EHOSTDOWN || - error == EHOSTUNREACH) + if (errno == ECONNREFUSED || errno == EHOSTDOWN || errno == EHOSTUNREACH || errno == ETIMEDOUT || errno == ENOTCONN) { if (contimeout && (time(NULL) - start_time) > contimeout) { @@ -349,13 +348,13 @@ main(int argc, /* I - Number of command-line arguments (6 or 7) */ break; case EHOSTUNREACH : + default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is unreachable at this " "time.")); break; case ECONNREFUSED : - default : _cupsLangPrintFilter(stderr, "WARNING", _("The printer is in use.")); break; -- 2.13.6