summaryrefslogtreecommitdiff
path: root/Modules/_hashopenssl.c
diff options
context:
space:
mode:
authordoko <doko@ubuntu.com>2017-01-31 13:35:56 +0100
committerdoko <doko@ubuntu.com>2017-01-31 13:35:56 +0100
commitb23072b8814146d3a76eb752fd7526eb1575e7cc (patch)
treecf13a75e5570561a10bf68c2c451e9271229a3be /Modules/_hashopenssl.c
parente0cb38ac4330d5e09b5e21c74c5d5e453af99a4f (diff)
parentccd19e48ec9d557231bf923c338be0e7509a51d3 (diff)
downloadcpython-b23072b8814146d3a76eb752fd7526eb1575e7cc.tar.gz
merge 3.6
Diffstat (limited to 'Modules/_hashopenssl.c')
-rw-r--r--Modules/_hashopenssl.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/Modules/_hashopenssl.c b/Modules/_hashopenssl.c
index daa4f3db2e..49952947cb 100644
--- a/Modules/_hashopenssl.c
+++ b/Modules/_hashopenssl.c
@@ -905,13 +905,17 @@ generate_hash_name_list(void)
*/
#define GEN_CONSTRUCTOR(NAME) \
static PyObject * \
- EVP_new_ ## NAME (PyObject *self, PyObject *args) \
+ EVP_new_ ## NAME (PyObject *self, PyObject **args, Py_ssize_t nargs, PyObject *kwnames) \
{ \
PyObject *data_obj = NULL; \
Py_buffer view = { 0 }; \
PyObject *ret_obj; \
\
- if (!PyArg_ParseTuple(args, "|O:" #NAME , &data_obj)) { \
+ if (!_PyArg_ParseStack(args, nargs, "|O:" #NAME , &data_obj)) { \
+ return NULL; \
+ } \
+ \
+ if (!_PyArg_NoStackKeywords(#NAME, kwnames)) { \
return NULL; \
} \
\
@@ -932,7 +936,7 @@ generate_hash_name_list(void)
/* a PyMethodDef structure for the constructor */
#define CONSTRUCTOR_METH_DEF(NAME) \
- {"openssl_" #NAME, (PyCFunction)EVP_new_ ## NAME, METH_VARARGS, \
+ {"openssl_" #NAME, (PyCFunction)EVP_new_ ## NAME, METH_FASTCALL, \
PyDoc_STR("Returns a " #NAME \
" hash object; optionally initialized with a string") \
}