# split list returns an array not a reference
$self->{accountattr} = [split_list($self->{accountattr})];
$self->{mailattr} = [split_list($self->{mailattr})];
+ $self->{groupclass} = [split_list($self->{groupclass})];
$self->{server1} = $args{server1};
$self->{server2} = $args{server2};
return undef if !$self->{groupbasedn};
- my $filter = "(|(objectclass=group)(objectclass=univentionGroup))";
+ my $filter = "(|";
+
+ for my $class (@{$self->{groupclass}}) {
+ $filter .= "(objectclass=$class)";
+ }
+
+ $filter .= ")";
my $page = Net::LDAP::Control::Paged->new(size => 100);
pattern => '[a-zA-Z0-9]+',
default => "mail, userPrincipalName, proxyAddresses, othermailbox",
},
+ groupclass => {
+ description => "List of objectclasses for groups.",
+ type => 'string', format => 'string-list',
+ default => "group, univentionGroup, ipausergroup",
+ },
};
}
filter => { optional => 1 },
accountattr => { optional => 1 },
mailattr => { optional => 1 },
+ groupclass => { optional => 1 },
};
}