From: Guido van Rossum Date: Wed, 29 Aug 2007 14:21:45 +0000 (+0000) Subject: Refuse to compute digests from PyUnicode (str) instances. X-Git-Tag: v3.0a1~142 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3227af454cd14d3843b11ab7609cd1b06e87a6af;p=python Refuse to compute digests from PyUnicode (str) instances. This breaks a few things that I'll patch up in a minute. --- diff --git a/Modules/_hashopenssl.c b/Modules/_hashopenssl.c index 9ee1b3db27..ad38cfdec1 100644 --- a/Modules/_hashopenssl.c +++ b/Modules/_hashopenssl.c @@ -153,12 +153,12 @@ EVP_hexdigest(EVPobject *self, PyObject *unused) } #define MY_GET_BUFFER_VIEW_OR_ERROUT(obj, viewp) do { \ - if (!PyObject_CheckBuffer((obj))) { \ + if (PyUnicode_Check(obj) || !PyObject_CheckBuffer((obj))) { \ PyErr_SetString(PyExc_TypeError, \ "object supporting the buffer API required"); \ return NULL; \ } \ - if (PyObject_GetBuffer((obj), (viewp), PyBUF_CHARACTER) == -1) { \ + if (PyObject_GetBuffer((obj), (viewp), PyBUF_SIMPLE) == -1) { \ return NULL; \ } \ if ((viewp)->ndim > 1) { \