From c19f4ee67e604ba9358a42173cfef6e642ad3e02 Mon Sep 17 00:00:00 2001 From: ze0s <ze0s@riseup.net> Date: Tue, 10 Dec 2024 02:24:23 +0100 Subject: [PATCH] build: add linkinfo_freebsd.go --- hardlinkfilemap/linkinfo_freebsd.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 hardlinkfilemap/linkinfo_freebsd.go diff --git a/hardlinkfilemap/linkinfo_freebsd.go b/hardlinkfilemap/linkinfo_freebsd.go new file mode 100644 index 0000000..1de6a47 --- /dev/null +++ b/hardlinkfilemap/linkinfo_freebsd.go @@ -0,0 +1,19 @@ +package hardlinkfilemap + +import ( + "errors" + "os" + "strconv" + "syscall" +) + +func LinkInfo(fi os.FileInfo, _ string) (string, uint64, error) { + sys, ok := fi.Sys().(*syscall.Stat_t) + if !ok { + return "", 0, errors.New("failed to get file identifier") + } + + return strconv.FormatUint(sys.Dev, 10) + "|" + strconv.FormatUint(sys.Ino, 10), + uint64(sys.Nlink), + nil +}