Do not leak SNMP community string into debug output (unless LEAK_COMMUNITY=1)

This commit is contained in:
Oliver Gorwits
2014-08-04 22:33:08 +01:00
parent f3a9296b6b
commit 06ba99e4e6
2 changed files with 6 additions and 4 deletions

View File

@@ -136,13 +136,15 @@ sub _snmp_connect_generic {
sub _try_connect {
my ($device, $class, $comm, $mode, $snmp_args) = @_;
my %comm_args = _mk_info_commargs($comm);
my $debug_comm = ( $comm->{community}
? $ENV{SHOW_COMMUNITY} ? $comm->{community} : '<hidden>'
: "v3user:$comm->{user}" );
my $info = undef;
try {
debug
sprintf '[%s] try_connect with ver: %s, class: %s, comm: %s',
$snmp_args->{DestHost}, $snmp_args->{Version}, $class,
($comm->{community} || "v3user:$comm->{user}");
$snmp_args->{DestHost}, $snmp_args->{Version}, $class, $debug_comm;
Module::Load::load $class;
$info = $class->new(%$snmp_args, %comm_args);
@@ -154,8 +156,7 @@ sub _try_connect {
$class = $info->device_type;
debug
sprintf '[%s] try_connect with ver: %s, new class: %s, comm: %s',
$snmp_args->{DestHost}, $snmp_args->{Version}, $class,
($comm->{community} || "v3user:$comm->{user}");
$snmp_args->{DestHost}, $snmp_args->{Version}, $class, $debug_comm;
Module::Load::load $class;
$info = $class->new(%$snmp_args, %comm_args);