package Smokeping::probes::EchoPingLDAP; =head1 301 Moved Permanently This is a Smokeping probe module. Please use the command C to view the documentation or the command C to generate the POD document. =cut sub pod_hash { return { name => < < <<'DOC', Niko Tyni DOC notes => <<'DOC', The I, I and I EchoPing variables are not valid. Plugins, including echoping_ldap, are available starting with echoping version 6. DOC see_also => <, L DOC } } use strict; use base qw(Smokeping::probes::EchoPingPlugin); use Carp; sub plugin_args { my $self = shift; my $target = shift; my @args; my $req = $target->{vars}{ldap_request}; push @args, "-r $req" if $req; my $base = $target->{vars}{ldap_base}; push @args, "-b $base" if $base; my $scope = $target->{vars}{ldap_scope}; push @args, "-s $scope" if $scope; return @args; } sub ProbeDesc($) { return "LDAP pings using the echoping_ldap plugin"; } sub targetvars { my $class = shift; my $h = $class->SUPER::targetvars; delete $h->{udp}; delete $h->{fill}; delete $h->{size}; $h->{_mandatory} = [ grep { $_ ne "plugin" } @{$h->{_mandatory}}]; $h->{plugin}{_default} = 'ldap'; $h->{plugin}{_example} = '/path/to/ldap.so'; return $class->_makevars($h, { ldap_request => { _doc => < '(objectclass=*)', }, ldap_base => { _doc => < 'dc=current,dc=bugs,dc=debian,dc=org', }, ldap_scope => { _doc => < 'one', }, }, ); } 1;