httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From wr...@apache.org
Subject cvs commit: httpd-2.0/modules/proxy mod_proxy.c
Date Wed, 17 Jan 2001 15:52:13 GMT
wrowe       01/01/17 07:52:13

  Modified:    include  http_config.h
               modules/aaa mod_access.c mod_auth.c mod_auth_anon.c
                        mod_auth_db.c mod_auth_dbm.c mod_auth_digest.c
               modules/cache mod_file_cache.c
               modules/dav/fs mod_dav_fs.c
               modules/dav/main liveprop.c mod_dav.c providers.c
               modules/echo mod_echo.c
               modules/experimental mod_cache.c mod_charset_lite.c
                        mod_disk_cache.c mod_example.c
                        mod_generic_hook_export.c mod_generic_hook_import.c
               modules/filters mod_include.c
               modules/generators mod_asis.c mod_autoindex.c mod_cgi.c
                        mod_cgid.c mod_info.c mod_status.c mod_suexec.c
               modules/http http_core.c mod_mime.c
               modules/loggers mod_log_config.c
               modules/mappers mod_actions.c mod_alias.c mod_dir.c
                        mod_imap.c mod_negotiation.c mod_rewrite.c
                        mod_speling.c mod_userdir.c mod_vhost_alias.c
               modules/metadata mod_cern_meta.c mod_env.c mod_expires.c
                        mod_headers.c mod_mime_magic.c mod_setenvif.c
                        mod_unique_id.c mod_usertrack.c
               modules/proxy mod_proxy.c
  Log:
    Provide apr_pool_t arg to register_hooks, since anything they do in that
    step -must- be done with a pool that will not outlive the cmd pool, from
    which they may have been dynamically loaded.
  
  Revision  Changes    Path
  1.55      +2 -1      httpd-2.0/include/http_config.h
  
  Index: http_config.h
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/include/http_config.h,v
  retrieving revision 1.54
  retrieving revision 1.55
  diff -u -r1.54 -r1.55
  --- http_config.h	2001/01/08 23:54:41	1.54
  +++ http_config.h	2001/01/17 15:51:59	1.55
  @@ -396,9 +396,10 @@
        *  In this function, modules should call the ap_hook_*() functions to
        *  register an interest in a specific step in processing the current
        *  request.
  +     *  @param p the pool to use for all allocations
        *  @deffunc void register_hooks(void)
        */
  -    void (*register_hooks) (void);
  +    void (*register_hooks) (apr_pool_t *p);
   };
   
   /* Initializer for the first few module slots, which are only
  
  
  
  1.24      +1 -1      httpd-2.0/modules/aaa/mod_access.c
  
  Index: mod_access.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_access.c,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- mod_access.c	2001/01/07 19:55:55	1.23
  +++ mod_access.c	2001/01/17 15:52:00	1.24
  @@ -406,7 +406,7 @@
       return ret;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_access_checker(check_dir_access,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.26      +1 -1      httpd-2.0/modules/aaa/mod_auth.c
  
  Index: mod_auth.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_auth.c,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- mod_auth.c	2001/01/07 19:55:55	1.25
  +++ mod_auth.c	2001/01/17 15:52:00	1.26
  @@ -318,7 +318,7 @@
       return HTTP_UNAUTHORIZED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_check_user_id(authenticate_basic_user,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_auth_checker(check_user_access,NULL,NULL,AP_HOOK_MIDDLE);
  
  
  
  1.21      +2 -1      httpd-2.0/modules/aaa/mod_auth_anon.c
  
  Index: mod_auth_anon.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_auth_anon.c,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- mod_auth_anon.c	2001/01/08 23:54:42	1.20
  +++ mod_auth_anon.c	2001/01/17 15:52:00	1.21
  @@ -294,7 +294,8 @@
   #endif
       return DECLINED;
   }
  -static void register_hooks(void)
  +
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_check_user_id(anon_authenticate_basic_user,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_auth_checker(check_anon_access,NULL,NULL,AP_HOOK_MIDDLE);
  
  
  
  1.22      +1 -1      httpd-2.0/modules/aaa/mod_auth_db.c
  
  Index: mod_auth_db.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_auth_db.c,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- mod_auth_db.c	2001/01/08 23:54:43	1.21
  +++ mod_auth_db.c	2001/01/17 15:52:01	1.22
  @@ -395,7 +395,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_check_user_id(db_authenticate_basic_user,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_auth_checker(db_check_auth,NULL,NULL,AP_HOOK_MIDDLE);
  
  
  
  1.24      +1 -1      httpd-2.0/modules/aaa/mod_auth_dbm.c
  
  Index: mod_auth_dbm.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_auth_dbm.c,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- mod_auth_dbm.c	2001/01/08 23:54:44	1.23
  +++ mod_auth_dbm.c	2001/01/17 15:52:01	1.24
  @@ -335,7 +335,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_check_user_id(dbm_authenticate_basic_user, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_auth_checker(dbm_check_auth, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.30      +1 -1      httpd-2.0/modules/aaa/mod_auth_digest.c
  
  Index: mod_auth_digest.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/aaa/mod_auth_digest.c,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- mod_auth_digest.c	2001/01/09 05:03:42	1.29
  +++ mod_auth_digest.c	2001/01/17 15:52:01	1.30
  @@ -2049,7 +2049,7 @@
   }
   
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       static const char * const cfgPost[]={ "http_core.c", NULL };
       static const char * const parsePre[]={ "mod_proxy.c", NULL };
  
  
  
  1.40      +2 -1      httpd-2.0/modules/cache/mod_file_cache.c
  
  Index: mod_file_cache.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/cache/mod_file_cache.c,v
  retrieving revision 1.39
  retrieving revision 1.40
  diff -u -r1.39 -r1.40
  --- mod_file_cache.c	2001/01/11 20:14:04	1.39
  +++ mod_file_cache.c	2001/01/17 15:52:02	1.40
  @@ -167,6 +167,7 @@
        * support.
        */
       HANDLE hFile;
  +    /* XXX: This is wrong for unicode FS ... and it doesn't belong in httpd */
       hFile = CreateFile(filename,          /* pointer to name of the file */
                          GENERIC_READ,      /* access (read-write) mode */
                          FILE_SHARE_READ,   /* share mode */
  @@ -498,7 +499,7 @@
       {NULL}
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(file_cache_handler, NULL, NULL, AP_HOOK_LAST);
       ap_hook_post_config(file_cache_post_config, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.12      +2 -2      httpd-2.0/modules/dav/fs/mod_dav_fs.c
  
  Index: mod_dav_fs.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/dav/fs/mod_dav_fs.c,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- mod_dav_fs.c	2001/01/08 23:54:49	1.11
  +++ mod_dav_fs.c	2001/01/17 15:52:03	1.12
  @@ -119,7 +119,7 @@
       { NULL }
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_gather_propsets(dav_fs_gather_propsets, NULL, NULL,
                               AP_HOOK_MIDDLE);
  @@ -127,7 +127,7 @@
       ap_hook_insert_all_liveprops(dav_fs_insert_all_liveprops, NULL, NULL,
                                    AP_HOOK_MIDDLE);
   
  -    dav_fs_register(NULL /* ### pconf */);
  +    dav_fs_register(p);
   }
   
   module AP_MODULE_DECLARE_DATA dav_fs_module =
  
  
  
  1.7       +0 -6      httpd-2.0/modules/dav/main/liveprop.c
  
  Index: liveprop.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/dav/main/liveprop.c,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- liveprop.c	2000/11/23 10:37:00	1.6
  +++ liveprop.c	2001/01/17 15:52:04	1.7
  @@ -56,10 +56,7 @@
   #include "apr_hash.h"
   #include "apr_errno.h"
   #include "apr_strings.h"
  -
  -#include "ap_hooks.h"   /* ### for ap_global_hook_pool */
   #include "util_xml.h"   /* for ap_text_header */
  -
   #include "mod_dav.h"
   
   
  @@ -77,9 +74,6 @@
   static void dav_register_liveprop_namespace(apr_pool_t *p, const char *uri)
   {
       int value;
  -
  -    /* ### ignore the pool; it is NULL right now */
  -    p = ap_global_hook_pool;
   
       if (dav_liveprop_uris == NULL) {
           dav_liveprop_uris = apr_make_hash(p);
  
  
  
  1.36      +2 -3      httpd-2.0/modules/dav/main/mod_dav.c
  
  Index: mod_dav.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/dav/main/mod_dav.c,v
  retrieving revision 1.35
  retrieving revision 1.36
  diff -u -r1.35 -r1.36
  --- mod_dav.c	2001/01/12 12:18:09	1.35
  +++ mod_dav.c	2001/01/17 15:52:04	1.36
  @@ -4005,7 +4005,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(dav_handler, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_post_config(dav_init_handler, NULL, NULL, AP_HOOK_MIDDLE);
  @@ -4015,8 +4015,7 @@
       ap_hook_insert_all_liveprops(dav_core_insert_all_liveprops,
                                    NULL, NULL, AP_HOOK_MIDDLE);
   
  -    /* ### damn. need a pool. */
  -    dav_core_register_uris(NULL);
  +    dav_core_register_uris(p);
   }
   
   /*---------------------------------------------------------------------------
  
  
  
  1.5       +0 -6      httpd-2.0/modules/dav/main/providers.c
  
  Index: providers.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/dav/main/providers.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- providers.c	2000/10/16 02:58:15	1.4
  +++ providers.c	2001/01/17 15:52:04	1.5
  @@ -54,9 +54,6 @@
   
   #include "apr_pools.h"
   #include "apr_hash.h"
  -
  -#include "ap_hooks.h"   /* ### for ap_global_hook_pool */
  -
   #include "mod_dav.h"
   
   
  @@ -72,9 +69,6 @@
   DAV_DECLARE(void) dav_register_provider(apr_pool_t *p, const char *name,
                                           const dav_provider *provider)
   {
  -    /* ### ignore the pool; it is NULL right now */
  -    p = ap_global_hook_pool;
  -
       if (dav_repos_providers == NULL) {
           dav_repos_providers = apr_make_hash(p);
           apr_register_cleanup(p, NULL, dav_cleanup_providers, apr_null_cleanup);
  
  
  
  1.30      +1 -1      httpd-2.0/modules/echo/mod_echo.c
  
  Index: mod_echo.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/echo/mod_echo.c,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- mod_echo.c	2001/01/12 01:08:19	1.29
  +++ mod_echo.c	2001/01/17 15:52:05	1.30
  @@ -119,7 +119,7 @@
       { NULL }
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_process_connection(process_echo_connection, NULL, NULL,
                                  AP_HOOK_MIDDLE);
  
  
  
  1.2       +1 -1      httpd-2.0/modules/experimental/mod_cache.c
  
  Index: mod_cache.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_cache.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- mod_cache.c	2000/11/17 18:33:33	1.1
  +++ mod_cache.c	2001/01/17 15:52:05	1.2
  @@ -107,7 +107,7 @@
       return APR_SUCCESS;	
   }
   
  -static void cache_register_hook(void)
  +static void cache_register_hook(apr_pool_t *p)
   {
       ap_register_output_filter("CACHE", cache_filter, AP_FTYPE_HTTP_HEADER);
   }
  
  
  
  1.37      +1 -1      httpd-2.0/modules/experimental/mod_charset_lite.c
  
  Index: mod_charset_lite.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_charset_lite.c,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- mod_charset_lite.c	2001/01/08 23:07:04	1.36
  +++ mod_charset_lite.c	2001/01/17 15:52:05	1.37
  @@ -1119,7 +1119,7 @@
       {NULL}
   };
   
  -static void charset_register_hooks(void)
  +static void charset_register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(find_code_page, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_insert_filter(xlate_insert_filter, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.3       +1 -1      httpd-2.0/modules/experimental/mod_disk_cache.c
  
  Index: mod_disk_cache.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_disk_cache.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- mod_disk_cache.c	2001/01/12 01:08:20	1.2
  +++ mod_disk_cache.c	2001/01/17 15:52:05	1.3
  @@ -153,7 +153,7 @@
       return OK;	
   }
   
  -static void disk_cache_register_hook(void)
  +static void disk_cache_register_hook(apr_pool_t *p)
   {
       ap_hook_store_cache(disk_cache, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_serve_cache(disk_serve, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.16      +1 -1      httpd-2.0/modules/experimental/mod_example.c
  
  Index: mod_example.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_example.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- mod_example.c	2000/11/28 18:52:24	1.15
  +++ mod_example.c	2001/01/17 15:52:05	1.16
  @@ -1090,7 +1090,7 @@
    * The actual delivery of content to the browser [9] is not handled by
    * a hook; see the handler declarations below.
    */
  -static void example_register_hooks(void)
  +static void example_register_hooks(apr_pool_t *p)
   {
       /* module initializer */
       ap_hook_post_config(example_init,
  
  
  
  1.3       +1 -1      httpd-2.0/modules/experimental/mod_generic_hook_export.c
  
  Index: mod_generic_hook_export.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_generic_hook_export.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- mod_generic_hook_export.c	2001/01/07 19:55:56	1.2
  +++ mod_generic_hook_export.c	2001/01/17 15:52:05	1.3
  @@ -65,7 +65,7 @@
       return ap_run_generic_hook_test(r->the_request);
   }
   
  -static void ExportRegisterHooks(void)
  +static void ExportRegisterHooks(apr_pool_t *p)
   {
       ap_hook_log_transaction(ExportLogTransaction,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.3       +1 -1      httpd-2.0/modules/experimental/mod_generic_hook_import.c
  
  Index: mod_generic_hook_import.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/experimental/mod_generic_hook_import.c,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- mod_generic_hook_import.c	2001/01/07 19:55:56	1.2
  +++ mod_generic_hook_import.c	2001/01/17 15:52:05	1.3
  @@ -65,7 +65,7 @@
       return OK;
   }
   
  -static void ImportRegisterHooks(void)
  +static void ImportRegisterHooks(apr_pool_t *p)
   {
       AP_HOOK_GENERIC(generic_hook_test,ImportGenericHookTestHook,NULL,NULL,
   		    AP_HOOK_MIDDLE);
  
  
  
  1.86      +1 -1      httpd-2.0/modules/filters/mod_include.c
  
  Index: mod_include.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/filters/mod_include.c,v
  retrieving revision 1.85
  retrieving revision 1.86
  diff -u -r1.85 -r1.86
  --- mod_include.c	2001/01/09 05:12:40	1.85
  +++ mod_include.c	2001/01/17 15:52:06	1.86
  @@ -3065,7 +3065,7 @@
       {NULL}
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_post_config(include_post_config, NULL, NULL, AP_HOOK_REALLY_FIRST);
       ap_register_output_filter("INCLUDES", includes_filter, AP_FTYPE_CONTENT);
  
  
  
  1.29      +1 -1      httpd-2.0/modules/generators/mod_asis.c
  
  Index: mod_asis.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_asis.c,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- mod_asis.c	2001/01/08 23:54:51	1.28
  +++ mod_asis.c	2001/01/17 15:52:07	1.29
  @@ -124,7 +124,7 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(asis_handler,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.52      +1 -1      httpd-2.0/modules/generators/mod_autoindex.c
  
  Index: mod_autoindex.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_autoindex.c,v
  retrieving revision 1.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- mod_autoindex.c	2001/01/08 23:54:52	1.51
  +++ mod_autoindex.c	2001/01/17 15:52:07	1.52
  @@ -1698,7 +1698,7 @@
       }
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(handle_autoindex,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.78      +1 -1      httpd-2.0/modules/generators/mod_cgi.c
  
  Index: mod_cgi.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_cgi.c,v
  retrieving revision 1.77
  retrieving revision 1.78
  diff -u -r1.77 -r1.78
  --- mod_cgi.c	2001/01/08 23:54:52	1.77
  +++ mod_cgi.c	2001/01/17 15:52:07	1.78
  @@ -720,7 +720,7 @@
       return OK;			/* NOT r->status, even if it has changed. */
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(cgi_handler, NULL, NULL, AP_HOOK_MIDDLE);
   }
  
  
  
  1.60      +1 -1      httpd-2.0/modules/generators/mod_cgid.c
  
  Index: mod_cgid.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_cgid.c,v
  retrieving revision 1.59
  retrieving revision 1.60
  diff -u -r1.59 -r1.60
  --- mod_cgid.c	2001/01/08 23:54:53	1.59
  +++ mod_cgid.c	2001/01/17 15:52:07	1.60
  @@ -931,7 +931,7 @@
       return OK; /* NOT r->status, even if it has changed. */ 
   } 
   
  -static void register_hook(void)
  +static void register_hook(apr_pool_t *p)
   {
       ap_hook_post_config(cgid_init, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_handler(cgid_handler, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.22      +1 -1      httpd-2.0/modules/generators/mod_info.c
  
  Index: mod_info.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_info.c,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- mod_info.c	2001/01/15 20:23:12	1.21
  +++ mod_info.c	2001/01/17 15:52:08	1.22
  @@ -466,7 +466,7 @@
       {NULL}
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(display_info, NULL, NULL, AP_HOOK_MIDDLE);
   }
  
  
  
  1.16      +1 -1      httpd-2.0/modules/generators/mod_status.c
  
  Index: mod_status.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_status.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- mod_status.c	2001/01/08 23:54:53	1.15
  +++ mod_status.c	2001/01/17 15:52:08	1.16
  @@ -124,7 +124,7 @@
       return 0;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(status_handler, NULL, NULL, AP_HOOK_MIDDLE);
   }
  
  
  
  1.5       +1 -1      httpd-2.0/modules/generators/mod_suexec.c
  
  Index: mod_suexec.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/generators/mod_suexec.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- mod_suexec.c	2001/01/12 01:08:21	1.4
  +++ mod_suexec.c	2001/01/17 15:52:08	1.5
  @@ -141,7 +141,7 @@
       { NULL }
   };
   
  -static void suexec_hooks(void)
  +static void suexec_hooks(apr_pool_t *p)
   {
       ap_hook_get_suexec_identity(get_suexec_id_doer,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.237     +2 -1      httpd-2.0/modules/http/http_core.c
  
  Index: http_core.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/http/http_core.c,v
  retrieving revision 1.236
  retrieving revision 1.237
  diff -u -r1.236 -r1.237
  --- http_core.c	2001/01/08 23:54:57	1.236
  +++ http_core.c	2001/01/17 15:52:09	1.237
  @@ -1014,6 +1014,7 @@
       }        
   
       /* Need to peek into the file figure out what it really is... */
  +    /* This is wrong for Unicode FS ... should move to APR */
       hFile = CreateFile(r->filename, GENERIC_READ, FILE_SHARE_READ, NULL,
                          OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
       if (hFile == INVALID_HANDLE_VALUE) {
  @@ -3542,7 +3543,7 @@
       }
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_pre_config(core_pre_config, NULL, NULL, AP_HOOK_REALLY_FIRST);
       ap_hook_post_config(core_post_config,NULL,NULL,AP_HOOK_REALLY_FIRST);
  
  
  
  1.33      +1 -1      httpd-2.0/modules/http/mod_mime.c
  
  Index: mod_mime.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/http/mod_mime.c,v
  retrieving revision 1.32
  retrieving revision 1.33
  diff -u -r1.32 -r1.33
  --- mod_mime.c	2001/01/07 19:55:57	1.32
  +++ mod_mime.c	2001/01/17 15:52:09	1.33
  @@ -840,7 +840,7 @@
       apr_table_do(filter_chain, r, conf->filter_names, r->content_type, NULL);
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_type_checker(find_ct,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_post_config(mime_post_config,NULL,NULL,AP_HOOK_MIDDLE);
  
  
  
  1.44      +1 -1      httpd-2.0/modules/loggers/mod_log_config.c
  
  Index: mod_log_config.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/loggers/mod_log_config.c,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- mod_log_config.c	2001/01/07 19:55:57	1.43
  +++ mod_log_config.c	2001/01/17 15:52:10	1.44
  @@ -1241,7 +1241,7 @@
   #endif
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_child_init(init_child,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_open_logs(init_config_log,NULL,NULL,AP_HOOK_MIDDLE);
  
  
  
  1.18      +1 -1      httpd-2.0/modules/mappers/mod_actions.c
  
  Index: mod_actions.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_actions.c,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- mod_actions.c	2001/01/08 23:54:58	1.17
  +++ mod_actions.c	2001/01/17 15:52:10	1.18
  @@ -209,7 +209,7 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(action_handler,NULL,NULL,AP_HOOK_LAST);
   }
  
  
  
  1.21      +1 -1      httpd-2.0/modules/mappers/mod_alias.c
  
  Index: mod_alias.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_alias.c,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- mod_alias.c	2001/01/07 19:55:57	1.20
  +++ mod_alias.c	2001/01/17 15:52:10	1.21
  @@ -420,7 +420,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       static const char * const aszPre[]={ "mod_userdir.c",NULL };
   
  
  
  
  1.25      +1 -2      httpd-2.0/modules/mappers/mod_dir.c
  
  Index: mod_dir.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_dir.c,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- mod_dir.c	2001/01/08 23:54:59	1.24
  +++ mod_dir.c	2001/01/17 15:52:10	1.25
  @@ -221,8 +221,7 @@
       return DECLINED;
   }
   
  -
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       static const char * const aszSucc[]={ "mod_autoindex.c", NULL };
   
  
  
  
  1.26      +1 -1      httpd-2.0/modules/mappers/mod_imap.c
  
  Index: mod_imap.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_imap.c,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- mod_imap.c	2001/01/08 23:54:59	1.25
  +++ mod_imap.c	2001/01/17 15:52:10	1.26
  @@ -913,7 +913,7 @@
       return HTTP_INTERNAL_SERVER_ERROR;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_handler(imap_handler,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.47      +1 -1      httpd-2.0/modules/mappers/mod_negotiation.c
  
  Index: mod_negotiation.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_negotiation.c,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- mod_negotiation.c	2001/01/08 23:55:00	1.46
  +++ mod_negotiation.c	2001/01/17 15:52:10	1.47
  @@ -2745,7 +2745,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(fix_encoding,NULL,NULL,AP_HOOK_MIDDLE);
       ap_hook_type_checker(handle_multi,NULL,NULL,AP_HOOK_FIRST);
  
  
  
  1.59      +50 -47    httpd-2.0/modules/mappers/mod_rewrite.c
  
  Index: mod_rewrite.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_rewrite.c,v
  retrieving revision 1.58
  retrieving revision 1.59
  diff -u -r1.58 -r1.59
  --- mod_rewrite.c	2001/01/08 23:55:00	1.58
  +++ mod_rewrite.c	2001/01/17 15:52:10	1.59
  @@ -184,54 +184,9 @@
        * MODULE-DEFINITION-END
        */
   
  -    /* the apr_table_t of commands we provide */
  -static const command_rec command_table[] = {
  -    AP_INIT_FLAG(    "RewriteEngine",   cmd_rewriteengine,  NULL, OR_FILEINFO,
  -                     "On or Off to enable or disable (default) the whole "
  -                     "rewriting engine"),
  -    AP_INIT_ITERATE( "RewriteOptions",  cmd_rewriteoptions,  NULL, OR_FILEINFO,
  -                     "List of option strings to set"),
  -    AP_INIT_TAKE1(   "RewriteBase",     cmd_rewritebase,     NULL, OR_FILEINFO, 
  -                     "the base URL of the per-directory context"),
  -    AP_INIT_RAW_ARGS("RewriteCond",     cmd_rewritecond,     NULL, OR_FILEINFO,
  -                     "an input string and a to be applied regexp-pattern"),
  -    AP_INIT_RAW_ARGS("RewriteRule",     cmd_rewriterule,     NULL, OR_FILEINFO,
  -                     "an URL-applied regexp-pattern and a substitution URL"),
  -    AP_INIT_TAKE2(   "RewriteMap",      cmd_rewritemap,      NULL, RSRC_CONF,
  -                     "a mapname and a filename"),
  -    AP_INIT_TAKE1(   "RewriteLock",     cmd_rewritelock,     NULL, RSRC_CONF,
  -                     "the filename of a lockfile used for inter-process "
  -                     "synchronization"),
  -    AP_INIT_TAKE1(   "RewriteLog",      cmd_rewritelog,      NULL, RSRC_CONF,
  -                     "the filename of the rewriting logfile"),
  -    AP_INIT_TAKE1(   "RewriteLogLevel", cmd_rewriteloglevel, NULL, RSRC_CONF,
  -                     "the level of the rewriting logfile verbosity "
  -                     "(0=none, 1=std, .., 9=max)"),
  -    { NULL }
  -};
  -
  -static void register_hooks(void)
  -{
  -    ap_hook_handler(handler_redirect, NULL, NULL, AP_HOOK_MIDDLE);
  -    ap_hook_post_config(init_module,NULL,NULL,AP_HOOK_MIDDLE);
  -    ap_hook_child_init(init_child,NULL,NULL,AP_HOOK_MIDDLE);
  +    /* the module (predeclaration) */
  +module AP_MODULE_DECLARE_DATA rewrite_module;
   
  -    ap_hook_fixups(hook_fixup,NULL,NULL,AP_HOOK_FIRST);
  -    ap_hook_translate_name(hook_uri2file,NULL,NULL,AP_HOOK_FIRST);
  -    ap_hook_type_checker(hook_mimetype,NULL,NULL,AP_HOOK_MIDDLE);
  -}
  -
  -    /* the main config structure */
  -module AP_MODULE_DECLARE_DATA rewrite_module = {
  -   STANDARD20_MODULE_STUFF,
  -   config_perdir_create,        /* create per-dir    config structures */
  -   config_perdir_merge,         /* merge  per-dir    config structures */
  -   config_server_create,        /* create per-server config structures */
  -   config_server_merge,         /* merge  per-server config structures */
  -   command_table,               /* apr_table_t of config file commands  */
  -   register_hooks               /* register hooks                      */
  -};
  -
       /* the cache */
   static cache *cachep;
   
  @@ -4144,5 +4099,53 @@
       ExitThread(TSR_THREAD, 0);
   }
   #endif
  +
  +    /* the apr_table_t of commands we provide */
  +static const command_rec command_table[] = {
  +    AP_INIT_FLAG(    "RewriteEngine",   cmd_rewriteengine,  NULL, OR_FILEINFO,
  +                     "On or Off to enable or disable (default) the whole "
  +                     "rewriting engine"),
  +    AP_INIT_ITERATE( "RewriteOptions",  cmd_rewriteoptions,  NULL, OR_FILEINFO,
  +                     "List of option strings to set"),
  +    AP_INIT_TAKE1(   "RewriteBase",     cmd_rewritebase,     NULL, OR_FILEINFO, 
  +                     "the base URL of the per-directory context"),
  +    AP_INIT_RAW_ARGS("RewriteCond",     cmd_rewritecond,     NULL, OR_FILEINFO,
  +                     "an input string and a to be applied regexp-pattern"),
  +    AP_INIT_RAW_ARGS("RewriteRule",     cmd_rewriterule,     NULL, OR_FILEINFO,
  +                     "an URL-applied regexp-pattern and a substitution URL"),
  +    AP_INIT_TAKE2(   "RewriteMap",      cmd_rewritemap,      NULL, RSRC_CONF,
  +                     "a mapname and a filename"),
  +    AP_INIT_TAKE1(   "RewriteLock",     cmd_rewritelock,     NULL, RSRC_CONF,
  +                     "the filename of a lockfile used for inter-process "
  +                     "synchronization"),
  +    AP_INIT_TAKE1(   "RewriteLog",      cmd_rewritelog,      NULL, RSRC_CONF,
  +                     "the filename of the rewriting logfile"),
  +    AP_INIT_TAKE1(   "RewriteLogLevel", cmd_rewriteloglevel, NULL, RSRC_CONF,
  +                     "the level of the rewriting logfile verbosity "
  +                     "(0=none, 1=std, .., 9=max)"),
  +    { NULL }
  +};
  +
  +static void register_hooks(apr_pool_t *p)
  +{
  +    ap_hook_handler(handler_redirect, NULL, NULL, AP_HOOK_MIDDLE);
  +    ap_hook_post_config(init_module,NULL,NULL,AP_HOOK_MIDDLE);
  +    ap_hook_child_init(init_child,NULL,NULL,AP_HOOK_MIDDLE);
  +
  +    ap_hook_fixups(hook_fixup,NULL,NULL,AP_HOOK_FIRST);
  +    ap_hook_translate_name(hook_uri2file,NULL,NULL,AP_HOOK_FIRST);
  +    ap_hook_type_checker(hook_mimetype,NULL,NULL,AP_HOOK_MIDDLE);
  +}
  +
  +    /* the main config structure */
  +module AP_MODULE_DECLARE_DATA rewrite_module = {
  +   STANDARD20_MODULE_STUFF,
  +   config_perdir_create,        /* create per-dir    config structures */
  +   config_perdir_merge,         /* merge  per-dir    config structures */
  +   config_server_create,        /* create per-server config structures */
  +   config_server_merge,         /* merge  per-server config structures */
  +   command_table,               /* apr_table_t of config file commands  */
  +   register_hooks               /* register hooks                      */
  +};
    
   /*EOF*/
  
  
  
  1.25      +1 -1      httpd-2.0/modules/mappers/mod_speling.c
  
  Index: mod_speling.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_speling.c,v
  retrieving revision 1.24
  retrieving revision 1.25
  diff -u -r1.24 -r1.25
  --- mod_speling.c	2001/01/08 23:55:01	1.24
  +++ mod_speling.c	2001/01/17 15:52:10	1.25
  @@ -551,7 +551,7 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(check_speling,NULL,NULL,AP_HOOK_LAST);
   }
  
  
  
  1.29      +1 -1      httpd-2.0/modules/mappers/mod_userdir.c
  
  Index: mod_userdir.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_userdir.c,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- mod_userdir.c	2001/01/07 19:55:58	1.28
  +++ mod_userdir.c	2001/01/17 15:52:10	1.29
  @@ -384,7 +384,7 @@
   }
   #endif /* HAVE_UNIX_SUEXEC */
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       static const char * const aszSucc[]={ "mod_alias.c",NULL };
   
  
  
  
  1.20      +1 -1      httpd-2.0/modules/mappers/mod_vhost_alias.c
  
  Index: mod_vhost_alias.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/mappers/mod_vhost_alias.c,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- mod_vhost_alias.c	2001/01/09 04:36:39	1.19
  +++ mod_vhost_alias.c	2001/01/17 15:52:10	1.20
  @@ -469,7 +469,7 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_translate_name(mva_translate, NULL, NULL, AP_HOOK_MIDDLE);
   }
  
  
  
  1.27      +3 -1      httpd-2.0/modules/metadata/mod_cern_meta.c
  
  Index: mod_cern_meta.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_cern_meta.c,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- mod_cern_meta.c	2001/01/08 23:55:05	1.26
  +++ mod_cern_meta.c	2001/01/17 15:52:11	1.27
  @@ -385,10 +385,12 @@
   
       return rv;
   }
  -static void register_hooks(void)
  +
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(add_cern_meta_data,NULL,NULL,AP_HOOK_MIDDLE);
   }
  +
   module AP_MODULE_DECLARE_DATA cern_meta_module =
   {
       STANDARD20_MODULE_STUFF,
  
  
  
  1.18      +1 -2      httpd-2.0/modules/metadata/mod_env.c
  
  Index: mod_env.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_env.c,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- mod_env.c	2001/01/07 19:55:58	1.17
  +++ mod_env.c	2001/01/17 15:52:11	1.18
  @@ -254,11 +254,10 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(fixup_env_module,NULL,NULL,AP_HOOK_MIDDLE);
   }
  -
   
   module AP_MODULE_DECLARE_DATA env_module =
   {
  
  
  
  1.26      +1 -1      httpd-2.0/modules/metadata/mod_expires.c
  
  Index: mod_expires.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_expires.c,v
  retrieving revision 1.25
  retrieving revision 1.26
  diff -u -r1.25 -r1.26
  --- mod_expires.c	2001/01/08 23:55:06	1.25
  +++ mod_expires.c	2001/01/17 15:52:11	1.26
  @@ -503,7 +503,7 @@
       return OK;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(add_expires,NULL,NULL,AP_HOOK_MIDDLE);
   }
  
  
  
  1.16      +3 -1      httpd-2.0/modules/metadata/mod_headers.c
  
  Index: mod_headers.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_headers.c,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- mod_headers.c	2001/01/08 23:55:06	1.15
  +++ mod_headers.c	2001/01/17 15:52:11	1.16
  @@ -250,10 +250,12 @@
   
       return DECLINED;
   }
  -static void register_hooks(void)
  +
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(fixup_headers,NULL,NULL,AP_HOOK_MIDDLE);
   } 
  +
   module AP_MODULE_DECLARE_DATA headers_module =
   {
       STANDARD20_MODULE_STUFF,
  
  
  
  1.35      +1 -1      httpd-2.0/modules/metadata/mod_mime_magic.c
  
  Index: mod_mime_magic.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_mime_magic.c,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- mod_mime_magic.c	2001/01/12 01:08:22	1.34
  +++ mod_mime_magic.c	2001/01/17 15:52:11	1.35
  @@ -2463,7 +2463,7 @@
       return magic_rsl_to_request(r);
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       static const char * const aszPre[]={ "mod_mime.c", NULL };
   
  
  
  
  1.21      +1 -1      httpd-2.0/modules/metadata/mod_setenvif.c
  
  Index: mod_setenvif.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_setenvif.c,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- mod_setenvif.c	2001/01/07 19:55:58	1.20
  +++ mod_setenvif.c	2001/01/17 15:52:12	1.21
  @@ -452,7 +452,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_header_parser(match_headers, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_post_read_request(match_headers, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.21      +1 -1      httpd-2.0/modules/metadata/mod_unique_id.c
  
  Index: mod_unique_id.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_unique_id.c,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- mod_unique_id.c	2001/01/12 01:08:22	1.20
  +++ mod_unique_id.c	2001/01/17 15:52:12	1.21
  @@ -385,7 +385,7 @@
       return DECLINED;
   }
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_post_config(unique_id_global_init, NULL, NULL, AP_HOOK_MIDDLE);
       ap_hook_child_init(unique_id_child_init, NULL, NULL, AP_HOOK_MIDDLE);
  
  
  
  1.24      +3 -1      httpd-2.0/modules/metadata/mod_usertrack.c
  
  Index: mod_usertrack.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/metadata/mod_usertrack.c,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- mod_usertrack.c	2001/01/08 23:55:06	1.23
  +++ mod_usertrack.c	2001/01/17 15:52:12	1.24
  @@ -308,10 +308,12 @@
                     "name of the tracking cookie"),
       {NULL}
   };
  -static void register_hooks(void)
  +
  +static void register_hooks(apr_pool_t *p)
   {
       ap_hook_fixups(spot_cookie,NULL,NULL,AP_HOOK_MIDDLE);
   }
  +
   module AP_MODULE_DECLARE_DATA usertrack_module = {
       STANDARD20_MODULE_STUFF,
       make_cookie_dir,            /* dir config creater */
  
  
  
  1.19      +1 -1      httpd-2.0/modules/proxy/mod_proxy.c
  
  Index: mod_proxy.c
  ===================================================================
  RCS file: /home/cvs/httpd-2.0/modules/proxy/mod_proxy.c,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- mod_proxy.c	2000/11/18 17:13:29	1.18
  +++ mod_proxy.c	2001/01/17 15:52:12	1.19
  @@ -744,7 +744,7 @@
       {NULL}
   };
   
  -static void register_hooks(void)
  +static void register_hooks(apr_pool_t *p)
   {
       /* [2] filename-to-URI translation */
       ap_hook_translate_name(proxy_trans, NULL, NULL, AP_HOOK_FIRST);
  
  
  

Mime
View raw message