aboutsummaryrefslogtreecommitdiff
path: root/security/sssd/files/patch-src__sss_client__common.c
diff options
context:
space:
mode:
Diffstat (limited to 'security/sssd/files/patch-src__sss_client__common.c')
-rw-r--r--security/sssd/files/patch-src__sss_client__common.c63
1 files changed, 25 insertions, 38 deletions
diff --git a/security/sssd/files/patch-src__sss_client__common.c b/security/sssd/files/patch-src__sss_client__common.c
index e9ec13a2d56c..59dcc448fd7c 100644
--- a/security/sssd/files/patch-src__sss_client__common.c
+++ b/security/sssd/files/patch-src__sss_client__common.c
@@ -1,4 +1,6 @@
---- src/sss_client/common.c.orig 2014-09-17 13:01:37 UTC
+diff --git src/sss_client/common.c src/sss_client/common.c
+index d8effb6dd..edeb4a159 100644
+--- src/sss_client/common.c
+++ src/sss_client/common.c
@@ -25,6 +25,7 @@
#include "config.h"
@@ -8,15 +10,15 @@
#include <security/pam_modules.h>
#include <errno.h>
#include <sys/types.h>
-@@ -43,6 +44,7 @@
- #include <libintl.h>
+@@ -44,6 +45,7 @@
#define _(STRING) dgettext (PACKAGE, STRING)
#include "sss_cli.h"
+ #include "common_private.h"
+#include "util/sss_bsd_errno.h"
#if HAVE_PTHREAD
#include <pthread.h>
-@@ -124,7 +126,6 @@ static enum sss_status sss_cli_send_req(enum sss_cli_c
+@@ -126,7 +128,6 @@ static enum sss_status sss_cli_send_req(enum sss_cli_command cmd,
*errnop = error;
break;
case 0:
@@ -24,7 +26,7 @@
break;
case 1:
if (pfd.revents & (POLLERR | POLLHUP | POLLNVAL)) {
-@@ -232,7 +233,6 @@ static enum sss_status sss_cli_recv_rep(enum sss_cli_c
+@@ -235,7 +236,6 @@ static enum sss_status sss_cli_recv_rep(enum sss_cli_command cmd,
*errnop = error;
break;
case 0:
@@ -32,7 +34,7 @@
break;
case 1:
if (pfd.revents & (POLLHUP)) {
-@@ -669,7 +669,6 @@ static enum sss_status sss_cli_check_socket(int *errno
+@@ -679,7 +679,6 @@ static enum sss_status sss_cli_check_socket(int *errnop,
*errnop = error;
break;
case 0:
@@ -40,7 +42,7 @@
break;
case 1:
if (pfd.revents & (POLLERR | POLLHUP | POLLNVAL)) {
-@@ -719,23 +718,23 @@ enum nss_status sss_nss_make_request(enum sss_cli_comm
+@@ -730,7 +729,7 @@ enum nss_status sss_nss_make_request_timeout(enum sss_cli_command cmd,
/* avoid looping in the nss daemon */
envval = getenv("_SSS_LOOPS");
if (envval && strcmp(envval, "NO") == 0) {
@@ -48,42 +50,21 @@
+ return NS_NOTFOUND;
}
- ret = sss_cli_check_socket(errnop, SSS_NSS_SOCKET_NAME);
- if (ret != SSS_STATUS_SUCCESS) {
-- return NSS_STATUS_UNAVAIL;
-+ return NS_UNAVAIL;
- }
-
- ret = sss_cli_make_request_nochecks(cmd, rd, repbuf, replen, errnop);
- switch (ret) {
- case SSS_STATUS_TRYAGAIN:
-- return NSS_STATUS_TRYAGAIN;
-+ return NS_TRYAGAIN;
- case SSS_STATUS_SUCCESS:
-- return NSS_STATUS_SUCCESS;
-+ return NS_SUCCESS;
- case SSS_STATUS_UNAVAIL:
- default:
-- return NSS_STATUS_UNAVAIL;
-+ return NS_UNAVAIL;
- }
- }
-
-@@ -750,23 +749,23 @@ int sss_pac_make_request(enum sss_cli_command cmd,
- /* avoid looping in the nss daemon */
- envval = getenv("_SSS_LOOPS");
- if (envval && strcmp(envval, "NO") == 0) {
+ ret = sss_cli_check_socket(errnop, SSS_NSS_SOCKET_NAME, timeout);
+@@ -738,9 +737,9 @@ enum nss_status sss_nss_make_request_timeout(enum sss_cli_command cmd,
+ #ifdef NONSTANDARD_SSS_NSS_BEHAVIOUR
+ *errnop = 0;
+ errno = 0;
- return NSS_STATUS_NOTFOUND;
+ return NS_NOTFOUND;
- }
-
- ret = sss_cli_check_socket(errnop, SSS_PAC_SOCKET_NAME);
- if (ret != SSS_STATUS_SUCCESS) {
+ #else
- return NSS_STATUS_UNAVAIL;
+ return NS_UNAVAIL;
+ #endif
}
- ret = sss_cli_make_request_nochecks(cmd, rd, repbuf, replen, errnop);
+@@ -765,17 +764,17 @@ enum nss_status sss_nss_make_request_timeout(enum sss_cli_command cmd,
+ }
switch (ret) {
case SSS_STATUS_TRYAGAIN:
- return NSS_STATUS_TRYAGAIN;
@@ -93,8 +74,14 @@
+ return NS_SUCCESS;
case SSS_STATUS_UNAVAIL:
default:
+ #ifdef NONSTANDARD_SSS_NSS_BEHAVIOUR
+ *errnop = 0;
+ errno = 0;
+- return NSS_STATUS_NOTFOUND;
++ return NS_NOTFOUND;
+ #else
- return NSS_STATUS_UNAVAIL;
+ return NS_UNAVAIL;
+ #endif
}
}
-