1 // Copyright 2009 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.
5 // +build darwin dragonfly freebsd linux nacl netbsd openbsd solaris windows
14 // eofError returns io.EOF when fd is available for reading end of
16 func (fd
*FD
) eofError(n
int, err error
) error
{
17 if n
== 0 && err
== nil && fd
.ZeroReadIsEOF
{
23 // Fchmod wraps syscall.Fchmod.
24 func (fd
*FD
) Fchmod(mode
uint32) error
{
25 if err
:= fd
.incref(); err
!= nil {
29 return syscall
.Fchmod(fd
.Sysfd
, mode
)
32 // Fchown wraps syscall.Fchown.
33 func (fd
*FD
) Fchown(uid
, gid
int) error
{
34 if err
:= fd
.incref(); err
!= nil {
38 return syscall
.Fchown(fd
.Sysfd
, uid
, gid
)
41 // Ftruncate wraps syscall.Ftruncate.
42 func (fd
*FD
) Ftruncate(size
int64) error
{
43 if err
:= fd
.incref(); err
!= nil {
47 return syscall
.Ftruncate(fd
.Sysfd
, size
)
50 // Fsync wraps syscall.Fsync.
51 func (fd
*FD
) Fsync() error
{
52 if err
:= fd
.incref(); err
!= nil {
56 return syscall
.Fsync(fd
.Sysfd
)