diff options
author | Greg Hudson <ghudson@mit.edu> | 2013-02-09 00:43:35 -0500 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2013-02-09 00:43:35 -0500 |
commit | 7905cd6a2eddbf264242bb2a85f811878b2da7ab (patch) | |
tree | 72b4028cbe0e399e1d293e2b718530913f0a2673 /src/lib/kadm5/srv | |
parent | 92e2bac0f38f7f60a8fc74b5964357212c4289e1 (diff) | |
download | krb5-7905cd6a2eddbf264242bb2a85f811878b2da7ab.tar.gz krb5-7905cd6a2eddbf264242bb2a85f811878b2da7ab.tar.xz krb5-7905cd6a2eddbf264242bb2a85f811878b2da7ab.zip |
Add and use k5memdup, k5memdup0 helpers
Add k5-int.h static functions to duplicate byte ranges, optionally
with a trailing zero byte, and set an error code like k5alloc does.
Use them where they would shorten existing code.
Diffstat (limited to 'src/lib/kadm5/srv')
-rw-r--r-- | src/lib/kadm5/srv/svr_principal.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/lib/kadm5/srv/svr_principal.c b/src/lib/kadm5/srv/svr_principal.c index 2000fe441..6d90628dc 100644 --- a/src/lib/kadm5/srv/svr_principal.c +++ b/src/lib/kadm5/srv/svr_principal.c @@ -245,12 +245,10 @@ apply_keysalt_policy(kadm5_server_handle_t handle, const char *policy, ks_tuple = handle->params.keysalts; } /* Dup the requested or defaulted keysalt tuples. */ - new_ks_tuple = malloc(n_ks_tuple * sizeof(*new_ks_tuple)); - if (new_ks_tuple == NULL) { - ret = ENOMEM; + new_ks_tuple = k5memdup(ks_tuple, n_ks_tuple * sizeof(*new_ks_tuple), + &ret); + if (new_ks_tuple == NULL) goto cleanup; - } - memcpy(new_ks_tuple, ks_tuple, n_ks_tuple * sizeof(*new_ks_tuple)); new_n_ks_tuple = n_ks_tuple; ret = 0; goto cleanup; |