aboutsummaryrefslogtreecommitdiff
path: root/rpkid
diff options
context:
space:
mode:
authorMichael Elkins <melkins@tislabs.com>2012-11-23 20:47:32 +0000
committerMichael Elkins <melkins@tislabs.com>2012-11-23 20:47:32 +0000
commit1b84c1e1febeeb5e0141eb8196b8d7c968d2c514 (patch)
treef960fbb0ac115e8fc97dff85e9d52e7820ce97a7 /rpkid
parentef73580b0ae05f471a3b52f2109c7da21b999383 (diff)
merge with /trunk
svn path=/branches/tk329/; revision=4899
Diffstat (limited to 'rpkid')
-rw-r--r--rpkid/ext/POW.c67
1 files changed, 37 insertions, 30 deletions
diff --git a/rpkid/ext/POW.c b/rpkid/ext/POW.c
index 231b5802..e12e5a14 100644
--- a/rpkid/ext/POW.c
+++ b/rpkid/ext/POW.c
@@ -81,6 +81,7 @@
/* $Id: rcynic.c 4613 2012-07-30 23:24:15Z sra $ */
+#define PY_SSIZE_T_CLEAN 1
#include <Python.h>
#include <datetime.h>
@@ -577,9 +578,8 @@ x509_object_helper_get_name(X509_NAME *name, int format)
if (entry->set > set) {
set++;
- if ((item = Py_BuildValue("((ss#))", oid,
- ASN1_STRING_data(entry->value),
- ASN1_STRING_length(entry->value))) == NULL)
+ if ((item = Py_BuildValue("((ss#))", oid, ASN1_STRING_data(entry->value),
+ (Py_ssize_t) ASN1_STRING_length(entry->value))) == NULL)
goto error;
PyTuple_SET_ITEM(result, set, item);
item = NULL;
@@ -592,9 +592,8 @@ x509_object_helper_get_name(X509_NAME *name, int format)
PyTuple_SET_ITEM(result, set, rdn);
if (rdn == NULL)
goto error;
- if ((item = Py_BuildValue("(ss#)", oid,
- ASN1_STRING_data(entry->value),
- ASN1_STRING_length(entry->value))) == NULL)
+ if ((item = Py_BuildValue("(ss#)", oid, ASN1_STRING_data(entry->value),
+ (Py_ssize_t) ASN1_STRING_length(entry->value))) == NULL)
goto error;
PyTuple_SetItem(rdn, PyTuple_Size(rdn) - 1, item);
rdn = item = NULL;
@@ -778,7 +777,7 @@ static PyObject *
BIO_to_PyString_helper(BIO *bio)
{
char *ptr = NULL;
- int len = 0;
+ Py_ssize_t len = 0;
if ((len = BIO_get_mem_data(bio, &ptr)) == 0)
lose_openssl_error("Unable to get BIO data");
@@ -797,7 +796,7 @@ read_from_string_helper(PyObject *(*object_read_helper)(PyTypeObject *, BIO *),
PyObject *result = NULL;
char *src = NULL;
BIO *bio = NULL;
- int len = 0;
+ Py_ssize_t len = 0;
if (!PyArg_ParseTuple(args, "s#", &src, &len))
goto error;
@@ -1139,7 +1138,7 @@ ipaddress_object_from_bytes(PyTypeObject *type, PyObject *args)
{
ipaddress_object *result = NULL;
char *bytes = NULL;
- size_t len;
+ Py_ssize_t len;
int v;
ENTERING(ipaddress_object_from_bytes);
@@ -1160,9 +1159,11 @@ ipaddress_object_from_bytes(PyTypeObject *type, PyObject *args)
lose("Unknown IP version number");
memcpy(result->address, bytes, len);
+ return (PyObject *) result;
error:
- return (PyObject *) result;
+ Py_XDECREF(result);
+ return NULL;
}
static char ipaddress_object_to_bytes__doc__[] =
@@ -2064,9 +2065,8 @@ x509_object_get_ski(x509_object *self)
if (self->x509->skid == NULL)
Py_RETURN_NONE;
else
- return Py_BuildValue("s#",
- ASN1_STRING_data(self->x509->skid),
- ASN1_STRING_length(self->x509->skid));
+ return Py_BuildValue("s#", ASN1_STRING_data(self->x509->skid),
+ (Py_ssize_t) ASN1_STRING_length(self->x509->skid));
}
static char x509_object_set_ski__doc__[] =
@@ -2078,7 +2078,8 @@ x509_object_set_ski(x509_object *self, PyObject *args)
{
ASN1_OCTET_STRING *ext = NULL;
const unsigned char *buf = NULL;
- int len, ok = 0;
+ Py_ssize_t len;
+ int ok = 0;
ENTERING(x509_object_set_ski);
@@ -2124,9 +2125,8 @@ x509_object_get_aki(x509_object *self)
if (self->x509->akid == NULL || self->x509->akid->keyid == NULL)
Py_RETURN_NONE;
else
- return Py_BuildValue("s#",
- ASN1_STRING_data(self->x509->akid->keyid),
- ASN1_STRING_length(self->x509->akid->keyid));
+ return Py_BuildValue("s#", ASN1_STRING_data(self->x509->akid->keyid),
+ (Py_ssize_t) ASN1_STRING_length(self->x509->akid->keyid));
}
static char x509_object_set_aki__doc__[] =
@@ -2141,7 +2141,8 @@ x509_object_set_aki(x509_object *self, PyObject *args)
{
AUTHORITY_KEYID *ext = NULL;
const unsigned char *buf = NULL;
- int len, ok = 0;
+ Py_ssize_t len;
+ int ok = 0;
ENTERING(x509_object_set_aki);
@@ -4155,7 +4156,8 @@ crl_object_get_aki(crl_object *self)
ENTERING(crl_object_get_aki);
if (!empty)
- result = Py_BuildValue("s#", ASN1_STRING_data(ext->keyid), ASN1_STRING_length(ext->keyid));
+ result = Py_BuildValue("s#", ASN1_STRING_data(ext->keyid),
+ (Py_ssize_t) ASN1_STRING_length(ext->keyid));
AUTHORITY_KEYID_free(ext);
@@ -4176,7 +4178,8 @@ crl_object_set_aki(crl_object *self, PyObject *args)
{
AUTHORITY_KEYID *ext = NULL;
const unsigned char *buf = NULL;
- int len, ok = 0;
+ Py_ssize_t len;
+ int ok = 0;
ENTERING(crl_object_set_aki);
@@ -4474,7 +4477,7 @@ asymmetric_object_pem_read_private(PyTypeObject *type, PyObject *args)
char *pass = NULL;
char *src = NULL;
BIO *bio = NULL;
- int len = 0;
+ Py_ssize_t len = 0;
ENTERING(asymmetric_object_pem_read_private);
@@ -4926,7 +4929,7 @@ static PyObject *
digest_object_update(digest_object *self, PyObject *args)
{
char *data = NULL;
- int len = 0;
+ Py_ssize_t len = 0;
ENTERING(digest_object_update);
@@ -4996,7 +4999,7 @@ digest_object_digest(digest_object *self)
EVP_MD_CTX_cleanup(&ctx);
- return Py_BuildValue("s#", digest_text, digest_len);
+ return Py_BuildValue("s#", digest_text, (Py_ssize_t) digest_len);
error:
return NULL;
@@ -5360,7 +5363,7 @@ cms_object_sign(cms_object *self, PyObject *args)
PyObject *x509_sequence = Py_None;
PyObject *crl_sequence = Py_None;
char *buf = NULL, *oid = NULL;
- int len;
+ Py_ssize_t len;
unsigned flags = 0;
BIO *bio = NULL;
int ok = 0;
@@ -5413,7 +5416,8 @@ cms_object_verify_helper(cms_object *self, PyObject *args, PyObject *kwds)
ENTERING(cms_object_verify_helper);
- if (!PyArg_ParseTupleAndKeywords(args, kwds, "O!|OI", kwlist, &POW_X509Store_Type, &store, &certs_sequence, &flags))
+ if (!PyArg_ParseTupleAndKeywords(args, kwds, "O!|OI", kwlist,
+ &POW_X509Store_Type, &store, &certs_sequence, &flags))
goto error;
if ((bio = BIO_new(BIO_s_mem())) == NULL)
@@ -6227,9 +6231,12 @@ manifest_object_get_files(manifest_object *self)
for (i = 0; i < sk_FileAndHash_num(self->manifest->fileList); i++) {
FileAndHash *fah = sk_FileAndHash_value(self->manifest->fileList, i);
- if ((item = Py_BuildValue("(s#s#)",
- ASN1_STRING_data(fah->file), ASN1_STRING_length(fah->file),
- ASN1_STRING_data(fah->hash), ASN1_STRING_length(fah->hash))) == NULL)
+ item = Py_BuildValue("(s#s#)",
+ ASN1_STRING_data(fah->file),
+ (Py_ssize_t) ASN1_STRING_length(fah->file),
+ ASN1_STRING_data(fah->hash),
+ (Py_ssize_t) ASN1_STRING_length(fah->hash));
+ if (item == NULL)
goto error;
PyTuple_SET_ITEM(result, i, item);
@@ -8048,7 +8055,7 @@ static PyObject *
pow_module_seed(GCC_UNUSED PyObject *self, PyObject *args)
{
char *data = NULL;
- int datalen = 0;
+ Py_ssize_t datalen = 0;
ENTERING(pow_module_seed);
@@ -8077,7 +8084,7 @@ static PyObject *
pow_module_add(GCC_UNUSED PyObject *self, PyObject *args)
{
char *data = NULL;
- int datalen = 0;
+ Py_ssize_t datalen = 0;
double entropy = 0;
ENTERING(pow_module_add);