From 7aa6ac93e6f4d4835971bc17e4afc747e526c4e5 Mon Sep 17 00:00:00 2001 From: Klas Lindfors Date: Thu, 17 Mar 2016 10:52:03 +0100 Subject: [PATCH] add touch-policy cached --- lib/ykpiv.h | 1 + tool/cmdline.ggo | 2 +- tool/util.c | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/ykpiv.h b/lib/ykpiv.h index 3358e49..9670dee 100644 --- a/lib/ykpiv.h +++ b/lib/ykpiv.h @@ -205,6 +205,7 @@ extern "C" #define YKPIV_TOUCHPOLICY_DEFAULT 0 #define YKPIV_TOUCHPOLICY_NEVER 1 #define YKPIV_TOUCHPOLICY_ALWAYS 2 +#define YKPIV_TOUCHPOLICY_CACHED 3 #define YKPIV_IS_EC(a) ((a == YKPIV_ALGO_ECCP256 || a == YKPIV_ALGO_ECCP384)) #define YKPIV_IS_RSA(a) ((a == YKPIV_ALGO_RSA1024 || a == YKPIV_ALGO_RSA2048)) diff --git a/tool/cmdline.ggo b/tool/cmdline.ggo index fb503b2..4d8cd36 100644 --- a/tool/cmdline.ggo +++ b/tool/cmdline.ggo @@ -62,7 +62,7 @@ option "valid-days" - "Time (in days) until the self-signed certificate expires" option "pin" P "Pin/puk code for verification" string optional option "new-pin" N "New pin/puk code for changing" string optional dependon="pin" option "pin-policy" - "Set pin policy for action generate or import-key" values="never","once","always" enum optional -option "touch-policy" - "Set touch policy for action generate, import-key or set-mgm-key" values="never","always" enum optional +option "touch-policy" - "Set touch policy for action generate, import-key or set-mgm-key" values="never","always","cached" enum optional option "id" - "Id of object for write/read object" int optional option "format" f "Format of data for write/read object" values="hex","base64","binary" enum optional default="hex" option "sign" - "Sign data" flag off hidden diff --git a/tool/util.c b/tool/util.c index 17f4af9..48434e3 100644 --- a/tool/util.c +++ b/tool/util.c @@ -604,6 +604,8 @@ unsigned char get_touch_policy(enum enum_touch_policy policy) { return YKPIV_TOUCHPOLICY_NEVER; case touch_policy_arg_always: return YKPIV_TOUCHPOLICY_ALWAYS; + case touch_policy_arg_cached: + return YKPIV_TOUCHPOLICY_CACHED; case touch_policy__NULL: default: return 0;