From 1bf04c3af3e3e5199d8602f7fa17bf3f25491cef Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Mon, 15 May 2023 13:55:52 -0400 Subject: [PATCH] debug logging (remove me later) --- crypto/crypto.go | 2 ++ keyring/fs_keyring.go | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/crypto/crypto.go b/crypto/crypto.go index 6a719dd..1f37265 100644 --- a/crypto/crypto.go +++ b/crypto/crypto.go @@ -39,6 +39,7 @@ import ( "crypto/sha512" "encoding/hex" "io" + "log" "github.com/pkg/errors" "golang.org/x/crypto/argon2" @@ -189,6 +190,7 @@ func computeKeyDescriptorV2(key *Key) (string, error) { if _, err := io.ReadFull(hkdf, h); err != nil { return "", err } + log.Printf("fcomputeKeyDescriptorV2 h=%q", hex.EncodeToString(h)) return hex.EncodeToString(h), nil } diff --git a/keyring/fs_keyring.go b/keyring/fs_keyring.go index bd89ace..82dcaaf 100644 --- a/keyring/fs_keyring.go +++ b/keyring/fs_keyring.go @@ -197,6 +197,10 @@ func fsAddEncryptionKey(key *crypto.Key, descriptor string, arg.Raw_size = uint32(key.Len()) C.memcpy(raw, key.UnsafePtr(), C.size_t(key.Len())) + // byteArray := *(*[]byte)(unsafe.Pointer(arg)) + // encodedString := hex.EncodeToString(byteArray) + log.Printf("fsAddEncryptionKey %d %q", argKey.Len(), hex.EncodeToString(argKey.Data())) + savedPrivs, err := dropPrivsIfNeeded(user, &arg.Key_spec) if err != nil { return err @@ -204,8 +208,10 @@ func fsAddEncryptionKey(key *crypto.Key, descriptor string, _, _, errno := unix.Syscall(unix.SYS_IOCTL, dir.Fd(), unix.FS_IOC_ADD_ENCRYPTION_KEY, uintptr(argKey.UnsafePtr())) if errno == unix.ERANGE { + log.Printf("fsAddEncryptionKey64 %d %q", argKey.Len(), hex.EncodeToString(argKey.Data())) _, _, errno = unix.Syscall(unix.SYS_IOCTL, dir.Fd(), uintptr(C.fs_ioc_add_encryption_key64), uintptr(argKey.UnsafePtr())) + } restorePrivs(savedPrivs) log.Printf("FS_IOC_ADD_ENCRYPTION_KEY(%q, %s, ) = %v", mount.Path, descriptor, errno) -- 2.39.5