summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authorCheng-Lung Sung <clsung@FreeBSD.org>2004-10-23 08:20:06 +0000
committerCheng-Lung Sung <clsung@FreeBSD.org>2004-10-23 08:20:06 +0000
commit6c044ca79632532f19a24ad35a2e0cc466c0f827 (patch)
treee3d4e2e8c04972f63e6596a78e2d9e52302d70cd /www
parent- update to 1.00 (diff)
- update to 0.09
- add mod_perl2 support Approved by: co-mentor (vanilla)
Diffstat (limited to 'www')
-rw-r--r--www/p5-Apache-AuthenURL/Makefile5
-rw-r--r--www/p5-Apache-AuthenURL/distinfo4
-rw-r--r--www/p5-Apache-AuthenURL/files/patch-AuthenURL.pm124
-rw-r--r--www/p5-Apache-AuthenURL/files/patch-Makefile.PL10
4 files changed, 140 insertions, 3 deletions
diff --git a/www/p5-Apache-AuthenURL/Makefile b/www/p5-Apache-AuthenURL/Makefile
index a856bbcb4560..4833238b718b 100644
--- a/www/p5-Apache-AuthenURL/Makefile
+++ b/www/p5-Apache-AuthenURL/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= Apache-AuthenURL
-PORTVERSION= 0.8
+PORTVERSION= 0.9
CATEGORIES= www perl5
MASTER_SITES= ${MASTER_SITE_PERL_CPAN}
MASTER_SITE_SUBDIR= Apache
@@ -23,4 +23,7 @@ PERL_CONFIGURE= yes
MAN3= Apache::AuthenURL.3
+post-patch:
+ @${FIND} ${WRKSRC} -name "*.orig" -a -exec ${RM} -f {} \;
+
.include <bsd.port.mk>
diff --git a/www/p5-Apache-AuthenURL/distinfo b/www/p5-Apache-AuthenURL/distinfo
index e6595b418026..99b5b9cf0996 100644
--- a/www/p5-Apache-AuthenURL/distinfo
+++ b/www/p5-Apache-AuthenURL/distinfo
@@ -1,2 +1,2 @@
-MD5 (Apache-AuthenURL-0.8.tar.gz) = c0c0f4f995491ed16293ed0f626c126f
-SIZE (Apache-AuthenURL-0.8.tar.gz) = 2516
+MD5 (Apache-AuthenURL-0.9.tar.gz) = 67b90d3e88a6339ee8734c4ece36c880
+SIZE (Apache-AuthenURL-0.9.tar.gz) = 2609
diff --git a/www/p5-Apache-AuthenURL/files/patch-AuthenURL.pm b/www/p5-Apache-AuthenURL/files/patch-AuthenURL.pm
new file mode 100644
index 000000000000..4905e3f6ef0e
--- /dev/null
+++ b/www/p5-Apache-AuthenURL/files/patch-AuthenURL.pm
@@ -0,0 +1,124 @@
+--- AuthenURL.pm Tue Nov 4 23:47:14 2003
++++ AuthenURL.pm Sat Oct 23 14:58:56 2004
+@@ -1,14 +1,31 @@
+ # $Id: AuthenURL.pm,v 0.10 2003/11/04 15:47:13 jdg117 Exp $
+ package Apache::AuthenURL;
++$Apache::AuthenURL::VERSION = '0.9';
++
+ use strict;
+-use Apache();
+-use Apache::Constants qw(OK SERVER_ERROR AUTH_REQUIRED);
+ use LWP::UserAgent;
+-use vars qw($VERSION);
+
+-my $prefix = "Apache::AuthenURL";
++BEGIN { local $@; eval { require Apache2; } }
+
+-$VERSION = '0.9';
++use mod_perl;
++use constant MP2 => ($mod_perl::VERSION >= 1.99);
++use constant OK => 0;
++use constant SERVER_ERROR => 500;
++use constant AUTH_REQUIRED => 401;
++
++if (MP2) {
++ require Apache::Access;
++ require Apache::Connection;
++ require Apache::Log;
++ require Apache::RequestRec;
++ require Apache::RequestUtil;
++}
++else {
++ require Apache::ModuleConfig;
++ require Apache::Constants;
++}
++
++my $prefix = "Apache::AuthenURL";
+
+ my(%Config) = (
+ 'AuthenURL_url' => '',
+@@ -31,20 +48,23 @@
+
+ sub check {
+ my($r, $attr) = @_;
++ return undef unless defined($r);
++
+ my($res, $sent_pwd);
+ ($res, $sent_pwd) = $r->get_basic_auth_pw;
+ return $res if $res; #decline if not Basic
+
+- my $user = $r->connection->user;
+- my $passwd;
++ my $user = (MP2) ? $r->user : $r->connection->user;
++ my $uri = $r->uri;
++ my $method = $r->method;
+
+ unless ( $attr->{method} ) {
+- $r->warn("$prefix is missing the METHOD (defaulting to GET) for URI: " . $r->uri);
++ $r->warn("$prefix is missing the METHOD (defaulting to GET) for URI: " . $uri);
+ $attr->{method} = "GET";
+ }
+
+ unless ( $attr->{url} ) {
+- $r->log_reason("$prefix is missing the URL", $r->uri);
++ $r->log_error("$prefix is missing the URL for $uri");
+ return SERVER_ERROR;
+ }
+
+@@ -55,14 +75,32 @@
+ $lwp_ua->use_alarm(0);
+ my $lwp_req = new HTTP::Request $attr->{method} => $attr->{url};
+ unless( defined $lwp_req ) {
+- $r->log_reason("LWP failed to use METHOD: " . $attr->{method} . " to connect to URL: ".$attr->{url}, $r->uri);
++ $r->log_error("LWP failed to use METHOD: " . $attr->{method} . " to connect to URL: ".$attr->{url});
+ return SERVER_ERROR;
+ }
+
+ $lwp_req->authorization_basic($user, $sent_pwd);
++
++ if ($attr->{method} eq 'POST') {
++ $lwp_req->header('Content-Type' => 'application/x-www-form-urlencoded');
++
++ require URI;
++ my $url = URI->new('http:');
++ $url->query_form(
++ user => $user,
++ password => $sent_pwd,
++ uri => $uri,
++ method => $method,
++ );
++
++ my $content = $url->query;
++ $lwp_req->header('Content-Length' => length($content));
++ $lwp_req->content($content);
++ }
++
+ my $lwp_res = $lwp_ua->request($lwp_req);
+ unless( $lwp_res->is_success ) {
+- $r->log_reason("LWP user $user: " . $attr->{url} . $lwp_res->status_line, $r->uri);
++ $r->log_error("LWP user $user: $attr->{url} fails with ".$lwp_res->status_line)."for $uri";
+ $r->note_basic_auth_failure;
+ return AUTH_REQUIRED;
+ }
+@@ -83,7 +121,7 @@
+ #in .htaccess
+ AuthName MyHTTPAuth
+ AuthType Basic
+- PerlAuthenHandler Apache::AuthenCache Apache::AuthenURL::handler Apache::AuthenCache::manage_cache
++ PerlAuthenHandler Apache::AuthenCache Apache::AuthenURL Apache::AuthenCache::manage_cache
+
+ PerlSetVar AuthenURL_method HEAD # a valid LWP method
+ PerlSetVar AuthenURL_url https://somehost
+@@ -99,6 +137,12 @@
+ I wrote this module to work around the lack of DCE support for Solaris x86.
+ DCE authentication in my application is handled using Gradient's DCE
+ plug-in for Netscape Enterprise Server. The request is encrypted using SSL.
++
++=head1 NOTES
++
++If C<AuthenURL_method> is set to C<POST>, the request is sent with three
++parameters: C<user>, C<password> and C<uri>, in addition to the basic
++authentication headers common to all methods.
+
+ =head1 ACKNOWLEDGEMENTS
+
diff --git a/www/p5-Apache-AuthenURL/files/patch-Makefile.PL b/www/p5-Apache-AuthenURL/files/patch-Makefile.PL
new file mode 100644
index 000000000000..bb6093e1c13b
--- /dev/null
+++ b/www/p5-Apache-AuthenURL/files/patch-Makefile.PL
@@ -0,0 +1,10 @@
+--- Makefile.PL Wed Aug 16 11:56:21 2000
++++ Makefile.PL Sat Oct 23 14:58:56 2004
+@@ -6,6 +6,7 @@
+ my $missing_modules = 0;
+
+ print "Checking for Apache::AuthenCache......";
++eval { require Apache2 };
+ eval {
+ require Apache::AuthenCache;
+ };