Robert Shearman <[EMAIL PROTECTED]> writes: > +tryagain: > + SERVER_START_REQ( get_token_groups ) > { > - TOKEN_GROUPS *tgroups = tokeninfo; > - SID_IDENTIFIER_AUTHORITY sid = {SECURITY_NT_AUTHORITY}; > + TOKEN_GROUPS *groups = tokeninfo; > > - /* we need to show admin privileges ! */ > - tgroups->GroupCount = 1; > - tgroups->Groups->Attributes = SE_GROUP_ENABLED; > - RtlAllocateAndInitializeSid( &sid, > - 2, > - SECURITY_BUILTIN_DOMAIN_RID, > - DOMAIN_ALIAS_RID_ADMINS, > - 0, 0, 0, 0, 0, 0, > - &(tgroups->Groups->Sid)); > + req->handle = token; > + wine_server_set_reply( req, buffer, server_buf_len ); > + status = wine_server_call( req ); > + if (status == STATUS_BUFFER_TOO_SMALL) > + { > + if (buffer == stack_buffer) > + buffer = RtlAllocateHeap(GetProcessHeap(), 0, > reply->user_len); > + else > + buffer = RtlReAllocateHeap(GetProcessHeap(), 0, buffer, > reply->user_len); > + if (!buffer) return STATUS_NO_MEMORY; > + > + server_buf_len = reply->user_len; > + goto tryagain;
You shouldn't return or goto out of a SERVER_START_REQ block. SERVER_END_REQ currently doesn't do much, but that could change. -- Alexandre Julliard [EMAIL PROTECTED]