1// Copyright 2018 The Go Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5//go:build darwin || (openbsd && !mips64)
6
7package unix
8
9import (
10	"syscall"
11	_ "unsafe" // for linkname
12)
13
14func Unlinkat(dirfd int, path string, flags int) error {
15	return unlinkat(dirfd, path, flags)
16}
17
18func Openat(dirfd int, path string, flags int, perm uint32) (int, error) {
19	return openat(dirfd, path, flags, perm)
20}
21
22func Fstatat(dirfd int, path string, stat *syscall.Stat_t, flags int) error {
23	return fstatat(dirfd, path, stat, flags)
24}
25
26//go:linkname unlinkat syscall.unlinkat
27func unlinkat(dirfd int, path string, flags int) error
28
29//go:linkname openat syscall.openat
30func openat(dirfd int, path string, flags int, perm uint32) (int, error)
31
32//go:linkname fstatat syscall.fstatat
33func fstatat(dirfd int, path string, stat *syscall.Stat_t, flags int) error
34