[mod_python] Interest in sendfile from mod_python?

Conrad Steenberg conrad at hep.caltech.edu
Sat Nov 9 14:17:02 EST 2002


Hi Mike

Have a look at sendfilemodule.c in
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/clarens/clarens/sendfile/

The patch for mod_python to get the filedescriptor to write to is below.

Cheers!

Conrad

On Fri, 2002-11-08 at 21:20, mike at mikebell.org wrote:
> On Fri, Nov 08, 2002 at 11:24:56AM -0800, Conrad Steenberg wrote:
> > So the question is, is anybody else interested in this? Either for me to
> > contribute the mod_python patch and sendfile package, or for integration
> > of these two parts into mod_pyhton itself?
> 
> I would absolutely be interested. Zero-copy from mod_python, yay. I have
> in fact thought about this in the past but never got around to doing
> anything about it.
--- src/requestobject.c.orig    Tue Jun  4 15:52:45 2002
+++ src/requestobject.c Tue Jun  4 11:15:49 2002
@@ -781,6 +781,27 @@

 }

+/**
+ ** request.get_fd(request self)
+ **
+ *      Returns the file descriptor to write output to
+ */
+
+static PyObject * req_fd(requestobject *self, PyObject *args)
+{
+    PyObject *fd;
+    long thefd;
+    thefd=(long)self->request_rec->connection->client->fd;
+    fd = PyInt_FromLong(thefd);
+    if (!fd) {
+       PyErr_SetString(PyExc_IOError, "Could not determine file descriptor.");
+       return NULL;
+    }
+
static PyMethodDef requestobjectmethods[] = {
     {"add_common_vars",      (PyCFunction) req_add_common_vars,      METH_VARA
     {"add_handler",          (PyCFunction) req_add_handler,          METH_VARA
@@ -797,6 +818,7 @@
     {"register_cleanup",     (PyCFunction) req_register_cleanup,     METH_VARA
     {"send_http_header",     (PyCFunction) req_send_http_header,     METH_VARA
     {"write",                (PyCFunction) req_write,                METH_VARA
+    {"get_fd",               (PyCFunction) req_fd,                   METH_VARA
     { NULL, NULL } /* sentinel */
 };






More information about the Mod_python mailing list