[英]Accessing a pointer in an object's internal structure
我使用的是OpenSSL库的pyOpenSSL接口,但是缺少我需要的某些功能,出于各种原因,我不能或不想修改它以支持这些方法。
所以我想要实现的是检索OpenSSL对象指针。 之后,我将能够通过ctypes调用缺少的函数。 最好的方法是什么?
我已经发现我可以使用id()获取指向pyOpenSSL对象的指针。 我该如何访问ssl变量。
从pyOpenSSL / connections.h:
typedef struct {
PyObject_HEAD
SSL *ssl;
ssl_ContextObj *context;
PyObject *socket;
PyThreadState *tstate;
PyObject *app_data;
} ssl_ConnectionObj;
指针在Python中实际上没有多大意义,因为您无法对其进行任何操作。 它们只是一个整数。 如您所见,您可以使用id方法获取对象的地址。 但这就是地址。 它不是指针,因此您无法执行任何操作。
您还可以这样看:Python中的所有内容都是指针。 pyOpenSSL对象的变量是指针。 但这是指向pyOpenSSL对象的指针,而不是连接结构的指针。 您不太可能直接访问该结构。
因此,您必须告诉我们您想做什么。 也许还有另一种解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.