projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
ce1b61e
)
select case of MAC address for export, #15478
author
mark
<mark>
Thu, 8 Dec 2011 21:42:06 +0000
(21:42 +0000)
committer
mark
<mark>
Thu, 8 Dec 2011 21:42:06 +0000
(21:42 +0000)
FS/FS/part_export/broadband_sqlradius.pm
patch
|
blob
|
history
diff --git
a/FS/FS/part_export/broadband_sqlradius.pm
b/FS/FS/part_export/broadband_sqlradius.pm
index
dc117b0
..
45f286f
100644
(file)
--- a/
FS/FS/part_export/broadband_sqlradius.pm
+++ b/
FS/FS/part_export/broadband_sqlradius.pm
@@
-26,6
+26,11
@@
tie %options, 'Tie::IxHash',
# type => 'checkbox',
# label => 'Hide IP address on session reports',
# },
# type => 'checkbox',
# label => 'Hide IP address on session reports',
# },
+ 'mac_case' => {
+ label => 'Export MAC address as',
+ type => 'select',
+ options => [ qw(uppercase lowercase) ],
+ },
'mac_delimiter' => {
label => 'Separate MAC address octets with',
default => '-',
'mac_delimiter' => {
label => 'Separate MAC address octets with',
default => '-',
@@
-71,10
+76,19
@@
END
sub rebless { shift; }
sub rebless { shift; }
+sub _mac_format {
+ my $self = shift;
+ my $addr = shift;
+ if ( $self->option('mac_case',1) eq 'lowercase' ) {
+ $addr = lc($addr);
+ }
+ join( ($self->option('mac_delimiter',1) || ''), $addr =~ /../g );
+}
+
sub export_username {
my($self, $svc_broadband) = (shift, shift);
my $mac_addr = $svc_broadband->mac_addr;
sub export_username {
my($self, $svc_broadband) = (shift, shift);
my $mac_addr = $svc_broadband->mac_addr;
-
join( ($self->option('mac_delimiter',1) || ''), $mac_addr =~ /../g
);
+
$self->_mac_format($svc_broadband->mac_addr
);
}
sub radius_reply {
}
sub radius_reply {
@@
-92,9
+106,7
@@
sub radius_check {
my $password_attrib = $conf->config('radius-password') || 'Password';
my %check;
if ( $self->option('mac_as_password') ) {
my $password_attrib = $conf->config('radius-password') || 'Password';
my %check;
if ( $self->option('mac_as_password') ) {
- my $mac_addr = $svc_broadband->mac_addr;
- $check{$password_attrib} =
- join( ($self->option('mac_delimiter',1) || ''), $mac_addr =~ /../g );
+ $check{$password_attrib} = $self->_mac_format($svc_broadband->mac_addr);
}
elsif ( length( $self->option('radius_password',1)) ) {
$check{$password_attrib} = $self->option('radius_password');
}
elsif ( length( $self->option('radius_password',1)) ) {
$check{$password_attrib} = $self->option('radius_password');