Modified: identity/CatDap/trunk/lib/CatDap/Controller/user.pm
===================================================================
--- identity/CatDap/trunk/lib/CatDap/Controller/user.pm 2010-12-13 23:12:16 UTC (rev 167)
+++ identity/CatDap/trunk/lib/CatDap/Controller/user.pm 2010-12-13 23:15:43 UTC (rev 168)
@@ -114,8 +114,20 @@
sub get_keyprefix : Private {
my ( $self, $c ) = @_;
- return sprintf("%02x%02x%02x",split /\./,$c->req->address);
+ my $keyprefix;
+ if ($c->req->address =~ m/:/) {
+ my $address = $c->req->address;
+ $address =~ s/\[\]://;
+
+ # if we shift right 104 bits from 128 we have 24 bits left or 3 bytes.
+ $keyprefix = sprintf( "%06x", $address >> 104 );
+ }
+ else {
+ $keyprefix = sprintf( "%02x%02x%02x", split /\./, $c->req->address );
+ }
+ return $keyprefix;
}
+
=head2 index
=cut