Update userspace to have proper protection values for mmap and send the proper flags to the callback function.

This commit is contained in:
Godzil 2019-07-24 16:04:20 +01:00
parent a54adc616d
commit 57ae74c803
2 changed files with 3 additions and 3 deletions

View File

@ -81,7 +81,7 @@ struct fusd_file_operations {
int (*ioctl) (struct fusd_file_info *file, int request, void *data);
int (*poll_diff) (struct fusd_file_info *file, unsigned int cached_state);
int (*unblock) (struct fusd_file_info *file);
int (*mmap) (struct fusd_file_info *file, int offset, size_t length, int flags, void** addr, size_t* out_length);
int (*mmap) (struct fusd_file_info *file, int offset, size_t length, int prot, int flags, void** addr, size_t* out_length);
} fusd_file_operations_t;

View File

@ -503,8 +503,8 @@ static int fusd_dispatch_one(int fd, fusd_file_operations_t *fops)
//printf("FUSD_MMAP\n");
if (fops && fops->mmap)
{
user_retval = fops->mmap(file, msg->parm.fops_msg.offset, msg->parm.fops_msg.length, msg->parm.fops_msg.flags,
&msg->parm.fops_msg.arg.ptr_arg, &msg->parm.fops_msg.length);
user_retval = fops->mmap(file, msg->parm.fops_msg.mmoffset, msg->parm.fops_msg.length, msg->parm.fops_msg.mmprot,
msg->parm.fops_msg.mmflags, &msg->parm.fops_msg.arg.ptr_arg, &msg->parm.fops_msg.length);
}
break;