Message types for VFS new_driver

Change-Id: If1b6ee2c5beb43e72a69c27dbc32b72525831962
This commit is contained in:
Lionel Sambuc 2014-04-29 21:13:28 +02:00
parent 0d1db99965
commit 5fb3a3e7d3
5 changed files with 23 additions and 12 deletions

View file

@ -227,6 +227,16 @@ typedef struct {
} mess_vfs_fs_mountpoint; } mess_vfs_fs_mountpoint;
_ASSERT_MSG_SIZE(mess_vfs_fs_mountpoint); _ASSERT_MSG_SIZE(mess_vfs_fs_mountpoint);
typedef struct {
dev_t device;
cp_grant_id_t grant;
size_t path_len;
uint8_t data[40];
} mess_vfs_fs_new_driver;
_ASSERT_MSG_SIZE(mess_vfs_fs_new_driver);
typedef struct { typedef struct {
dev_t device; dev_t device;
@ -395,6 +405,7 @@ typedef struct {
mess_vfs_fs_lookup m_vfs_fs_lookup; mess_vfs_fs_lookup m_vfs_fs_lookup;
mess_fs_vfs_lookup m_fs_vfs_lookup; mess_fs_vfs_lookup m_fs_vfs_lookup;
mess_vfs_fs_mountpoint m_vfs_fs_mountpoint; mess_vfs_fs_mountpoint m_vfs_fs_mountpoint;
mess_vfs_fs_new_driver m_vfs_fs_new_driver;
mess_vfs_fs_readsuper m_vfs_fs_readsuper; mess_vfs_fs_readsuper m_vfs_fs_readsuper;
mess_fs_vfs_readsuper m_fs_vfs_readsuper; mess_fs_vfs_readsuper m_fs_vfs_readsuper;
mess_vfs_fs_rename m_vfs_fs_rename; mess_vfs_fs_rename m_vfs_fs_rename;

View file

@ -71,9 +71,9 @@ int fs_new_driver(void)
char label[sizeof(fs_dev_label)]; char label[sizeof(fs_dev_label)];
int r; int r;
dev = fs_m_in.REQ_DEV; dev = fs_m_in.m_vfs_fs_new_driver.device;
label_gid = (cp_grant_id_t) fs_m_in.REQ_GRANT; label_gid = fs_m_in.m_vfs_fs_new_driver.grant;
label_len = (size_t) fs_m_in.REQ_PATH_LEN; label_len = fs_m_in.m_vfs_fs_new_driver.path_len;
if (label_len > sizeof(label)) if (label_len > sizeof(label))
return(EINVAL); return(EINVAL);

View file

@ -26,9 +26,9 @@ int fs_new_driver(void)
char label[sizeof(fs_dev_label)]; char label[sizeof(fs_dev_label)];
int r; int r;
dev = fs_m_in.REQ_DEV; dev = fs_m_in.m_vfs_fs_new_driver.device;
label_gid = (cp_grant_id_t) fs_m_in.REQ_GRANT; label_gid = fs_m_in.m_vfs_fs_new_driver.grant;
label_len = (size_t) fs_m_in.REQ_PATH_LEN; label_len = fs_m_in.m_vfs_fs_new_driver.path_len;
if (label_len > sizeof(label)) if (label_len > sizeof(label))
return(EINVAL); return(EINVAL);

View file

@ -60,9 +60,9 @@ int fs_new_driver(void)
char label[sizeof(fs_dev_label)]; char label[sizeof(fs_dev_label)];
int r; int r;
dev = fs_m_in.REQ_DEV; dev = fs_m_in.m_vfs_fs_new_driver.device;
label_gid = (cp_grant_id_t) fs_m_in.REQ_GRANT; label_gid = fs_m_in.m_vfs_fs_new_driver.grant;
label_len = (size_t) fs_m_in.REQ_PATH_LEN; label_len = fs_m_in.m_vfs_fs_new_driver.path_len;
if (label_len > sizeof(label)) if (label_len > sizeof(label))
return(EINVAL); return(EINVAL);

View file

@ -676,9 +676,9 @@ int req_newdriver(
/* Fill in request message */ /* Fill in request message */
m.m_type = REQ_NEW_DRIVER; m.m_type = REQ_NEW_DRIVER;
m.REQ_DEV = dev; m.m_vfs_fs_new_driver.device = dev;
m.REQ_GRANT = grant_id; m.m_vfs_fs_new_driver.grant = grant_id;
m.REQ_PATH_LEN = len; m.m_vfs_fs_new_driver.path_len = len;
/* Issue request */ /* Issue request */
r = fs_sendrec(fs_e, &m); r = fs_sendrec(fs_e, &m);