29 |
29 |
30 * alias options * |
30 * alias options * |
31 --members=s List of Members [!$Cf->members!] |
31 --members=s List of Members [!$Cf->members!] |
32 |
32 |
33 * shared mailbox options * |
33 * shared mailbox options * |
34 # --access=s List of users having access |
34 |
35 [!$Cf->access!] |
35 * group options * |
|
36 --members=s List of Members [!$Cf->members!] |
|
37 --description=s Descripton [!$Cf->description!] |
36 |
38 |
37 Passwords for LDAP and IMAP can be read from environment LDAP_PASS resp. IMAP_PASS. |
39 Passwords for LDAP and IMAP can be read from environment LDAP_PASS resp. IMAP_PASS. |
38 Options can be read from config file named in $MA_CONF [!$ENV{MA_CONF}!]. |
40 Options can be read from config file named in $MA_CONF [!$ENV{MA_CONF}!]. |
39 |
41 |
40 $Id$ |
42 $Id$ |
72 ldap_password =>{ ARGS => "=s" }, |
74 ldap_password =>{ ARGS => "=s" }, |
73 |
75 |
74 help => { ARGS => "!" }, |
76 help => { ARGS => "!" }, |
75 debug => { ARGS => "!" }, |
77 debug => { ARGS => "!" }, |
76 |
78 |
|
79 description => { ARGS => "=s" }, |
|
80 |
77 |
81 |
78 # * account * |
82 # * account * |
79 imap_server => { ARGS => "=s", DEFAULT => "localhost" }, |
83 imap_server => { ARGS => "=s", DEFAULT => "localhost" }, |
80 imap_admin => { ARGS => "=s", DEFAULT => $ENV{USER} }, |
84 imap_admin => { ARGS => "=s", DEFAULT => $ENV{USER} }, |
81 imap_password =>{ ARGS => "=s" }, |
85 imap_password =>{ ARGS => "=s" }, |
88 other => { ARGS => ":s" }, |
92 other => { ARGS => ":s" }, |
89 group => { ARGS => ":s" }, |
93 group => { ARGS => ":s" }, |
90 fullname => { ARGS => "=s", ALIAS => "realname" }, |
94 fullname => { ARGS => "=s", ALIAS => "realname" }, |
91 address => { ARGS => "=s", ALIAS => "primary" }, |
95 address => { ARGS => "=s", ALIAS => "primary" }, |
92 |
96 |
93 # * alias * |
97 # * alias * group * |
94 members => { ARGS => ":s" }, |
98 members => { ARGS => ":s" }, |
95 |
99 |
96 # * shared * |
100 # * shared * |
97 #access => { ARGS => ":s" }, |
101 #access => { ARGS => ":s" }, |
98 |
102 |
|
103 # * group * |
|
104 gid_min => { ARGS => "=i", DEFAULT => 60000 }, |
|
105 gid_max => { ARGS => "=i", DEFAULT => 60100 }, |
|
106 |
99 # * ldap intern * |
107 # * ldap intern * |
100 ldap_ou_aliases => { ARGS => "=s", DEFAULT => "ou=MailAliases" }, |
108 ldap_ou_aliases => { ARGS => "=s", DEFAULT => "ou=MailAliases" }, |
101 ldap_ou_accounts => { ARGS => "=s", DEFAULT => "ou=MailAccounts" }, |
109 ldap_ou_accounts => { ARGS => "=s", DEFAULT => "ou=MailAccounts" }, |
|
110 ldap_ou_groups => { ARGS => "=s", DEFAULT => "ou=Groups" }, |
102 |
111 |
103 ldap_oc_alias => { ARGS => "=s", DEFAULT => "XXXmailAlias" }, |
112 ldap_oc_alias => { ARGS => "=s", DEFAULT => "XXXmailAlias" }, |
104 ldap_oc_recipient => { ARGS => "=s", DEFAULT => "XXXmailRecipient" }, |
113 ldap_oc_recipient => { ARGS => "=s", DEFAULT => "XXXmailRecipient" }, |
|
114 ldap_oc_accessgroup => { ARGS => "=s", DEFAULT => "XXXmailAccessGroup" }, |
105 |
115 |
106 ldap_at_address => { ARGS => "=s", DEFAULT => "XXXmailAddress" }, |
116 ldap_at_address => { ARGS => "=s", DEFAULT => "XXXmailAddress" }, |
107 ldap_at_group => { ARGS => "=s", DEFAULT => "XXXmailGroup" }, |
117 ldap_at_group => { ARGS => "=s", DEFAULT => "XXXmailGroup" }, |
108 ldap_at_forwardingaddress => |
118 ldap_at_forwardingaddress => |
109 { ARGS => "=s", DEFAULT => "XXXmailForwardingAddress" }, |
119 { ARGS => "=s", DEFAULT => "XXXmailForwardingAddress" }, |
138 $Cf->ldap_admin($Cf->ldap_admin . "," . $Cf->ldap_base); |
148 $Cf->ldap_admin($Cf->ldap_admin . "," . $Cf->ldap_base); |
139 } |
149 } |
140 |
150 |
141 print help() and exit 0 if $Cf->help; |
151 print help() and exit 0 if $Cf->help; |
142 |
152 |
143 @_ = grep { $_ =~ /^\Q$Module\E/ } qw/account alias shared/; |
153 @_ = grep { $_ =~ /^\Q$Module\E/ } qw/account alias shared group/; |
144 die "Need module. Try --help\n" if @_ == 0; |
154 die "Need module. Try --help\n" if @_ == 0; |
145 die "Module ambigous. (@_)\n" if @_ > 1; |
155 die "Module ambigous. (@_)\n" if @_ > 1; |
146 |
156 |
147 if ($_[0] eq 'account') { |
157 if ($_[0] eq 'account') { |
148 require account; |
158 require account; |