blob: a841fe57867827f458a9d5e4b4b941e69d4d925a [file] [log] [blame]
Serhiy Storchaka1009bf12015-04-03 23:53:51 +03001/*[clinic input]
2preserve
3[clinic start generated code]*/
4
5PyDoc_STRVAR(MD5Type_copy__doc__,
6"copy($self, /)\n"
7"--\n"
8"\n"
9"Return a copy of the hash object.");
10
11#define MD5TYPE_COPY_METHODDEF \
12 {"copy", (PyCFunction)MD5Type_copy, METH_NOARGS, MD5Type_copy__doc__},
13
14static PyObject *
15MD5Type_copy_impl(MD5object *self);
16
17static PyObject *
18MD5Type_copy(MD5object *self, PyObject *Py_UNUSED(ignored))
19{
20 return MD5Type_copy_impl(self);
21}
22
23PyDoc_STRVAR(MD5Type_digest__doc__,
24"digest($self, /)\n"
25"--\n"
26"\n"
27"Return the digest value as a string of binary data.");
28
29#define MD5TYPE_DIGEST_METHODDEF \
30 {"digest", (PyCFunction)MD5Type_digest, METH_NOARGS, MD5Type_digest__doc__},
31
32static PyObject *
33MD5Type_digest_impl(MD5object *self);
34
35static PyObject *
36MD5Type_digest(MD5object *self, PyObject *Py_UNUSED(ignored))
37{
38 return MD5Type_digest_impl(self);
39}
40
41PyDoc_STRVAR(MD5Type_hexdigest__doc__,
42"hexdigest($self, /)\n"
43"--\n"
44"\n"
45"Return the digest value as a string of hexadecimal digits.");
46
47#define MD5TYPE_HEXDIGEST_METHODDEF \
48 {"hexdigest", (PyCFunction)MD5Type_hexdigest, METH_NOARGS, MD5Type_hexdigest__doc__},
49
50static PyObject *
51MD5Type_hexdigest_impl(MD5object *self);
52
53static PyObject *
54MD5Type_hexdigest(MD5object *self, PyObject *Py_UNUSED(ignored))
55{
56 return MD5Type_hexdigest_impl(self);
57}
58
59PyDoc_STRVAR(MD5Type_update__doc__,
60"update($self, obj, /)\n"
61"--\n"
62"\n"
63"Update this hash object\'s state with the provided string.");
64
65#define MD5TYPE_UPDATE_METHODDEF \
66 {"update", (PyCFunction)MD5Type_update, METH_O, MD5Type_update__doc__},
67
68PyDoc_STRVAR(_md5_md5__doc__,
69"md5($module, /, string=b\'\')\n"
70"--\n"
71"\n"
72"Return a new MD5 hash object; optionally initialized with a string.");
73
74#define _MD5_MD5_METHODDEF \
Victor Stinner37e4ef72016-09-09 20:00:13 -070075 {"md5", (PyCFunction)_md5_md5, METH_FASTCALL, _md5_md5__doc__},
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030076
77static PyObject *
Serhiy Storchaka1a2b24f2016-07-07 17:35:15 +030078_md5_md5_impl(PyObject *module, PyObject *string);
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030079
80static PyObject *
Victor Stinner37e4ef72016-09-09 20:00:13 -070081_md5_md5(PyObject *module, PyObject **args, Py_ssize_t nargs, PyObject *kwnames)
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030082{
83 PyObject *return_value = NULL;
Serhiy Storchaka9171a8b2016-08-14 10:52:18 +030084 static const char * const _keywords[] = {"string", NULL};
85 static _PyArg_Parser _parser = {"|O:md5", _keywords, 0};
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030086 PyObject *string = NULL;
87
Victor Stinner37e4ef72016-09-09 20:00:13 -070088 if (!_PyArg_ParseStack(args, nargs, kwnames, &_parser,
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030089 &string)) {
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030090 goto exit;
Serhiy Storchaka5dee6552016-06-09 16:16:06 +030091 }
Serhiy Storchaka1009bf12015-04-03 23:53:51 +030092 return_value = _md5_md5_impl(module, string);
93
94exit:
95 return return_value;
96}
Victor Stinner37e4ef72016-09-09 20:00:13 -070097/*[clinic end generated code: output=54cd50db050f2589 input=a9049054013a1b77]*/