sftp/ls_unix.go

24 lines
440 B
Go
Raw Normal View History

2021-04-24 23:39:37 +08:00
// +build aix darwin dragonfly freebsd !android,linux netbsd openbsd solaris
package sftp
import (
"os"
"syscall"
)
2021-04-26 02:48:26 +08:00
func lsLinksUIDGID(fi os.FileInfo) (numLinks uint64, uid, gid string) {
numLinks = 1
uid, gid = "0", "0"
2021-04-26 02:48:26 +08:00
switch sys := fi.Sys().(type) {
case *syscall.Stat_t:
numLinks = uint64(sys.Nlink)
2021-04-26 02:48:26 +08:00
uid = lsUsername(lsFormatID(sys.Uid))
gid = lsGroupName(lsFormatID(sys.Gid))
default:
}
2021-04-26 02:48:26 +08:00
return numLinks, uid, gid
}