1 diff -Nur mod_python-3.3.1.orig/src/connobject.c mod_python-3.3.1/src/connobject.c
2 --- mod_python-3.3.1.orig/src/connobject.c 2006-12-03 15:36:37.000000000 +1100
3 +++ mod_python-3.3.1/src/connobject.c 2010-10-20 19:33:28.853600297 +1100
5 return (PyObject *)self->hlo;
7 else if (strcmp(name, "_conn_rec") == 0) {
8 - return PyCObject_FromVoidPtr(self->conn, 0);
9 + return PyCapsule_New(self->conn, "MpConn", 0);
12 return PyMember_Get((char *)self->conn, conn_memberlist, name);
13 diff -Nur mod_python-3.3.1.orig/src/mod_python.c mod_python-3.3.1/src/mod_python.c
14 --- mod_python-3.3.1.orig/src/mod_python.c 2006-11-09 17:21:23.000000000 +1100
15 +++ mod_python-3.3.1/src/mod_python.c 2010-10-20 19:34:44.124630590 +1100
17 idata->istate = istate;
18 /* obcallback will be created on first use */
19 idata->obcallback = NULL;
20 - p = PyCObject_FromVoidPtr((void *) idata, NULL);
21 + p = PyCapsule_New((void *) idata, "MpInterpreterData", NULL);
22 PyDict_SetItemString(interpreters, (char *)name, p);
26 idata = save_interpreter(name, istate);
29 - idata = (interpreterdata *)PyCObject_AsVoidPtr(p);
30 + idata = (interpreterdata *)PyCapsule_GetPointer(p, "MpInterpreterData");
34 diff -Nur mod_python-3.3.1.orig/src/requestobject.c mod_python-3.3.1/src/requestobject.c
35 --- mod_python-3.3.1.orig/src/requestobject.c 2006-12-03 15:36:37.000000000 +1100
36 +++ mod_python-3.3.1/src/requestobject.c 2010-10-20 19:33:28.853600297 +1100
40 else if (strcmp(name, "_request_rec") == 0) {
41 - return PyCObject_FromVoidPtr(self->request_rec, 0);
42 + return PyCapsule_New(self->request_rec, "MpRequest", 0);
45 return PyMember_GetOne((char*)self->request_rec,
46 diff -Nur mod_python-3.3.1.orig/src/serverobject.c mod_python-3.3.1/src/serverobject.c
47 --- mod_python-3.3.1.orig/src/serverobject.c 2006-12-03 15:36:37.000000000 +1100
48 +++ mod_python-3.3.1/src/serverobject.c 2010-10-20 19:33:28.856933673 +1100
50 static PyObject *getsrv_recmbr(serverobject *self, void *name)
52 if (strcmp(name, "_server_rec") == 0) {
53 - return PyCObject_FromVoidPtr(self->server, 0);
54 + return PyCapsule_New(self->server, "MpServer", 0);
56 return PyMember_GetOne((char*)self->server,
57 find_memberdef(server_rec_mbrs, name));