diff options
| author | Mark Johnston <markjdb@gmail.com> | 2020-03-26 15:25:42 -0400 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-03-27 05:51:58 +0100 |
| commit | be07a9be5eba71b93c2089f5cf133a235b18fa21 (patch) | |
| tree | 8deadfe4742e3c17c9536b5487f77d0c83338c8b /sys | |
| parent | 87abd520f8d5796334f10c62e1ae1af621284694 (diff) | |
sys/freebsd: add __realpathat system call
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/freebsd/gen/386.go | 10 | ||||
| -rw-r--r-- | sys/freebsd/gen/amd64.go | 10 | ||||
| -rw-r--r-- | sys/freebsd/sys.txt | 2 | ||||
| -rw-r--r-- | sys/freebsd/sys_386.const | 1 | ||||
| -rw-r--r-- | sys/freebsd/sys_amd64.const | 1 |
5 files changed, 22 insertions, 2 deletions
diff --git a/sys/freebsd/gen/386.go b/sys/freebsd/gen/386.go index 5d528ee43..82f46eecd 100644 --- a/sys/freebsd/gen/386.go +++ b/sys/freebsd/gen/386.go @@ -1779,6 +1779,13 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "buf", TypeSize: 4}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"buf"}}, }}, + {NR: 574, Name: "__realpathat", CallName: "__realpathat", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "dirfd", TypeSize: 4}}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 4}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "buf", TypeSize: 4}, &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 1, IsVarlen: true}, Kind: 2}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"buf"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "realpathat_flags", FldName: "flags", TypeSize: 4}}}, + }}, {NR: 510, Name: "__semctl$GETALL", CallName: "__semctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_sem", FldName: "semid", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "semnum", TypeSize: 4}}}, @@ -5626,6 +5633,7 @@ var consts_386 = []ConstValue{ {"SPP_PMTUD_DISABLE", 16}, {"SPP_PMTUD_ENABLE", 8}, {"SYS___getcwd", 326}, + {"SYS___realpathat", 574}, {"SYS___semctl", 510}, {"SYS_accept", 30}, {"SYS_accept4", 541}, @@ -5850,4 +5858,4 @@ var consts_386 = []ConstValue{ {"WUNTRACED", 2}, } -const revision_386 = "9153d8fbbe6b117424690a313cf2b7a3a1f02c34" +const revision_386 = "27b0c289c0d78fe767ad2fbe062383e89cef0180" diff --git a/sys/freebsd/gen/amd64.go b/sys/freebsd/gen/amd64.go index 2337a86a8..b35247cdf 100644 --- a/sys/freebsd/gen/amd64.go +++ b/sys/freebsd/gen/amd64.go @@ -1806,6 +1806,13 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "buf", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"buf"}}, }}, + {NR: 574, Name: "__realpathat", CallName: "__realpathat", Args: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd", FldName: "dirfd", TypeSize: 4}}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "path", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "filename", IsVarlen: true}, Kind: 3}}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "buf", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "string", ArgDir: 1, IsVarlen: true}, Kind: 2}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"buf"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "realpathat_flags", FldName: "flags", TypeSize: 8}}}, + }}, {NR: 510, Name: "__semctl$GETALL", CallName: "__semctl", Args: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "ipc_sem", FldName: "semid", TypeSize: 4}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "semnum", TypeSize: 8}}}, @@ -5653,6 +5660,7 @@ var consts_amd64 = []ConstValue{ {"SPP_PMTUD_DISABLE", 16}, {"SPP_PMTUD_ENABLE", 8}, {"SYS___getcwd", 326}, + {"SYS___realpathat", 574}, {"SYS___semctl", 510}, {"SYS_accept", 30}, {"SYS_accept4", 541}, @@ -5877,4 +5885,4 @@ var consts_amd64 = []ConstValue{ {"WUNTRACED", 2}, } -const revision_amd64 = "b3574571fbfa175bbf91c857af8d5e6db2d92ccf" +const revision_amd64 = "5d7c29fe9b21a5007b1d3b4f13d51931ecd5d703" diff --git a/sys/freebsd/sys.txt b/sys/freebsd/sys.txt index db3ca85d9..17611195e 100644 --- a/sys/freebsd/sys.txt +++ b/sys/freebsd/sys.txt @@ -110,6 +110,7 @@ __getcwd(buf buffer[out], size len[buf]) chdir(dir ptr[in, filename]) fchdir(fd fd) copy_file_range(infd fd, inoffp ptr[inout, fileoff[int64]], outfd fd, outoffp ptr[inout, fileoff[int64]], len int64, flags flags[copy_file_range_flags]) +__realpathat(dirfd fd, path ptr[in, filename], buf ptr[out, string], size len[buf], flags flags[realpathat_flags]) getrusage(who flags[rusage_who], usage ptr[out, rusage]) getrlimit(res flags[rlimit_type], rlim ptr[out, rlimit]) @@ -222,4 +223,5 @@ fcntl_status = O_APPEND, FASYNC, O_DIRECT, O_NONBLOCK flock_type = F_RDLCK, F_WRLCK, F_UNLCK minherit_flags = INHERIT_SHARE, INHERIT_NONE, INHERIT_COPY, INHERIT_ZERO copy_file_range_flags = 0 +realpathat_flags = 0 chflags_flags = SF_APPEND, SF_ARCHIVED, SF_IMMUTABLE, SF_NOUNLINK, SF_SNAPSHOT, UF_APPEND, UF_ARCHIVE, UF_HIDDEN, UF_IMMUTABLE, UF_NODUMP, UF_NOUNLINK, UF_OFFLINE, UF_OPAQUE, UF_READONLY, UF_REPARSE, UF_SPARSE, UF_SYSTEM diff --git a/sys/freebsd/sys_386.const b/sys/freebsd/sys_386.const index 480332e82..f1733c2f1 100644 --- a/sys/freebsd/sys_386.const +++ b/sys/freebsd/sys_386.const @@ -72,6 +72,7 @@ SF_SNAPSHOT = 2097152 SF_SYNC = 4 SF_USER_READAHEAD = 8 SYS___getcwd = 326 +SYS___realpathat = 574 SYS_chdir = 12 SYS_chflags = 34 SYS_chflagsat = 540 diff --git a/sys/freebsd/sys_amd64.const b/sys/freebsd/sys_amd64.const index 480332e82..f1733c2f1 100644 --- a/sys/freebsd/sys_amd64.const +++ b/sys/freebsd/sys_amd64.const @@ -72,6 +72,7 @@ SF_SNAPSHOT = 2097152 SF_SYNC = 4 SF_USER_READAHEAD = 8 SYS___getcwd = 326 +SYS___realpathat = 574 SYS_chdir = 12 SYS_chflags = 34 SYS_chflagsat = 540 |
