[freeside-commits] branch FREESIDE_2_3_BRANCH updated. b67aa7e32eddd8d67d53ef534a4803f1162f2cca
Ivan
ivan at 420.am
Sat Nov 9 12:04:11 PST 2013
The branch, FREESIDE_2_3_BRANCH has been updated
via b67aa7e32eddd8d67d53ef534a4803f1162f2cca (commit)
from 317d3ddb21bd6228ae91d22adcca6978edbb27d0 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit b67aa7e32eddd8d67d53ef534a4803f1162f2cca
Author: Ivan Kohler <ivan at freeside.biz>
Date: Sat Nov 9 12:04:10 2013 -0800
add sip_passwordmin/max, RT#25239
diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm
index f042710..fed5fb2 100644
--- a/FS/FS/Conf.pm
+++ b/FS/FS/Conf.pm
@@ -1616,6 +1616,21 @@ and customer address. Include units.',
},
{
+ 'key' => 'sip_passwordmin',
+ 'section' => 'telephony',
+ 'description' => 'Minimum SIP password length (default 6)',
+ 'type' => 'text',
+ },
+
+ {
+ 'key' => 'sip_passwordmax',
+ 'section' => 'telephony',
+ 'description' => 'Maximum SIP password length (default 8) (don\'t set this over 12 if you need to import or export crypt() passwords)',
+ 'type' => 'text',
+ },
+
+
+ {
'key' => 'password-noampersand',
'section' => 'password',
'description' => 'Disallow ampersands in passwords',
diff --git a/FS/FS/svc_phone.pm b/FS/FS/svc_phone.pm
index 097310b..79cd6fa 100644
--- a/FS/FS/svc_phone.pm
+++ b/FS/FS/svc_phone.pm
@@ -2,9 +2,12 @@ package FS::svc_phone;
use strict;
use base qw( FS::svc_Domain_Mixin FS::location_Mixin FS::svc_Common );
-use vars qw( $DEBUG $me @pw_set $conf $phone_name_max );
+use vars qw( $DEBUG $me @pw_set $conf $phone_name_max
+ $passwordmin $passwordmax
+ );
use Data::Dumper;
use Scalar::Util qw( blessed );
+use List::Util qw( min );
use FS::Conf;
use FS::Record qw( qsearch qsearchs dbh );
use FS::Msgcat qw(gettext);
@@ -25,6 +28,8 @@ $DEBUG = 0;
$FS::UID::callback{'FS::svc_acct'} = sub {
$conf = new FS::Conf;
$phone_name_max = $conf->config('svc_phone-phone_name-max_length');
+ $passwordmin = $conf->config('sip_passwordmin') || 0;
+ $passwordmax = $conf->config('sip_passwordmax') || 80;
};
=head1 NAME
@@ -512,10 +517,17 @@ sub check {
}
}
- unless ( length($self->sip_password) ) { # option for this?
+ if ( length($self->sip_password) ) {
+
+ return "SIP password must be longer than $passwordmin characters"
+ if length($self->sip_password) < $passwordmin;
+ return "SIP password must be shorter than $passwordmax characters"
+ if length($self->sip_password) > $passwordmax;
+
+ } else { # option for this?
$self->sip_password(
- join('', map $pw_set[ int(rand $#pw_set) ], (0..16) )
+ join('', map $pw_set[ int(rand $#pw_set) ], (1..min($passwordmax,16)) )
);
}
-----------------------------------------------------------------------
Summary of changes:
FS/FS/Conf.pm | 15 +++++++++++++++
FS/FS/svc_phone.pm | 18 +++++++++++++++---
2 files changed, 30 insertions(+), 3 deletions(-)
More information about the freeside-commits
mailing list