From 3acae62a876beab12390d24212be386876e73831 Mon Sep 17 00:00:00 2001 From: Luke Leighton Date: Fri, 23 Oct 1998 21:45:16 +0000 Subject: added domain and local group structures. names may have to be 256 chars long not 128 (fstring) length. (This used to be commit 1e96e14e790e733bbd182a828b0db8727fead2a2) --- source3/include/rpc_misc.h | 16 ------------- source3/include/smb.h | 60 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 16 deletions(-) diff --git a/source3/include/rpc_misc.h b/source3/include/rpc_misc.h index c03471ebfc..50daf27dfc 100644 --- a/source3/include/rpc_misc.h +++ b/source3/include/rpc_misc.h @@ -79,22 +79,6 @@ typedef struct lookup_level_info } LOOKUP_LEVEL; -#define MAXSUBAUTHS 15 /* max sub authorities in a SID */ - -/* DOM_SID - security id */ -typedef struct sid_info -{ - uint8 sid_rev_num; /* SID revision number */ - uint8 num_auths; /* number of sub-authorities */ - uint8 id_auth[6]; /* Identifier Authority */ - /* - * Note that the values in these uint32's are in *native* byteorder, - * not neccessarily little-endian...... JRA. - */ - uint32 sub_auths[MAXSUBAUTHS]; /* pointer to sub-authorities. */ - -} DOM_SID; - /* DOM_SID2 - security id */ typedef struct sid_info_2 { diff --git a/source3/include/smb.h b/source3/include/smb.h index 2e27fa195f..a6566fb364 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -431,6 +431,66 @@ struct sam_disp_info char *full_name; /* user's full name string */ }; +#define MAXSUBAUTHS 15 /* max sub authorities in a SID */ + +/* DOM_SID - security id */ +typedef struct sid_info +{ + uint8 sid_rev_num; /* SID revision number */ + uint8 num_auths; /* number of sub-authorities */ + uint8 id_auth[6]; /* Identifier Authority */ + /* + * Note that the values in these uint32's are in *native* byteorder, + * not neccessarily little-endian...... JRA. + */ + uint32 sub_auths[MAXSUBAUTHS]; /* pointer to sub-authorities. */ + +} DOM_SID; + + +/*** query a local group, get a list of these: shows who is in that group ***/ + +/* local group member info */ +typedef struct local_grp_member_info +{ + DOM_SID sid ; /* matches with name */ + uint8 sid_use; /* usr=1 grp=2 dom=3 alias=4 wkng=5 del=6 inv=7 unk=8 */ + fstring name ; /* matches with sid: must be of the form "DOMAIN\account" */ + +} LOCAL_GRP_MEMBER; + +/* enumerate these to get list of local groups */ + +/* local group info */ +typedef struct local_grp_info +{ + fstring name; + fstring comment; + +} LOCAL_GRP; + +/*** enumerate these to get list of domain groups ***/ + +/* domain group member info */ +typedef struct domain_grp_info +{ + fstring name; + fstring comment; + uint32 rid; /* group rid */ + uint8 attr; /* attributes forced to be set to 0x7: SE_GROUP_xxx */ + +} DOMAIN_GRP; + +/*** query a domain group, get a list of these: shows who is in that group ***/ + +/* domain group info */ +typedef struct domain_grp_member_info +{ + fstring name; + uint8 attr; /* attributes forced to be set to 0x7: SE_GROUP_xxx */ + +} DOMAIN_GRP_MEMBER; + /* DOM_CHAL - challenge info */ typedef struct chal_info { -- cgit