Lines Matching refs:file
26 struct mqueue_file *file; in dfs_mqueue_lookup() local
30 file = rt_list_entry(node, struct mqueue_file, list); in dfs_mqueue_lookup()
32 if (rt_strncmp(file->name, path, RT_NAME_MAX) == 0) { in dfs_mqueue_lookup()
33 *size = file->size; in dfs_mqueue_lookup()
35 return file; in dfs_mqueue_lookup()
50 int dfs_mqueue_close(struct dfs_file *file) { return RT_EOK; } in dfs_mqueue_close() argument
52 int dfs_mqueue_open(struct dfs_file *file) { in dfs_mqueue_open() argument
54 if ((file->vnode->path[0] == '/') && (file->vnode->path[1] == '\0')) in dfs_mqueue_open()
57 if (file->flags & O_DIRECTORY) in dfs_mqueue_open()
62 mq_file = dfs_mqueue_lookup(file->vnode->path + 1, &size); in dfs_mqueue_open()
63 if (mq_file == RT_NULL && !(file->flags & O_CREAT)) in dfs_mqueue_open()
72 strncpy(mq_file->name, file->vnode->path + 1, RT_NAME_MAX); in dfs_mqueue_open()
76 if (file->flags & O_CREAT) { in dfs_mqueue_open()
77 rt_mq_t mq = rt_mq_create(file->vnode->path + 1, mq_file->msg_size, mq_file->max_msgs, in dfs_mqueue_open()
80 file->vnode->data = mq_file; in dfs_mqueue_open()
81 file->vnode->size = 0; in dfs_mqueue_open()
95 int dfs_mqueue_getdents(struct dfs_file *file, struct dirent *dirp, uint32_t count) { in dfs_mqueue_getdents() argument
99 end = file->pos + count; in dfs_mqueue_getdents()
106 if (index >= (rt_size_t)file->pos) { in dfs_mqueue_getdents()
113 file->pos += 1; in dfs_mqueue_getdents()