diff options
author | Petr Machata <pmachata@apm-mustang-ev2-02.ml3.eng.bos.redhat.com> | 2014-01-30 19:35:56 -0500 |
---|---|---|
committer | Chanho Park <chanho61.park@samsung.com> | 2014-08-22 20:38:24 +0900 |
commit | 75ef93e42a7067028e8cd2afbc9b9e938db598f0 (patch) | |
tree | 9aa15a0c798638b79b11d4909f5aadbe634965cd | |
parent | 8a6467013f321318f3ba4709dbce90c96f1573b1 (diff) | |
download | ltrace-75ef93e42a7067028e8cd2afbc9b9e938db598f0.tar.gz ltrace-75ef93e42a7067028e8cd2afbc9b9e938db598f0.tar.bz2 ltrace-75ef93e42a7067028e8cd2afbc9b9e938db598f0.zip |
Add some missing system calls to syscalls.conf
-rw-r--r-- | etc/syscalls.conf | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/etc/syscalls.conf b/etc/syscalls.conf index 562f4e7..09d347d 100644 --- a/etc/syscalls.conf +++ b/etc/syscalls.conf @@ -1,6 +1,10 @@ # syscall.conf -- system call prototypes # See ltrace.conf(5) for description of syntax of this file. +# Special value used to indicate the *at functions should use the +# current working directory. +typedef at_dirfd_t = enum[int](AT_FDCWD=-100); + addr brk(addr); int close(int); int execve(string,addr,addr); @@ -14,7 +18,7 @@ int getpid(); addr mmap(addr,ulong,int,int,int,long); int munmap(addr,ulong); -int open(string,int,octal); +int open(string, hex(uint), oct(uint)); int personality(uint); long read(int,+string0,ulong); int stat(string,addr); @@ -113,3 +117,30 @@ ulong writev(int,addr,int); int mprotect(addr,int,int); int access(string,octal); int getdents(uint, void *, uint); + +int openat(at_dirfd_t, string, hex(uint), oct(uint)); +int mknodat(at_dirfd_t, string, oct(uint), ushort) +int mkdirat(at_dirfd_t, string, oct(uint)); +int unlinkat(at_dirfd_t, string, hex(uint)); +int symlinkat(string, at_dirfd_t, string); +int linkat(at_dirfd_t, string, at_dirfd_t, string, hex(uint)); +int renameat(at_dirfd_t, string, at_dirfd_t, string); +int faccessat(at_dirfd_t, string, oct(uint), hex(uint)); +int fchmodat(at_dirfd_t, string, oct(uint), hex(uint)); +int fchownat(at_dirfd_t, string, int, int, hex(uint)); +int readlinkat(at_dirfd_t, string, +string[arg4], ulong); +int fstatat(at_dirfd_t, string, addr, hex(uint)); +int utimensat(at_dirfd_t, string, addr, hex(uint)); +int futimens(int, addr); +int futimesat(at_dirfd_t, string, addr); +addr shmat(int, addr, hex(uint)); +int shmdt(addr); + +typedef fid_type = enum(FILEID_ROOT=0, FILEID_INO32_GEN=1, FILEID_INO32_GEN_PARENT=2, FILEID_BTRFS_WITHOUT_PARENT=0x4d, FILEID_BTRFS_WITH_PARENT=0x4e, FILEID_BTRFS_WITH_PARENT_ROOT=0x4f, FILEID_UDF_WITHOUT_PARENT=0x51, FILEID_UDF_WITH_PARENT=0x52, FILEID_NILFS_WITHOUT_PARENT=0x61, FILEID_NILFS_WITH_PARENT=0x62); +typedef file_handle = struct(uint, fid_type, array(hex(char), elt1)*); +int name_to_handle_at(at_dirfd_t, string, file_handle, int*, hex(uint)); +int open_by_handle_at(at_dirfd_t, file_handle, hex(uint)); + +int newfstatat(at_dirfd_t, string, addr, hex(uint)); +int creat(string, oct(int)); +int ustat(ushort, addr); |