Add some missing system calls to syscalls.conf
authorPetr Machata <pmachata@apm-mustang-ev2-02.ml3.eng.bos.redhat.com>
Fri, 31 Jan 2014 00:35:56 +0000 (19:35 -0500)
committerChanho Park <chanho61.park@samsung.com>
Fri, 22 Aug 2014 11:38:24 +0000 (20:38 +0900)
etc/syscalls.conf

index 562f4e7..09d347d 100644 (file)
@@ -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);