Dmitry Timoshkov <dmitry(a)baikal.ru> writes:
> @@ -238,7 +238,7 @@ static const struct object_ops named_pipe_device_ops =
> no_satisfied, /* satisfied */
> no_signal, /* signal */
> named_pipe_device_get_fd, /* get_fd */
> - no_map_access, /* map_access */
> + named_pipe_map_access, /* map_access */
> default_get_sd, /* get_sd */
> default_set_sd, /* set_sd */
> named_pipe_device_lookup_name, /* lookup_name */
> @@ -270,10 +270,10 @@ static void named_pipe_dump( struct object *obj, int verbose )
>
> static unsigned int named_pipe_map_access( struct object *obj, unsigned int access )
> {
> - if (access & GENERIC_READ) access |= STANDARD_RIGHTS_READ;
> + if (access & GENERIC_READ) access |= STANDARD_RIGHTS_READ | FILE_READ_ATTRIBUTES;
> if (access & GENERIC_WRITE) access |= STANDARD_RIGHTS_WRITE | FILE_CREATE_PIPE_INSTANCE;
> if (access & GENERIC_EXECUTE) access |= STANDARD_RIGHTS_EXECUTE;
> - if (access & GENERIC_ALL) access |= STANDARD_RIGHTS_ALL;
> + if (access & GENERIC_ALL) access |= STANDARD_RIGHTS_ALL | FILE_READ_ATTRIBUTES | FILE_CREATE_PIPE_INSTANCE;
> return access & ~(GENERIC_READ | GENERIC_WRITE | GENERIC_EXECUTE | GENERIC_ALL);
Why do you need this for the device?
--
Alexandre Julliard
julliard(a)winehq.org