You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by do...@hyperreal.org on 1998/07/24 15:19:44 UTC

cvs commit: modperl/src/modules/perl PerlRunXS.xs

dougm       98/07/24 06:19:43

  Modified:    .        ToDo
               PerlRunXS PerlRunXS.pm
               src/modules/perl PerlRunXS.xs
  Log:
  fixup for PerlRunXS
  
  Revision  Changes    Path
  1.55      +3 -0      modperl/ToDo
  
  Index: ToDo
  ===================================================================
  RCS file: /export/home/cvs/modperl/ToDo,v
  retrieving revision 1.54
  retrieving revision 1.55
  diff -u -r1.54 -r1.55
  --- ToDo	1998/07/23 23:06:46	1.54
  +++ ToDo	1998/07/24 13:19:41	1.55
  @@ -16,6 +16,9 @@
                    (well, close to it anyhow)
   ---------------------------------------------------------------------------
   
  +- Apache::Registry should check return value of the subroutine,
  +  e.g. for REDIRECT   
  +
   - /perl/perl-status?sig dumps core under hpux 10.20
      [David-Michael.Lincke@unisg.ch]
   
  
  
  
  1.2       +11 -19    modperl/PerlRunXS/PerlRunXS.pm
  
  Index: PerlRunXS.pm
  ===================================================================
  RCS file: /export/home/cvs/modperl/PerlRunXS/PerlRunXS.pm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PerlRunXS.pm	1998/07/23 23:06:49	1.1
  +++ PerlRunXS.pm	1998/07/24 13:19:42	1.2
  @@ -40,18 +40,18 @@
   
   =head1 NAME
   
  -Apache::PerlRun - Run unaltered CGI scripts under mod_perl
  +Apache::PerlRunXS - XS implementation of Apache::PerlRun/Apache::Registry
   
   =head1 SYNOPSIS
   
    #in httpd.conf
   
  - Alias /cgi-perl/ /perl/apache/scripts/ 
  - PerlModule Apache::PerlRun
  + Alias /perl/ /perl/apache/scripts/ 
  + PerlModule Apache::PerlRunXS
   
  - <Location /cgi-perl>
  + <Location /perl>
    SetHandler perl-script
  - PerlHandler Apache::PerlRun
  + PerlHandler Apache::RegistryXS
    Options +ExecCGI 
    #optional
    PerlSendHeader On
  @@ -60,20 +60,8 @@
   
   =head1 DESCRIPTION
   
  -This module's B<handler> emulates the CGI environment,
  -allowing programmers to write scripts that run under CGI or
  -mod_perl without change.  Unlike B<Apache::Registry>, the
  -B<Apache::PerlRun> handler does not cache the script inside of a
  -subroutine.  Scripts will be "compiled" every request.  After the
  -script has run, it's namespace is flushed of all variables and
  -subroutines.
  -
  -The B<Apache::Registry> handler is much faster than
  -B<Apache::PerlRun>.  However, B<Apache::PerlRun> is much faster than
  -CGI as the fork is still avoided and scripts can use modules which
  -have been pre-loaded at server startup time.  This module is meant for
  -"Dirty" CGI Perl scripts which relied on the single request lifetime
  -of CGI and cannot run under B<Apache::Registry> without cleanup.
  +This XS implementation of Apache::PerlRun and Apache::Registry will some day
  +replace the Perl versions.
   
   =head1 SEE ALSO
   
  @@ -82,4 +70,8 @@
   =head1 AUTHOR
   
   Doug MacEachern
  +
  +
  +
  +
   
  
  
  
  1.2       +57 -0     modperl/src/modules/perl/PerlRunXS.xs
  
  Index: PerlRunXS.xs
  ===================================================================
  RCS file: /export/home/cvs/modperl/src/modules/perl/PerlRunXS.xs,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- PerlRunXS.xs	1998/07/23 23:06:50	1.1
  +++ PerlRunXS.xs	1998/07/24 13:19:43	1.2
  @@ -1,3 +1,60 @@
  +/* ====================================================================
  + * Copyright (c) 1995-1998 The Apache Group.  All rights reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. All advertising materials mentioning features or use of this
  + *    software must display the following acknowledgment:
  + *    "This product includes software developed by the Apache Group
  + *    for use in the Apache HTTP server project (http://www.apache.org/)."
  + *
  + * 4. The names "Apache Server" and "Apache Group" must not be used to
  + *    endorse or promote products derived from this software without
  + *    prior written permission. For written permission, please contact
  + *    apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache"
  + *    nor may "Apache" appear in their names without prior written
  + *    permission of the Apache Group.
  + *
  + * 6. Redistributions of any form whatsoever must retain the following
  + *    acknowledgment:
  + *    "This product includes software developed by the Apache Group
  + *    for use in the Apache HTTP server project (http://www.apache.org/)."
  + *
  + * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY
  + * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  + * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE APACHE GROUP OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
  + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
  + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
  + * OF THE POSSIBILITY OF SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Group and was originally based
  + * on public domain software written at the National Center for
  + * Supercomputing Applications, University of Illinois, Urbana-Champaign.
  + * For more information on the Apache Group and the Apache HTTP server
  + * project, please see <http://www.apache.org/>.
  + *
  + */
  +
   #ifdef MOD_PERL
   #include "mod_perl.h"
   #else