Added syscalls for the attribute VFS calls.
Made some subtle changes to fs_attr.h. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1546 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
f6fabd1b6d
commit
b67f11173f
@ -24,19 +24,19 @@ extern "C" {
|
||||
extern ssize_t fs_read_attr(int fd, const char *attribute, uint32 type, off_t pos, void *buffer, size_t readBytes);
|
||||
extern ssize_t fs_write_attr(int fd, const char *attribute, uint32 type, off_t pos, const void *buffer, size_t readBytes);
|
||||
extern int fs_remove_attr(int fd, const char *attribute);
|
||||
extern int fs_stat_attr(int fd, const char *name, struct attr_info *attrInfo);
|
||||
extern int fs_stat_attr(int fd, const char *attribute, struct attr_info *attrInfo);
|
||||
|
||||
// ToDo: the following three functions are not part of the R5 API, and
|
||||
// are only preliminary - they may change or be removed at any point
|
||||
extern int fs_open_attr(const char *path, const char *attribute);
|
||||
extern int fs_fopen_attr(int fd, const char *attribute);
|
||||
//extern int fs_open_attr(const char *path, const char *attribute, uint32 type, int openMode);
|
||||
extern int fs_open_attr(int fd, const char *attribute, uint32 type, int openMode);
|
||||
extern int fs_close_attr(int fd);
|
||||
|
||||
extern DIR *fs_open_attr_dir(const char *path);
|
||||
extern DIR *fs_fopen_attr_dir(int fd);
|
||||
extern int fs_close_attr_dir(DIR *dirp);
|
||||
extern struct dirent *fs_read_attr_dir(DIR *dirp);
|
||||
extern void fs_rewind_attr_dir(DIR *dirp);
|
||||
extern int fs_close_attr_dir(DIR *dir);
|
||||
extern struct dirent *fs_read_attr_dir(DIR *dir);
|
||||
extern void fs_rewind_attr_dir(DIR *dir);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -2,11 +2,12 @@
|
||||
** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#ifndef _KERNEL_SYSCALLS_H
|
||||
#define _KERNEL_SYSCALLS_H
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
|
||||
enum {
|
||||
SYSCALL_NULL = 0,
|
||||
SYSCALL_MOUNT,
|
||||
@ -69,7 +70,7 @@ enum {
|
||||
SYSCALL_SEM_GET_SEM_INFO,
|
||||
SYSCALL_SEM_GET_NEXT_SEM_INFO,
|
||||
SYSCALL_SEM_SET_SEM_OWNER,
|
||||
SYSCALL_FDDUP, /* 60 */
|
||||
SYSCALL_FDDUP, /* 60 */
|
||||
SYSCALL_FDDUP2,
|
||||
SYSCALL_GET_PROC_TABLE,
|
||||
SYSCALL_GETRLIMIT,
|
||||
@ -78,7 +79,7 @@ enum {
|
||||
SYSCALL_ATOMIC_AND,
|
||||
SYSCALL_ATOMIC_OR,
|
||||
SYSCALL_ATOMIC_SET,
|
||||
SYSCALL_TEST_AND_SET, /* 70 */
|
||||
SYSCALL_TEST_AND_SET, /* 70 */
|
||||
SYSCALL_SYSCTL,
|
||||
SYSCALL_SOCKET,
|
||||
SYSCALL_ACCESS,
|
||||
@ -88,26 +89,31 @@ enum {
|
||||
SYSCALL_OPEN_DIR,
|
||||
SYSCALL_CREATE_DIR,
|
||||
SYSCALL_SETENV,
|
||||
SYSCALL_GETENV, /* 80 */
|
||||
SYSCALL_GETENV, /* 80 */
|
||||
SYSCALL_OPEN_ENTRY_REF,
|
||||
SYSCALL_OPEN_DIR_ENTRY_REF,
|
||||
SYSCALL_OPEN_DIR_NODE_REF,
|
||||
SYSCALL_CREATE_ENTRY_REF,
|
||||
SYSCALL_CREATE_DIR_ENTRY_REF,
|
||||
SYSCALL_CREATE_DIR_ENTRY_REF, /* 85 */
|
||||
SYSCALL_CREATE_SYMLINK,
|
||||
SYSCALL_READ_LINK,
|
||||
SYSCALL_GET_THREAD_INFO,
|
||||
SYSCALL_GET_NEXT_THREAD_INFO,
|
||||
SYSCALL_GET_TEAM_INFO, /* 90 */
|
||||
SYSCALL_GET_TEAM_INFO, /* 90 */
|
||||
SYSCALL_GET_NEXT_TEAM_INFO,
|
||||
SYSCALL_CREATE_LINK,
|
||||
SYSCALL_REMOVE_DIR,
|
||||
SYSCALL_SEND_DATA,
|
||||
SYSCALL_RECEIVE_DATA,
|
||||
SYSCALL_RECEIVE_DATA, /* 95 */
|
||||
SYSCALL_HAS_DATA,
|
||||
SYSCALL_OPEN_ATTR_DIR,
|
||||
SYSCALL_CREATE_ATTR,
|
||||
SYSCALL_OPEN_ATTR,
|
||||
SYSCALL_WRITE_ATTR_STAT, /* 100 */
|
||||
SYSCALL_REMOVE_ATTR,
|
||||
SYSCALL_RENAME_ATTR,
|
||||
};
|
||||
|
||||
int syscall_dispatcher(unsigned long call_num, void *arg_buffer, uint64 *call_ret);
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* _KERNEL_SYSCALLS_H */
|
||||
|
Loading…
Reference in New Issue
Block a user