aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Fripost/Schema/Type/Domain.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Fripost/Schema/Type/Domain.pm')
-rw-r--r--lib/Fripost/Schema/Type/Domain.pm22
1 files changed, 19 insertions, 3 deletions
diff --git a/lib/Fripost/Schema/Type/Domain.pm b/lib/Fripost/Schema/Type/Domain.pm
index 2b803ac..448eaed 100644
--- a/lib/Fripost/Schema/Type/Domain.pm
+++ b/lib/Fripost/Schema/Type/Domain.pm
@@ -5,7 +5,7 @@ use warnings;
use strict;
use base qw/Net::LDAP/;
-use Fripost::Schema::Utils;
+use Fripost::Schema::Utils;
our $VERSION = '0.01';
@@ -36,11 +36,18 @@ sub search {
push @filters, "(owner=" .$owner. ")";
}
}
+ my $filter = Fripost::Schema::Utils::mkAndFilter( @filters );
+
+ if ($self->{_options}->{debug}) {
+ say STDERR "DEBUG: Search base: " .$self->{_options}->{base_dn};
+ say STDERR "DEBUG: Search filter: " .$filter;
+ }
+
my $res = $self->{_ldap}->search(
base => $self->{_options}->{base_dn},
scope => 'one',
attrs => [ 'dc', 'owner', 'isActive' ],
- filter => Fripost::Schema::Utils::mkAndFilter( @filters )
+ filter => $filter
);
die "Error: " .$res->error. "\n" if $res->code;
return $res;
@@ -57,11 +64,17 @@ sub add {
$owner = Fripost::Schema::Utils::mkDN ( $self->{_options}, $domain->{owner} )
if defined $domain->{owner};
+ say STDERR "DEBUG: Ownership: " .$owner
+ if $self->{_options}->{debug} and (defined $owner);
+
my $res;
if ($self->search({ domain => $domain->{domain} })->count) {
die "Error: Cannot create self-managed domain `"
.$domain->{domain}. "' since it already exists.\n"
unless defined $domain->{owner};
+
+ say STDERR "DEBUG: Modify base: " .$base
+ if $self->{_options}->{debug};
$res = $self->{_ldap}->modify( $base, add => [ owner => $owner ] );
}
else {
@@ -70,6 +83,9 @@ sub add {
);
push @attrs, (owner => $owner)
if defined $domain->{owner};
+
+ say STDERR "DEBUG: Add base: " .$base
+ if $self->{_options}->{debug};
$res = $self->{_ldap}->add( $base, attrs => [ @attrs ] );
}
die "Error: " .$res->error. "\n" if $res->code;
@@ -84,7 +100,7 @@ sub add {
=head1 NAME
-Fripost::Schema::Type::Domain -
+Fripost::Schema::Type::Domain -
=head1 AUTHOR