diff options
| -rw-r--r-- | src/otputil.c | 10 | ||||
| -rw-r--r-- | src/widget-skey.c | 11 |
2 files changed, 21 insertions, 0 deletions
diff --git a/src/otputil.c b/src/otputil.c index 10b857f..7f2ca4d 100644 --- a/src/otputil.c +++ b/src/otputil.c | |||
| @@ -211,6 +211,16 @@ static otputil_widget_t otputil_widget_map[] = | |||
| 211 | .func_exec = &otputil_widget_skey, | 211 | .func_exec = &otputil_widget_skey, |
| 212 | .func_usage = &otputil_widget_skey_usage, | 212 | .func_usage = &otputil_widget_skey_usage, |
| 213 | }, | 213 | }, |
| 214 | { .name = "skey-md4", | ||
| 215 | .desc = NULL, | ||
| 216 | .usage = " [ sequence ]", | ||
| 217 | .short_opt = (TOTP_SHORT_OPT "c:O:oP:p"), | ||
| 218 | .arg_min = 0, | ||
| 219 | .arg_max = 1, | ||
| 220 | .aliases = (const char *[]){ "skey-md5", "skey-sha1", "skey-sha256", "skey-sha512", NULL }, | ||
| 221 | .func_exec = &otputil_widget_skey, | ||
| 222 | .func_usage = NULL, | ||
| 223 | }, | ||
| 214 | 224 | ||
| 215 | // TOTP widget and aliases | 225 | // TOTP widget and aliases |
| 216 | { .name = "totp", | 226 | { .name = "totp", |
diff --git a/src/widget-skey.c b/src/widget-skey.c index 9fa69ea..e66a6dc 100644 --- a/src/widget-skey.c +++ b/src/widget-skey.c | |||
| @@ -115,6 +115,17 @@ otputil_widget_skey( | |||
| 115 | return(1); | 115 | return(1); |
| 116 | }; | 116 | }; |
| 117 | 117 | ||
| 118 | // set default hash | ||
| 119 | if (!(strncasecmp(cnf->argv[0], "skey-", 4))) | ||
| 120 | { | ||
| 121 | if ((hash = otputil_str2md(&cnf->argv[0][5])) == -1) | ||
| 122 | { | ||
| 123 | fprintf(stderr, "%s: unsupported hash algorithm\n", cnf->prog_name); | ||
| 124 | return(1); | ||
| 125 | }; | ||
| 126 | otputil_set_param(NULL, OTPUTIL_OPT_SKEY_HASH, &hash); | ||
| 127 | }; | ||
| 128 | |||
| 118 | // initial processing of cli arguments | 129 | // initial processing of cli arguments |
| 119 | if ((rc = otputil_arguments(cnf, cnf->argc, cnf->argv)) != 0) | 130 | if ((rc = otputil_arguments(cnf, cnf->argc, cnf->argv)) != 0) |
| 120 | return((rc == -1) ? 0 : 1); | 131 | return((rc == -1) ? 0 : 1); |
