summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2000-02-10 23:49:34 +0000
committerTim Potter <tpot@samba.org>2000-02-10 23:49:34 +0000
commit8098167b7ced2ae5939dc2a132e122d0a4ee3241 (patch)
treea399b320c009f3c3a412bf54001a7c5c09d3373a
parentca905cb3296eb9e4538dafa8312e7d26a6cf01a8 (diff)
downloadsamba-8098167b7ced2ae5939dc2a132e122d0a4ee3241.tar.gz
Removed debugs.
Added post-processing of calls to winbindd daemon.
-rw-r--r--source/nsswitch/winbind_nss.c46
1 files changed, 36 insertions, 10 deletions
diff --git a/source/nsswitch/winbind_nss.c b/source/nsswitch/winbind_nss.c
index 3ee487df710..f7cabb6f57e 100644
--- a/source/nsswitch/winbind_nss.c
+++ b/source/nsswitch/winbind_nss.c
@@ -60,8 +60,6 @@ _nss_ntdom_getpwnam_r(const char *name,
struct winbindd_response response;
int sock, len;
- fprintf(stderr, "query received for user %s\n", name);
-
/* Connect to agent socket */
if ((sock = connect_sock()) < 0) {
@@ -86,8 +84,6 @@ _nss_ntdom_getpwnam_r(const char *name,
if (response.result == WINBINDD_OK) {
struct winbindd_pw *pw = &response.data.pw;
- fprintf(stderr, "name = %s\n", pw->pw_name);
-
result->pw_name = strdup(pw->pw_name);
result->pw_passwd = strdup(pw->pw_name);
result->pw_uid = pw->pw_uid;
@@ -113,8 +109,6 @@ _nss_ntdom_getpwuid_r(uid_t uid,
struct winbindd_response response;
int sock, len;
- fprintf(stderr, "query received for uid %d\n", uid);
-
/* Connect to agent socket */
if ((sock = connect_sock()) < 0) {
@@ -136,6 +130,20 @@ _nss_ntdom_getpwuid_r(uid_t uid,
close(sock);
+ if (response.result == WINBINDD_OK) {
+ struct winbindd_pw *pw = &response.data.pw;
+
+ result->pw_name = strdup(pw->pw_name);
+ result->pw_passwd = strdup(pw->pw_name);
+ result->pw_uid = pw->pw_uid;
+ result->pw_gid = pw->pw_gid;
+ result->pw_gecos = strdup(pw->pw_gecos);
+ result->pw_dir = strdup(pw->pw_dir);
+ result->pw_shell = strdup(pw->pw_shell);
+
+ return NSS_STATUS_SUCCESS;
+ }
+
return NSS_STATUS_NOTFOUND;
}
@@ -152,8 +160,6 @@ _nss_ntdom_getgrnam_r(const char *name,
struct winbindd_response response;
int sock, len;
- fprintf(stderr, "query received for group %s\n", name);
-
/* Connect to agent socket */
if ((sock = connect_sock()) < 0) {
@@ -175,6 +181,17 @@ _nss_ntdom_getgrnam_r(const char *name,
close(sock);
+ if (response.result == WINBINDD_OK) {
+ struct winbindd_gr *gr = &response.data.gr;
+
+ result->gr_name = strdup(gr->gr_name);
+ result->gr_passwd = strdup(gr->gr_passwd);
+ result->gr_gid = gr->gr_gid;
+ result->gr_mem = NULL; /* ??? */
+
+ return NSS_STATUS_SUCCESS;
+ }
+
return NSS_STATUS_NOTFOUND;
}
@@ -187,8 +204,6 @@ _nss_ntdom_getgrgid_r(gid_t gid,
struct winbindd_response response;
int sock, len;
- fprintf(stderr, "query received for gid %d\n", gid);
-
/* Connect to agent socket */
if ((sock = connect_sock()) < 0) {
@@ -210,5 +225,16 @@ _nss_ntdom_getgrgid_r(gid_t gid,
close(sock);
+ if (response.result == WINBINDD_OK) {
+ struct winbindd_gr *gr = &response.data.gr;
+
+ result->gr_name = strdup(gr->gr_name);
+ result->gr_passwd = strdup(gr->gr_passwd);
+ result->gr_gid = gr->gr_gid;
+ result->gr_mem = NULL; /* ??? */
+
+ return NSS_STATUS_SUCCESS;
+ }
+
return NSS_STATUS_NOTFOUND;
}