account.pm
branchfoerste
changeset 59 df896a01960d
parent 55 ef65e9adf0f6
child 60 3293084cfdd9
equal deleted inserted replaced
58:dd04534fe595 59:df896a01960d
    34 sub OC_RECIPIENT();
    34 sub OC_RECIPIENT();
    35 sub AT_ADDRESS();
    35 sub AT_ADDRESS();
    36 sub AT_GROUP();
    36 sub AT_GROUP();
    37 sub AT_FORWARDINGADDRESS();
    37 sub AT_FORWARDINGADDRESS();
    38 sub AT_QUOTA();
    38 sub AT_QUOTA();
       
    39 sub AT_ACLGROUPS();
    39 
    40 
    40 sub import(@) {
    41 sub import(@) {
    41     $Cf = shift;
    42     $Cf = shift;
    42 
    43 
    43     require constant;
    44     require constant;
    47     import constant AT_PRIMARYADDRESS    => $Cf->ldap_at_primaryaddress;
    48     import constant AT_PRIMARYADDRESS    => $Cf->ldap_at_primaryaddress;
    48     import constant AT_ADDRESS           => $Cf->ldap_at_address;
    49     import constant AT_ADDRESS           => $Cf->ldap_at_address;
    49     import constant AT_GROUP             => $Cf->ldap_at_group;
    50     import constant AT_GROUP             => $Cf->ldap_at_group;
    50     import constant AT_FORWARDINGADDRESS => $Cf->ldap_at_forwardingaddress;
    51     import constant AT_FORWARDINGADDRESS => $Cf->ldap_at_forwardingaddress;
    51     import constant AT_QUOTA             => $Cf->ldap_at_quota;
    52     import constant AT_QUOTA             => $Cf->ldap_at_quota;
       
    53     import constant AT_ACLGROUPS         => $Cf->ldap_at_aclgroups;
    52 
    54 
    53     $ubase = OU_ACCOUNTS . "," . $Cf->ldap_base;
    55     $ubase = OU_ACCOUNTS . "," . $Cf->ldap_base;
    54     $abase = OU_ALIASES . "," . $Cf->ldap_base;
    56     $abase = OU_ALIASES . "," . $Cf->ldap_base;
    55 }
    57 }
    56 
    58 
   162         $e->add( userPassword => "{plain}$pw" );
   164         $e->add( userPassword => "{plain}$pw" );
   163         $e->add( (AT_GROUP) => $mailGroup ) if @$mailGroup;
   165         $e->add( (AT_GROUP) => $mailGroup ) if @$mailGroup;
   164         $e->add( (AT_FORWARDINGADDRESS) => $mailForwardingAddress )
   166         $e->add( (AT_FORWARDINGADDRESS) => $mailForwardingAddress )
   165           if @$mailForwardingAddress;
   167           if @$mailForwardingAddress;
   166         $e->add( (AT_QUOTA) => $Cf->imap_quota );
   168         $e->add( (AT_QUOTA) => $Cf->imap_quota );
       
   169         $e->add( (AT_ACLGROUPS) => $Cf->imap_aclgroups ) if $Cf->imap_aclgroups;
   167 
   170 
   168         # $e->add(iusRestrictedMail => $Cf->internal) if $Cf->internal ne ":";
   171         # $e->add(iusRestrictedMail => $Cf->internal) if $Cf->internal ne ":";
   169 
   172 
   170         $e->exists("sn") or $e->add( sn => $sn );
   173         $e->exists("sn") or $e->add( sn => $sn );
   171         $e->exists("cn") or $e->add( cn => $cn );
   174         $e->exists("cn") or $e->add( cn => $cn );
   308                 } else {
   311                 } else {
   309                     $f =~ s/^\+//;
   312                     $f =~ s/^\+//;
   310                     $e->add( (AT_FORWARDINGADDRESS) => [$f] );
   313                     $e->add( (AT_FORWARDINGADDRESS) => [$f] );
   311                 }
   314                 }
   312             }
   315             }
       
   316             $modified++;
       
   317         }
       
   318 
       
   319         if ( defined $Cf->quota ) {
       
   320             $e->replace( (AT_QUOTA) => $Cf->quota );
       
   321             $modified++;
       
   322         }
       
   323 
       
   324         if ( defined $Cf->aclgroups ) {
       
   325             $e->replace( (AT_ACLGROUPS) => $Cf->aclgroups );
   313             $modified++;
   326             $modified++;
   314         }
   327         }
   315 
   328 
   316         if ( my $a = $Cf->primary ) {
   329         if ( my $a = $Cf->primary ) {
   317             $r = $ldap->search(
   330             $r = $ldap->search(
   434         my $cn   = join( ", ", $e->get_value("cn") );
   447         my $cn   = join( ", ", $e->get_value("cn") );
   435         my $mr   = $e->get_value(AT_PRIMARYADDRESS) || "";                  # ??
   448         my $mr   = $e->get_value(AT_PRIMARYADDRESS) || "";                  # ??
   436         my $ml   = join( ", ", $e->get_value(AT_ADDRESS) ) || "";           # ??
   449         my $ml   = join( ", ", $e->get_value(AT_ADDRESS) ) || "";           # ??
   437         my $mg   = join( ", ", $e->get_value(AT_GROUP) ) || "";             # ??
   450         my $mg   = join( ", ", $e->get_value(AT_GROUP) ) || "";             # ??
   438         my $forw = join( ", ", $e->get_value(AT_FORWARDINGADDRESS) ) || "";
   451         my $forw = join( ", ", $e->get_value(AT_FORWARDINGADDRESS) ) || "";
       
   452         my $ag   = $e->get_value(AT_ACLGROUPS);
   439 
   453 
   440         print "$uid: $cn <$mr>";
   454         print "$uid: $cn <$mr>";
   441 
   455 
   442         #if (($e->get_value("iusRestrictedMail")||"") eq "TRUE") {
   456         #if (($e->get_value("iusRestrictedMail")||"") eq "TRUE") {
   443         #print " INTERNAL";
   457         #print " INTERNAL";
   504           "\n";
   518           "\n";
   505 
   519 
   506         print wrap( "\t", "\t\t", "Other Adresses: $ml\n" ) if $ml;
   520         print wrap( "\t", "\t\t", "Other Adresses: $ml\n" ) if $ml;
   507         print wrap( "\t", "\t\t", "Mail Groups: $mg\n" )    if $mg;
   521         print wrap( "\t", "\t\t", "Mail Groups: $mg\n" )    if $mg;
   508         print wrap( "\t", "\t\t", "Forwardings: $forw\n" )  if $forw;
   522         print wrap( "\t", "\t\t", "Forwardings: $forw\n" )  if $forw;
       
   523         print wrap( "\t", "\t\t", "ACL Groups: $ag\n" )  if $ag;
   509 
   524 
   510     }
   525     }
   511 }
   526 }
   512 
   527 
   513 sub verbose(@) {
   528 sub verbose(@) {