summaryrefslogtreecommitdiff
path: root/usr/src/cmd/krb5
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/krb5')
-rw-r--r--usr/src/cmd/krb5/kadmin/cli/kadmin.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/usr/src/cmd/krb5/kadmin/cli/kadmin.c b/usr/src/cmd/krb5/kadmin/cli/kadmin.c
index 7f43e14c34..b7f9f71e57 100644
--- a/usr/src/cmd/krb5/kadmin/cli/kadmin.c
+++ b/usr/src/cmd/krb5/kadmin/cli/kadmin.c
@@ -631,6 +631,9 @@ kadmin_cpw(argc, argv)
int n_ks_tuple = 0, keepold = 0, randkey = 0;
krb5_key_salt_tuple *ks_tuple = NULL;
krb5_principal princ;
+ int local_kadmin = 0;
+
+ local_kadmin = (strcmp(whoami, KADMIN_LOCAL_NAME) == 0);
if (argc < 2) {
goto usage;
@@ -710,7 +713,7 @@ kadmin_cpw(argc, argv)
free(canon);
return;
} else if (randkey) {
- if (keepold || ks_tuple != NULL) {
+ if (keepold || ks_tuple != NULL || local_kadmin) {
retval = kadm5_randkey_principal_3(handle, princ, keepold,
n_ks_tuple, ks_tuple,
NULL, NULL);