richter 00/01/01 05:59:38
Modified: . Changes.pod Embperl.pm Embperl.pod EmbperlD.pod
emacs embperl.el
Log:
- ProxyInput now handles posted form data. Spotted by
Neeme Vool.
- EMBPERL_INPUT_FUNC now allows to also give the name
under which the source should cached, to allow correct
cacheing of data read via EMBPERL_INPUT_FUNC. Spotted by
Neeme Vool.
Revision Changes Path
1.95 +8 -0 embperl/Changes.pod
Index: Changes.pod
===================================================================
RCS file: /export/home/cvs/embperl/Changes.pod,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -r1.94 -r1.95
--- Changes.pod 1999/12/31 14:07:28 1.94
+++ Changes.pod 2000/01/01 13:59:35 1.95
@@ -24,6 +24,14 @@
MailFormTo configurable
- add EMBPERL_MAILDEBUG config, to allow debugging of email
problems in MailFormTo
+ - ProxyInput now handles posted form data. Spotted by
+ Neeme Vool.
+ - EMBPERL_INPUT_FUNC now allows to also give the name
+ under which the source should cached, to allow correct
+ cacheing of data read via EMBPERL_INPUT_FUNC. Spotted by
+ Neeme Vool.
+
+
=head1 1.2.0 17 Nov 1999
1.75 +23 -3 embperl/Embperl.pm
Index: Embperl.pm
===================================================================
RCS file: /export/home/cvs/embperl/Embperl.pm,v
retrieving revision 1.74
retrieving revision 1.75
diff -u -r1.74 -r1.75
--- Embperl.pm 1999/12/31 14:07:29 1.74
+++ Embperl.pm 2000/01/01 13:59:36 1.75
@@ -703,8 +703,9 @@
}
my $InFunc = shift @p ;
+ my $cacheargs ;
no strict ;
- eval {$rc = &{$InFunc} ($req_rec, $In, \$$req{mtime}, @p)} ;
+ eval {$rc = &{$InFunc} ($req_rec, $In, \$cacheargs, @p)} ;
use strict ;
if ($rc || $@)
{
@@ -716,6 +717,15 @@
return $rc ;
}
+ if (ref ($cacheargs) eq 'HASH')
+ {
+ $req -> {'mtime'} = $cacheargs -> {'mtime'} ;
+ $req -> {'inputfile'} = $cacheargs -> {'inputfile'} ;
+ }
+ else
+ {
+ $req -> {'mtime'} = $cacheargs ;
+ }
}
$Out = \$OutData if (exists $$req{'output_func'}) ;
@@ -1433,6 +1443,16 @@
$ua -> use_eval (0) ;
$request = new HTTP::Request($r -> method, $url);
+ if ($ENV{CONTENT_LENGTH})
+ { # pass posted data
+ my $content ;
+
+ read STDIN, $content, $ENV{CONTENT_LENGTH} ;
+ delete $ENV{CONTENT_LENGTH} ;
+
+ $request -> content($content) ;
+ }
+
my %headers_in = $r->headers_in;
my $key ;
my $val ;
@@ -1444,7 +1464,7 @@
$response = $ua->request($request);
my $code = $response -> code ;
- my $mod = $response -> last_modified || '???' ;
+ my $mod = $response -> last_modified || undef ;
#if ($Debugflags)
# {
@@ -1456,7 +1476,7 @@
# }
$$in = $response -> content ;
- $$mtime = $mod if ($mod ne '???') ;
+ $$mtime = { mtime => $mod, inputfile => $url} ;
return $code == 200?0:$code;
}
1.38 +9 -4 embperl/Embperl.pod
Index: Embperl.pod
===================================================================
RCS file: /export/home/cvs/embperl/Embperl.pod,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- Embperl.pod 1999/12/31 14:07:29 1.37
+++ Embperl.pod 2000/01/01 13:59:36 1.38
@@ -796,7 +796,7 @@
give the name of a Perl function which is called instead of reading the
input from a file. The function must look like the following:
- InputFunc ($r, $in, $mtime, additional parameters...) ;
+ InputFunc ($r, $in, $cacheargs, additional parameters...) ;
=over 4
@@ -815,14 +815,19 @@
$$in = <F> ;
close F ;
-=item B<$mtime>
+=item B<$cacheargs>
-a reference to a scalar, to which the modification time should be returned.
+a reference to a scalar, to which the modification time should be returned,
+alternativ (1.2.1 and up) you can return a reference to a hash with the elements
C<mtime> and C<inputfile>
+with are used to correcly cache the precompiled Perlcode.
Example:
- $$mtime = -M "filename" ;
+ $$cacheargs = -M "filename" ;
+ or
+
+ $$cacheargs = { mtime => -M "filename", inputfile => "filename" } ;
=back
1.13 +10 -4 embperl/EmbperlD.pod
Index: EmbperlD.pod
===================================================================
RCS file: /export/home/cvs/embperl/EmbperlD.pod,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- EmbperlD.pod 1999/12/31 14:07:29 1.12
+++ EmbperlD.pod 2000/01/01 13:59:36 1.13
@@ -735,7 +735,7 @@
Quellentextes verantwortlich ist.
Die Funktion mu� folgenderma�en aussehen:
- InputFunc ($r, $in, $mtime, weitere Parameter...) ;
+ InputFunc ($r, $in, $cacheargs, weitere Parameter...) ;
=over 4
@@ -754,13 +754,19 @@
$$in = <F> ;
close F ;
-=item B<$mtime>
+=item B<$cacheargs>
-eine Referenz auf einen Skalar, welcher den Zeitpunkt der letzten �nderungen zur�ck
liefern soll.
+eine Referenz auf einen Skalar, welcher den Zeitpunkt der letzten �nderungen zur�ck
liefern soll,
+alternativ kann (ab 1.2.1) eine Hashreferenz mit den Elementen C<mtime> und
C<inputfile> angegeben werden,
+um das korrekte cachen des vorcompilierten Perlcodes zu erm�glichen.
Beispiel:
- $$mtime = -M "filename" ;
+ $$cacheargs = -M "filename" ;
+
+ oder
+
+ $$cacheargs = { mtime => -M "filename", inputfile => "filename" } ;
=back
1.63 +0 -0 embperl/emacs/embperl.el
Index: embperl.el
===================================================================
RCS file: /export/home/cvs/embperl/emacs/embperl.el,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -r1.62 -r1.63
--- embperl.el 1999/12/31 14:07:31 1.62
+++ embperl.el 2000/01/01 13:59:38 1.63
@@ -19,9 +19,9 @@
;; Author : Erik Arneson ([EMAIL PROTECTED])
;; Created On : Wed Jul 22 17:16:39 PDT 1998
;; Last Modified By: Erik Arneson
-;; Last Modified On: $Date: 1999/12/31 14:07:31 $
+;; Last Modified On: $Date: 2000/01/01 13:59:38 $
;; Version : 1.00
-;; $Id: embperl.el,v 1.62 1999/12/31 14:07:31 richter Exp $
+;; $Id: embperl.el,v 1.63 2000/01/01 13:59:38 richter Exp $
;;
;; Please note that this software is very beta and rather broken. I
;; don't know how useful it will be, although I definitely plan on
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]