spiegel_podman/vendor/github.com/pkg/sftp/server_statvfs_impl.go
tomsweeneyredhat 2e8bce201e [v4.4.1-rhel] Bump runc to 1.2.9, Buidah 1.29.6
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
2025-12-17 15:39:55 -05:00

30 lines
642 B
Go

//go:build darwin || linux
// +build darwin linux
// fill in statvfs structure with OS specific values
// Statfs_t is different per-kernel, and only exists on some unixes (not Solaris for instance)
package sftp
import (
"syscall"
)
func (p *sshFxpExtendedPacketStatVFS) respond(svr *Server) responsePacket {
retPkt, err := getStatVFSForPath(p.Path)
if err != nil {
return statusFromError(p.ID, err)
}
retPkt.ID = p.ID
return retPkt
}
func getStatVFSForPath(name string) (*StatVFS, error) {
var stat syscall.Statfs_t
if err := syscall.Statfs(name, &stat); err != nil {
return nil, err
}
return statvfsFromStatfst(&stat)
}