diff --git a/shelldap b/shelldap index e80f703..4bfb0dc 100755 --- a/shelldap +++ b/shelldap @@ -760,9 +760,9 @@ sub make_filter return unless scalar @$globs; my $filter; - $filter = join '', map { "($_)" } @$globs; - $filter = '(|' . $filter . ')' if scalar @$globs > 1; - $filter = Net::LDAP::Filter->new( $filter ); + $filter = join('', map { (/^\(.*\)$/o) ? $_ : "($_)" } @$globs); + $filter = '(|' . $filter . ')' if (scalar(@$globs) > 1); + $filter = Net::LDAP::Filter->new($filter); if ( $filter ) { $self->debug('Filter parsed as: ' . $filter->as_string() . "\n");