bpo-1635741: Port _crypt extension module to multiphase initialization (PEP 489) (GH-18404)
diff --git a/Misc/NEWS.d/next/Core and Builtins/2020-02-07-12-57-40.bpo-1635741.ySW6gq.rst b/Misc/NEWS.d/next/Core and Builtins/2020-02-07-12-57-40.bpo-1635741.ySW6gq.rst
new file mode 100644
index 0000000..6b35bdc
--- /dev/null
+++ b/Misc/NEWS.d/next/Core and Builtins/2020-02-07-12-57-40.bpo-1635741.ySW6gq.rst
@@ -0,0 +1 @@
+Port _crypt extension module to multiphase initialization (:pep:`489`).
\ No newline at end of file
diff --git a/Modules/_cryptmodule.c b/Modules/_cryptmodule.c
index 00c1f4f..a95f55a 100644
--- a/Modules/_cryptmodule.c
+++ b/Modules/_cryptmodule.c
@@ -54,14 +54,17 @@
{NULL, NULL} /* sentinel */
};
+static PyModuleDef_Slot _crypt_slots[] = {
+ {0, NULL}
+};
static struct PyModuleDef cryptmodule = {
PyModuleDef_HEAD_INIT,
"_crypt",
NULL,
- -1,
+ 0,
crypt_methods,
- NULL,
+ _crypt_slots,
NULL,
NULL,
NULL
@@ -70,5 +73,5 @@
PyMODINIT_FUNC
PyInit__crypt(void)
{
- return PyModule_Create(&cryptmodule);
+ return PyModuleDef_Init(&cryptmodule);
}