Skip Menu |
 

This queue is for tickets about the Net-Radius-Client CPAN distribution.

Report information
The Basics
Id: 80447
Status: new
Priority: 0/
Queue: Net-Radius-Client

People
Owner: Nobody in particular
Requestors: norguhtar [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in: 0.03
Fixed in: (no value)



Subject: Add support multiple attributes in clients
Download (untitled) / with headers
text/plain 752b
Module not correct work with multiple attributes. RADIUS support send many attributes with others values in one packet. For example speed for SmartEdge 100 (Redback): 'Dynamic-QoS-Param' => [ 'police-class-rate cls-local rate-absolute 40960', 'police-class-burst cls-local 5242880', 'meter-class-rate cls-local rate-absolute 40960', 'meter-class-burst cls-local 5242880', 'police-class-rate cls-inet rate-absolute 40960', 'police-class-burst cls-inet 5242880', 'meter-class-rate cls-inet rate-absolute 40960', 'meter-class-burst cls-inet 5242880' ] But now Net::Radius::Client send only first value. Net::Radius::Packet already support this feature. I just fix put value in packet for vsa and standard package (it's realy support it see RFC2138)
Subject: fix-multi-attributes.patch
diff -ruN Radius.orig/Client.pm Radius/Client.pm --- Radius.orig/Client.pm 2008-06-18 00:59:54.000000000 +0600 +++ Radius/Client.pm 2012-10-28 17:21:48.000000000 +0600 @@ -71,12 +71,16 @@ foreach my $vs (keys %$argref) { foreach my $a (keys %{$argref->{$vs}}) { if ($vs) { - $req->set_vsattr($vs, $a, @{$argref->{$vs}->{$a}}); + foreach my $value (@{$argref->{$vs}->{$a}}) { + $req->set_vsattr($vs, $a, $value); + } } else { if ($a eq 'User-Password') { $password = $argref->{$vs}->{$a}[0]; } else { - $req->set_attr($a, $argref->{$vs}->{$a}[0]); + foreach my $value (@{$argref->{$vs}->{$a}}) { + $req->set_attr($a, $value); + } } } }


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.