我正在尝试在 Python 的 ssl 模块中实现 FIPS_mode 和 FIPS_mode_set 函数,因为默认情况下它们不存在。由于各种使用原因,Python 3.4的补丁已经提交并被拒绝。
使用该补丁作为灵感,我进行了一些修改并在ssl.py 中添加了以下代码:
try:
from _ssl import FIPS_mode, FIPS_mode_set
except ImportError:
pass
Run Code Online (Sandbox Code Playgroud)
_ssl.c 中的以下代码:
#define EXPORT_FIPSMODE_FUNCS
#ifdef EXPORT_FIPSMODE_FUNCS
static PyObject *
_ssl_FIPS_mode_impl(PyObject *module) {
return PyLong_FromLong(FIPS_mode());
}
static PyObject *
_ssl_FIPS_mode_set_impl(PyObject *module, int n) {
if (FIPS_mode_set(n) == 0) {
_setSSLError(ERR_error_string(ERR_get_error(), NULL) , 0, __FILE__, __LINE__);
return NULL;
}
Py_RETURN_NONE;
}
#endif //EXPORT_FIPSMODE_FUNCS
/* List of functions exported by this module. */
static PyMethodDef PySSL_methods[] = …Run Code Online (Sandbox Code Playgroud) 我为我的Python创建了扩展并创建了一个abcPython.dll.如何将此dll导入我的Python脚本?
当我尝试使用以下命令导入它时收到错误消息
>>>import abcPython
>>>Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named abcPython
>>>
Run Code Online (Sandbox Code Playgroud)
我手动创建了一个名为的系统环境变量PYTHONPATH,它存储了路径abcPython.dll,但仍然存在错误.
我怎样才能解决这个问题?