summaryrefslogtreecommitdiff
path: root/client/wallet.c
diff options
context:
space:
mode:
Diffstat (limited to 'client/wallet.c')
-rw-r--r--client/wallet.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/client/wallet.c b/client/wallet.c
index e6d8eb9..9c1eb09 100644
--- a/client/wallet.c
+++ b/client/wallet.c
@@ -194,7 +194,7 @@ main(int argc, char *argv[])
}
argc -= optind;
argv += optind;
- if (argc < 3)
+ if (argc < 3 && strcmp(argv[0], "rekey") != 0)
usage(1);
/* -f is only supported for get and store and -S with get keytab. */
@@ -242,6 +242,10 @@ main(int argc, char *argv[])
} else {
status = get_file(r, options.type, argv[1], argv[2], file);
}
+ } else if (strcmp(argv[0], "rekey") == 0) {
+ if (argc > 2)
+ die("too many arguments");
+ status = rekey_keytab(r, ctx, "keytab", argv[1]);
} else {
count = argc + 1;
if (strcmp(argv[0], "store") == 0) {