Blame SOURCES/cups-net-backends-etimedout-enotconn.patch

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