Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 1 | #ifndef PyOpenSSL_PY3K_H_ |
| 2 | #define PyOpenSSL_PY3K_H_ |
| 3 | |
| 4 | #if (PY_VERSION_HEX >= 0x03000000) |
| 5 | |
| 6 | #define PY3 |
| 7 | |
Jean-Paul Calderone | 7382c83 | 2010-08-11 23:54:41 -0400 | [diff] [blame^] | 8 | #define PyOpenSSL_MODINIT(name) \ |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 9 | PyMODINIT_FUNC \ |
| 10 | PyInit_##name(void) |
| 11 | |
| 12 | #define PyText_FromString PyUnicode_FromString |
Jean-Paul Calderone | 2f6c66f | 2010-08-11 19:53:43 -0400 | [diff] [blame] | 13 | #define PyText_FromStringAndSize PyUnicode_FromStringAndSize |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 14 | |
Jean-Paul Calderone | 7382c83 | 2010-08-11 23:54:41 -0400 | [diff] [blame^] | 15 | #define PyOpenSSL_HEAD_INIT(type, size) PyVarObject_HEAD_INIT(type, size) |
| 16 | |
| 17 | #define PyOpenSSL_Integer_Check(o) PyLong_Check(o) |
| 18 | |
| 19 | #define PyOpenSSL_MODRETURN(module) { return module; } |
| 20 | |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 21 | #else /* (PY_VERSION_HEX >= 0x03000000) */ |
| 22 | |
Jean-Paul Calderone | 7382c83 | 2010-08-11 23:54:41 -0400 | [diff] [blame^] | 23 | #define PyOpenSSL_MODRETURN(module) { return; } |
| 24 | |
| 25 | #define PyOpenSSL_HEAD_INIT(type, size) PyObject_HEAD_INIT(NULL) 0, |
Jean-Paul Calderone | 4d0c321 | 2010-08-10 22:57:42 -0400 | [diff] [blame] | 26 | |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 27 | #define PyBytes_FromStringAndSize PyString_FromStringAndSize |
| 28 | |
Jean-Paul Calderone | 7382c83 | 2010-08-11 23:54:41 -0400 | [diff] [blame^] | 29 | #define PyOpenSSL_Integer_Check(o) (PyInt_Check(o) || PyLong_Check(o)) |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 30 | |
| 31 | #define PyBytes_Size PyString_Size |
| 32 | #define PyBytes_Check PyString_Check |
Jean-Paul Calderone | 2f6c66f | 2010-08-11 19:53:43 -0400 | [diff] [blame] | 33 | #define PyBytes_CheckExact PyString_CheckExact |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 34 | #define PyBytes_AsString PyString_AsString |
| 35 | #define PyBytes_FromStringAndSize PyString_FromStringAndSize |
| 36 | |
| 37 | #define PyText_FromString PyString_FromString |
Jean-Paul Calderone | 2f6c66f | 2010-08-11 19:53:43 -0400 | [diff] [blame] | 38 | #define PyText_FromStringAndSize PyString_FromStringAndSize |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 39 | |
Jean-Paul Calderone | 7382c83 | 2010-08-11 23:54:41 -0400 | [diff] [blame^] | 40 | #define PyOpenSSL_MODINIT(name) \ |
Jean-Paul Calderone | ef853eb | 2010-08-10 19:47:06 -0400 | [diff] [blame] | 41 | void \ |
| 42 | init##name(void) |
| 43 | |
| 44 | #endif /* (PY_VERSION_HEX >= 0x03000000) */ |
| 45 | |
| 46 | #endif /* PyOpenSSL_PY3K_H_ */ |
| 47 | |