summaryrefslogtreecommitdiff
path: root/key.c
diff options
context:
space:
mode:
Diffstat (limited to 'key.c')
-rw-r--r--key.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/key.c b/key.c
index d6dd3abea..0d29593b0 100644
--- a/key.c
+++ b/key.c
@@ -49,9 +49,8 @@ key_new(int type)
49 Key *k; 49 Key *k;
50 RSA *rsa; 50 RSA *rsa;
51 DSA *dsa; 51 DSA *dsa;
52 k = xmalloc(sizeof(*k)); 52 k = xcalloc(1, sizeof(*k));
53 k->type = type; 53 k->type = type;
54 k->flags = 0;
55 k->dsa = NULL; 54 k->dsa = NULL;
56 k->rsa = NULL; 55 k->rsa = NULL;
57 switch (k->type) { 56 switch (k->type) {
@@ -231,8 +230,7 @@ key_fingerprint_hex(u_char *dgst_raw, u_int dgst_raw_len)
231 char *retval; 230 char *retval;
232 u_int i; 231 u_int i;
233 232
234 retval = xmalloc(dgst_raw_len * 3 + 1); 233 retval = xcalloc(1, dgst_raw_len * 3 + 1);
235 retval[0] = '\0';
236 for (i = 0; i < dgst_raw_len; i++) { 234 for (i = 0; i < dgst_raw_len; i++) {
237 char hex[4]; 235 char hex[4];
238 snprintf(hex, sizeof(hex), "%02x:", dgst_raw[i]); 236 snprintf(hex, sizeof(hex), "%02x:", dgst_raw[i]);
@@ -254,7 +252,7 @@ key_fingerprint_bubblebabble(u_char *dgst_raw, u_int dgst_raw_len)
254 char *retval; 252 char *retval;
255 253
256 rounds = (dgst_raw_len / 2) + 1; 254 rounds = (dgst_raw_len / 2) + 1;
257 retval = xmalloc(sizeof(char) * (rounds*6)); 255 retval = xcalloc((rounds * 6), sizeof(char));
258 retval[j++] = 'x'; 256 retval[j++] = 'x';
259 for (i = 0; i < rounds; i++) { 257 for (i = 0; i < rounds; i++) {
260 u_int idx0, idx1, idx2, idx3, idx4; 258 u_int idx0, idx1, idx2, idx3, idx4;
@@ -824,7 +822,7 @@ key_demote(const Key *k)
824{ 822{
825 Key *pk; 823 Key *pk;
826 824
827 pk = xmalloc(sizeof(*pk)); 825 pk = xcalloc(1, sizeof(*pk));
828 pk->type = k->type; 826 pk->type = k->type;
829 pk->flags = k->flags; 827 pk->flags = k->flags;
830 pk->dsa = NULL; 828 pk->dsa = NULL;