[pkg-opensc-commit] [libp11] 35/86: Further dynamic memory allocation cleanup
Eric Dorland
eric at moszumanska.debian.org
Sun Jul 24 21:40:20 UTC 2016
This is an automated email from the git hooks/post-receive script.
eric pushed a commit to branch master
in repository libp11.
commit a36a69413a5444dfb4f2d9f7aa83197ef754dd2b
Author: Michał Trojnara <Michal.Trojnara at stunnel.org>
Date: Wed Feb 3 16:41:58 2016 +0100
Further dynamic memory allocation cleanup
---
src/eng_parse.c | 15 ++++++++-------
src/libp11-int.h | 2 --
src/p11_cert.c | 2 +-
src/p11_key.c | 2 +-
src/p11_load.c | 2 +-
src/p11_misc.c | 14 --------------
src/p11_slot.c | 2 +-
7 files changed, 12 insertions(+), 27 deletions(-)
diff --git a/src/eng_parse.c b/src/eng_parse.c
index db5279f..3f2a232 100644
--- a/src/eng_parse.c
+++ b/src/eng_parse.c
@@ -147,7 +147,7 @@ int parse_slot_id_string(const char *slot_id, int *slot,
/* label_<label>, slot is undefined */
if (strncmp(slot_id, "label_", 6) == 0) {
*slot = -1;
- *label = strdup(slot_id + 6);
+ *label = OPENSSL_strdup(slot_id + 6);
return *label != NULL;
}
@@ -197,7 +197,7 @@ int parse_slot_id_string(const char *slot_id, int *slot,
/* ... or "label_" */
if (strncmp(slot_id + i, "label_", 6) == 0) {
*slot = n;
- return (*label = strdup(slot_id + i + 6)) != NULL;
+ return (*label = OPENSSL_strdup(slot_id + i + 6)) != NULL;
}
fprintf(stderr, "Could not parse string!\n");
@@ -215,7 +215,7 @@ static int parse_uri_attr(const char *attr, int attrlen, unsigned char **field,
out = *field;
max = *field_len;
} else {
- out = malloc(attrlen + 1);
+ out = OPENSSL_malloc(attrlen + 1);
if (out == NULL)
return 0;
max = attrlen + 1;
@@ -254,7 +254,7 @@ static int parse_uri_attr(const char *attr, int attrlen, unsigned char **field,
}
} else {
if (field_len == NULL)
- free(out);
+ OPENSSL_free(out);
}
return ret;
@@ -269,11 +269,12 @@ int parse_pkcs11_uri(const char *uri, PKCS11_TOKEN **p_tok,
const char *end, *p;
int rv = 1, pin_set = 0;
- tok = calloc(1, sizeof(*tok));
+ tok = OPENSSL_malloc(sizeof(PKCS11_TOKEN));
if (tok == NULL) {
fprintf(stderr, "Could not allocate memory for token info\n");
return 0;
}
+ memset(tok, 0, sizeof(PKCS11_TOKEN));
/* We are only ever invoked if the string starts with 'pkcs11:' */
end = uri + 6;
@@ -328,9 +329,9 @@ int parse_pkcs11_uri(const char *uri, PKCS11_TOKEN **p_tok,
*label = newlabel;
*p_tok = tok;
} else {
- free(tok);
+ OPENSSL_free(tok);
tok = NULL;
- free(newlabel);
+ OPENSSL_free(newlabel);
}
return rv;
diff --git a/src/libp11-int.h b/src/libp11-int.h
index 11a20c9..a2c0533 100644
--- a/src/libp11-int.h
+++ b/src/libp11-int.h
@@ -199,8 +199,6 @@ extern void pkcs11_addattr_bn(CK_ATTRIBUTE_PTR, int, const BIGNUM *);
extern void pkcs11_addattr_obj(CK_ATTRIBUTE_PTR, int, pkcs11_i2d_fn, void *);
extern void pkcs11_zap_attrs(CK_ATTRIBUTE_PTR, unsigned int);
-extern void *memdup(const void *, size_t);
-
int PKCS11_reopen_session(PKCS11_SLOT * slot);
int PKCS11_relogin(PKCS11_SLOT * slot);
diff --git a/src/p11_cert.c b/src/p11_cert.c
index c6f0f8b..fc3a710 100644
--- a/src/p11_cert.c
+++ b/src/p11_cert.c
@@ -179,7 +179,7 @@ static int pkcs11_init_cert(PKCS11_CTX * ctx, PKCS11_TOKEN * token,
cpriv->parent = token;
if (!pkcs11_getattr_s(token, obj, CKA_LABEL, label, sizeof(label)))
- cert->label = BUF_strdup(label);
+ cert->label = OPENSSL_strdup(label);
size = 0;
if (!pkcs11_getattr_var(token, obj, CKA_VALUE, NULL, &size) && size > 0) {
data = OPENSSL_malloc(size);
diff --git a/src/p11_key.c b/src/p11_key.c
index e26412c..c2fa5ed 100644
--- a/src/p11_key.c
+++ b/src/p11_key.c
@@ -484,7 +484,7 @@ static int pkcs11_init_key(PKCS11_CTX * ctx, PKCS11_TOKEN * token,
kpriv->parent = token;
if (!pkcs11_getattr_s(token, obj, CKA_LABEL, label, sizeof(label)))
- key->label = BUF_strdup(label);
+ key->label = OPENSSL_strdup(label);
key->id_len = sizeof(id);
if (!pkcs11_getattr_var(token, obj, CKA_ID, id, &key->id_len)) {
key->id = OPENSSL_malloc(key->id_len);
diff --git a/src/p11_load.c b/src/p11_load.c
index 096b5c8..93a7427 100644
--- a/src/p11_load.c
+++ b/src/p11_load.c
@@ -61,7 +61,7 @@ void PKCS11_CTX_init_args(PKCS11_CTX * ctx, const char *init_args)
if (cpriv->init_args) {
OPENSSL_free(cpriv->init_args);
}
- cpriv->init_args = init_args ? BUF_strdup(init_args) : NULL;
+ cpriv->init_args = init_args ? OPENSSL_strdup(init_args) : NULL;
}
/*
diff --git a/src/p11_misc.c b/src/p11_misc.c
index 36e4396..04ae04f 100644
--- a/src/p11_misc.c
+++ b/src/p11_misc.c
@@ -40,20 +40,6 @@ char *pkcs11_strdup(char *mem, size_t size)
}
/*
- * Dup memory
- */
-void *memdup(const void *src, size_t size)
-{
- void *dst;
-
- dst = OPENSSL_malloc(size);
- if (dst == NULL)
- return NULL;
- memcpy(dst, src, size);
- return dst;
-}
-
-/*
* PKCS#11 reinitialization after fork
* It wipes out the internal state of the PKCS#11 library
* Any libp11 references to this state are no longer valid
diff --git a/src/p11_slot.c b/src/p11_slot.c
index 846875f..43280a8 100644
--- a/src/p11_slot.c
+++ b/src/p11_slot.c
@@ -241,7 +241,7 @@ int pkcs11_login(PKCS11_SLOT * slot, int so, const char *pin, int relogin)
OPENSSL_cleanse(spriv->prev_pin, strlen(spriv->prev_pin));
OPENSSL_free(spriv->prev_pin);
}
- spriv->prev_pin = BUF_strdup(pin);
+ spriv->prev_pin = OPENSSL_strdup(pin);
}
spriv->prev_so = so;
return 0;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-opensc/libp11.git
More information about the pkg-opensc-commit
mailing list