richter     02/01/28 12:28:36

  Modified:    .        Tag: Embperl2c Embperl.pm Embperl.xs Makefile.PL
                        ep.h epapinit.c epcfg.h epdat2.h epinit.c epmain.c
                        epmem.c eppriv.h eppublic.h test.pl
               Embperl  Tag: Embperl2c Object.pm Run.pm
               test/conf Tag: Embperl2c httpd.conf.src startup.pl
                        startup_dso.pl
               xsbuilder Tag: Embperl2c WrapXS.pm
               xsbuilder/maps Tag: Embperl2c ep_function.map
                        ep_structure.map
  Log:
  eo
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.118.4.84 +20 -6     embperl/Embperl.pm
  
  Index: Embperl.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.pm,v
  retrieving revision 1.118.4.83
  retrieving revision 1.118.4.84
  diff -u -r1.118.4.83 -r1.118.4.84
  --- Embperl.pm        27 Jan 2002 20:04:34 -0000      1.118.4.83
  +++ Embperl.pm        28 Jan 2002 20:28:34 -0000      1.118.4.84
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Embperl.pm,v 1.118.4.83 2002/01/27 20:04:34 richter Exp $
  +#   $Id: Embperl.pm,v 1.118.4.84 2002/01/28 20:28:34 richter Exp $
   #
   ###################################################################################
   
  @@ -55,10 +55,12 @@
   bootstrap Embperl $VERSION;
   
   Boot ($VERSION) ;
  -Init (undef, {}) ;
  +Init (defined(&Apache::server)?Apache -> server:undef, undef) ;
   
   $cwd       = Cwd::fastcwd();
   
  +tie *Embperl::LOG, 'Embperl::Log' ;
  +
   1 ;
   
   
#######################################################################################
  @@ -73,16 +75,28 @@
   
       if (!ref $param)
           {
  -        Embperl::Req::RunRequest (undef, { inputfile => $param, param => [@_]}) ;
  +        Embperl::Req::ExecuteRequest (defined(&Apache::request)?Apache -> 
request:undef, { inputfile => $param, param => [@_]}) ;
           }
       else
           {
  -        Embperl::Req::RunRequest (undef, $param) ;
  +        Embperl::Req::ExecuteRequest (defined(&Apache::request)?Apache -> 
request:undef, $param) ;
           }
       }
   
   
#######################################################################################
   
  +sub handler
  +    
  +    {
  +    my $rc ;
  +    my $r = shift ;
  +
  +    local $SIG{__WARN__} = \&Warn ;
  +
  +    Embperl::Req::ExecuteRequest ($r) ;
  +    }
  +
  
+#######################################################################################
   sub Warn 
       {
       local $^W = 0 ;
  @@ -122,11 +136,11 @@
   
       if (!ref $param)
           {
  -        Embperl::Req::RunComponent ($Embperl::req, { inputfile => $param, param => 
[@_]}) ;
  +        $Embperl::req -> execute_component ({ inputfile => $param, param => [@_]}) ;
           }
       else
           {
  -        Embperl::Req::RunComponent ($Embperl::req, $param) ;
  +        $Embperl::req -> execute_component ($param) ;
           }
       }
   
  
  
  
  1.29.4.43 +4 -9      embperl/Embperl.xs
  
  Index: Embperl.xs
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.xs,v
  retrieving revision 1.29.4.42
  retrieving revision 1.29.4.43
  diff -u -r1.29.4.42 -r1.29.4.43
  --- Embperl.xs        25 Jan 2002 07:04:30 -0000      1.29.4.42
  +++ Embperl.xs        28 Jan 2002 20:28:34 -0000      1.29.4.43
  @@ -19,7 +19,7 @@
   MODULE = Embperl    PACKAGE = Embperl   PREFIX = embperl_
   
   int
  -embperl_Init(pApacheSrvSV, pPerlParam)
  +embperl_Init(pApacheSrvSV=NULL, pPerlParam=NULL)
       SV * pApacheSrvSV
       SV * pPerlParam
   CODE:
  @@ -56,19 +56,14 @@
   
   
   int
  -embperl_RunRequest(pApacheSrvSV, pPerlParam)
  -    SV * pApacheSrvSV
  +embperl_ExecuteRequest(pApacheReqSV=NULL, pPerlParam=NULL)
  +    SV * pApacheReqSV
       SV * pPerlParam
   CODE:
  -    RETVAL = embperl_RunRequest (aTHX_ pApacheSrvSV, pPerlParam) ;
  +    RETVAL = embperl_ExecuteRequest (aTHX_ pApacheReqSV, pPerlParam) ;
   OUTPUT:
       RETVAL
   
  -
  -int
  -embperl_RunComponent(pReq, pPerlParam)
  -    tReq * pReq;
  -    SV * pPerlParam
   
   
   
  
  
  
  1.31.4.46 +7 -5      embperl/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /home/cvs/embperl/Makefile.PL,v
  retrieving revision 1.31.4.45
  retrieving revision 1.31.4.46
  diff -u -r1.31.4.45 -r1.31.4.46
  --- Makefile.PL       24 Jan 2002 08:37:05 -0000      1.31.4.45
  +++ Makefile.PL       28 Jan 2002 20:28:34 -0000      1.31.4.46
  @@ -3,7 +3,7 @@
   #
   # (C) 1997-2001 G.Richter ([EMAIL PROTECTED]) / ECOS
   #
  -# $Id: Makefile.PL,v 1.31.4.45 2002/01/24 08:37:05 richter Exp $
  +# $Id: Makefile.PL,v 1.31.4.46 2002/01/28 20:28:34 richter Exp $
   #
   
   
  @@ -515,7 +515,7 @@
       }
   
   $base = '..' ;
  -
  +$base = $ENV{'ProgramFiles'} if ($win32) ;
   
   
   $apache = GetYesNo ("Build with support for Apache mod_perl?", 'y') if (!$apache) ;
  @@ -543,6 +543,8 @@
       foreach $src_dir ($base,
                      "$base/src",
                      <$base/apache*/src>,
  +                   <$base\\apache*\\include>,
  +                   <$base\\apache*\\apache*\\include>,
                      <./src>)
          {
        print "Look at $src_dir\n" ;
  @@ -762,8 +764,8 @@
       $EPENVPATH = 
";$Config{bin};$EPHTTPDDLL;$EPHTTPDPATH;$EPHTTPDDLL/../os/win32/release;$EPHTTPDDLL/../os/win32/debug"
 ;
       $ENV{PATH} .= $EPENVPATH if ($win32) ;
       
  -    @EPAPACHEVERSION = start ("$EPHTTPD -v") ;
  -    @modules         = start ("$EPHTTPD -l") ;
  +    @EPAPACHEVERSION = start ("\"$EPHTTPD\" -v") ;
  +    @modules         = start ("\"$EPHTTPD\" -l") ;
   
       chomp ($EPAPACHEVERSION[0]) ;
       print "Apache Version $EPAPACHEVERSION[0]\n" ;
  @@ -871,7 +873,7 @@
           $sslbase = search_config ('SSL_BASE', "$apache_src/Configuration.apaci") ;
           $sslbase = search_config ('SSL_BASE', "$apache_src/Configuration") if 
(!$sslbase) ;
           print " + found mod_ssl\n" ;
  -        $EPSSLDISABLE = !start_errcode ("$EPHTTPD -t -f 
$EPPATH/test/conf/ssldisable.conf") ;
  +        $EPSSLDISABLE = !start_errcode ("\"$EPHTTPD\" -t -f 
$EPPATH/test/conf/ssldisable.conf") ;
           }
   
   
  
  
  
  1.27.4.39 +4 -0      embperl/ep.h
  
  Index: ep.h
  ===================================================================
  RCS file: /home/cvs/embperl/ep.h,v
  retrieving revision 1.27.4.38
  retrieving revision 1.27.4.39
  diff -u -r1.27.4.38 -r1.27.4.39
  --- ep.h      25 Jan 2002 07:04:31 -0000      1.27.4.38
  +++ ep.h      28 Jan 2002 20:28:34 -0000      1.27.4.39
  @@ -59,6 +59,7 @@
   #undef RETURN
   #undef die
   #undef __attribute__
  +#undef isnan
   
   #if defined(EPAPACHE_SSL) || defined(APACHE_SSL) 
   #undef TRUE
  @@ -163,6 +164,9 @@
   struct tReq ;
   typedef struct tReq req ;
   typedef struct tReq tReq ;
  +
  +struct tComponent ;
  +typedef struct tComponent tComponent;
   
   struct tMemPool ;
   typedef struct tMemPool tMemPool ;
  
  
  
  1.1.2.12  +90 -38    embperl/epapinit.c
  
  Index: epapinit.c
  ===================================================================
  RCS file: /home/cvs/embperl/epapinit.c,v
  retrieving revision 1.1.2.11
  retrieving revision 1.1.2.12
  diff -u -r1.1.2.11 -r1.1.2.12
  --- epapinit.c        22 Jan 2002 09:29:54 -0000      1.1.2.11
  +++ epapinit.c        28 Jan 2002 20:28:34 -0000      1.1.2.12
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epapinit.c,v 1.1.2.11 2002/01/22 09:29:54 richter Exp $
  +#   $Id: epapinit.c,v 1.1.2.12 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -30,13 +30,29 @@
   #define EPCFG_INT EPCFG
   #define EPCFG_BOOL EPCFG
   #define EPCFG_CV EPCFG
  +#define EPCFG_CHAR EPCFG
   #define EPCFG_APP    
   #define EPCFG_REQ   
   #define EPCFG_COMPONENT   
   
   
  +#define EPCFG(STRUCT,TYPE,NAME,CFGNAME)   int  set_##STRUCT##NAME:1 ;
  +
  +struct tApacheDirConfig
  +    {
  +    tAppConfig       AppConfig ;
  +    tReqConfig       ReqConfig ;
  +    tComponentConfig ComponentConfig ;
  +    int              bUseEnv ;
  +    /* flags if config directive is given in context */
  +#include "epcfg.h"
  +    }  ;
  +
  +
  +
  +#undef EPCFG 
   #define EPCFG(STRUCT,TYPE,NAME,CFGNAME) \
  -    char * embperl_Apache_Config_##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, TYPE arg) ;
  +    char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char *  arg) ;
   
   #include "epcfg.h"
   
  @@ -44,13 +60,17 @@
   
   #undef EPCFG
   #define EPCFG(STRUCT,TYPE,NAME,CFGNAME) \
  -    { "EMBPERL_"#CFGNAME,   embperl_Apache_Config_##NAME,   NULL, RSRC_CONF, TAKE1, 
"" },
  +    { "EMBPERL_"#CFGNAME,   embperl_Apache_Config_##STRUCT##NAME,   NULL, 
RSRC_CONF, TAKE1, "" },
   
  +static char * embperl_Apache_Config_useenv (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, bool arg) ;
  +static void *embperl_create_dir_config(pool *p, char *d) ;
  +static void *embperl_create_server_config(pool *p, server_rec *s) ;
   
   static const command_rec embperl_cmds[] =
   {
   #include "epcfg.h"
       
  +    {"EMBPERL_USEENV", embperl_Apache_Config_useenv, NULL, RSRC_CONF, FLAG, ""},
       {NULL}
   };
   
  @@ -84,14 +104,6 @@
   
   
   
  -struct tApacheDirConfig
  -    {
  -    tAppConfig       AppConfig ;
  -    tReqConfig       ReqConfig ;
  -    tComponentConfig ComponentConfig ;
  -    }  ;
  -
  -
   
   
   
  @@ -121,38 +133,48 @@
   
   static void *embperl_create_dir_config(pool *p, char *d)
       {
  -    tApacheDirConfig *cfg = (tApacheDirConfig *) ap_pcalloc(p, 
sizeof(ApacheDirConfig));
  +    tApacheDirConfig *cfg = (tApacheDirConfig *) ap_pcalloc(p, 
sizeof(tApacheDirConfig));
   
       memset (cfg, 0, sizeof (*cfg)) ;
   
  -    embperl_DefaultReqConfig (&cfg -> ReqCfg) ;
  -    embperl_DefaultAppConfig (&cfg -> AppCfg) ;
  -    embperl_DefaultComponentConfig (&cfg -> ComponentCfg) ;
  +    embperl_DefaultReqConfig (&cfg -> ReqConfig) ;
  +    embperl_DefaultAppConfig (&cfg -> AppConfig) ;
  +    embperl_DefaultComponentConfig (&cfg -> ComponentConfig) ;
  +    cfg -> bUseEnv = -1 ;
   
       return cfg;
       }
   
   
  -static void *embperl_create_server_config(pool *p, char *d)
  +static void *embperl_create_server_config(pool *p, server_rec *s)
       {
  -    tApacheDirConfig *cfg = (tApacheDirConfig *) ap_pcalloc(p, 
sizeof(ApacheDirConfig));
  +    tApacheDirConfig *cfg = (tApacheDirConfig *) ap_pcalloc(p, 
sizeof(tApacheDirConfig));
   
       memset (cfg, 0, sizeof (*cfg)) ;
   
  -    embperl_DefaultReqConfig (&cfg -> ReqCfg) ;
  -    embperl_DefaultAppConfig (&cfg -> AppCfg) ;
  -    embperl_DefaultComponentConfig (&cfg -> ComponentCfg) ;
  +    embperl_DefaultReqConfig (&cfg -> ReqConfig) ;
  +    embperl_DefaultAppConfig (&cfg -> AppConfig) ;
  +    embperl_DefaultComponentConfig (&cfg -> ComponentConfig) ;
  +    cfg -> bUseEnv = -1 ;
   
       return cfg;
       }
   
   
  +static char * embperl_Apache_Config_useenv (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, bool arg)
  +    { \
  +    pDirCfg -> bUseEnv = arg ; 
  +    return NULL; \
  +    } 
  +
  +
   int embperl_GetApacheConfig (/*in*/ tThreadData * pThread,
                               /*in*/  request_rec * r,
                               /*in*/  server_rec * s,
                               /*out*/ tApacheDirConfig * * ppConfig)
   
       {
  +    *ppConfig = NULL ;
       if(r && r->per_dir_config)
           {
           *ppConfig = (tApacheDirConfig *) get_module_config(r->per_dir_config, 
&embperl_module);
  @@ -161,13 +183,14 @@
           {
           *ppConfig = (tApacheDirConfig *) get_module_config(s->module_config, 
&embperl_module);
           }
  +    return ok ;
       }
   
   char * embperl_GetApacheAppName (/*in*/ tApacheDirConfig * pDirCfg)
   
   
       {
  -    return pDirCfg -> sAppName ;
  +    return pDirCfg?pDirCfg -> AppConfig.sAppName:"Embperl" ;
       }
   
   
  @@ -179,7 +202,13 @@
   
       {
       if(pDirCfg)
  +        {
  +        SV * perlsv = pConfig -> _perlsv ;
           memcpy (pConfig, &pDirCfg -> AppConfig, sizeof (*pConfig)) ;
  +        if (pDirCfg -> bUseEnv)
  +             embperl_GetCGIAppConfig (pThread, pPool, pConfig) ;
  +        pConfig -> _perlsv = perlsv ;
  +        }
       else
           embperl_DefaultAppConfig (pConfig) ;
   
  @@ -187,7 +216,7 @@
       }
   
   
  -int embperl_GetApacheReqConfig (/*in*/ tThreadData * pThread,
  +int embperl_GetApacheReqConfig (/*in*/ tApp *        pApp,
                                   /*in*/ tMemPool    * pPool,
                                   /*in*/ tApacheDirConfig * pDirCfg,
                                   /*out*/ tReqConfig * pReqConfig)
  @@ -195,9 +224,15 @@
   
       {
       if(pDirCfg)
  -        memcpy (pReqCfg, &pDirCfg -> ReqConfig, sizeof (*pReqCfg)) ;
  +        {
  +        SV * perlsv = pReqConfig -> _perlsv ;
  +        memcpy (pReqConfig, &pDirCfg -> ReqConfig, sizeof (*pReqConfig)) ;
  +        if (pDirCfg -> bUseEnv)
  +             embperl_GetCGIReqConfig (pApp, pPool, pReqConfig) ;
  +        pReqConfig -> _perlsv = perlsv ;
  +        }
       else
  -        embperl_DefaultReqConfig (pReqCfg) ;
  +        embperl_DefaultReqConfig (pReqConfig) ;
   
       return ok ;
       }
  @@ -211,7 +246,13 @@
   
       {
       if(pDirCfg)
  +        {
  +        SV * perlsv = pConfig -> _perlsv ;
           memcpy (pConfig, &pDirCfg -> ComponentConfig, sizeof (*pConfig)) ;
  +        if (pDirCfg -> bUseEnv)
  +             embperl_GetCGIComponentConfig (pReq, pPool, pConfig) ;
  +        pConfig -> _perlsv = perlsv ;
  +        }
       else
           embperl_DefaultComponentConfig (pConfig) ;
   
  @@ -223,7 +264,7 @@
   int embperl_GetApacheReqParam  (/*in*/  tApp        * pApp,
                                   /*in*/ tMemPool    * pPool,
                                   /*in*/  request_rec * r,
  -                                /*out*/ tReqConfig * pParam)
  +                                /*out*/ tReqParam * pParam)
   
   
       {
  @@ -240,44 +281,55 @@
   
   
   #undef EPCFG
  +#undef EPCFG_INT
   #define EPCFG_INT(STRUCT,TYPE,NAME,CFGNAME) \
  -char * embperl_Apache_Config_##NAME (cmd_parms *cmd, tApacheDirConfig * pDirCfg, 
TYPE arg) \
  +char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char * arg) \
       { \
       pDirCfg -> STRUCT.NAME = atoi(arg) ; \
  -    pDirCfg -> SETOPT |= cfgset##NAME ; \
  +    pDirCfg -> set_##STRUCT##NAME = 1 ; \
       return NULL; \
       } 
   
   #undef EPCFG_BOOL
   #define EPCFG_BOOL(STRUCT,TYPE,NAME,CFGNAME) \
  -char * embperl_Apache_Config_##NAME (cmd_parms *cmd, tApacheDirConfig * pDirCfg, 
TYPE arg) \
  +char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char * arg) \
       { \
       pDirCfg -> STRUCT.NAME = arg ; \
  -    pDirCfg -> SETOPT |= cfgset##NAME ; \
  +    pDirCfg -> set_##STRUCT##NAME = 1 ; \
       return NULL; \
       } 
   
   
   #undef EPCFG_STR
   #define EPCFG_STR(STRUCT,TYPE,NAME,CFGNAME) \
  -char * embperl_Apache_Config_##NAME (cmd_parms *cmd, tApacheDirConfig * pDirCfg, 
TYPE arg) \
  +char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char* arg) \
       { \
  -    pool * p = cmd -> pool ;    
  +    pool * p = cmd -> pool ;    \
       pDirCfg -> STRUCT.NAME = ap_pstrdup(p, arg) ; \
  -    pDirCfg -> SETOPT |= cfgset##NAME ; \
  +    pDirCfg -> set_##STRUCT##NAME = 1 ; \
  +    return NULL; \
  +    } 
  +
  +#undef EPCFG_CHAR
  +#define EPCFG_CHAR(STRUCT,TYPE,NAME,CFGNAME) \
  +char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char * arg) \
  +    { \
  +    pDirCfg -> STRUCT.NAME = arg[0] ; \
  +    pDirCfg -> set_##STRUCT##NAME = 1 ; \
       return NULL; \
       } 
   
   #undef EPCFG_CV
   #define EPCFG_CV(STRUCT,TYPE,NAME,CFGNAME) \
  -char * embperl_Apache_Config_##NAME (cmd_parms *cmd, tApacheDirConfig * pDirCfg, 
TYPE arg) \
  +char * embperl_Apache_Config_##STRUCT##NAME (cmd_parms *cmd, tApacheDirConfig * 
pDirCfg, char * arg) \
       { \
  -    int rc ;\
  -    if ((rc = EvalConfig (r, sv_2mortal(newSVpv(arg, 0)), 0, NULL, &pDirCfg -> 
STRUCT.NAME)) != ok) \
  -        return LogError (r, rc) ; \
  -    pDirCfg -> SETOPT |= cfgset##NAME ; \
  +/*  int rc ;\
  +    if ((rc = EvalConfig (pReq, sv_2mortal(newSVpv(arg, 0)), 0, NULL, &pDirCfg -> 
STRUCT.NAME)) != ok) \
  +        return LogError (pReq, rc) ; \
  +    pDirCfg -> set_##STRUCT##NAME = 1 ; \
       return NULL; \
  -    } 
  +*/ return "unimplemented" ; \
  +        } 
   
   #include "epcfg.h"
   
  
  
  
  1.1.2.4   +41 -36    embperl/Attic/epcfg.h
  
  Index: epcfg.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epcfg.h,v
  retrieving revision 1.1.2.3
  retrieving revision 1.1.2.4
  diff -u -r1.1.2.3 -r1.1.2.4
  --- epcfg.h   23 Jan 2002 15:09:00 -0000      1.1.2.3
  +++ epcfg.h   28 Jan 2002 20:28:34 -0000      1.1.2.4
  @@ -2,53 +2,58 @@
   #ifdef EPCFG_COMPONENT
   /* tComponentConfig */
   
  -EPCFG_STR (ComponentConfig,     char *,      sPackage,      PACKAGE) ;
  -EPCFG_INT (ComponentConfig,     unsigned,    bDebug,        DEBUG) ;
  -EPCFG_INT (ComponentConfig,     unsigned,    bOptions,      OPTIONS) ;
  -EPCFG_STR (ComponentConfig,     char *,      sPath,         PATH) ;
  -EPCFG_INT (ComponentConfig,     int   ,      nEscMode,      ESCMODE) ;
  -EPCFG_BOOL(ComponentConfig,     int   ,      bEP1Compat,    EP1COMPAT);
  -EPCFG_STR (ComponentConfig,     char *,      sCacheKey,     CACKE_KEY) ;
  -EPCFG_INT (ComponentConfig,     unsigned,    bCacheKeyOptions, CACHE_KEY_OPTIONS);
  -EPCFG_CV  (ComponentConfig,     CV *  ,      pExpiredFunc,  EXPIRES_FUNC) ;
  -EPCFG_CV  (ComponentConfig,     CV *  ,      pCacheKeyFunc, CACHE_KEY_FUNC) ;
  -EPCFG_INT (ComponentConfig,     int   ,      nExpiresIn,    EXPIRES_IN) ;
  -EPCFG_STR (ComponentConfig,     char *,      sSyntax,       SYNTAX) ;
  -EPCFG_STR (ComponentConfig,     char *,      sRecipe,       RECIPE) ;
  -EPCFG_STR (ComponentConfig,     char *,      sXsltstylesheet, XSLTSYTLESHEET) ;
  -EPCFG_STR (ComponentConfig,     char *,      sXsltproc,     XSLTPROC) ;
  -EPCFG_STR (ComponentConfig,     char *,      sCompartment,  COMPARTMENT) ;
  +EPCFG_STR (ComponentConfig,     char *,      sPackage,      PACKAGE) 
  +EPCFG_INT (ComponentConfig,     unsigned,    bDebug,        DEBUG) 
  +EPCFG_INT (ComponentConfig,     unsigned,    bOptions,      OPTIONS) 
  +EPCFG_STR (ComponentConfig,     char *,      sPath,         PATH) 
  +EPCFG_INT (ComponentConfig,     int   ,      nEscMode,      ESCMODE) 
  +EPCFG_STR (ComponentConfig,     char *,      sCacheKey,     CACKE_KEY) 
  +EPCFG_INT (ComponentConfig,     unsigned,    bCacheKeyOptions, CACHE_KEY_OPTIONS)
  +EPCFG_CV  (ComponentConfig,     CV *  ,      pExpiredFunc,  EXPIRES_FUNC) 
  +EPCFG_CV  (ComponentConfig,     CV *  ,      pCacheKeyFunc, CACHE_KEY_FUNC)
  +EPCFG_INT (ComponentConfig,     int   ,      nExpiresIn,    EXPIRES_IN) 
  +EPCFG_STR (ComponentConfig,     char *,      sSyntax,       SYNTAX) 
  +EPCFG_STR (ComponentConfig,     char *,      sRecipe,       RECIPE) 
  +EPCFG_STR (ComponentConfig,     char *,      sXsltstylesheet, XSLTSYTLESHEET) 
  +EPCFG_STR (ComponentConfig,     char *,      sXsltproc,     XSLTPROC) 
  +EPCFG_STR (ComponentConfig,     char *,      sCompartment,  COMPARTMENT)
   #endif
   
   #ifdef EPCFG_REQ
   /* tReqConfig */
   
  -EPCFG_STR(ReqConfig,     char *,      sAllow,       ALLOW) ;
  -EPCFG_STR(ReqConfig,     char *,      sFilesMatch,  FILESMATCH) ;
  -EPCFG_STR(ReqConfig,     char *,      sDecline,     DECLINE) ;
  -EPCFG_CHAR(ReqConfig,     char  ,      cMultFieldSep, MULTFIELDSEP ) ;
  +EPCFG_STR(ReqConfig,     char *,      sAllow,       ALLOW) 
  +EPCFG_STR(ReqConfig,     char *,      sFilesMatch,  FILESMATCH) 
  +EPCFG_STR(ReqConfig,     char *,      sDecline,     DECLINE) 
  +EPCFG_CHAR(ReqConfig,     char  ,      cMultFieldSep, MULTFIELDSEP ) 
   #endif
   
   
   #ifdef EPCFG_APP
   /* tAppConfig */
   
  -EPCFG_STR(AppConfig,     char *,  sAppName,         APPNAME) ;
  -EPCFG_STR(AppConfig,     char *,  sSessionArgs,     SESSION_ARGS) ;
  -EPCFG_STR(AppConfig,     char *,  sSessionClasses,  SESSION_CLASSES) ;
  -EPCFG_STR(AppConfig,     char *,  sSessionConfig,   SESSION_CONFIG) ;
  -EPCFG_STR(AppConfig,     char *,  sCookieName,      COOKIE_NAME) ;
  -EPCFG_STR(AppConfig,     char *,  sCookieDomain,    COOKIE_DOMAIN) ;
  -EPCFG_STR(AppConfig,     char *,  sCookiePath,      COOKIE_PATH) ;
  -EPCFG_STR(AppConfig,     char *,  sCookieExpires,   COOKIE_EXPIRES) ;
  -EPCFG_INT(AppConfig,     int   ,  nSessionMode,     SESSION_MODE) ;
  -EPCFG_STR(AppConfig,     char *,  sLog,             LOG) ;
  -EPCFG_INT(AppConfig,     unsigned,bDebug,           DEBUG) ;
  -EPCFG_INT(AppConfig,     bool,    bMaildebug,       MAILDEBUG) ;
  -EPCFG_STR(AppConfig,     char *,  sMailhost,        MAILHOST) ;
  -EPCFG_STR(AppConfig,     char *,  sMailhelo,        MAILHELO) ;
  -EPCFG_STR(AppConfig,     char *,  sMailfrom,        MAILFROM) ;
  -EPCFG_STR(AppConfig,     char *,  sMailErrorsTo,    MAIL_ERRORS_TO) ;
  +EPCFG_STR(AppConfig,     char *,  sAppName,         APPNAME) 
  +EPCFG_STR(AppConfig,     char *,  sSessionArgs,     SESSION_ARGS) 
  +EPCFG_STR(AppConfig,     char *,  sSessionClasses,  SESSION_CLASSES)
  +EPCFG_STR(AppConfig,     char *,  sSessionConfig,   SESSION_CONFIG) 
  +EPCFG_STR(AppConfig,     char *,  sCookieName,      COOKIE_NAME) 
  +EPCFG_STR(AppConfig,     char *,  sCookieDomain,    COOKIE_DOMAIN)
  +EPCFG_STR(AppConfig,     char *,  sCookiePath,      COOKIE_PATH) 
  +EPCFG_STR(AppConfig,     char *,  sCookieExpires,   COOKIE_EXPIRES) 
  +EPCFG_INT(AppConfig,     int   ,  nSessionMode,     SESSION_MODE) 
  +EPCFG_STR(AppConfig,     char *,  sLog,             LOG) 
  +EPCFG_INT(AppConfig,     unsigned,bDebug,           DEBUG) 
  +EPCFG_INT(AppConfig,     bool,    bMaildebug,       MAILDEBUG) 
  +EPCFG_STR(AppConfig,     char *,  sMailhost,        MAILHOST) 
  +EPCFG_STR(AppConfig,     char *,  sMailhelo,        MAILHELO) 
  +EPCFG_STR(AppConfig,     char *,  sMailfrom,        MAILFROM) 
  +EPCFG_STR(AppConfig,     char *,  sMailErrorsTo,    MAIL_ERRORS_TO) 
  +EPCFG_STR(AppConfig,     char *,  sObjectBase,      OBJECT_BASE)
  +EPCFG_STR(AppConfig,     char *,  sObjectApp,       OBJECT_APP)
  +EPCFG_STR(AppConfig,     char *,  sObjectAddpath,   OBJECT_ADDPATH)
  +EPCFG_STR(AppConfig,     char *,  sObjectStopdir,   OBJECT_STOPDIR)
  +EPCFG_STR(AppConfig,     char *,  sObjectFallback,  OBJECT_FALLBACK)
  +EPCFG_STR(AppConfig,     char *,  sObjectHandlerClass, OBJECT_HANDLER_CLASS)
   
   #endif
   
  
  
  
  1.1.2.18  +8 -1      embperl/Attic/epdat2.h
  
  Index: epdat2.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdat2.h,v
  retrieving revision 1.1.2.17
  retrieving revision 1.1.2.18
  diff -u -r1.1.2.17 -r1.1.2.18
  --- epdat2.h  27 Jan 2002 20:04:34 -0000      1.1.2.17
  +++ epdat2.h  28 Jan 2002 20:28:34 -0000      1.1.2.18
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epdat2.h,v 1.1.2.17 2002/01/27 20:04:34 richter Exp $
  +#   $Id: epdat2.h,v 1.1.2.18 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -129,6 +129,12 @@
       char *  sMailfrom ;
       bool    bMaildebug ;
       char *  sMailErrorsTo ;
  +    char *  sObjectBase ;
  +    char *  sObjectApp ;
  +    char *  sObjectAddpath ;
  +    char *  sObjectStopdir ;
  +    char *  sObjectFallback ;
  +    char *  sObjectHandlerClass ;
       } tAppConfig ;
   
   
  @@ -225,6 +231,7 @@
       tComponentConfig    Config ;    /**< request configuration data */
       tComponentParam     Param ;     /**< parameter passed to current request */
       tComponentOutput *  pOutput ;   /**< output channel for this component */
  +    tReq *              pReq ;
   
       bool    bReqRunning  ;   /* we are inside of a request */
       bool    bSubReq ;           /* This is a sub request (called inside an Embperl 
page) */
  
  
  
  1.1.2.21  +38 -24    embperl/Attic/epinit.c
  
  Index: epinit.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epinit.c,v
  retrieving revision 1.1.2.20
  retrieving revision 1.1.2.21
  diff -u -r1.1.2.20 -r1.1.2.21
  --- epinit.c  27 Jan 2002 20:04:34 -0000      1.1.2.20
  +++ epinit.c  28 Jan 2002 20:28:34 -0000      1.1.2.21
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epinit.c,v 1.1.2.20 2002/01/27 20:04:34 richter Exp $
  +#   $Id: epinit.c,v 1.1.2.21 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -236,7 +236,7 @@
   
       {
       char * sAppName ;
  -    tApp * pApp ;
  +    tApp * pApp = NULL ;
   #ifdef APACHE
       if (pApacheCfg)
           sAppName = embperl_GetApacheAppName (pApacheCfg) ;
  @@ -244,7 +244,8 @@
   #endif
           sAppName = embperl_GetCGIAppName (pThread) ;
       
  -    pApp = (tApp * )GetHashValuePtr (NULL, pThread -> pApplications, sAppName, 
NULL) ;
  +    if (sAppName)
  +        pApp = (tApp * )GetHashValuePtr (NULL, pThread -> pApplications, sAppName, 
NULL) ;
   
       if (!pApp)
           {
  @@ -266,8 +267,8 @@
           pApp -> pPool         = pPool ;
   
   #ifdef APACHE
  -        if (pThread -> bApache)
  -            embperl_GetApacheAppConfig (pThread, pPool, ap_r, ap_s, &pApp -> 
Config) ;
  +        if (pApacheCfg)
  +            embperl_GetApacheAppConfig (pThread, pPool, pApacheCfg, &pApp -> 
Config) ;
           else
   #endif
               embperl_GetCGIAppConfig (pThread, pPool, &pApp -> Config) ;
  @@ -482,9 +483,10 @@
   #ifdef APACHE
       if (pApacheSrvSV && SvROK (pApacheSrvSV))
           {
  -        server_rec * ap_s = (request_rec *)SvIV((SV*)SvRV(pApacheSrvSV));
  +        server_rec * ap_s = (server_rec *)SvIV((SV*)SvRV(pApacheSrvSV));
           
  -        embperl_GetApacheConfig (pThread, ap_r, ap_r -> server, &pApacheCfg) ;
  +     embperl_ApacheAddModule () ;
  +        embperl_GetApacheConfig (pThread, NULL, ap_s, &pApacheCfg) ;
           }
   #endif
   
  @@ -492,13 +494,6 @@
           return rc ;
         
   
  -#ifdef APACHE
  -    r -> pApacheReq = NULL ;
  -    if (_nIOType == epIOMod_Perl)
  -     {
  -     embperl_ApacheAddModule () ;
  -     }
  -#endif
   
       ADDINTMG (EscMode) 
       ADDINTMG (CurrNode) 
  @@ -807,7 +802,7 @@
       if (len == 0)
           {
           p = r -> Param.sQueryInfo ;
  -        len = strlen (p) ;
  +        len = p?strlen (p):0 ;
           f = NULL ;
           }
       else
  @@ -926,8 +921,11 @@
       
       if (pPerlParam && SvROK(pPerlParam))
           {
  -        Embperl__Req__Config_new_init(aTHX_ &r -> Config, SvRV(pPerlParam), 0) ;
  -        Embperl__Req__Param_new_init(aTHX_ &r -> Param, SvRV(pPerlParam), 0) ;
  +        SV * pHV = SvRV(pPerlParam) ;
  +        Embperl__Req__Config_new_init(aTHX_ &r -> Config, pHV, 0) ;
  +        Embperl__Req__Param_new_init(aTHX_ &r -> Param, pHV, 0) ;
  +        if (!r -> Param.sFilename || !*r -> Param.sFilename)
  +            r -> Param.sFilename = GetHashValueStrDup(aTHX_ pPool, (HV *)pHV, 
"inputfile", NULL) ;
           }
   
       r -> pApp = pApp ;
  @@ -1021,11 +1019,11 @@
   
   
   
  -int    embperl_CleanupComponent  (/*in*/ tReq *                r,
  -                                  /*in*/ tComponent *          c)
  +int    embperl_CleanupComponent  (/*in*/ tComponent *          c)
                        
                        
       {
  +    tReq *  r = c -> pReq ;
       epTHX_
   
       embperl_CleanupOutput (r, c) ;
  @@ -1053,7 +1051,10 @@
           if (mg = mg_find (pHV, '~'))
               *((tComponentParam **)(mg -> mg_ptr)) = &c -> Param ;
           }
  -   
  +    else
  +        {
  +        c -> _perlsv = NULL ;
  +        }
       
       return ok ;
       }
  @@ -1084,7 +1085,7 @@
       
       sv_setsv(r -> pThread -> pReqRV, &sv_undef) ;   
   
  -    embperl_CleanupComponent(r, &r -> Component) ;
  +    embperl_CleanupComponent(&r -> Component) ;
       
       
       hv_iterinit (r -> pCleanupPackagesHV) ;
  @@ -1254,6 +1255,7 @@
                        
                        
       {
  +    int          rc ;
       SV *         pComponentSV ;
       SV *         pComponentRV ;
       SV *         pSV ;
  @@ -1296,6 +1298,7 @@
       c -> Param.nImport = -1 ;
       c -> Param.nFirstLine = 1 ;
   
  +    c -> pReq = r ;
   #ifdef APACHE
       if (r -> pApacheReq)
           {
  @@ -1357,7 +1360,10 @@
   
       *ppComponent = c ;
   
  -    return embperl_SetupOutput (r, c) ;
  +    rc = embperl_SetupOutput (r, c) ;
  +    if (rc != ok)
  +        LogError (r, rc) ;
  +    return rc ;
       }
   
   
  @@ -1469,7 +1475,10 @@
       
       /* get our thread object */
       if ((rc = embperl_SetupThread (aTHX_ &pThread)) != ok)
  +        {
  +        LogError (NULL, rc) ;
           return rc ;
  +        }
   
   #ifdef APACHE
       if (pApacheReqSV && SvROK (pApacheReqSV))
  @@ -1478,19 +1487,24 @@
           
           embperl_GetApacheConfig (pThread, ap_r, ap_r -> server, &pApacheCfg) ;
           
  -        r -> pApacheConfig = pApacheCfg ;
           }
   #endif
   
       /* get the application object */
       if ((rc = embperl_SetupApp (aTHX_ pThread, pApacheCfg, pPerlParam, &pApp)) != 
ok)
  +        {
  +        LogError (NULL, rc) ;
           return rc ;
  -
  +        }
   
       /* and setup the request object */
       if ((rc = embperl_SetupRequest (aTHX_ pApacheReqSV, pApp, pApacheCfg, 
pPerlParam, &r)) != ok)
  +        {
  +        LogErrorParam (pApp, rc, NULL, NULL) ;
           return rc ;
  +        }
   
  +    r -> pApacheConfig = pApacheCfg ;
      
       *ppReq = r ;
   
  
  
  
  1.75.4.93 +60 -36    embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.75.4.92
  retrieving revision 1.75.4.93
  diff -u -r1.75.4.92 -r1.75.4.93
  --- epmain.c  27 Jan 2002 20:04:34 -0000      1.75.4.92
  +++ epmain.c  28 Jan 2002 20:28:34 -0000      1.75.4.93
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epmain.c,v 1.75.4.92 2002/01/27 20:04:34 richter Exp $
  +#   $Id: epmain.c,v 1.75.4.93 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -804,7 +804,7 @@
        HE *   pEntry ;
        char * pKey ;
        I32    l ;
  -
  +        STRLEN ldummy ;
   
        I32     i;
        I32     len;
  @@ -1276,7 +1276,7 @@
   
   
   
  -int embperl_ExecuteRequest (/*i/o*/ register req * r)
  +int embperl_RunRequest (/*i/o*/ register req * r)
   
       {
       int     rc = ok ;
  @@ -1439,9 +1439,9 @@
   /* ---------------------------------------------------------------------------- */
   
   
  -int     embperl_RunRequest  (/*in*/ pTHX_
  -                             /*in*/ SV *             pApacheReqSV,
  -                             /*in*/ SV *             pPerlParam)
  +int     embperl_ExecuteRequest  (/*in*/ pTHX_
  +                                 /*in*/ SV *             pApacheReqSV,
  +                                 /*in*/ SV *             pPerlParam)
   
   
       {
  @@ -1451,10 +1451,11 @@
       rc = embperl_InitRequestComponent (aTHX_ pApacheReqSV, pPerlParam, &r) ;
   
       if (rc == ok)
  -        embperl_ExecuteRequest (r) ;
  +        rc = embperl_RunRequest (r) ;
   
       embperl_CleanupRequest (r) ;
   
  +
       return rc ;
       }
       
  @@ -1465,53 +1466,76 @@
   /*                                                                              */
   /* ---------------------------------------------------------------------------- */
   
  -int     embperl_RunComponent(/*in*/ tReq *           r,
  -                             /*in*/ SV *             pPerlParam)
  +int     embperl_RunComponent    (/*in*/ tComponent *     c)
   
   
       {
  +    tReq * r = c -> pReq ;
       epTHX_
       int rc ;
  -    tComponent * pComponent ;
   
  -    rc = embperl_SetupComponent  (r, pPerlParam, &pComponent) ;
  -
  -    if (rc == ok)
  -        {
  -        ENTER;
  -        SAVETMPS ;
  -     
  -        r -> Component.bReqRunning     = 1 ;
  +    ENTER;
  +    SAVETMPS ;
  +    
  +    c -> bReqRunning     = 1 ;
   
  -        if ((r -> Component.Config.bOptions & optEarlyHttpHeader) == 0)
  -            oBegin (r) ;
  +    if ((c -> Config.bOptions & optEarlyHttpHeader) == 0)
  +        oBegin (r) ;
   
  -        if ((rc = ProcessFile (r, 0 /*r -> Buf.pFile -> nFilesize*/)) != ok)
  -            if (rc == rcExit)
  -                rc = ok ;
  -            else
  -                LogError (r, rc) ;
  +    if ((rc = ProcessFile (r, 0 /*r -> Buf.pFile -> nFilesize*/)) != ok)
  +        if (rc == rcExit)
  +            rc = ok ;
  +        else
  +            LogError (r, rc) ;
   
  -        
  -        /* --- Restore Operatormask and Package, destroy temp perl sv's --- */
  -        FREETMPS ;
  -        LEAVE;
  -        r -> Component.bReqRunning = 0 ;
  +    
  +    /* --- Restore Operatormask and Package, destroy temp perl sv's --- */
  +    FREETMPS ;
  +    LEAVE;
  +    c -> bReqRunning = 0 ;
   
   
  -        if (!r -> bError)
  +    if (!r -> bError)
  +        {
  +        if (c -> Param.nImport > 0)
  +            export (r) ;
  +        else if (c -> pOutput && !c -> pOutput -> bDisableOutput) 
               {
  -            if (r -> Component.Param.nImport > 0)
  -                export (r) ;
  -            else if (r -> Component.Param.pOutput)
  +            if (c -> Param.pOutput)
                   OutputToMem (r) ;
  -            else if (r -> Component.pOutput == r -> Component.pPrev -> pOutput)
  +            else if (c -> pOutput == r -> Component.pPrev -> pOutput)
                   AppendToUpperTree (r) ;
               else
                   OutputToFile (r) ;
               }
  +        }
  +        
  +    return rc ;
  +    }
  +    
  +/* ---------------------------------------------------------------------------- */
  +/*                                                                              */
  +/* Execute Component                                                            */
  +/*                                                                              */
  +/* ---------------------------------------------------------------------------- */
  +
  +
  +int     embperl_ExecuteComponent(/*in*/ tReq *           r,
  +                                 /*in*/ SV *             pPerlParam)
  +
  +
  +    {
  +    epTHX_
  +    int rc ;
  +    tComponent * pComponent ;
  +
  +    rc = embperl_SetupComponent  (r, pPerlParam, &pComponent) ;
  +
  +    if (rc == ok)
  +        {
  +        rc = embperl_RunComponent (pComponent) ;
           
  -        embperl_CleanupComponent  (r, pComponent) ;
  +        embperl_CleanupComponent  (pComponent) ;
           }
   
       return rc ;
  
  
  
  1.1.2.4   +20 -20    embperl/Attic/epmem.c
  
  Index: epmem.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epmem.c,v
  retrieving revision 1.1.2.3
  retrieving revision 1.1.2.4
  diff -u -r1.1.2.3 -r1.1.2.4
  --- epmem.c   19 Jan 2002 14:13:41 -0000      1.1.2.3
  +++ epmem.c   28 Jan 2002 20:28:34 -0000      1.1.2.4
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epmem.c,v 1.1.2.3 2002/01/19 14:13:41 richter Exp $
  +#   $Id: epmem.c,v 1.1.2.4 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -89,11 +89,11 @@
   #include <os2.h>
   #endif
   
  -#ifndef API_EXPORT
  -#define API_EXPORT(x) x
  +#ifndef EP_API_EXPORT
  +#define EP_API_EXPORT(x) x
   #endif
  -#ifndef API_EXPORT_NONSTD
  -#define API_EXPORT_NONSTD(x) x
  +#ifndef EP_API_EXPORT_NONSTD
  +#define EP_API_EXPORT_NONSTD(x) x
   #endif
   
   #ifndef ep_inline
  @@ -490,7 +490,7 @@
   #define POOL_HDR_CLICKS (1 + ((sizeof(struct tMemPool) - 1) / CLICK_SZ))
   #define POOL_HDR_BYTES (POOL_HDR_CLICKS * CLICK_SZ)
   
  -API_EXPORT(struct tMemPool *) ep_make_sub_pool(struct tMemPool *p)
  +EP_API_EXPORT(struct tMemPool *) ep_make_sub_pool(struct tMemPool *p)
   {
       union block_hdr *blok;
       tMemPool *new_pool;
  @@ -576,7 +576,7 @@
       ep_destroy_mutex(spawn_mutex);
   }
   
  -API_EXPORT(void) ep_clear_pool(struct tMemPool *a)
  +EP_API_EXPORT(void) ep_clear_pool(struct tMemPool *a)
   {
       ep_block_alarms();
   
  @@ -612,7 +612,7 @@
       ep_unblock_alarms();
   }
   
  -API_EXPORT(void) ep_destroy_pool(tMemPool *a)
  +EP_API_EXPORT(void) ep_destroy_pool(tMemPool *a)
   {
       ep_block_alarms();
       ep_clear_pool(a);
  @@ -632,11 +632,11 @@
       ep_unblock_alarms();
   }
   
  -API_EXPORT(long) ep_bytes_in_pool(tMemPool *p)
  +EP_API_EXPORT(long) ep_bytes_in_pool(tMemPool *p)
   {
       return bytes_in_block_list(p->first);
   }
  -API_EXPORT(long) ep_bytes_in_free_blocks(void)
  +EP_API_EXPORT(long) ep_bytes_in_free_blocks(void)
   {
       return bytes_in_block_list(block_freelist);
   }
  @@ -660,7 +660,7 @@
   /* Find the tMemPool that ts belongs to, return NULL if it doesn't
    * belong to any pool.
    */
  -API_EXPORT(tMemPool *) ep_find_pool(const void *ts)
  +EP_API_EXPORT(tMemPool *) ep_find_pool(const void *ts)
   {
       const char *s = ts;
       union block_hdr **pb;
  @@ -707,7 +707,7 @@
   /* return TRUE iff a is an ancestor of b
    * NULL is considered an ancestor of all pools
    */
  -API_EXPORT(int) ep_pool_is_ancestor(tMemPool *a, tMemPool *b)
  +EP_API_EXPORT(int) ep_pool_is_ancestor(tMemPool *a, tMemPool *b)
   {
       if (a == NULL) {
        return 1;
  @@ -728,7 +728,7 @@
    * instead.  This is a guarantee by the caller that sub will not
    * be destroyed before p is.
    */
  -API_EXPORT(void) ep_pool_join(tMemPool *p, tMemPool *sub)
  +EP_API_EXPORT(void) ep_pool_join(tMemPool *p, tMemPool *sub)
   {
       union block_hdr *b;
   
  @@ -757,7 +757,7 @@
    */
   
   
  -API_EXPORT(void *) ep_palloc(struct tMemPool *a, int reqsize)
  +EP_API_EXPORT(void *) ep_palloc(struct tMemPool *a, int reqsize)
   {
   #ifdef ALLOC_USE_MALLOC
       int size = reqsize + CLICK_SZ;
  @@ -826,14 +826,14 @@
   #endif
   }
   
  -API_EXPORT(void *) ep_pcalloc(struct tMemPool *a, int size)
  +EP_API_EXPORT(void *) ep_pcalloc(struct tMemPool *a, int size)
   {
       void *res = ep_palloc(a, size);
       memset(res, '\0', size);
       return res;
   }
   
  -API_EXPORT(char *) ep_pstrdup(struct tMemPool *a, const char *s)
  +EP_API_EXPORT(char *) ep_pstrdup(struct tMemPool *a, const char *s)
   {
       char *res;
       size_t len;
  @@ -846,7 +846,7 @@
       return res;
   }
   
  -API_EXPORT(char *) ep_pstrndup(struct tMemPool *a, const char *s, int n)
  +EP_API_EXPORT(char *) ep_pstrndup(struct tMemPool *a, const char *s, int n)
   {
       char *res;
   
  @@ -858,7 +858,7 @@
       return res;
   }
   
  -API_EXPORT_NONSTD(char *) ep_pstrcat(tMemPool *a,...)
  +EP_API_EXPORT_NONSTD(char *) ep_pstrcat(tMemPool *a,...)
   {
       char *cp, *argp, *res;
   
  @@ -975,7 +975,7 @@
   #endif
   }
   
  -API_EXPORT(char *) ep_pvsprintf(tMemPool *p, const char *fmt, va_list ap)
  +EP_API_EXPORT(char *) ep_pvsprintf(tMemPool *p, const char *fmt, va_list ap)
   {
   #ifdef ALLOC_USE_MALLOC
       struct psprintf_data ps;
  @@ -1038,7 +1038,7 @@
   #endif
   }
   
  -API_EXPORT_NONSTD(char *) ep_psprintf(tMemPool *p, const char *fmt, ...)
  +EP_API_EXPORT_NONSTD(char *) ep_psprintf(tMemPool *p, const char *fmt, ...)
   {
       va_list ap;
       char *res;
  
  
  
  1.1.2.13  +3 -9      embperl/Attic/eppriv.h
  
  Index: eppriv.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/eppriv.h,v
  retrieving revision 1.1.2.12
  retrieving revision 1.1.2.13
  diff -u -r1.1.2.12 -r1.1.2.13
  --- eppriv.h  25 Jan 2002 08:00:31 -0000      1.1.2.12
  +++ eppriv.h  28 Jan 2002 20:28:34 -0000      1.1.2.13
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: eppriv.h,v 1.1.2.12 2002/01/25 08:00:31 richter Exp $
  +#   $Id: eppriv.h,v 1.1.2.13 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -167,7 +167,7 @@
                                   /*in*/ tMemPool    * pPool,
                                   /*in*/ tApacheDirConfig * pDirCfg,
                                   /*out*/ tAppConfig * pConfig);
  -int embperl_GetApacheReqConfig (/*in*/ tThreadData * pThread,
  +int embperl_GetApacheReqConfig (/*in*/ tApp *        pApp,
                                   /*in*/ tMemPool    * pPool,
                                   /*in*/ tApacheDirConfig * pDirCfg,
                                   /*out*/ tReqConfig * pReqConfig) ;
  @@ -178,7 +178,7 @@
   int embperl_GetApacheReqParam  (/*in*/  tApp        * pApp,
                                   /*in*/ tMemPool    * pPool,
                                   /*in*/  request_rec * r,
  -                                /*out*/ tReqConfig * pParam) ;
  +                                /*out*/ tReqParam * pParam) ;
   
   
   
  @@ -197,12 +197,6 @@
                                   /*in*/ tMemPool    * pPool,
                                   /*out*/ tReqParam  * pParam) ;
   
  -int    embperl_SetupComponent  (/*in*/ tReq *                 r,
  -                                /*in*/ SV *                   pPerlParam,
  -                                /*out*/tComponent * *         ppComponent) ;
  -
  -int    embperl_CleanupComponent  (/*in*/ tReq *                r,
  -                                  /*in*/ tComponent *          c) ;
   
   /* --- init --- */
   
  
  
  
  1.1.2.7   +15 -7     embperl/Attic/eppublic.h
  
  Index: eppublic.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/eppublic.h,v
  retrieving revision 1.1.2.6
  retrieving revision 1.1.2.7
  diff -u -r1.1.2.6 -r1.1.2.7
  --- eppublic.h        25 Jan 2002 07:04:31 -0000      1.1.2.6
  +++ eppublic.h        28 Jan 2002 20:28:34 -0000      1.1.2.7
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: eppublic.h,v 1.1.2.6 2002/01/25 07:04:31 richter Exp $
  +#   $Id: eppublic.h,v 1.1.2.7 2002/01/28 20:28:34 richter Exp $
   #
   
###################################################################################*/
   
  @@ -29,14 +29,22 @@
                                 SV *             pPerlParam,
                                 tReq * *         ppReq) ;
   
  -int     embperl_RunRequest  (pTHX_
  -                             SV *             pApacheReqSV,
  -                             SV *             pPerlParam) ;
  +int     embperl_RunRequest (tReq * r) ;
  +int     embperl_CleanupRequest (tReq *  r) ;
   
  -int     embperl_RunComponent(/*in*/ tReq *           r,
  -                             /*in*/ SV *             pPerlParam) ;
  +int     embperl_ExecuteRequest  (pTHX_
  +                                 SV *             pApacheReqSV,
  +                                 SV *             pPerlParam) ;
  +int     embperl_SetupComponent  (tReq *                 r,
  +                                SV *                   pPerlParam,
  +                                tComponent * *         ppComponent) ;
  +int     embperl_RunComponent(tComponent *          c) ;
  +
  +int     embperl_CleanupComponent  (tComponent *          c) ;
  +
  +int     embperl_ExecuteComponent(tReq *           r,
  +                                 SV *             pPerlParam) ;
   
  -int    embperl_CleanupRequest (tReq *  r) ;
   
   #define ERRDATLEN 1024
   
  
  
  
  1.70.4.110 +2 -3      embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.70.4.109
  retrieving revision 1.70.4.110
  diff -u -r1.70.4.109 -r1.70.4.110
  --- test.pl   27 Jan 2002 20:04:34 -0000      1.70.4.109
  +++ test.pl   28 Jan 2002 20:28:34 -0000      1.70.4.110
  @@ -11,7 +11,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: test.pl,v 1.70.4.109 2002/01/27 20:04:34 richter Exp $
  +#   $Id: test.pl,v 1.70.4.110 2002/01/28 20:28:34 richter Exp $
   #
   ###################################################################################
   
  @@ -1960,7 +1960,7 @@
                                                }) ;
                $t_exec += 0 ; # Embperl::Clock () - $t1 ; 
                    
  -                $err = CheckError ($EP2?6:8) if ($err == 0) ;
  +                $err = CheckError ($EP2?5:8) if ($err == 0) ;
   
                   if (@errors != ($EP2?5:12))
                       {
  @@ -2010,7 +2010,6 @@
                    }
                   }
   
  -         Embperl::Term () ;
            }
        }
   
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.2   +39 -37    embperl/Embperl/Attic/Object.pm
  
  Index: Object.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl/Attic/Object.pm,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- Object.pm 22 Jan 2002 09:29:55 -0000      1.1.2.1
  +++ Object.pm 28 Jan 2002 20:28:35 -0000      1.1.2.2
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Object.pm,v 1.1.2.1 2002/01/22 09:29:55 richter Exp $
  +#   $Id: Object.pm,v 1.1.2.2 2002/01/28 20:28:35 richter Exp $
   #
   ###################################################################################
   
  @@ -49,13 +49,14 @@
       $VERSION
       $volume
       $fsignorecase
  +    %packages
       ) ;
   
   
   @ISA = qw(Exporter DynaLoader);
   
   
  -$VERSION = '1.3.1';
  +$VERSION = '2.0b6';
   
   
   $volume = (File::Spec -> splitpath ($Embperl::cwd))[0] ;
  @@ -108,7 +109,7 @@
       {
       my ($req, $req_rec) = @_ ; 
   
  -    Embperl::ScanEnvironment ($req, $req_rec) ;
  +    #Embperl::ScanEnvironment ($req, $req_rec) ;
   
       $req -> {object_base}           = $ENV{EMBPERL_OBJECT_BASE} || '_base.html' ;
       $req -> {object_app}            = $ENV{EMBPERL_OBJECT_APP}     if (exists 
($ENV{EMBPERL_OBJECT_APP})) ;
  @@ -161,10 +162,13 @@
       {
       my $req = shift ;
       
  +    my ($rc, $r) = Embperl::Req::InitRequest ($req -> {req_rec}, $req) ;
  +    return $rc if ($rc) ;
  +
       my $cwd ;
  -    my $filename = norm_path ($req -> {inputfile}, $cwd) ;
  -    my $r        ;
  -    $r = $req -> {req_rec} if ($req -> {req_rec}) ;
  +    my $filename = norm_path ($r -> param -> filename, $cwd) ;
  +    my $apr        ;
  +    $apr = $req -> {req_rec} if ($req -> {req_rec}) ;
   
       if (exists $req -> {filesmatch} && 
                            !($filename =~ m{$req->{filesmatch}})) 
  @@ -179,14 +183,13 @@
           }
   
   
  -    Embperl::SetupFormData ($req, undef, $req -> {debug}, $req -> {options}) ;
   
       my $basename  = $req -> {object_base} ;
       $basename     =~ s/%modifier%/$req->{object_base_modifier}/ ;
       my $addpath   =  $req -> {object_addpath}  ;
       my @addpath   = $addpath?split (/$Embperl::pathsplit:/, $addpath):() ;
       my $directory ;
  -    my $rootdir   = $r?norm_path ($r -> document_root, $cwd):"$volume/" ;
  +    my $rootdir   = $apr?norm_path ($apr -> document_root, $cwd):"$volume/" ;
       my $stopdir   = norm_path ($req -> {object_stopdir}, $cwd) ;
       my $debug     = $req -> {debug} & Embperl::Constant::dbgObjectSearch ;
       
  @@ -201,8 +204,6 @@
       
       my $searchpath  ;
         
  -    $r -> notes ('EMBPERL_orgfilename',  $filename) if ($r) ;
  - 
       print Embperl::LOG "[$$]Embperl::Object Request Filename: $filename\n" if 
($debug);
       print Embperl::LOG "[$$]Embperl::Object basename: $basename\n"  if ($debug);
       
  @@ -219,7 +220,7 @@
           print Embperl::LOG "[$$]Embperl::Object Check for base: $fn\n"  if ($debug);
           if (-e $fn)
               {
  -            $r -> filename ($fn) if ($r) ;
  +            $apr -> filename ($fn) if ($apr) ;
               $found = 1 ;
               }
           else
  @@ -247,7 +248,7 @@
               print Embperl::LOG "[$$]Embperl::Object Check for base: $fn\n"  if 
($debug);
               if (-e $fn)
                   {
  -                $r -> filename ($fn) if ($r) ;
  +                $apr -> filename ($fn) if ($apr) ;
                   $found = 1 ;
                   last ;
                   }
  @@ -260,29 +261,30 @@
           {
           print Embperl::LOG "[$$]Embperl::Object Found Base: $fn\n"  if ($debug);
           print Embperl::LOG "[$$]Embperl::Object path: $searchpath\n"  if ($debug);
  -        my ($basenew, $basepackage) = Embperl::GetPackageOfFile ($fn, $req -> 
{'package'} || '', -M _, $ENV{EMBPERL_EP1COMPAT} || 0) ;
  +
  +        
  +        my $basepackage = $packages{$fn} ;
   
           if (!-f $filename && exists $req -> {object_fallback})
               {
               $fallback = 1 ;
               $filename = $req -> {object_fallback} ;
               print Embperl::LOG "[$$]Embperl::Object use fallback: $filename\n"  if 
($debug);
  -            $r -> notes ('EMBPERL_orgfilename',  $filename) if ($r) ;
               }
   
   
  -        my ($new, $package)  ;
  -        ($new, $package) = Embperl::GetPackageOfFile ($filename, $req -> 
{'package'} || '', -M _, $ENV{EMBPERL_EP1COMPAT} || 0) if (!$fallback) ;
  +        my $package = $req -> {'package'} || $packages{$filename} ;
   
  -        if ($basenew)
  +        if (!$basepackage)
               {
  -            print Embperl::LOG "[$$]Embperl::Object new Base: $fn, package = 
$basepackage\n"  if ($debug);
  +            print Embperl::LOG "[$$]Embperl::Object import new Base: $fn\n"  if 
($debug);
               
  -            Embperl::Execute ({%$req, inputfile => $fn, import => 0 }) ;
  -
  -            #no strict ;
  -            #@{"$basepackage\:\:ISA"} = ($req -> {object_handler_class} || 
'Embperl::Req') ;
  -            #use strict ;
  +            my $cparam = {%$req, inputfile => $fn, import => 0 } ;
  +            my $c = $r -> setup_component ($cparam) ;
  +            $c -> run ;
  +            $basepackage = $packages{$fn} = $c -> curr_package ;
  +            $c -> cleanup ;
  +            print Embperl::LOG "[$$]Embperl::Object import base finished: $fn, 
package = $basepackage\n"  if ($debug);
               }
           no strict ;
           if (!@{"$basepackage\:\:ISA"})
  @@ -291,17 +293,17 @@
               }
           use strict ;
   
  -        if ($new || $fallback)
  +        my $new = 0 ;
  +        if (!$package || $fallback)
               {
  -            print Embperl::LOG "[$$]Embperl::Object new file: $filename, package = 
$package\n"  if ($debug && !$fallback);
  +            print Embperl::LOG "[$$]Embperl::Object import new file: $filename\n"  
if ($debug && !$fallback);
               
  -            Embperl::Execute ({%$req, inputfile => $filename, import => 0, 'path' 
=> $searchpath }) ;
  -
  -            if ($fallback)
  -                {
  -                $package = $Embperl::evalpackage ;
  -                print Embperl::LOG "[$$]Embperl::Object new file: $filename, 
package = $package\n"  if ($debug);
  -                }
  +            my $cparam = {%$req, inputfile => $filename, import => 0, 'path' => 
$searchpath } ;
  +            my $c = $r -> setup_component ($cparam) ;
  +            $c -> run ;
  +            $package = $packages{$filename} = $c -> curr_package ;
  +            $c -> cleanup ;
  +            print Embperl::LOG "[$$]Embperl::Object import finished: $filename, 
package = $package\n"  if ($debug);
               }
   
           no strict ;
  @@ -314,11 +316,11 @@
           $req -> {'inputfile'} = $ENV{PATH_TRANSLATED} = $fn ;
           $req -> {'bless'}     = $package ;
           $req -> {'path'}      = $searchpath ;
  -        $req -> {'reqfilename'} = $filename if ($filename ne $fn) ;
  +        $r -> param -> filename ($filename) if ($filename ne $fn) ;
   
  -        if ($req -> {object_app})
  +        if (0) #$req -> {object_app})
               {
  -            my $app = Embperl::Execute ({'object'     => $req -> {object_app}, 
  +            my $app = Embperl::Req::ExecuteComponent ($r, {'object'     => $req -> 
{object_app}, 
                                        'syntax'     => 'Perl', 
                                        'path'       => $searchpath, 
                                        'param'      => [$req],
  @@ -335,11 +337,11 @@
               }
   
   
  -        return Embperl::Execute ($req) ;
  +        return $r -> execute_component ($req) ;
           }
   
      
  -    $r -> log_error ("Embperl::Object searched '$searchpath'" . ($addpath?" and 
'$addpath' ":''))  if ($r) ;
  +    $apr -> log_error ("Embperl::Object searched '$searchpath'" . ($addpath?" and 
'$addpath' ":''))  if ($apr) ;
   
       return &NOT_FOUND ;
       }
  
  
  
  1.1.2.3   +1 -3      embperl/Embperl/Attic/Run.pm
  
  Index: Run.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl/Attic/Run.pm,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- Run.pm    24 Jan 2002 08:37:06 -0000      1.1.2.2
  +++ Run.pm    28 Jan 2002 20:28:35 -0000      1.1.2.3
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Run.pm,v 1.1.2.2 2002/01/24 08:37:06 richter Exp $
  +#   $Id: Run.pm,v 1.1.2.3 2002/01/28 20:28:35 richter Exp $
   #
   ###################################################################################
   
  @@ -52,8 +52,6 @@
        }               
        
      
  -    tie *Embperl::LOG, 'Embperl::Log' ;
  -
       $param{'param'} = \@param ;
   
       
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.24.4.32 +207 -117  embperl/test/conf/httpd.conf.src
  
  Index: httpd.conf.src
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v
  retrieving revision 1.24.4.31
  retrieving revision 1.24.4.32
  diff -u -r1.24.4.31 -r1.24.4.32
  --- httpd.conf.src    14 Dec 2001 20:55:54 -0000      1.24.4.31
  +++ httpd.conf.src    28 Jan 2002 20:28:35 -0000      1.24.4.32
  @@ -1,6 +1,6 @@
   print OFH <<EOD ;
   #
  -# Testconfig for HTML::Embperl make test
  +# Testconfig for Embperl make test
   #
   
   ServerRoot \"$EPPATH/test\"
  @@ -57,9 +57,12 @@
   
   PerlSetEnv EMBPERL_SRC \"$EPPATH\"
   SetEnv EMBPERL_SRC \"$EPPATH\"
  -
  -PerlSetEnv DMALLOC_OPTIONS \"log=$EPPATH/test/tmp/httpd.dmalloc.log,debug=0x3f03\" 
  -SetEnv DMALLOC_OPTIONS \"log=$EPPATH/test/tmp/httpd.dmalloc.log,debug=0x3f03\" 
  +
  +
  +PerlSetEnv DMALLOC_OPTIONS \"log=$EPPATH/test/tmp/httpd.dmalloc.log,debug=0x3f03\" 
  +
  +SetEnv DMALLOC_OPTIONS \"log=$EPPATH/test/tmp/httpd.dmalloc.log,debug=0x3f03\" 
  +
   
   EOD
   
  @@ -123,9 +126,12 @@
   
   PerlScript \"$EPPATH/test/conf/$EPSTARTUP\"
   
  +Embperl_UseEnv on
  +
  +
   <Location /embperl/log>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   </Location>
   
  @@ -134,10 +140,14 @@
   AddType text/html .htm
   AddType text/html .xhtm
   
  -Alias /embperl/asclibxslt \"$EPPATH/test/html/pod\"
  -Alias /embperl/ascxalan \"$EPPATH/test/html/pod\"
  -Alias /embperl/libxslt \"$EPPATH/test/html/xml\"
  -Alias /embperl/xalan \"$EPPATH/test/html/xml\"
  +Alias /embperl/asclibxslt \"$EPPATH/test/html/pod\"
  +
  +Alias /embperl/ascxalan \"$EPPATH/test/html/pod\"
  +
  +Alias /embperl/libxslt \"$EPPATH/test/html/xml\"
  +
  +Alias /embperl/xalan \"$EPPATH/test/html/xml\"
  +
   Alias /embperl/uidurl/ \"$EPPATH/test/html/sidurl/\"
   Alias /embperl/suidurl/ \"$EPPATH/test/html/sidurl/\"
   Alias /embperl/sub/ \"$EPPATH/test/html/\"
  @@ -149,61 +159,87 @@
   
   <Location /embperl/sub>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv LOC embperl_sub
   </Location>
   
   <Location /embperl>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv LOC embperl
   </Location>
   
   <Location /embperl2>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv LOC embperl
   </Location>
   
   <Location /embperl/safe>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 4
   </Location>
   
  -
  -
  -<Location /embperl/libxslt>
  -PerlSetEnv EMBPERL_RECIPE EmbperlLibXSLT
  -PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  -</Location>
  -
  -<Location /embperl/asclibxslt>
  -PerlSetEnv EMBPERL_RECIPE EmbperlLibXSLT
  -PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  -PerlSetEnv EMBPERL_SYNTAX POD
  -</Location>
  -
  -<Location /embperl/xalan>
  -PerlSetEnv EMBPERL_RECIPE EmbperlXalanXSLT
  -PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  -</Location>
  -
  -<Location /embperl/ascxalan>
  -PerlSetEnv EMBPERL_RECIPE EmbperlXalanXSLT
  -PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  -PerlSetEnv EMBPERL_SYNTAX POD
  -</Location>
  -
  -
  -
  +
  +
  +
  +
  +<Location /embperl/libxslt>
  +
  +PerlSetEnv EMBPERL_RECIPE EmbperlLibXSLT
  +
  +PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  +
  +</Location>
  +
  +
  +
  +<Location /embperl/asclibxslt>
  +
  +PerlSetEnv EMBPERL_RECIPE EmbperlLibXSLT
  +
  +PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  +
  +PerlSetEnv EMBPERL_SYNTAX POD
  +
  +</Location>
  +
  +
  +
  +<Location /embperl/xalan>
  +
  +PerlSetEnv EMBPERL_RECIPE EmbperlXalanXSLT
  +
  +PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  +
  +</Location>
  +
  +
  +
  +<Location /embperl/ascxalan>
  +
  +PerlSetEnv EMBPERL_RECIPE EmbperlXalanXSLT
  +
  +PerlSetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
  +
  +PerlSetEnv EMBPERL_SYNTAX POD
  +
  +</Location>
  +
  +
  +
  +
  +
  +
  +
   <Location /embperl/opmask>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 12
   PerlSetEnv EMBPERL_COMPARTMENT TEST
  @@ -212,7 +248,7 @@
   
   <Location /embperl/rawinput>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 16
   </Location>
  @@ -224,21 +260,21 @@
   
   <Location /embperl/nochdir>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 384
   </Location>
   
   <Location /embperl/nph>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 64
   </Location>
   
   <Location /embperl/stdout>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   #PerlSetEnv EMBPERL_OPTIONS 16384
   PerlSetEnv EMBPERL_OPTIONS 16400
  @@ -248,21 +284,21 @@
   
   <Location /embperl/allform>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 8192
   </Location>
   
   <Location /embperl/noerr>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 2
   </Location>
   
   <Location /embperl/errdoc>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 262144
   ErrorDocument 500 /html/errmsg.htm
  @@ -270,7 +306,7 @@
   
   <Location /embperl/errdoc/epl>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 262144
   ErrorDocument 500 /embperl/errmsg2.htm
  @@ -280,14 +316,14 @@
   
   <Location /embperl/match>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_FILESMATCH \\.htm\$
   </Location>
   
   <Location /embperl/ifunc>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_INPUT_FUNC \"ProxyInput, /embperl/ifunc, 
http://localhost:$EPPORT/embperl/ifuncsrc\";
   </Location>
  @@ -302,7 +338,7 @@
   
   #<FilesMatch \".*\.ehtml\$\">
   #SetHandler perl-script
  -#PerlHandler HTML::Embperl
  +#PerlHandler Embperl
   #Options ExecCGI
   #PerlSetEnv EMBPERL_INPUT_FUNC \"ProxyInput, , http://localhost:8529/src\";
   #</FilesMatch>
  @@ -322,7 +358,7 @@
   #
   #<FilesMatch \".*\\.ehtml\$\">
   #SetHandler perl-script
  -#PerlHandler HTML::Embperl
  +#PerlHandler Embperl
   #Options ExecCGI
   #PerlSetEnv EMBPERL_INPUT_FUNC \"ProxyInput, , http://www:$EPPORT2\";
   #</FilesMatch>
  @@ -341,7 +377,7 @@
   
   <Location /embperl/ofunc>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OUTPUT_FUNC \"LogOutput, $EPPATH/test/tmp/log.out\"
   </Location>
  @@ -400,7 +436,7 @@
   #<Location /embperldbg/>
   #PerlFixupHandler Apache::DB
   #SetHandler perl-script
  -#PerlHandler HTML::Embperl
  +#PerlHandler Embperl
   #Options ExecCGI
   #</Location>
   
  @@ -413,7 +449,7 @@
   PerlSetEnv EMBPERL_OBJECT_FALLBACK epofallback.htm
   PerlSetEnv EMBPERL_FILESMATCH \"\\.htm.?\$|\\.epl\$\"
   SetHandler perl-script
  -PerlHandler HTML::EmbperlObject 
  +PerlHandler EmbperlObject 
   Options ExecCGI
   </Location>
   
  @@ -424,7 +460,7 @@
   PerlSetEnv EMBPERL_OBJECT_FALLBACK epofallback.htm
   PerlSetEnv EMBPERL_FILESMATCH \"\\.htm.?\$|\\.epl\$\"
   SetHandler perl-script
  -PerlHandler HTML::EmbperlObject 
  +PerlHandler EmbperlObject 
   Options ExecCGI
   </Location>
   
  @@ -433,21 +469,24 @@
   PerlSetEnv EMBPERL_OBJECT_FALLBACK epofallback.htm
   PerlSetEnv EMBPERL_FILESMATCH \"\\.htm.?\$|\\.epl\$\"
   SetHandler perl-script
  -PerlHandler HTML::EmbperlObject 
  +PerlHandler EmbperlObject 
   Options ExecCGI
   </Location>
   
   
   <Location /embperl/SSI/>
  -PerlSetEnv EMBPERL_SYNTAX SSI
  +PerlSetEnv EMBPERL_SYNTAX SSI
  +
   </Location>
   
   <Location /embperl/SSIEP/>
  -PerlSetEnv EMBPERL_SYNTAX "Embperl SSI"
  +PerlSetEnv EMBPERL_SYNTAX "Embperl SSI"
  +
   </Location>
   
   <Location /embperl/pod/>
  -PerlSetEnv EMBPERL_SYNTAX POD
  +PerlSetEnv EMBPERL_SYNTAX POD
  +
   </Location>
   
   
  @@ -463,64 +502,110 @@
   <Location /cgi-bin/pod/>
   SetEnv EMBPERL_SYNTAX POD
   </Location>
  -
  -#
  -# Configuration for example access
  +
  +
   #
   
  -<Location /eg>
  -SetEnv EMBPERL_XSLTPROC libxslt
  -</Location>
  +# Configuration for example access
  +
  +#
  +
  +<Location /eg>
  +
  +SetEnv EMBPERL_XSLTPROC libxslt
  +
  +</Location>
  +
   
   <Location /eg/x>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   </Location>
  -
  -
  -<Location /eg/web>
  -SetEnv EMBPERL_RECIPE EmbperlWeb
  -SetEnv EMBPERL_ALLOW .
  -PerlSetEnv EMBPERL_OBJECT_BASE base.htm
  -PerlSetEnv EMBPERL_OBJECT_APP  epwebapp.pl
  -PerlSetEnv EMBPERL_OBJECT_STOPDIR \"$EPPATH/eg/web\"
  -PerlSetEnv EMBPERL_FILESMATCH \"\\.htm.?\$|\\.epl\$|\\.xml\$|\\.pod\$\"
  -SetHandler perl-script
  -PerlHandler HTML::EmbperlObject 
  -Options ExecCGI
  -</Location>
  -
  -<Location /eg/xml>
  -SetHandler perl-script
  -PerlHandler HTML::Embperl
  -Options ExecCGI
  -SetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/xml/pod.xsl\"
  -SetEnv EMBPERL_XSLTPROC libxslt
  -SetEnv EMBPERL_RECIPE XSLT
  -</Location>
  -
  -<Files NEWS.xml>
  -SetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/xml/NEWS.xsl\"
  -</Files>
  -
  -<LocationMatch \"xalan\$\">
  -SetEnv EMBPERL_RECIPE XalanXSLT
  -</LocationMatch>
  -
  -<LocationMatch \"libxslt\$\">
  -SetEnv EMBPERL_RECIPE LibXSLT
  -</LocationMatch>
  -
  -<Location /eg/images/aim>
  -PerlSetVar AIMParameter \"pointsize=14 font=$EPPATH/../fonts/OCRAEXT.ttf\"
  +
  +
  +
  +
  +<Location /eg/web>
  +
  +SetEnv EMBPERL_RECIPE EmbperlWeb
  +
  +SetEnv EMBPERL_ALLOW .
  +
  +PerlSetEnv EMBPERL_OBJECT_BASE base.htm
  +
  +PerlSetEnv EMBPERL_OBJECT_APP  epwebapp.pl
  +
  +PerlSetEnv EMBPERL_OBJECT_STOPDIR \"$EPPATH/eg/web\"
  +
  +PerlSetEnv EMBPERL_FILESMATCH \"\\.htm.?\$|\\.epl\$|\\.xml\$|\\.pod\$\"
  +
  +SetHandler perl-script
  +
  +PerlHandler EmbperlObject 
  +
  +Options ExecCGI
  +
  +</Location>
  +
  +
  +
  +<Location /eg/xml>
  +
  +SetHandler perl-script
  +
  +PerlHandler Embperl
  +
  +Options ExecCGI
  +
  +SetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/xml/pod.xsl\"
  +
  +SetEnv EMBPERL_XSLTPROC libxslt
  +
  +SetEnv EMBPERL_RECIPE XSLT
  +
  +</Location>
  +
  +
  +
  +<Files NEWS.xml>
  +
  +SetEnv EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/xml/NEWS.xsl\"
  +
  +</Files>
  +
  +
  +
  +<LocationMatch \"xalan\$\">
  +
  +SetEnv EMBPERL_RECIPE XalanXSLT
  +
  +</LocationMatch>
  +
  +
  +<LocationMatch \"libxslt\$\">
  +
  +SetEnv EMBPERL_RECIPE LibXSLT
  +
  +</LocationMatch>
  +
  +
  +
  +<Location /eg/images/aim>
  +
  +PerlSetVar AIMParameter \"pointsize=14 font=$EPPATH/../fonts/OCRAEXT.ttf\"
  +
   #PerlSetVar AIMParameter \"pointsize=14 gravity=left 
font=$EPPATH/../fonts/OCRAEXT.ttf\"
   PerlSetVar AIMCacheDir  \"$EPPATH/eg/images/aim/cache\"
   PerlSetVar AIMDebug 1
  -PerlFixupHandler Apache::ImageMagick
  -</location>
  -
  -
  +PerlFixupHandler Apache::ImageMagick
  +
  +</location>
  +
  +
  +
  +
  +
   <Location /mp>
   SetHandler perl-script
   PerlHandler "sub { print 'Hello' }"
  @@ -535,8 +620,10 @@
   #TransferLog $EPNULL
   #ScoreBoardFile $EPNULL
   LockFile tmp/httpd.lock
  -LogFormat \"%h %l %u %t \\"%r\\" %s %b %{connection}o pid=%P %Tsec\" std
  -CustomLog tmp/httpd.acc.log std
  +LogFormat \"%h %l %u %t \\"%r\\" %s %b %{connection}o pid=%P %Tsec\" std
  +
  +CustomLog tmp/httpd.acc.log std
  +
   
   <IfModule apache_ssl.c>
   SSLDisable
  @@ -572,7 +659,7 @@
   
   SetHandler perl-script
   
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   
   Options ExecCGI
   
  @@ -586,7 +673,7 @@
   
   SetHandler perl-script
   
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   
   Options ExecCGI
   
  @@ -600,7 +687,7 @@
   
   SetHandler perl-script
   
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   
   Options ExecCGI
   
  @@ -635,7 +722,7 @@
   
   <Location /embperl/hw>
   SetHandler perl-script
  -PerlHandler HTML::Embperl
  +PerlHandler Embperl
   Options ExecCGI
   PerlSetEnv EMBPERL_OPTIONS 8083
   PerlSetEnv EMBPERL_DEBUG 0
  @@ -657,6 +744,9 @@
   
   EOD
   
  -
  -
  -
  +
  +
  +
  +
  +
  +
  
  
  
  1.9.6.8   +4 -3      embperl/test/conf/startup.pl
  
  Index: startup.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/startup.pl,v
  retrieving revision 1.9.6.7
  retrieving revision 1.9.6.8
  diff -u -r1.9.6.7 -r1.9.6.8
  --- startup.pl        14 Dec 2001 20:55:54 -0000      1.9.6.7
  +++ startup.pl        28 Jan 2002 20:28:35 -0000      1.9.6.8
  @@ -1,3 +1,4 @@
  +
   BEGIN { 
       use lib qw{ . } ;
       use ExtUtils::testlib ;
  @@ -24,15 +25,15 @@
   
   use Apache ;
   use Apache::Registry ;
  -use HTML::Embperl ;
  +use Embperl ;
   
  -$cp = HTML::Embperl::AddCompartment ('TEST') ;
  +$cp = Embperl::Util::AddCompartment ('TEST') ;
   
   $cp -> deny (':base_loop') ;
   $testshare = "Shared Data" ;
   $cp -> share ('$testshare') ;  
   
   
  -require "$ENV{EMBPERL_SRC}/eg/webutil/EmbperlWebRecipe.pm" ;
  +##require "$ENV{EMBPERL_SRC}/eg/webutil/EmbperlWebRecipe.pm" ;
   
   1 ;
  
  
  
  1.8.6.4   +1 -0      embperl/test/conf/startup_dso.pl
  
  Index: startup_dso.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/startup_dso.pl,v
  retrieving revision 1.8.6.3
  retrieving revision 1.8.6.4
  diff -u -r1.8.6.3 -r1.8.6.4
  --- startup_dso.pl    16 May 2001 06:45:26 -0000      1.8.6.3
  +++ startup_dso.pl    28 Jan 2002 20:28:35 -0000      1.8.6.4
  @@ -1,3 +1,4 @@
  +
   BEGIN { 
       use lib qw{ . } ;
       use ExtUtils::testlib ;
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.5   +20 -0     embperl/xsbuilder/Attic/WrapXS.pm
  
  Index: WrapXS.pm
  ===================================================================
  RCS file: /home/cvs/embperl/xsbuilder/Attic/WrapXS.pm,v
  retrieving revision 1.1.2.4
  retrieving revision 1.1.2.5
  diff -u -r1.1.2.4 -r1.1.2.5
  --- WrapXS.pm 25 Jan 2002 08:01:01 -0000      1.1.2.4
  +++ WrapXS.pm 28 Jan 2002 20:28:36 -0000      1.1.2.5
  @@ -69,3 +69,23 @@
   
   
   sub pm_text { undef } ;
  +
  +sub makefilepl_text {
  +    my $self = shift ;
  +
  +    my $code = $self -> SUPER::makefilepl_text (@_) ;
  +
  +    $code .= q[
  +
  +sub MY::top_targets
  +     {
  +     my ($txt) = shift -> MM::top_targets (@_) ;
  +        $txt =~ s/config\s+pm_to_blib\s+subdirs\s+linkext/\$(O_FILES) subdirs/ ; 
  +     return $txt ;
  +     }
  +
  +] ;
  +
  +    return $code ;
  +    }
  +
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.7   +16 -6     embperl/xsbuilder/maps/Attic/ep_function.map
  
  Index: ep_function.map
  ===================================================================
  RCS file: /home/cvs/embperl/xsbuilder/maps/Attic/ep_function.map,v
  retrieving revision 1.1.2.6
  retrieving revision 1.1.2.7
  diff -u -r1.1.2.6 -r1.1.2.7
  --- ep_function.map   27 Jan 2002 12:40:00 -0000      1.1.2.6
  +++ ep_function.map   28 Jan 2002 20:28:36 -0000      1.1.2.7
  @@ -1,9 +1,19 @@
  -
  -MODULE=Embperl::Req PREFIX=embperl_
  +
  +MODULE=Embperl PREFIX=embperl_
   
   ! embperl_Init
   ! embperl_InitRequest | | pApacheReqSV,pPerlParam,<ppReq
  -! embperl_CleanupRequest
  -! embperl_Init
  -! embperl_InitRequestComponent
  -! embperl_RunRequest
  +! embperl_InitRequestComponent
  +! embperl_ExecuteRequest
  +
  +MODULE=Embperl::Req PREFIX=embperl_
  +
  + embperl_RunRequest       | embperl_RunRequest       | | embperl_run
  + embperl_CleanupRequest   | embperl_CleanupRequest   | | embperl_cleanup
  + embperl_SetupComponent   | embperl_SetupComponent   | r,pPerlParam,<ppComponent | 
embperl_setup_component     
  + embperl_ExecuteComponent | embperl_ExecuteComponent | | embperl_execute_component
  +
  +MODULE=Embperl::Component PREFIX=embperl_
  +
  + embperl_CleanupComponent | embperl_CleanupComponent | | embperl_cleanup
  + embperl_RunComponent     | embperl_RunComponent     | | embperl_run
  
  
  
  1.1.2.10  +18 -43    embperl/xsbuilder/maps/Attic/ep_structure.map
  
  Index: ep_structure.map
  ===================================================================
  RCS file: /home/cvs/embperl/xsbuilder/maps/Attic/ep_structure.map,v
  retrieving revision 1.1.2.9
  retrieving revision 1.1.2.10
  diff -u -r1.1.2.9 -r1.1.2.10
  --- ep_structure.map  27 Jan 2002 20:04:36 -0000      1.1.2.9
  +++ ep_structure.map  28 Jan 2002 20:28:36 -0000      1.1.2.10
  @@ -23,17 +23,17 @@
      errdat2[ERRDATLEN] | errdat2
      lastwarn[ERRDATLEN] | lastwarn
   !   pDomTreeAV | dom_tree_av
  -   pCleanupAV | cleanup
  +   pCleanupAV | cleanup_vars
      pCleanupPackagesHV | cleanup_packages
  -
      startclock
      stsv_count
   !   MemCheckpoint | mem_checkpoint
   !   pApacheConfig | apache_config
  -
      new
   !   private
    </struct tReq>
  +
  +
    <tApp>
   !   _perlsv
   !   pPerlTHX | perl_thx
  @@ -51,6 +51,8 @@
      new
   !   private
    </tApp>
  +
  +
    <tAppConfig>
   !   _perlsv
      sAppName | app_name
  @@ -65,18 +67,21 @@
      sLog | log
      bDebug | debug
      sMailhost | mailhost
  -
      sMailhelo | mailhelo
  -
      sMailfrom | mailfrom
  -
      bMaildebug | maildebug
  -
      sMailErrorsTo | mail_errors_to
  -
  +   sObjectBase | object_base
  +   sObjectApp | object_app
  +   sObjectAddpath | object_addpath
  +   sObjectStopdir | object_stopdir
  +   sObjectFallback | object_fallback
  +   sObjectHandlerClass | object_handler_class
      new
   !   private
    </tAppConfig>
  +
  +
    <tComponent>
   !   _perlsv
   !   pPool | pool
  @@ -132,6 +137,8 @@
      new
   !   private
    </tComponent>
  +
  +
    <tComponentConfig>
   !   _perlsv
      sPackage | package
  @@ -152,10 +159,11 @@
      sCompartment | compartment
   !   pOpcodeMask | opcode_mask
      nCleanup | cleanup
  -
      new
   !   private
    </tComponentConfig>
  +
  +
    <tComponentParam>
   !   _perlsv
      sInputfile | inputfile
  @@ -166,13 +174,9 @@
      nImport | import
      nFirstLine | firstline
      nMtime | mtime
  -
      pParam | param
  -
      pFormHash | fdat
  -
      pFormArray | ffld
  -
      new
   !   private
    </tComponentParam>
  @@ -219,66 +223,37 @@
   !   private
    </tThreadData>
    <tTokenTable>
  -
   !   pCompilerInfo | compiler_info
  -
      sName | name
  -
   !   sRootNode | root_node
  -
   !   cStartChars | start_chars
  -
   !   cAllChars | all_chars
  -
   !   pTokens | tokens
  -
   !   numTokens | tokens
  -
   !   bLSearch | lsearch
  -
   !   nDefNodeType | def_node_type
  -
   !   pContainsToken | contains_token
  -
   !   new
  -
   !   private
  -
    </tTokenTable>
   
  - <tComponentOutput>
   
  + <tComponentOutput>
   !   _perlsv
  -
   !   pPool | pool
  -
      bDisableOutput | disable_output
  -
   !   pFirstBuf | first_buf
  -
   !   pLastBuf | last_buf
  -
   !   pFreeBuf | free_buf
  -
   !   pLastFreeBuf | last_free_buf
  -
   !   pMemBuf | mem_buf
  -
   !   pMemBufPtr | mem_buf_ptr
  -
   !   nMemBufSize | mem_buf_size
  -
   !   nMemBufSizeFree | mem_buf_size_free
  -
   !   nMarker | marker
  -
   !   ofd
  -
      ofdobj
  -
   !   new
  -
   !   private
  -
    </tComponentOutput>
   
  
  
  

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

Reply via email to