guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What replaces scm_register_module_xxx (Doc update?)


From: rm
Subject: Re: What replaces scm_register_module_xxx (Doc update?)
Date: Fri, 9 Aug 2002 17:36:45 +0200
User-agent: Mutt/1.3.24i

On Thu, Aug 08, 2002 at 10:28:08PM +0100, Neil Jerram wrote:
> 
> Right now I'm afraid I don't follow the structure of your
> extension(s), but it certainly sounds to me like you ought to be able
> to achieve what you are trying to.

Well, my extension isn't -- it's an application (Apache in this special
case, but i think the problem is a general one).

> Could you describe the structure in more detail, in terms of code
> modules (C and Scheme), libraries, how things get loaded and
> configured, etc.?

Apache (the application) loads mod_guile (an apache module). mod_guile
registers some callback functions with apache. Apache then calls theses
functions whenever it thinks that a certain part of a request (authrntication,
authorization, URL-rewrite, content delivery etc.) should be handled by
guile (as can be customized in apaches configuration file). mod_guile then
calls the function that is supposed to handle this part of a request
(again, the module and name of the function can be specified in the server
configuration files). To ba able to do something usefull, these functions
need to be able to access the data structures of the server/request.
Each hander function is passed a request-record structure (a SMOB arround
apaches 'real' datastructure) as a parameter - this structure has fields
that point to the server and connection record structures as well. 
Since all of these structures have quite a lot of fields we end up with
a lot of functions (getters/setters). All of these functions are defined
in mod_guile but of course should go into separate guile modules. Right
now (as you can see, i got it working ;-) the following modules are 
defined: (apache request), (apache server), (apache connection),
(apache tables), (mod-guile utils).


 Ralf Mattes



reply via email to

[Prev in Thread] Current Thread [Next in Thread]