server: Use attributes instead of inherit flag in snapshot requests.

oldstable
Alexandre Julliard 2005-12-09 12:09:44 +01:00
parent 7a096601e3
commit f11d0a375f
6 changed files with 10 additions and 11 deletions

View File

@ -61,9 +61,8 @@ HANDLE WINAPI CreateToolhelp32Snapshot( DWORD flags, DWORD process )
if (flags & TH32CS_SNAPMODULE) req->flags |= SNAP_MODULE; if (flags & TH32CS_SNAPMODULE) req->flags |= SNAP_MODULE;
if (flags & TH32CS_SNAPPROCESS) req->flags |= SNAP_PROCESS; if (flags & TH32CS_SNAPPROCESS) req->flags |= SNAP_PROCESS;
if (flags & TH32CS_SNAPTHREAD) req->flags |= SNAP_THREAD; if (flags & TH32CS_SNAPTHREAD) req->flags |= SNAP_THREAD;
req->attributes = (flags & TH32CS_INHERIT) ? OBJ_INHERIT : 0;
req->inherit = (flags & TH32CS_INHERIT) != 0; req->pid = process;
req->pid = process;
wine_server_call_err( req ); wine_server_call_err( req );
ret = reply->handle; ret = reply->handle;
} }

View File

@ -657,9 +657,9 @@ NTSTATUS WINAPI NtQuerySystemInformation(
SERVER_START_REQ( create_snapshot ) SERVER_START_REQ( create_snapshot )
{ {
req->flags = SNAP_PROCESS | SNAP_THREAD; req->flags = SNAP_PROCESS | SNAP_THREAD;
req->inherit = FALSE; req->attributes = 0;
req->pid = 0; req->pid = 0;
if (!(ret = wine_server_call( req ))) hSnap = reply->handle; if (!(ret = wine_server_call( req ))) hSnap = reply->handle;
} }
SERVER_END_REQ; SERVER_END_REQ;

View File

@ -1473,7 +1473,7 @@ struct get_mapping_info_reply
struct create_snapshot_request struct create_snapshot_request
{ {
struct request_header __header; struct request_header __header;
int inherit; unsigned int attributes;
int flags; int flags;
process_id_t pid; process_id_t pid;
}; };
@ -4316,6 +4316,6 @@ union generic_reply
struct query_symlink_reply query_symlink_reply; struct query_symlink_reply query_symlink_reply;
}; };
#define SERVER_PROTOCOL_VERSION 210 #define SERVER_PROTOCOL_VERSION 211
#endif /* __WINE_WINE_SERVER_PROTOCOL_H */ #endif /* __WINE_WINE_SERVER_PROTOCOL_H */

View File

@ -1096,7 +1096,7 @@ enum char_info_mode
#define SNAP_MODULE 0x00000008 #define SNAP_MODULE 0x00000008
/* Create a snapshot */ /* Create a snapshot */
@REQ(create_snapshot) @REQ(create_snapshot)
int inherit; /* inherit flag */ unsigned int attributes; /* object attributes */
int flags; /* snapshot flags (SNAP_*) */ int flags; /* snapshot flags (SNAP_*) */
process_id_t pid; /* process id */ process_id_t pid; /* process id */
@REPLY @REPLY

View File

@ -236,7 +236,7 @@ DECL_HANDLER(create_snapshot)
reply->handle = 0; reply->handle = 0;
if ((snapshot = create_snapshot( req->pid, req->flags ))) if ((snapshot = create_snapshot( req->pid, req->flags )))
{ {
reply->handle = alloc_handle( current->process, snapshot, 0, req->inherit ); reply->handle = alloc_handle( current->process, snapshot, 0, req->attributes & OBJ_INHERIT );
release_object( snapshot ); release_object( snapshot );
} }
} }

View File

@ -1494,7 +1494,7 @@ static void dump_get_mapping_info_reply( const struct get_mapping_info_reply *re
static void dump_create_snapshot_request( const struct create_snapshot_request *req ) static void dump_create_snapshot_request( const struct create_snapshot_request *req )
{ {
fprintf( stderr, " inherit=%d,", req->inherit ); fprintf( stderr, " attributes=%08x,", req->attributes );
fprintf( stderr, " flags=%d,", req->flags ); fprintf( stderr, " flags=%d,", req->flags );
fprintf( stderr, " pid=%04x", req->pid ); fprintf( stderr, " pid=%04x", req->pid );
} }