From d6c8d892ffacf92f13798ee71112447100aa5a50 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 27 Jun 2021 11:12:40 +0200 Subject: [PATCH] fido2: pretty-print fidoCommand in debug output Related: https://github.com/rfjakob/gocryptfs/issues/571 --- internal/fido2/fido2.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/internal/fido2/fido2.go b/internal/fido2/fido2.go index cd63483..f62967b 100644 --- a/internal/fido2/fido2.go +++ b/internal/fido2/fido2.go @@ -22,6 +22,20 @@ const ( assertWithPIN fidoCommand = iota ) +// String pretty-prints for debug output +func (fc fidoCommand) String() string { + switch fc { + case cred: + return "cred" + case assert: + return "assert" + case assertWithPIN: + return "assertWithPIN" + default: + return fmt.Sprintf("%d", fc) + } +} + const relyingPartyID = "gocryptfs" func callFidoCommand(command fidoCommand, device string, stdin []string) ([]string, error) { @@ -34,7 +48,7 @@ func callFidoCommand(command fidoCommand, device string, stdin []string) ([]stri case assertWithPIN: cmd = exec.Command("fido2-assert", "-G", "-h", "-v", device) } - tlog.Debug.Printf("callFidoCommand: executing %q with args %q", cmd.Path, cmd.Args) + tlog.Debug.Printf("callFidoCommand %s: executing %q with args %q", command, cmd.Path, cmd.Args) cmd.Stderr = os.Stderr in, err := cmd.StdinPipe() if err != nil {