WINBIND_LOOKUP_LEVEL_SID2NAME = 1,
WINBIND_LOOKUP_LEVEL_NAME2SID = 2,
WINBIND_LOOKUP_LEVEL_RIDS2NAMES = 3,
- WINBIND_LOOKUP_LEVEL_SID2USERINFO = 4
+ WINBIND_LOOKUP_LEVEL_SID2USERINFO = 4,
+ WINBIND_LOOKUP_LEVEL_SID2DOMGROUPS = 5
} winbind_lookup_level;
struct winbind_lookup_req_rids {
[case(WINBIND_LOOKUP_LEVEL_RIDS2NAMES)]
struct winbind_lookup_req_rids rids;
[case(WINBIND_LOOKUP_LEVEL_SID2USERINFO)]
+/*TODO [ref]*/ dom_sid *sid;
+ [case(WINBIND_LOOKUP_LEVEL_SID2DOMGROUPS)]
/*TODO [ref]*/ dom_sid *sid;
[default];
} winbind_lookup_req;
uint32 primary_rid;
};
+ struct winbind_lookup_sid_info_array {
+ uint32 num_sids;
+ struct winbind_lookup_sid_info sids[num_sids];
+ };
+
typedef [switch_type(winbind_lookup_level)] union {
[case(WINBIND_LOOKUP_LEVEL_SID2NAME)]
struct winbind_lookup_name_info name_info;
struct winbind_lookup_name_info_array name_array;
[case(WINBIND_LOOKUP_LEVEL_SID2USERINFO)]
struct winbind_lookup_user_info user_info;
+ [case(WINBIND_LOOKUP_LEVEL_SID2DOMGROUPS)]
+ struct winbind_lookup_sid_info_array sid_array;
[default];
} winbind_lookup_rep;