blob: 76f478c4ae15bcf17e95546e1a849e4d78a6cfa7 [file]
// Copyright 2026 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build dragonfly || freebsd || netbsd || (openbsd && mips64)
package unix
import (
"syscall"
"unsafe"
)
func Fchmodat(dirfd int, path string, mode uint32, flags int) error {
p, err := syscall.BytePtrFromString(path)
if err != nil {
return err
}
_, _, errno := syscall.Syscall6(fchmodatTrap,
uintptr(dirfd),
uintptr(unsafe.Pointer(p)),
uintptr(mode),
uintptr(flags),
0, 0)
if errno != 0 {
return errno
}
return nil
}