allow to list all aclgroups foerste
authorMatthias Förste foerste@schlittermann.de
Tue, 13 Dec 2011 14:02:11 +0100
branchfoerste
changeset 66 a41fd3429d63
parent 65 f1a66928471f
child 67 deadc72b7e6c
allow to list all aclgroups
acl.pm
--- a/acl.pm	Tue Dec 13 13:39:24 2011 +0100
+++ b/acl.pm	Tue Dec 13 14:02:11 2011 +0100
@@ -221,6 +221,7 @@
 
     @_ = ('*') unless @_;
     my @ag = split ',', $Cf->imap_aclgroups;
+    my $ag_all = 1 if '*' ~~ @ag;
     my $ag_att = AT_ACLGROUPS;
     my $filter =
       "(&($ag_att=*)" . "(|" . join( "", map { "(uid=$_)" } @_ ) . "))";
@@ -240,12 +241,12 @@
     while ( my $e = ( $r->shift_entry ) ) {
         my $uid = $e->get_value('uid');
         my @ag_cur = split ',', $e->get_value($ag_att);
-        for (@ag) {
+        for (@ag_cur) {
             $users->{$_} =
               defined $users->{$_}
               ? [ @{ $users->{$_} }, $uid ]
               : [$uid]
-              if $_ ~~ @ag_cur;
+              if $ag_all or $_ ~~ @ag;
         }
     }