bastion 0.53.2
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
//go:build darwin
|
||||
|
||||
package main
|
||||
|
||||
// The strong cache key on macOS. Same four fields as Linux; the Stat_t field
|
||||
// for the inode change time is spelled Ctimespec here, which is the whole
|
||||
// reason this is a separate file rather than one `unix` build tag.
|
||||
|
||||
import (
|
||||
"os"
|
||||
"strconv"
|
||||
"syscall"
|
||||
)
|
||||
|
||||
func statIdentity(fi os.FileInfo) (string, bool) {
|
||||
st, ok := fi.Sys().(*syscall.Stat_t)
|
||||
if !ok {
|
||||
return "", false
|
||||
}
|
||||
return strconv.FormatUint(uint64(st.Dev), 10) + ":" +
|
||||
strconv.FormatUint(st.Ino, 10) + ":" +
|
||||
strconv.FormatInt(fi.Size(), 10) + ":" +
|
||||
strconv.FormatInt(st.Ctimespec.Sec, 10) + "." +
|
||||
strconv.FormatInt(st.Ctimespec.Nsec, 10), true
|
||||
}
|
||||
Reference in New Issue
Block a user