mirror of https://github.com/python/cpython.git
[Patch #476612] Add attributes from PEP247 to the md5 and sha modules
This commit is contained in:
parent
a73f78b6ec
commit
75fec2c8ed
|
@ -161,6 +161,10 @@ static PyMethodDef md5_methods[] = {
|
|||
static PyObject *
|
||||
md5_getattr(md5object *self, char *name)
|
||||
{
|
||||
if (strcmp(name, "digest_size") == 0) {
|
||||
return PyInt_FromLong(16);
|
||||
}
|
||||
|
||||
return Py_FindMethod(md5_methods, (PyObject *)self, name);
|
||||
}
|
||||
|
||||
|
@ -264,11 +268,13 @@ static PyMethodDef md5_functions[] = {
|
|||
DL_EXPORT(void)
|
||||
initmd5(void)
|
||||
{
|
||||
PyObject *m, *d;
|
||||
PyObject *m, *d, *i;
|
||||
|
||||
MD5type.ob_type = &PyType_Type;
|
||||
m = Py_InitModule3("md5", md5_functions, module_doc);
|
||||
d = PyModule_GetDict(m);
|
||||
PyDict_SetItemString(d, "MD5Type", (PyObject *)&MD5type);
|
||||
if ( (i = PyInt_FromLong(16)) != NULL)
|
||||
PyDict_SetItemString(d, "digest_size", i);
|
||||
/* No need to check the error here, the caller will do that */
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
/* See below for information about the original code this module was
|
||||
based upon. Additional work performed by:
|
||||
|
||||
Andrew Kuchling (amk1@bigfoot.com)
|
||||
Andrew Kuchling (akuchlin@mems-exchange.org)
|
||||
Greg Stein (gstein@lyra.org)
|
||||
*/
|
||||
|
||||
|
@ -458,7 +458,7 @@ SHA_getattr(PyObject *self, char *name)
|
|||
{
|
||||
if (strcmp(name, "blocksize")==0)
|
||||
return PyInt_FromLong(1);
|
||||
if (strcmp(name, "digestsize")==0)
|
||||
if (strcmp(name, "digest_size")==0 || strcmp(name, "digestsize")==0)
|
||||
return PyInt_FromLong(20);
|
||||
|
||||
return Py_FindMethod(SHA_methods, self, name);
|
||||
|
@ -542,4 +542,5 @@ initsha(void)
|
|||
functions require an integral number of
|
||||
blocks */
|
||||
insint("digestsize", 20);
|
||||
insint("digest_size", 20);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue