Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
ba715798
Commit
ba715798
authored
Oct 20, 2008
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
server: Added a request to unlink an object from its namespace.
parent
07badc79
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
46 additions
and
1 deletion
+46
-1
server_protocol.h
include/wine/server_protocol.h
+17
-1
directory.c
server/directory.c
+12
-0
protocol.def
server/protocol.def
+7
-0
request.h
server/request.h
+2
-0
trace.c
server/trace.c
+8
-0
No files found.
include/wine/server_protocol.h
View file @
ba715798
...
...
@@ -4042,6 +4042,19 @@ struct get_object_info_reply
};
struct
unlink_object_request
{
struct
request_header
__header
;
obj_handle_t
handle
;
};
struct
unlink_object_reply
{
struct
reply_header
__header
;
};
struct
get_token_impersonation_level_request
{
struct
request_header
__header
;
...
...
@@ -4516,6 +4529,7 @@ enum request
REQ_open_symlink
,
REQ_query_symlink
,
REQ_get_object_info
,
REQ_unlink_object
,
REQ_get_token_impersonation_level
,
REQ_allocate_locally_unique_id
,
REQ_create_device_manager
,
...
...
@@ -4757,6 +4771,7 @@ union generic_request
struct
open_symlink_request
open_symlink_request
;
struct
query_symlink_request
query_symlink_request
;
struct
get_object_info_request
get_object_info_request
;
struct
unlink_object_request
unlink_object_request
;
struct
get_token_impersonation_level_request
get_token_impersonation_level_request
;
struct
allocate_locally_unique_id_request
allocate_locally_unique_id_request
;
struct
create_device_manager_request
create_device_manager_request
;
...
...
@@ -4996,6 +5011,7 @@ union generic_reply
struct
open_symlink_reply
open_symlink_reply
;
struct
query_symlink_reply
query_symlink_reply
;
struct
get_object_info_reply
get_object_info_reply
;
struct
unlink_object_reply
unlink_object_reply
;
struct
get_token_impersonation_level_reply
get_token_impersonation_level_reply
;
struct
allocate_locally_unique_id_reply
allocate_locally_unique_id_reply
;
struct
create_device_manager_reply
create_device_manager_reply
;
...
...
@@ -5015,6 +5031,6 @@ union generic_reply
struct
set_window_layered_info_reply
set_window_layered_info_reply
;
};
#define SERVER_PROTOCOL_VERSION 34
2
#define SERVER_PROTOCOL_VERSION 34
3
#endif
/* __WINE_WINE_SERVER_PROTOCOL_H */
server/directory.c
View file @
ba715798
...
...
@@ -508,3 +508,15 @@ DECL_HANDLER(get_directory_entry)
release_object
(
dir
);
}
}
/* unlink a named object */
DECL_HANDLER
(
unlink_object
)
{
struct
object
*
obj
=
get_handle_obj
(
current
->
process
,
req
->
handle
,
0
,
NULL
);
if
(
obj
)
{
unlink_named_object
(
obj
);
release_object
(
obj
);
}
}
server/protocol.def
View file @
ba715798
...
...
@@ -2913,6 +2913,13 @@ enum message_type
unsigned int ref_count; /* object ref count */
@END
/* Unlink a named object */
@REQ(unlink_object)
obj_handle_t handle; /* handle to the object */
@END
/* Query the impersonation level of an impersonation token */
@REQ(get_token_impersonation_level)
obj_handle_t handle; /* handle to the object */
...
...
server/request.h
View file @
ba715798
...
...
@@ -328,6 +328,7 @@ DECL_HANDLER(create_symlink);
DECL_HANDLER
(
open_symlink
);
DECL_HANDLER
(
query_symlink
);
DECL_HANDLER
(
get_object_info
);
DECL_HANDLER
(
unlink_object
);
DECL_HANDLER
(
get_token_impersonation_level
);
DECL_HANDLER
(
allocate_locally_unique_id
);
DECL_HANDLER
(
create_device_manager
);
...
...
@@ -568,6 +569,7 @@ static const req_handler req_handlers[REQ_NB_REQUESTS] =
(
req_handler
)
req_open_symlink
,
(
req_handler
)
req_query_symlink
,
(
req_handler
)
req_get_object_info
,
(
req_handler
)
req_unlink_object
,
(
req_handler
)
req_get_token_impersonation_level
,
(
req_handler
)
req_allocate_locally_unique_id
,
(
req_handler
)
req_create_device_manager
,
...
...
server/trace.c
View file @
ba715798
...
...
@@ -3595,6 +3595,11 @@ static void dump_get_object_info_reply( const struct get_object_info_reply *req
fprintf
(
stderr
,
" ref_count=%08x"
,
req
->
ref_count
);
}
static
void
dump_unlink_object_request
(
const
struct
unlink_object_request
*
req
)
{
fprintf
(
stderr
,
" handle=%p"
,
req
->
handle
);
}
static
void
dump_get_token_impersonation_level_request
(
const
struct
get_token_impersonation_level_request
*
req
)
{
fprintf
(
stderr
,
" handle=%p"
,
req
->
handle
);
...
...
@@ -4011,6 +4016,7 @@ static const dump_func req_dumpers[REQ_NB_REQUESTS] = {
(
dump_func
)
dump_open_symlink_request
,
(
dump_func
)
dump_query_symlink_request
,
(
dump_func
)
dump_get_object_info_request
,
(
dump_func
)
dump_unlink_object_request
,
(
dump_func
)
dump_get_token_impersonation_level_request
,
(
dump_func
)
dump_allocate_locally_unique_id_request
,
(
dump_func
)
dump_create_device_manager_request
,
...
...
@@ -4248,6 +4254,7 @@ static const dump_func reply_dumpers[REQ_NB_REQUESTS] = {
(
dump_func
)
dump_open_symlink_reply
,
(
dump_func
)
dump_query_symlink_reply
,
(
dump_func
)
dump_get_object_info_reply
,
(
dump_func
)
0
,
(
dump_func
)
dump_get_token_impersonation_level_reply
,
(
dump_func
)
dump_allocate_locally_unique_id_reply
,
(
dump_func
)
dump_create_device_manager_reply
,
...
...
@@ -4485,6 +4492,7 @@ static const char * const req_names[REQ_NB_REQUESTS] = {
"open_symlink"
,
"query_symlink"
,
"get_object_info"
,
"unlink_object"
,
"get_token_impersonation_level"
,
"allocate_locally_unique_id"
,
"create_device_manager"
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment