aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/kadm5/clnt/ChangeLog3
-rw-r--r--src/lib/kadm5/clnt/client_principal.c23
-rw-r--r--src/lib/kadm5/clnt/client_rpc.c14
3 files changed, 40 insertions, 0 deletions
diff --git a/src/lib/kadm5/clnt/ChangeLog b/src/lib/kadm5/clnt/ChangeLog
index 3635a32..21d4571 100644
--- a/src/lib/kadm5/clnt/ChangeLog
+++ b/src/lib/kadm5/clnt/ChangeLog
@@ -1,3 +1,6 @@
+Tue Jul 1 02:34:46 1997 Tom Yu <tlyu@mit.edu>
+
+ * client_principal.c, client_rpc.c: Add support for setv4key.
Mon Mar 31 17:40:48 1997 Barry Jaspan <bjaspan@mit.edu>
* client_principal.c, client_rpc.c: add support for
diff --git a/src/lib/kadm5/clnt/client_principal.c b/src/lib/kadm5/clnt/client_principal.c
index adcbb29..73a2f29 100644
--- a/src/lib/kadm5/clnt/client_principal.c
+++ b/src/lib/kadm5/clnt/client_principal.c
@@ -262,6 +262,29 @@ kadm5_chpass_principal(void *server_handle,
}
kadm5_ret_t
+kadm5_setv4key_principal(void *server_handle,
+ krb5_principal princ,
+ krb5_keyblock *keyblock)
+{
+ setv4key_arg arg;
+ generic_ret *r;
+ kadm5_server_handle_t handle = server_handle;
+
+ CHECK_HANDLE(server_handle);
+
+ arg.princ = princ;
+ arg.keyblock = keyblock;
+ arg.api_version = handle->api_version;
+
+ if(princ == NULL || keyblock == NULL)
+ return EINVAL;
+ r = setv4key_principal_1(&arg, handle->clnt);
+ if(r == NULL)
+ return KADM5_RPC_ERROR;
+ return r->code;
+}
+
+kadm5_ret_t
kadm5_setkey_principal(void *server_handle,
krb5_principal princ,
krb5_keyblock *keyblocks,
diff --git a/src/lib/kadm5/clnt/client_rpc.c b/src/lib/kadm5/clnt/client_rpc.c
index ecb5943..86830b0 100644
--- a/src/lib/kadm5/clnt/client_rpc.c
+++ b/src/lib/kadm5/clnt/client_rpc.c
@@ -107,6 +107,20 @@ chpass_principal_1(argp, clnt)
}
generic_ret *
+setv4key_principal_1(argp, clnt)
+ setv4key_arg *argp;
+ CLIENT *clnt;
+{
+ static generic_ret res;
+
+ memset((char *)&res, 0, sizeof(res));
+ if (clnt_call(clnt, SETV4KEY_PRINCIPAL, xdr_setv4key_arg, argp, xdr_generic_ret, &res, TIMEOUT) != RPC_SUCCESS) {
+ return (NULL);
+ }
+ return (&res);
+}
+
+generic_ret *
setkey_principal_1(argp, clnt)
setkey_arg *argp;
CLIENT *clnt;