Merge pull request #75 from ovh/interactive

fix: interactive mode: mark non-printable chars as such to avoid read…
This commit is contained in:
Stéphane Lesimple 2020-12-02 09:09:47 +01:00 committed by GitHub
commit a4317c8c31
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -20,9 +20,19 @@ sub interactive {
my $interactiveModeTimeout = OVH::Bastion::config('interactiveModeTimeout')->value() || 0;
my $slaveOrMaster = (OVH::Bastion::config('readOnlySlaveMode')->value() ? 'slave' : 'master');
my $term = Term::ReadLine->new('Bastion Interactive');
my $prompt =
"\001\033[0m\033[33m$self\033[1;35m@\033[32m\002$bastionName\001\033[1;35m\002(\001\033[0m\033[36m\002$slaveOrMaster\001\033[1;35m\002)\001\033[0m\033[32m\002>\001\033[0m\002 ";
my $term = Term::ReadLine->new('Bastion Interactive');
my $prompt = ""
. "\001\033[0m\033[33m\002"
. $self
. "\001\033[1;35m\002" . "@"
. "\001\033[32m\002"
. $bastionName
. "\001\033[1;35m\002" . "("
. "\001\033[0m\033[36m\002"
. $slaveOrMaster
. "\001\033[1;35m\002" . ")"
. "\001\033[0m\033[32m\002" . ">"
. "\001\033[0m\002" . " ";
my $prompt_non_readline = $prompt;
$prompt_non_readline =~ s=\001|\002==g;