Daniel Lehman dlehman25@gmail.com writes:
@@ -555,6 +556,13 @@ obj_handle_t duplicate_handle( struct process *src, obj_handle_t src_handle, str /* asking for the more access rights than src_access? */ if (access & ~src_access) {
if (is_file_object( obj ))
{
set_error( STATUS_ACCESS_DENIED );
release_object( obj );
return 0;
}
You can't special-case it like that. This should be handled as part of the standard access checks.