| // +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 { |
| stat := &syscall.Statfs_t{} |
| if err := syscall.Statfs(p.Path, stat); err != nil { |
| return statusFromError(p, err) |
| } |
| |
| retPkt, err := statvfsFromStatfst(stat) |
| if err != nil { |
| return statusFromError(p, err) |
| } |
| retPkt.ID = p.ID |
| |
| return retPkt |
| } |