[pve-devel] [PATCH access-control] replace Term::ReadLine with PVE::PTY
Thomas Lamprecht
t.lamprecht at proxmox.com
Mon Jun 4 18:12:25 CEST 2018
On 6/4/18 5:32 PM, Dominik Csapak wrote:
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
looks OK, small nit inline.
> ---
> PVE/CLI/pveum.pm | 15 +++++----------
> debian/control | 1 -
> test/auth-test.pl | 7 ++-----
> 3 files changed, 7 insertions(+), 16 deletions(-)
>
> diff --git a/PVE/CLI/pveum.pm b/PVE/CLI/pveum.pm
> index aef7089..e2ced77 100755
> --- a/PVE/CLI/pveum.pm
> +++ b/PVE/CLI/pveum.pm
> @@ -8,9 +8,9 @@ use PVE::Cluster;
> use PVE::SafeSyslog;
> use PVE::AccessControl;
> use File::Path qw(make_path remove_tree);
> -use Term::ReadLine;
> use PVE::INotify;
> use PVE::RPCEnvironment;
> +use PVE::PTY;
> use PVE::API2::User;
> use PVE::API2::Group;
> use PVE::API2::Role;
> @@ -26,15 +26,10 @@ sub setup_environment {
> }
>
> sub read_password {
> - # return $ENV{PVE_PW_TICKET} if defined($ENV{PVE_PW_TICKET});
> -
> - my $term = new Term::ReadLine ('pveum');
> - my $attribs = $term->Attribs;
> - $attribs->{redisplay_function} = $attribs->{shadow_redisplay};
> - my $input = $term->readline('Enter new password: ');
> - my $conf = $term->readline('Retype new password: ');
> - die "Passwords do not match.\n" if ($input ne $conf);
> - return $input;
> + my $pw = PVE::PTY::read_password('Enter new password: ');
> + my $pw2 = PVE::PTY::read_password('Repeat password: ');
If we change the text shown I would opt for 'Confirm password: ',
and name the variable accordingly (e.g., $confirm_pw)
Reviewed-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
Tested-by: Thomas Lamprecht <t.lamprecht at proxmox.com>
> + die "passwords do not match\n" if $pw ne $pw2;
> + return $pw;
> }
>
> our $cmddef = {
> diff --git a/debian/control b/debian/control
> index 07243f7..0f4d49b 100644
> --- a/debian/control
> +++ b/debian/control
> @@ -22,7 +22,6 @@ Depends: libauthen-pam-perl,
> libnet-ldap-perl,
> libnet-ssleay-perl,
> libpve-common-perl,
> - libterm-readline-gnu-perl,
> liburi-perl,
> libwww-perl,
> perl (>= 5.6.0-16),
> diff --git a/test/auth-test.pl b/test/auth-test.pl
> index 50a7f89..49135f5 100644
> --- a/test/auth-test.pl
> +++ b/test/auth-test.pl
> @@ -1,17 +1,14 @@
> #!/usr/bin/perl -w
>
> use strict;
> -use Term::ReadLine;
> +use PVE::PTY;
> use PVE::AccessControl;
>
> my $username = shift;
> die "Username missing" if !$username;
> sub read_password {
>
> - my $term = new Term::ReadLine ('pveum');
> - my $attribs = $term->Attribs;
> - $attribs->{redisplay_function} = $attribs->{shadow_redisplay};
> - my $input = $term->readline('password: ');
> + my $input = PVE::PTY::read_password('password: ');
> return $input;
> }
>
>
More information about the pve-devel
mailing list