There's a key-value Apache table called "notes" that's part of request_rec structure.

It's used to communicate various stuff between modules.

We came across a need to be able to interface to it from Tcl. We want to stuff the authenticated username into Apache logs using the % {varname}n option of CustomLog formatting. To do that we'd stuff a "note" with the username and then invoke that note's name in the log.

There are various bits of code to interface to certain tables defined in the request_rec: headers_in, headers_out, and err_headers_out. Not currently used are subprocess_env and notes.

I propose adding a single new C command to Rivet/Tcl to provide interfaces to all these tables for getting, setting and inventorying their contents.

Something like

   table get tablename key
   table set tablename key value
   table unset tablename key
   table list tablename

I know there is some ability to support multiple entries with the same key. Right now I'm punting on that but I suppose it might need that. Perhaps

   table add tablename key value

Anybody have any thoughts, concerns, objections, accolades, remarks, hot buttons, flames, etc?

Really I only need an interface to notes but I figured subprocess_env could be a good one to be able to mess with as well, at least. Conceivably we could eventually simplify by using a more uniform interface at the C level as well. I've got it coded but haven't tested it yet.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to