>Number:         1233
>Category:       apache-api
>Synopsis:       there is no way to keep per-connection per-module state
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          change-request
>Submitter-Id:   apache
>Arrival-Date:   Wed Oct 15 15:20:00 PDT 1997
>Last-Modified:
>Originator:     [EMAIL PROTECTED]
>Organization:
apache
>Release:        1.2.4
>Environment:
irrelevant
>Description:
I develop couple of modules for Apache and need to keep some module specific
information on per-connection basis. Well, because nature of some data is
per-connection. SSL client certificate is probably best example:-) This
placeholder can also be used as a cache. I for example cache UNIX credentials
in my getpwnam based authentication module (see 
http://fy.chalmers.se/~appro/apache/
if you get curious) on per-connection basis assuming reference to UNIX
accounting system being expensive...
 
>How-To-Repeat:

>Fix:
*** ./httpd.h.orig      Fri Aug 22 09:11:53 1997
--- ./httpd.h   Wed Sep 17 19:19:28 1997
***************
*** 588,593 ****
--- 588,595 ----
    int keepalive;              /* Are we using HTTP Keep-Alive? */
    int keptalive;              /* Did we use HTTP Keep-Alive? */
    int keepalives;             /* How many times have we used it? */
+ 
+   void *conn_config;          /* Notes on *this* connection */
  };
  
  /* Per-vhost config... */
*** ./http_main.c.orig  Fri Aug 15 19:29:50 1997
--- ./http_main.c       Thu Sep 25 09:51:54 1997
***************
*** 1631,1636 ****
--- 1631,1638 ----
      conn->remote_ip = pstrdup (conn->pool,
                               inet_ntoa(conn->remote_addr.sin_addr));
  
+     conn->conn_config = create_connection_config(conn->pool);
+ 
      return conn;
  }
  
%0
>Audit-Trail:
>Unformatted:

Reply via email to