[mod_python] Client certificate?

Rich Salz rsalz at zolera.com
Mon Feb 25 20:52:08 EST 2002


I am sure there are other approaches, but here is what we did.

We were already using SWIG (www.swig.org).  I added ONE function to the
the request object, get_swig_handle.  This returns a SWIG-compatible
handle to the real apache request object:
+static PyObject * req_get_swig_handle(requestobject *self, PyObject
*args)
+{
+    char ptrbuff[128];
+    SWIG_MakePtr(ptrbuff, (char *)self->request_rec, "_request_rec_p");
+    return Py_BuildValue("s", ptrbuff);
+}

Then it's pretty easy for us to write SWIG-wrapped functions that get
any mod_ssl data we want:

int
UsingSSL(request_rec* r)
{
    return ap_ctx_get(r->connection->client->ctx, "ssl") != NULL;
}


I can send more details if necessary ...
-- 
Zolera Systems, Securing web services (XML, SOAP, Signatures,
Encryption)
http://www.zolera.com



More information about the Mod_python mailing list