perl-modperl-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From do...@hyperreal.org
Subject cvs commit: modperl/t/net/perl/io dir_config.pl
Date Thu, 14 May 1998 03:07:01 GMT
dougm       98/05/13 20:07:01

  Modified:    .        .gdbinit Changes MANIFEST Makefile.PL ToDo
                        apache-modlist.html
               Apache   typemap
               Constants Makefile.PL
               lib/Apache ExtUtils.pm src.pm
               src/modules/perl Apache.xs Constants.xs ModuleConfig.xs
                        mod_perl.h perl_config.c perl_util.c
               t/TestDirectives Makefile.PL TestDirectives.pm
               t/conf   httpd.conf.pl
               t/net/perl/io dir_config.pl
  Log:
  new Apache::Tie module, provides Apache::TieHashTable for a proper
  interface to Apache table structures.  The following methods, called
  in a scalar context with no "key" argument, will return a HASH
  reference, where HASH is tied to Apache::TieHashTable:
  headers_in, headers_out, err_headers_out, notes, dir_config, subprocess_env
  enable with PERL_TIE_TABLES=1
  see also: t/net/perl/tie_table.pl
  
  some other tidbits
  
  Revision  Changes    Path
  1.3       +1 -1      modperl/.gdbinit
  
  Index: .gdbinit
  ===================================================================
  RCS file: /export/home/cvs/modperl/.gdbinit,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- .gdbinit	1998/05/13 04:34:50	1.2
  +++ .gdbinit	1998/05/14 03:06:50	1.3
  @@ -4,7 +4,7 @@
   
   define thttpd
      run -X -d `pwd`/t
  -   set $sv = perl_eval_pv("$Apache::ErrLog = '/tmp/mod_perl_error_log'",1)
  +#   set $sv = perl_eval_pv("$Apache::ErrLog = '/tmp/mod_perl_error_log'",1)
   end
   
   define httpd
  
  
  
  1.30      +8 -3      modperl/Changes
  
  Index: Changes
  ===================================================================
  RCS file: /export/home/cvs/modperl/Changes,v
  retrieving revision 1.29
  retrieving revision 1.30
  diff -u -r1.29 -r1.30
  --- Changes	1998/05/10 08:45:53	1.29
  +++ Changes	1998/05/14 03:06:50	1.30
  @@ -18,6 +18,14 @@
   
   =item 1.11_01-dev
   
  +new Apache::Tie module, provides Apache::TieHashTable for a proper
  +interface to Apache table structures.  The following methods, called
  +in a scalar context with no "key" argument, will return a HASH
  +reference, where HASH is tied to Apache::TieHashTable:
  +headers_in, headers_out, err_headers_out, notes, dir_config, subprocess_env
  +enable with PERL_TIE_TABLES=1
  +see also: t/net/perl/tie_table.pl
  +
   remove Cwd::fastcwd usage from Apache::Registry, use
   $Apache::Server::CWD set at server startup instead
   
  @@ -29,9 +37,6 @@
   new function Apache::gensym (xsub, does same as Symbol::gensym)
   
   add $ServerRoot/lib/perl to @INC at startup
  -
  -overload the get_basic_auth_pw function so we can change AuthType on
  -the fly via $r->connection->auth_type
   
   add code to deal with 1.3b7-dev's SERVER_SUBVERSION replacement
   
  
  
  
  1.14      +6 -0      modperl/MANIFEST
  
  Index: MANIFEST
  ===================================================================
  RCS file: /export/home/cvs/modperl/MANIFEST,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- MANIFEST	1998/05/10 04:14:48	1.13
  +++ MANIFEST	1998/05/14 03:06:50	1.14
  @@ -51,6 +51,7 @@
   src/modules/perl/Constants.xs
   src/modules/perl/Apache.xs
   src/modules/perl/ModuleConfig.xs
  +src/modules/perl/Tie.xs
   src/modules/perl/ldopts
   src/modules/perl/mod_perl.c
   src/modules/perl/mod_perl.h
  @@ -97,7 +98,9 @@
   t/internal/stacked.t
   #t/internal/resolver.t
   t/internal/taint.t
  +t/internal/tie.t
   t/net/perl/file_upload.cgi
  +t/net/perl/tie_table.pl
   t/net/perl/qredirect.pl
   t/net/perl/hooks.pl
   t/net/perl/action.pl
  @@ -150,3 +153,6 @@
   faq/mod_perl_faq.pod
   faq/mjtg-news.txt
   htdocs/manual/mod/mod_perl.html
  +Tie/Makefile.PL
  +Tie/Tie.pm
  +Tie/typemap
  
  
  
  1.27      +14 -3     modperl/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /export/home/cvs/modperl/Makefile.PL,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  --- Makefile.PL	1998/05/10 08:45:54	1.26
  +++ Makefile.PL	1998/05/14 03:06:51	1.27
  @@ -140,6 +140,7 @@
   $CONFIG = "";
   $ADD_MODULE = "";
   $PERL_DIRECTIVE_HANDLERS = 0;
  +$PERL_TIE_TABLES = 0;
   my %experimental = map { $_,1 } qw{
   PERL_GET_SET_HANDLERS
   PERL_MARK_WHERE
  @@ -176,6 +177,7 @@
      PERL_STACKED_HANDLERS 
      PERL_METHOD_HANDLERS
      PERL_DIRECTIVE_HANDLERS
  +   PERL_TIE_TABLES
   };
   
   $callback_alias{PERL_INIT} = "PERL_HEADER_PARSER";
  @@ -236,16 +238,25 @@
   
   if($ALL_HOOKS) {
       for (@callback_hooks) {
  -	next if /Handlers?$/i;
  +	next if /(Table|Handler)s?$/i;
   	$callback_hooks{$_}++;
       }
   }
   
  +if($DYNAMIC) {
  +    $PERL_DIRECTIVE_HANDLERS = $PERL_TIE_TABLES = 1;
  +}
  +
   my @xs_modules = qw(Apache Apache::Constants);
   if($PERL_DIRECTIVE_HANDLERS) {
       push @xs_modules, "Apache::ModuleConfig";
       $callback_hooks{PERL_DIRECTIVE_HANDLERS} = 1;
   }
  +if($PERL_TIE_TABLES) {
  +    push @xs_modules, "Apache::Tie";
  +    $callback_hooks{PERL_TIE_TABLES} = 1;
  +}
  +
   my @xs_mod_snames = map { (my $s = $_) =~ s/.*:://; $s } @xs_modules;
   
   if($Is_Win32) {
  @@ -481,7 +492,7 @@
   	$why = ($cant_hook{$k} || "(enable with $k=1)") unless $v;
   	$k =~ s/([A-Z]+)/ucfirst(lc($1))/ge;
   	$k =~ s/_//g;
  -	$k .= "Handler" unless $k =~ /Handlers?$/;
  +	$k .= "Handler" unless $k =~ /(Table|Handler)s?$/;
   	push @mod_perl_hooks, $k;
   	print $k . '.' x (28 - length($k));
   	print $v ? "enabled\n" : "disabled $why\n";
  @@ -957,7 +968,7 @@
       $My::self = $self;
   
       finddepth(\&wanted, $APACHE_SRC);
  -
  +    $self->{PM}{"Apache/typemap"} = '$(INST_ARCHLIB)/' . "auto/Apache/typemap";
       '';
   }
   
  
  
  
  1.21      +4 -0      modperl/ToDo
  
  Index: ToDo
  ===================================================================
  RCS file: /export/home/cvs/modperl/ToDo,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- ToDo	1998/05/10 08:45:54	1.20
  +++ ToDo	1998/05/14 03:06:51	1.21
  @@ -16,6 +16,8 @@
                    (well, close to it anyhow)
   ---------------------------------------------------------------------------
   
  +- some mod_perlIO type methods for xs modules? (e.g. Apache::Peek)
  +
   - should Apache::Registry use filename instead of vhost_name+uri?
                 Ben Laurie <ben@algroup.co.uk>
   
  @@ -159,6 +161,8 @@
     + ability to disable Perl*Handler callback hooks
     + look at providing ASP (Active Server Plugin) support for NT users
     + get rid of dup between t/conf/httpd.conf-dist/httpd.conf-win32
  +
  +- @ARGV magic, tie to query string
   
   - overload %ENV magic:
     + call subprocess_env when a value is set 
  
  
  
  1.12      +3 -2      modperl/apache-modlist.html
  
  Index: apache-modlist.html
  ===================================================================
  RCS file: /export/home/cvs/modperl/apache-modlist.html,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- apache-modlist.html	1998/05/08 02:40:45	1.11
  +++ apache-modlist.html	1998/05/14 03:06:51	1.12
  @@ -7,7 +7,7 @@
   <h1>The Apache/Perl Module List</h1>
   
   Maintained by <a href="mailto:dougm@osf.org">Doug MacEachern</a>,
  -<br><i> $Revision: 1.11 $ $Date: 1998/05/08 02:40:45 $</i>
  +<br><i> $Revision: 1.12 $ $Date: 1998/05/14 03:06:51 $</i>
   
   <h3>Contents</h3>
   <a href="#intro">Introduction</a><br>
  @@ -149,7 +149,7 @@
   * Server Configuration
   ConfigLDAP	i	Config via LDAP and &lt;Perl&gt;		MARKK
   ConfigDBI	i	Config via DBI and &lt;Perl&gt;		MARKIM
  -ModuleConfig	cmcO	Interface to configuration API		DOUGM
  +ModuleConfig	bmcO	Interface to configuration API		APML
   PerlSections	bmpO	Utilities for &lt;Perl&gt; sections		APML
   httpd_conf	bmpO	Methods to configure and run an httpd	APML
   src		ampO	Finding and reading bits of source	APML
  @@ -172,6 +172,7 @@
   Scoreboard	cmcO	Interface to scoreboard API		DOUGM
   Servlet		ampO	Interface to the Java Servlet engine	IKLUFT
   Sfio		cmcO	Interface to r->connection->client->sf* DOUGM
  +Tie		bmcO	Tie interfaces to Apache structures 	APML
   
   * Development and Debug tools
   Debug		Rmpf	mod_perl debugging utilities		APML
  
  
  
  1.5       +3 -2      modperl/Apache/typemap
  
  Index: typemap
  ===================================================================
  RCS file: /export/home/cvs/modperl/Apache/typemap,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- typemap	1998/05/10 04:14:51	1.4
  +++ typemap	1998/05/14 03:06:53	1.5
  @@ -4,8 +4,9 @@
   Apache::SubRequest	T_PTROBJ
   Apache::Connection	T_PTROBJ
   Apache::Server		T_PTROBJ
  -Apache::conf_vector	T_PTROBJ
   Apache::ModuleConfig    T_PTROBJ
  +Apache::Table		T_PTROBJ
  +Apache::TieHashTable	T_PTROBJ
   pid_t			T_IV
   Apache::Scoreboard      O_HvRV
   
  @@ -32,7 +33,7 @@
   
   HV *		T_HvRV
   AV *		T_AvRV
  -const char *		T_PV_CONST
  +const char *		T_PV
   
   ######################################################################
   OUTPUT
  
  
  
  1.3       +1 -0      modperl/Constants/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /export/home/cvs/modperl/Constants/Makefile.PL,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Makefile.PL	1998/02/21 13:51:07	1.2
  +++ Makefile.PL	1998/05/14 03:06:54	1.3
  @@ -8,6 +8,7 @@
   } qw(include main os/unix);
   
   WriteMakefile(
  +    'TYPEMAPS' => ["../Apache/typemap"],
       NAME	=> "Apache::Constants",
       VERSION_FROM => "Constants.pm",
       INC => '-I../src -I../src/modules/perl -I$(APACHE_SRC) -I../$(APACHE_SRC) '.$apache_1_3_inc
.
  
  
  
  1.9       +1 -1      modperl/lib/Apache/ExtUtils.pm
  
  Index: ExtUtils.pm
  ===================================================================
  RCS file: /export/home/cvs/modperl/lib/Apache/ExtUtils.pm,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- ExtUtils.pm	1998/05/10 04:14:52	1.8
  +++ ExtUtils.pm	1998/05/14 03:06:55	1.9
  @@ -136,7 +136,7 @@
   	(mod_perl_perl_dir_config *)
   	    palloc(p, sizeof (mod_perl_perl_dir_config));
       cld->obj = Nullsv;
  -    cld->class = NULL;
  +    cld->class = "$class";
       return cld;
   }
   
  
  
  
  1.5       +13 -0     modperl/lib/Apache/src.pm
  
  Index: src.pm
  ===================================================================
  RCS file: /export/home/cvs/modperl/lib/Apache/src.pm,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- src.pm	1998/03/19 23:08:48	1.4
  +++ src.pm	1998/05/14 03:06:55	1.5
  @@ -139,6 +139,19 @@
   
   my $Is_Win32 = ($^O eq "MSWin32");
   
  +sub typemaps {
  +    my $typemaps = [];
  +    
  +    for (@INC) {
  +	my $file;
  +	if (-e ($file = "$_/auto/Apache/typemap")) {
  +	    push @$typemaps, $file;
  +	    last;
  +	}
  +    }
  +    return $typemaps;
  +}
  +
   sub inc {
       my $self = shift;
       my $src  = $self->dir;
  
  
  
  1.24      +22 -6     modperl/src/modules/perl/Apache.xs
  
  Index: Apache.xs
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/Apache.xs,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- Apache.xs	1998/05/12 23:53:25	1.23
  +++ Apache.xs	1998/05/14 03:06:56	1.24
  @@ -223,7 +223,7 @@
   
   static char *r_keys[] = { "_r", "r", NULL };
   
  -static request_rec *sv2request_rec(SV *in, char *class, CV *cv)
  +request_rec *sv2request_rec(SV *in, char *class, CV *cv)
   {
       request_rec *r = NULL;
       SV *sv = Nullsv;
  @@ -297,7 +297,11 @@
   }
   
   #define TABLE_GET_SET(table, do_taint) \
  -{ \
  +if(key == NULL) { \
  +    ST(0) = mod_perl_tie_table(table); \
  +    XSRETURN(1); \
  +} \
  +else { \
       char *val; \
       if(table && (val = table_get(table, key))) \
   	RETVAL = newSVpv(val, 0); \
  @@ -1132,7 +1136,7 @@
      
   
   SV *
  -subprocess_env(r, key, ...)
  +subprocess_env(r, key=NULL, ...)
       Apache    r
       char *key
   
  @@ -1452,11 +1456,16 @@
       Apache	r
   
       PREINIT:
  +    
       int i;
       array_header *hdrs_arr;
       table_entry  *hdrs;
   
       PPCODE:
  +    if(GIMME == G_SCALAR) {
  +	ST(0) = mod_perl_tie_table(r->headers_in); 
  +	XSRETURN(1); 	
  +    }
       hdrs_arr = table_elts (r->headers_in);
       hdrs = (table_entry *)hdrs_arr->elts;
   
  @@ -1550,9 +1559,12 @@
       table_entry  *hdrs;
   
       PPCODE:
  +    if(GIMME == G_SCALAR) {
  +	ST(0) = mod_perl_tie_table(r->headers_out); 
  +	XSRETURN(1); 	
  +    }
       hdrs_arr = table_elts (r->headers_out);
       hdrs = (table_entry *)hdrs_arr->elts;
  -
       for (i = 0; i < hdrs_arr->nelts; ++i) {
   	if (!hdrs[i].key) continue;
   	PUSHelt(hdrs[i].key, hdrs[i].val, 0);
  @@ -1579,6 +1591,10 @@
       table_entry  *hdrs;
   
       PPCODE:
  +    if(GIMME == G_SCALAR) {
  +	ST(0) = mod_perl_tie_table(r->headers_out); 
  +	XSRETURN(1); 	
  +    }
       hdrs_arr = table_elts (r->err_headers_out);
       hdrs = (table_entry *)hdrs_arr->elts;
   
  @@ -1588,7 +1604,7 @@
       }
   
   SV *
  -notes(r, key, ...)
  +notes(r, key=NULL, ...)
       Apache    r
       char *key
   
  @@ -1755,7 +1771,7 @@
   #  void *per_dir_config;		/* Options set in config files, etc. */
   
   SV *
  -dir_config(r, key, ...)
  +dir_config(r, key=NULL, ...)
       Apache  r
       char *key
   
  
  
  
  1.6       +12 -5     modperl/src/modules/perl/Constants.xs
  
  Index: Constants.xs
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/Constants.xs,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Constants.xs	1998/05/10 04:14:53	1.5
  +++ Constants.xs	1998/05/14 03:06:56	1.6
  @@ -1,6 +1,10 @@
   #define CORE_PRIVATE
   #include "mod_perl.h"
   
  +#ifndef SERVER_BUILT
  +#define SERVER_BUILT "unknown"
  +#endif
  +
   static CV *no_warn = Nullcv;
   
   CV *empty_anon_sub(void)
  @@ -794,21 +798,24 @@
       else 
           newCONSTSUB(stash, name, newSViv(val));
   
  -char *
  +const char *
   SERVER_VERSION()
      CODE: 
  +#if MODULE_MAGIC_NUMBER >= 19980413
  +   RETVAL = ap_get_server_version();
  +#else
      RETVAL = SERVER_VERSION;
  -
  +#endif
      OUTPUT:
      RETVAL
   
   char *
   SERVER_BUILT()
      CODE: 
  -#if (MODULE_MAGIC_NUMBER >= 19970912) && !defined(WIN32)
  -   RETVAL = (char *)SERVER_BUILT;
  +#if MODULE_MAGIC_NUMBER >= 19980413
  +   RETVAL = (char *)ap_get_server_built();
   #else
  -   RETVAL = "unknown";
  +   RETVAL = SERVER_BUILT;
   #endif
   
      OUTPUT:
  
  
  
  1.2       +8 -2      modperl/src/modules/perl/ModuleConfig.xs
  
  Index: ModuleConfig.xs
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/ModuleConfig.xs,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ModuleConfig.xs	1998/05/10 04:03:30	1.1
  +++ ModuleConfig.xs	1998/05/14 03:06:56	1.2
  @@ -53,15 +53,20 @@
   #define CORE_PRIVATE
   #include "mod_perl.h"
   
  -static void *vector_from_sv (SV *sv)
  +#define MP_TYPE_DIR 1
  +#define MP_TYPE_SRV 2
  +
  +static void *vector_from_sv (SV *sv, int *type)
   {
   
       if(sv_derived_from(sv, "Apache") && SvROK(sv)) {
   	request_rec *r = (request_rec *) SvIV((SV*)SvRV(sv));
  +	*type = MP_TYPE_DIR;
   	return r->per_dir_config;
       }
       else if(sv_derived_from(sv, "Apache::Server") && SvROK(sv)) {
   	server_rec *s = (server_rec *) SvIV((SV*)SvRV(sv));
  +	*type = MP_TYPE_SRV;
   	return s->module_config;
       }
       else {
  @@ -97,7 +102,8 @@
   
   	if(mod_ptr && *mod_ptr) {
   	    IV tmp = SvIV((SV*)SvRV(*mod_ptr));
  -	    void *ptr = vector_from_sv(obj);
  +	    int type = 0;
  +	    void *ptr = vector_from_sv(obj, &type);
   	    mod_perl_perl_dir_config *data = 
   		get_module_config(ptr, (module *)tmp);
   	    RETVAL = data->obj ? SvREFCNT_inc(data->obj) : Nullsv; 
  
  
  
  1.21      +4 -1      modperl/src/modules/perl/mod_perl.h
  
  Index: mod_perl.h
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/mod_perl.h,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- mod_perl.h	1998/05/10 04:14:53	1.20
  +++ mod_perl.h	1998/05/14 03:06:56	1.21
  @@ -127,6 +127,7 @@
   typedef conn_rec    * Apache__Connection;
   typedef server_rec  * Apache__Server;
   typedef cmd_parms   * Apache__CmdParms;
  +typedef table       * Apache__Table;
   
   #define GvHV_init(name) gv_fetchpv(name, GV_ADDMULTI, SVt_PVHV)
   #define GvSV_init(name) gv_fetchpv(name, GV_ADDMULTI, SVt_PV)
  @@ -880,7 +881,8 @@
   SV *array_header2avrv(array_header *arr);
   array_header *avrv2array_header(SV *avrv, pool *p);
   SV *mod_perl_gensym (char *pack);
  -void perl_tie_hash(HV *hv, char *class);
  +SV *mod_perl_tie_table(table *t);
  +void perl_tie_hash(HV *hv, char *class, SV *sv);
   void perl_util_cleanup(void);
   void mod_perl_clear_rgy_endav(request_rec *r, SV *sv);
   void perl_run_rgy_endav(char *s);
  @@ -978,3 +980,4 @@
   
   pool *perl_get_startup_pool(void);
   server_rec *perl_get_startup_server(void);
  +request_rec *sv2request_rec(SV *in, char *class, CV *cv);
  
  
  
  1.17      +1 -1      modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- perl_config.c	1998/05/10 04:14:53	1.16
  +++ perl_config.c	1998/05/14 03:06:56	1.17
  @@ -1178,7 +1178,7 @@
       curstash = gv_stashpv(PERL_SECTIONS_PACKAGE, GV_ADDWARN);
       gv = GvHV_init(name);
       if(dotie && !perl_sections_self_boot)
  -	perl_tie_hash(GvHV(gv), "Tie::IxHash");
  +	perl_tie_hash(GvHV(gv), "Tie::IxHash", Nullsv);
       LEAVE;
   }
   
  
  
  
  1.7       +15 -3     modperl/src/modules/perl/perl_util.c
  
  Index: perl_util.c
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/perl_util.c,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- perl_util.c	1998/05/10 04:14:54	1.6
  +++ perl_util.c	1998/05/14 03:06:57	1.7
  @@ -103,9 +103,19 @@
       return rv;
   }
   
  -#ifdef PERL_SECTIONS
  -void perl_tie_hash(HV *hv, char *class)
  +SV *mod_perl_tie_table(table *t)
   {
  +    HV *hv;
  +    SV *sv = sv_newmortal();
  +    iniHV(hv);
  +    sv_setref_pv(sv, "Apache::Table", (void*)t);
  +    perl_require_module("Apache::Tie", NULL);
  +    perl_tie_hash(hv, "Apache::TieHashTable", sv);
  +    return newRV_noinc((SV*)hv);
  +}
  +
  +void perl_tie_hash(HV *hv, char *class, SV *sv)
  +{
       dSP;
       SV *obj, *varsv = (SV*)hv;
       char *methname = "TIEHASH";
  @@ -114,8 +124,11 @@
       SAVETMPS;
       PUSHMARK(sp);
       XPUSHs(sv_2mortal(newSVpv(class,0)));
  +    if(sv) XPUSHs(sv);
       PUTBACK;
       perl_call_method(methname, G_EVAL | G_SCALAR);
  +    if(SvTRUE(ERRSV)) warn("perl_tie_hash: %s", SvPV(ERRSV,na));
  +
       SPAGAIN;
   
       obj = POPs;
  @@ -126,7 +139,6 @@
       FREETMPS;
       LEAVE; 
   }
  -#endif
   
   /* execute END blocks */
   
  
  
  
  1.6       +1 -1      modperl/t/TestDirectives/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /export/home/cvs/modperl/t/TestDirectives/Makefile.PL,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Makefile.PL	1998/05/10 04:14:56	1.5
  +++ Makefile.PL	1998/05/14 03:06:58	1.6
  @@ -26,7 +26,7 @@
          cmd_data => "info for YAC",
          errmsg => "Yet another comand",
          args_how => "TAKE2",
  -       req_override => "OR_ALL",
  +       req_override => "RSRC_CONF",
      },
   );
   
  
  
  
  1.8       +6 -1      modperl/t/TestDirectives/TestDirectives.pm
  
  Index: TestDirectives.pm
  ===================================================================
  RCS file: /export/home/cvs/modperl/t/TestDirectives/TestDirectives.pm,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- TestDirectives.pm	1998/05/10 04:14:56	1.7
  +++ TestDirectives.pm	1998/05/14 03:06:59	1.8
  @@ -27,7 +27,8 @@
   
   sub Port ($$$) {
       my($parms, $cfg, $port) = @_;
  -    warn "Port will be $port\n";
  +    warn "$cfg->Port will be $port\n";
  +    $cfg->{Port} = $port;
       return DECLINE_CMD();
   }
   
  @@ -55,6 +56,7 @@
       my($parms, $cfg, @data) = @_;
       $parms->info =~ /YAC/ or die "parms->info busted";
       $cfg->{parms_info_from_another_cmd} = $parms->info;
  +    warn "$cfg->YAC called\n";
   }
   
   sub Container ($$$;*) {
  @@ -93,6 +95,9 @@
   
   sub new {
       my($class, $parms) = @_;
  +    my $info = $parms->info;
  +    my $o = $parms->override;
  +    warn "$class->new called info=`$info',override=`$o'\n";
       return bless {
   	FromNew => __PACKAGE__,
   	path => $parms->path || "",
  
  
  
  1.11      +2 -1      modperl/t/conf/httpd.conf.pl
  
  Index: httpd.conf.pl
  ===================================================================
  RCS file: /export/home/cvs/modperl/t/conf/httpd.conf.pl,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- httpd.conf.pl	1998/05/10 04:14:57	1.10
  +++ httpd.conf.pl	1998/05/14 03:06:59	1.11
  @@ -36,6 +36,8 @@
    
       my $proto_perl2c = Apache::ExtUtils->proto_perl2c;
   
  +    $PerlConfig .= "YAC yet another\n";
  +
       $PerlConfig .= "<Location /perl>\n";
       while(my($pp,$cp) = each %$proto_perl2c) {
   	my $arg = "A";
  @@ -48,7 +50,6 @@
   TestCmd one two
   AnotherCmd
   CmdIterate A B C D E F
  -YAC yet another
   </Location>
   <Container /for/whatever>
   
  
  
  
  1.2       +3 -0      modperl/t/net/perl/io/dir_config.pl
  
  Index: dir_config.pl
  ===================================================================
  RCS file: /export/home/cvs/modperl/t/net/perl/io/dir_config.pl,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- dir_config.pl	1998/05/10 04:07:09	1.1
  +++ dir_config.pl	1998/05/14 03:07:00	1.2
  @@ -16,3 +16,6 @@
   unless ($cfg->{SetFromScript}) {
       $cfg->{SetFromScript} = [$0,$$];
   }
  +
  +my $scfg = Apache::ModuleConfig->get($r->server, "Apache::TestDirectives");
  +$r->print(Data::Dumper::Dumper($scfg));
  
  
  

Mime
View raw message