1
0
Fork 0
mirror of https://git.freebsd.org/ports.git synced 2025-07-17 09:19:15 -04:00
ports/net/p5-Net-OpenID-Consumer/files/patch-Consumer.pm
Sergey Skvortsov bd4d724e21 Fixes:
1. Support multivalue rel in <link> (e.g. <link rel="openid2.server openid.server">
2. Support numbers as keys in hmac.
3. Silence a warning.

PR:		ports/124272
Submitted by:	Alex Kapranoff <kappa xx rambler-co.ru>
2008-06-11 12:29:54 +00:00

29 lines
1.2 KiB
Perl

--- Consumer.pm 2007-08-04 02:38:53.000000000 +0400
+++ lib/Net/OpenID/Consumer.pm 2008-06-04 19:10:37.000000000 +0400
@@ -235,7 +235,7 @@
# OpenID servers / delegated identities
# <link rel="openid.server" href="http://www.livejournal.com/misc/openid.bml" />
if ($type eq "link" &&
- $val =~ /\brel=.openid\.(server|delegate)./i && ($temp = $1) &&
+ $val =~ /\brel=[\"\'][^\"\']*\bopenid\.(server|delegate)\b/i && ($temp = $1) &&
$val =~ m!\bhref=[\"\']([^\"\']+)[\"\']!i) {
$ret->{"openid.$temp"} = $1;
next;
@@ -301,7 +301,8 @@
$ret->{$k} =~ s/&(\w+);/$emap->{$1} || ""/eg;
}
- $self->_debug("semantic info ($url) = " . join(", ", %$ret));
+ $self->_debug("semantic info ($url) = " . join(", ",
+ map { defined($ret->{$_}) ? ($_ => $ret->{$_}) : () } keys %$ret));
return $ret;
}
@@ -543,6 +544,7 @@
sub hmac {
my($data, $key, $hash_func, $block_size) = @_;
$block_size ||= 64;
+ $key = $key . ''; # stringify for charwise ^ to work
$key = &$hash_func($key) if length($key) > $block_size;
my $k_ipad = $key ^ (chr(0x36) x $block_size);