github.com/paybyphone/terraform@v0.9.5-0.20170613192930-9706042ddd51/config/module/inode_freebsd.go (about) 1 // +build freebsd 2 3 package module 4 5 import ( 6 "fmt" 7 "os" 8 "syscall" 9 ) 10 11 // lookup the inode of a file on posix systems 12 func inode(path string) (uint64, error) { 13 stat, err := os.Stat(path) 14 if err != nil { 15 return 0, err 16 } 17 if st, ok := stat.Sys().(*syscall.Stat_t); ok { 18 return uint64(st.Ino), nil 19 } 20 return 0, fmt.Errorf("could not determine file inode") 21 }