opensc-explorer: use standard usage() everywhere
With the improvements of the man page, there is no need any more to have local help texts for functions.
This commit is contained in:
parent
5f47903a73
commit
81695df211
|
@ -899,7 +899,7 @@ static int do_verify(int argc, char **argv)
|
||||||
int prefix_len = 0;
|
int prefix_len = 0;
|
||||||
|
|
||||||
if (argc < 1 || argc > 2)
|
if (argc < 1 || argc > 2)
|
||||||
goto usage;
|
return usage(do_verify);
|
||||||
|
|
||||||
memset(&data, 0, sizeof(data));
|
memset(&data, 0, sizeof(data));
|
||||||
data.cmd = SC_PIN_CMD_VERIFY;
|
data.cmd = SC_PIN_CMD_VERIFY;
|
||||||
|
@ -914,11 +914,11 @@ static int do_verify(int argc, char **argv)
|
||||||
}
|
}
|
||||||
if (data.pin_type == SC_AC_NONE) {
|
if (data.pin_type == SC_AC_NONE) {
|
||||||
printf("Invalid type.\n");
|
printf("Invalid type.\n");
|
||||||
goto usage;
|
return usage(do_verify);
|
||||||
}
|
}
|
||||||
if (sscanf(argv[0] + prefix_len, "%d", &data.pin_reference) != 1) {
|
if (sscanf(argv[0] + prefix_len, "%d", &data.pin_reference) != 1) {
|
||||||
printf("Invalid key reference.\n");
|
printf("Invalid key reference.\n");
|
||||||
goto usage;
|
return usage(do_verify);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argc < 2) {
|
if (argc < 2) {
|
||||||
|
@ -933,7 +933,7 @@ static int do_verify(int argc, char **argv)
|
||||||
r = parse_string_or_hexdata(argv[1], buf, &buflen);
|
r = parse_string_or_hexdata(argv[1], buf, &buflen);
|
||||||
if (0 != r) {
|
if (0 != r) {
|
||||||
printf("Invalid key value.\n");
|
printf("Invalid key value.\n");
|
||||||
goto usage;
|
return usage(do_verify);
|
||||||
}
|
}
|
||||||
data.pin1.data = buf;
|
data.pin1.data = buf;
|
||||||
data.pin1.len = buflen;
|
data.pin1.len = buflen;
|
||||||
|
@ -952,11 +952,6 @@ static int do_verify(int argc, char **argv)
|
||||||
}
|
}
|
||||||
printf("Code correct.\n");
|
printf("Code correct.\n");
|
||||||
return 0;
|
return 0;
|
||||||
usage:
|
|
||||||
printf("Usage: verify {CHV|KEY|AUT|PRO}<key ref> [<pin>]\n");
|
|
||||||
printf("Example: verify CHV2 31:32:33:34:00:00:00:00\n");
|
|
||||||
printf("If key is omitted, card reader's keypad will be used to collect PIN.\n");
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1008,21 +1003,21 @@ static int do_change(int argc, char **argv)
|
||||||
size_t newpinlen = 0;
|
size_t newpinlen = 0;
|
||||||
|
|
||||||
if (argc < 1 || argc > 3)
|
if (argc < 1 || argc > 3)
|
||||||
goto usage;
|
return usage(do_change);
|
||||||
if (strncasecmp(argv[0], "CHV", 3)) {
|
if (strncasecmp(argv[0], "CHV", 3)) {
|
||||||
printf("Invalid type.\n");
|
printf("Invalid type.\n");
|
||||||
goto usage;
|
return usage(do_change);
|
||||||
}
|
}
|
||||||
if (sscanf(argv[0] + 3, "%d", &ref) != 1) {
|
if (sscanf(argv[0] + 3, "%d", &ref) != 1) {
|
||||||
printf("Invalid key reference.\n");
|
printf("Invalid key reference.\n");
|
||||||
goto usage;
|
return usage(do_change);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argc == 3) {
|
if (argc == 3) {
|
||||||
oldpinlen = sizeof(oldpin);
|
oldpinlen = sizeof(oldpin);
|
||||||
if (parse_string_or_hexdata(argv[1], oldpin, &oldpinlen) != 0) {
|
if (parse_string_or_hexdata(argv[1], oldpin, &oldpinlen) != 0) {
|
||||||
printf("Invalid key value.\n");
|
printf("Invalid key value.\n");
|
||||||
goto usage;
|
return usage(do_change);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1030,7 +1025,7 @@ static int do_change(int argc, char **argv)
|
||||||
newpinlen = sizeof(newpin);
|
newpinlen = sizeof(newpin);
|
||||||
if (parse_string_or_hexdata(argv[argc-1], newpin, &newpinlen) != 0) {
|
if (parse_string_or_hexdata(argv[argc-1], newpin, &newpinlen) != 0) {
|
||||||
printf("Invalid key value.\n");
|
printf("Invalid key value.\n");
|
||||||
goto usage;
|
return usage(do_change);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1050,13 +1045,6 @@ static int do_change(int argc, char **argv)
|
||||||
}
|
}
|
||||||
printf("PIN changed.\n");
|
printf("PIN changed.\n");
|
||||||
return 0;
|
return 0;
|
||||||
usage:
|
|
||||||
printf("Usage: change CHV<pin ref> [[<old pin>] <new pin>]\n");
|
|
||||||
printf("Examples: \n");
|
|
||||||
printf("\tChange PIN: change CHV2 00:00:00:00:00:00 \"foobar\"\n");
|
|
||||||
printf("\tSet PIN: change CHV2 \"foobar\"\n");
|
|
||||||
printf("\tChange PIN with pinpad': change CHV2\n");
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1069,21 +1057,21 @@ static int do_unblock(int argc, char **argv)
|
||||||
size_t newpinlen = 0;
|
size_t newpinlen = 0;
|
||||||
|
|
||||||
if (argc < 1 || argc > 3)
|
if (argc < 1 || argc > 3)
|
||||||
goto usage;
|
return usage(do_unblock);
|
||||||
if (strncasecmp(argv[0], "CHV", 3)) {
|
if (strncasecmp(argv[0], "CHV", 3)) {
|
||||||
printf("Invalid type.\n");
|
printf("Invalid type.\n");
|
||||||
goto usage;
|
return usage(do_unblock);
|
||||||
}
|
}
|
||||||
if (sscanf(argv[0] + 3, "%d", &ref) != 1) {
|
if (sscanf(argv[0] + 3, "%d", &ref) != 1) {
|
||||||
printf("Invalid key reference.\n");
|
printf("Invalid key reference.\n");
|
||||||
goto usage;
|
return usage(do_unblock);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argc > 1) {
|
if (argc > 1) {
|
||||||
puklen = sizeof(puk);
|
puklen = sizeof(puk);
|
||||||
if (parse_string_or_hexdata(argv[1], puk, &puklen) != 0) {
|
if (parse_string_or_hexdata(argv[1], puk, &puklen) != 0) {
|
||||||
printf("Invalid key value.\n");
|
printf("Invalid key value.\n");
|
||||||
goto usage;
|
return usage(do_unblock);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1091,7 +1079,7 @@ static int do_unblock(int argc, char **argv)
|
||||||
newpinlen = sizeof(newpin);
|
newpinlen = sizeof(newpin);
|
||||||
if (parse_string_or_hexdata(argv[2], newpin, &newpinlen) != 0) {
|
if (parse_string_or_hexdata(argv[2], newpin, &newpinlen) != 0) {
|
||||||
printf("Invalid key value.\n");
|
printf("Invalid key value.\n");
|
||||||
goto usage;
|
return usage(do_unblock);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1106,18 +1094,6 @@ static int do_unblock(int argc, char **argv)
|
||||||
}
|
}
|
||||||
printf("PIN unblocked.\n");
|
printf("PIN unblocked.\n");
|
||||||
return 0;
|
return 0;
|
||||||
usage:
|
|
||||||
printf("Usage: unblock CHV<pin ref> [<puk> [<new pin>]]\n");
|
|
||||||
printf("PUK and PIN values can be hexadecimal, ASCII, empty (\"\") or absent\n");
|
|
||||||
printf("Examples:\n");
|
|
||||||
printf("\tUnblock PIN and set a new value: unblock CHV2 00:00:00:00:00:00 \"foobar\"\n");
|
|
||||||
printf("\tUnblock PIN keeping the old value: unblock CHV2 00:00:00:00:00:00 \"\"\n");
|
|
||||||
printf("\tSet new PIN value: unblock CHV2 \"\" \"foobar\"\n");
|
|
||||||
printf("Examples with pinpad:\n");
|
|
||||||
printf("\tUnblock PIN: new PIN value is prompted by pinpad: unblock CHV2 00:00:00:00:00:00\n");
|
|
||||||
printf("\tSet PIN: new PIN value is prompted by pinpad: unblock CHV2 \"\"\n");
|
|
||||||
printf("\tUnblock PIN: unblock code and new PIN value are prompted by pinpad: unblock CHV2\n");
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int do_get(int argc, char **argv)
|
static int do_get(int argc, char **argv)
|
||||||
|
|
Loading…
Reference in New Issue