summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1998-06-04 15:24:20 +0000
committerLuke Leighton <lkcl@samba.org>1998-06-04 15:24:20 +0000
commit59e2992139774762456826f6667e73f2b39828d8 (patch)
tree22da85295b46db07c77fe44c4001faa21fad2665
parent206f5882e7b93fc7e58785e005ea8c238b9b3c35 (diff)
downloadsamba-59e2992139774762456826f6667e73f2b39828d8.tar.gz
samba-59e2992139774762456826f6667e73f2b39828d8.tar.bz2
samba-59e2992139774762456826f6667e73f2b39828d8.zip
added "domain admin group" and "domain guest group" parameters. this is
because "domain admin users" and "domain guest users" was overloaded. incorrectly. (This used to be commit 04b824007263ac4879c7282a2d230deaac7d2c7b)
-rw-r--r--source3/include/proto.h2
-rw-r--r--source3/include/smb.h9
-rw-r--r--source3/param/loadparm.c6
-rw-r--r--source3/rpc_server/srv_util.c10
4 files changed, 22 insertions, 5 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h
index ff44a5841f..737ae94571 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -956,6 +956,8 @@ char *lp_driverfile(void);
char *lp_domain_sid(void);
char *lp_domain_other_sids(void);
char *lp_domain_groups(void);
+char *lp_domain_admin_group(void);
+char *lp_domain_guest_group(void);
char *lp_domain_admin_users(void);
char *lp_domain_guest_users(void);
char *lp_domain_hostsallow(void);
diff --git a/source3/include/smb.h b/source3/include/smb.h
index cdac9cb720..214b36e704 100644
--- a/source3/include/smb.h
+++ b/source3/include/smb.h
@@ -687,6 +687,15 @@ struct passdb_ops {
struct sam_disp_info *(*getsamdispnam)(char *);
struct sam_disp_info *(*getsamdisprid)(uint32);
struct sam_disp_info *(*getsamdispent)(void *);
+
+#if 0
+ /*
+ * password checking functions
+ */
+ struct smb_passwd *(*smb_password_chal )(char *username, char lm_pass[24], char nt_pass[24], char chal[8]);
+ struct smb_passwd *(*smb_password_check )(char *username, char lm_hash[16], char nt_hash[16],
+ struct passwd *(*unix_password_check)(char *username, char *pass, int pass_len);
+#endif
};
/* this is used for smbstatus */
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index 83aa2666a7..436a43240b 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -119,6 +119,8 @@ typedef struct
char *szSocketOptions;
char *szValidChars;
char *szWorkGroup;
+ char *szDomainAdminGroup;
+ char *szDomainGuestGroup;
char *szDomainAdminUsers;
char *szDomainGuestUsers;
char *szDomainHostsallow;
@@ -586,6 +588,8 @@ static struct parm_struct parm_table[] =
{"domain other sids",P_STRING, P_GLOBAL, &Globals.szDomainOtherSIDs, NULL, NULL, 0},
{"domain groups", P_STRING, P_GLOBAL, &Globals.szDomainGroups, NULL, NULL, 0},
{"domain controller",P_BOOL , P_GLOBAL, &Globals.bDomainController,NULL, NULL, 0},
+ {"domain admin group",P_STRING, P_GLOBAL, &Globals.szDomainAdminGroup, NULL, NULL, 0},
+ {"domain guest group",P_STRING, P_GLOBAL, &Globals.szDomainGuestGroup, NULL, NULL, 0},
{"domain admin users",P_STRING, P_GLOBAL, &Globals.szDomainAdminUsers, NULL, NULL, 0},
{"domain guest users",P_STRING, P_GLOBAL, &Globals.szDomainGuestUsers, NULL, NULL, 0},
{"domain hosts allow",P_STRING, P_GLOBAL, &Globals.szDomainHostsallow, NULL, NULL, 0},
@@ -986,6 +990,8 @@ FN_GLOBAL_STRING(lp_driverfile,&Globals.szDriverFile)
FN_GLOBAL_STRING(lp_domain_sid,&Globals.szDomainSID)
FN_GLOBAL_STRING(lp_domain_other_sids,&Globals.szDomainOtherSIDs)
FN_GLOBAL_STRING(lp_domain_groups,&Globals.szDomainGroups)
+FN_GLOBAL_STRING(lp_domain_admin_group,&Globals.szDomainAdminGroup)
+FN_GLOBAL_STRING(lp_domain_guest_group,&Globals.szDomainGuestGroup)
FN_GLOBAL_STRING(lp_domain_admin_users,&Globals.szDomainAdminUsers)
FN_GLOBAL_STRING(lp_domain_guest_users,&Globals.szDomainGuestUsers)
FN_GLOBAL_STRING(lp_domain_hostsallow,&Globals.szDomainHostsallow)
diff --git a/source3/rpc_server/srv_util.c b/source3/rpc_server/srv_util.c
index fca37db717..64f2e7a0d9 100644
--- a/source3/rpc_server/srv_util.c
+++ b/source3/rpc_server/srv_util.c
@@ -312,26 +312,26 @@ void get_domain_user_groups(char *domain_groups, char *user)
pstrcpy(domain_groups, lp_domain_groups());
/* can only be a user or a guest. cannot be guest _and_ admin */
- if (user_in_list(user, lp_domain_guest_users()))
+ if (user_in_list(user, lp_domain_guest_group()))
{
slprintf(tmp, sizeof(tmp) - 1, " %ld/7 ", DOMAIN_GROUP_RID_GUESTS);
pstrcat(domain_groups, tmp);
- DEBUG(3,("domain guest access %s granted\n", tmp));
+ DEBUG(3,("domain guest group access %s granted\n", tmp));
}
else
{
slprintf(tmp, sizeof(tmp) -1, " %ld/7 ", DOMAIN_GROUP_RID_USERS);
pstrcat(domain_groups, tmp);
- DEBUG(3,("domain user access %s granted\n", tmp));
+ DEBUG(3,("domain group access %s granted\n", tmp));
- if (user_in_list(user, lp_domain_admin_users()))
+ if (user_in_list(user, lp_domain_admin_group()))
{
slprintf(tmp, sizeof(tmp) - 1, " %ld/7 ", DOMAIN_GROUP_RID_ADMINS);
pstrcat(domain_groups, tmp);
- DEBUG(3,("domain admin access %s granted\n", tmp));
+ DEBUG(3,("domain admin group access %s granted\n", tmp));
}
}
}