diff options
author | Luke Leighton <lkcl@samba.org> | 1998-12-07 17:23:48 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1998-12-07 17:23:48 +0000 |
commit | 312f4f3960a9b1938ae133678cd8567be1331b99 (patch) | |
tree | 53d5bd2ddc2d8d43e9afa6e9c2f3ba5bd63fae36 /source3/include/smb.h | |
parent | 149d11ce4a614f62936c93dc97447d024ffc61b0 (diff) | |
download | samba-312f4f3960a9b1938ae133678cd8567be1331b99.tar.gz samba-312f4f3960a9b1938ae133678cd8567be1331b99.tar.bz2 samba-312f4f3960a9b1938ae133678cd8567be1331b99.zip |
- lib/unix_sec_ctxt.c
attempt at taking lib/uid.c and getting a unix security context
change module that is independent of "cnums" and "snums".
a security context is needed for pipes, not just IPC$ or other
services.
- group database API
added add_group/alias_member, del_group/alias_member,
del_group/alias_entry functions. del_builtin_entry() is
deliberately set to NULL to cause an exception, you cannot
delete builtin aliases.
- parse_lsa.c srv_lsa.c
fixed lookup_names code, it was a load of trash and didn't do
anything.
- cmd_samr.c rpcclient.c srv_samr.c
added "deletegroup", "deletealias", "delaliasmem", "delgroupmem",
"addgroupmem", "addaliasmem", "createalias", "creategroup", to
both client and server code.
server code calls into unix stubs right now, which don't actually
do anything. the only instance where they are expected to do
anything is in appliance mode NOT even in the ldap code or anything.
client code modified to call samr_lookup_names() for group code
(because we can) and lsa_lookup_names() for alias code (because
we have to).
- srv_lookup.c
oops, lookup on unsplit name, we got lookup on DOMAIN, DOMAIN\name
instead of DOMAIN, name.
(This used to be commit b8175702ef61b8b37b078f38e81452c00a5e2986)
Diffstat (limited to 'source3/include/smb.h')
-rw-r--r-- | source3/include/smb.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/source3/include/smb.h b/source3/include/smb.h index e4191f706d..1ed4ea7089 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -612,6 +612,34 @@ typedef struct connection_struct } connection_struct; +struct unix_sec_ctxt +{ + uid_t uid; + gid_t gid; + int ngroups; + gid_t *groups; + + char *name; +}; + +struct nt_sec_ctxt +{ + /* this should (will?) probably become a SEC_DESC */ + DOM_SID user_sid; + DOM_SID group_sid; + + char *name; + char *domain; +}; + +#if 0 +struct sec_ctxt +{ + struct unix_sec_ctxt unix; + struct nt_sec_ctxt nt; +}; +#endif + struct current_user { connection_struct *conn; @@ -898,6 +926,10 @@ struct groupdb_ops */ BOOL (*add_group_entry)(DOMAIN_GRP *); BOOL (*mod_group_entry)(DOMAIN_GRP *); + BOOL (*del_group_entry)(uint32); + + BOOL (*add_group_member)(uint32, uint32); + BOOL (*del_group_member)(uint32, uint32); /* * user group functions @@ -937,6 +969,10 @@ struct aliasdb_ops */ BOOL (*add_alias_entry)(LOCAL_GRP *); BOOL (*mod_alias_entry)(LOCAL_GRP *); + BOOL (*del_alias_entry)(uint32); + + BOOL (*add_alias_member)(uint32, DOM_SID*); + BOOL (*del_alias_member)(uint32, DOM_SID*); /* * user alias functions |