summaryrefslogtreecommitdiffstats
path: root/source/rpc_server/srv_samr.c
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>2000-03-22 10:55:01 +0000
committerLuke Leighton <lkcl@samba.org>2000-03-22 10:55:01 +0000
commit04fa6a02739671fa02b531ae47e5d24c54753331 (patch)
tree91edc49ee8fdabb74149395c7302757c3d7c61ba /source/rpc_server/srv_samr.c
parentcfaea90529be222f8df0e20a7ca1289f99c29e09 (diff)
downloadsamba-04fa6a02739671fa02b531ae47e5d24c54753331.tar.gz
samba-04fa6a02739671fa02b531ae47e5d24c54753331.tar.xz
samba-04fa6a02739671fa02b531ae47e5d24c54753331.zip
disabled code from HP that replaced get_sampwd_entries() with
get_passwd_entries(). get_sampwd_entries() calls the generic SAM pwdb API, whereas get_passwd_entries() calls the Unix database explicitly. this will result in LDAP, MYSQL, NISPLUS and any other future modules (e.g "appliance" mode SAM database) failing to operate correctly. i know what problem was attempted to be fixed, here, but this is not the right place to attempt to fix it.
Diffstat (limited to 'source/rpc_server/srv_samr.c')
-rw-r--r--source/rpc_server/srv_samr.c27
1 files changed, 26 insertions, 1 deletions
diff --git a/source/rpc_server/srv_samr.c b/source/rpc_server/srv_samr.c
index 5056c9382bf..1e0b2fc16a6 100644
--- a/source/rpc_server/srv_samr.c
+++ b/source/rpc_server/srv_samr.c
@@ -209,6 +209,29 @@ static char *unmap_unixname(char *unix_user_name, int name_idx)
return NULL;
}
+#ifdef DISABLED_BECAUSE_IT_FIXES_THE_PROBLEM_IN_THE_WRONG_WAY
+
+/*
+ * 1) this code should be *inside* getsam21pwent(), behind the
+ * sam database API. it should *not* be explictly in the samsrv
+ * implementation. that's the whole point of the sam database API:
+ * it hides implementation issues like this and allows code reuse
+ * for LDAP, NISPLUS, SMBPASSWD+Unix Passwd, MYSQL, tdb etc.
+ *
+ * 2) modifications to cvs main and 2_0 should be absolutely critical
+ * bug-fixes only, and TNG should be checked and worked on first.
+ * any bug-fixes and enhancements should be made to TNG,
+ * as per instructions at top of this file.
+ *
+ * i really appreciate the efforts of the person who wrote this code
+ * (whoever they are), however please consult with me because there
+ * are design issues that you should be aware of, and your skills
+ * are needed to fix the problems in the correct code-module in
+ * the right branch, not this one.
+ *
+ * lkcl@samba.org 23mar2000.
+ */
+
/*******************************************************************
This function sets up a list of users taken from the list of
users that UNIX knows about, as well as all the user names that
@@ -355,6 +378,8 @@ static BOOL get_passwd_entries(SAM_USER_INFO_21 *pw_buf,
return (*num_entries) > 0;
}
+#endif
+
/*******************************************************************
samr_reply_unknown_1
********************************************************************/
@@ -817,7 +842,7 @@ static void samr_reply_query_dispinfo(SAMR_Q_QUERY_DISPINFO *q_u,
if (r_e.status == 0x0)
{
become_root(True);
- got_pwds = get_passwd_entries(pass, q_u->start_idx, &total_entries, &num_entries, MAX_SAM_ENTRIES, 0);
+ got_pwds = get_sampwd_entries(pass, q_u->start_idx, &total_entries, &num_entries, MAX_SAM_ENTRIES, 0);
unbecome_root(True);
switch (q_u->switch_level)