1IMAP::Shell(3)        User Contributed Perl Documentation       IMAP::Shell(3)
2
3
4

NAME

6       Cyrus::IMAP::Shell - Perl version of cyradm
7

SYNOPSIS

9         $ cyradm [--user authid] [--authz authzid] [--[no]rc] [--systemrc file] [--userrc file] \
10         > [--port n] [--auth mechanism] [--server] server
11
12       but possibly
13
14         $ perl -MCyrus::IMAP::Shell -e 'run("myscript")'
15
16       or even (not recommended)
17
18         use Cyrus::IMAP::Admin::Shell;
19
20         run('myscriptname');
21

DESCRIPTION

23       This module implements cyradm in Perl.  It is a shell around
24       Cyrus::IMAP::Admin.  Commands are provided in both Tcl-compatible forms
25       and GNU-style long option forms.
26

COMMANDS

28       "authenticate" ["--minssf" N] ["--maxssf" N] ["--mechanisms" list]
29       [user]
30       "auth" ["--minssf" N] ["--maxssf" N] ["--mechanisms" list] [user]
31       "login" ["--minssf" N] ["--maxssf" N] ["--mechanisms" list] [user]
32           Authenticate to server.  You must already be connected to a server
33           and Cyrus imapd will refuse to allow you to re-authenticate once
34           you have authenticated once.
35
36       "chdir" directory
37       "cd" directory
38           Change directory.  A "pwd" builtin is not provided, but the default
39           command action will run "pwd" from a shell if invoked.
40
41       "createmailbox" ["--partition" partition] mailbox
42       "createmailbox" mailbox partition
43       "create" ["--partition" partition] mailbox
44       "create" mailbox partition
45       "cm" ["--partition" partition] mailbox
46       "cm" mailbox partition
47           Create a mailbox on the default or a specified partition.  Both
48           old-style and getopt-style usages are accepted (combining them will
49           produce an error).
50
51       "deleteaclmailbox" mailbox id [...]
52       "deleteacl" mailbox id [...]
53       "dam" mailbox id [...]
54           Remove ACLs from the specified mailbox.
55
56       "deletemailbox" mailbox
57       "delete" mailbox
58       "dm" mailbox
59           Delete the specified mailbox.
60
61           Administrators do not have implicit delete rights on mailboxes.
62           Use the setaclmailbox command to grant the "k" permission to your
63           principal if you need to delete a mailbox you do not own.
64
65           Note that the online help admits to an optional host argument.
66           This argument is not currently used, and will be rejected with an
67           error if specified; it is reserved for IMSP.
68
69       "disconnect"
70       "disc"
71           Disconnect from the current server.  The prompt will revert to
72           "cyradm>".
73
74       "exit" [number]
75       "quit" [number]
76           Exit cyradm, optionally with a specific exit status; the exit
77           status of the last command will be used if one is not specified.
78
79       help [command]
80       ? [command]
81           Show help for "command" or all commands.
82
83       "info" [mailbox]
84           Display the mailbox/server metadata.
85
86       listaclmailbox mailbox
87       listacl mailbox
88       lam mailbox
89           List ACLs on the specified mailbox.
90
91       "listmailbox" ["--subscribed"] [pattern [reference]]
92       "list" ["--subscribed"] [pattern [reference]]
93       "lm" ["--subscribed"] [pattern [reference]]
94           List all, or all subscribed, mailboxes matching the specified
95           pattern.  The pattern may have embedded wildcards '*' or '%', which
96           match anything or anything except the separator character,
97           respectively.
98
99           Mailboxes returned will be relative to the specified reference if
100           one is specified.  This allows a mailbox list to be limited to a
101           particular hierarchy.
102
103           In some cases when the '%' wildcard is used to end a pattern, it
104           may match an entry which is not a mailbox but which contains other
105           mailboxes.  In this case, the entry will be parenthesized to
106           indicate that it is a root for other mailboxes, as opposed to a
107           mailbox itself.
108
109       "listquota" root
110       "lq" root
111           List quotas on specified root.  If the specified mailbox path does
112           not have a quota assigned, an error will be raised; see
113           listquotaroot for a way to find the quota root for a mailbox.
114
115       "listquotaroot" mailbox
116       "lqm" mailbox
117       "lqr" mailbox?
118           show quota roots and quotas for mailbox
119
120       "mboxconfig" mailbox attribute value
121       "mboxcfg" mailbox attribute value
122           Set mailbox metadata.  A value of "none" will remove the attribute.
123           The currently supported attributes are:
124
125           "comment"
126               Sets a comment or description associated with the mailbox.
127
128           "condstore"
129               Enables the IMAP CONDSTORE extension (modification sequences)
130               on the mailbox.
131
132           "expire"
133               Sets the number of days after which messages will be expired
134               from the mailbox.
135
136           "news2mail"
137               Sets an email address to which messages injected into the
138               server via NNTP will be sent.
139
140           "sharedseen"
141               Enables the use of a shared \Seen flag on messages rather than
142               a per-user \Seen flag.  The 's' right in the mailbox ACL still
143               controls whether a user can set the shared \Seen flag.
144
145           "sieve"
146               Indicates the name of the global sieve script that should be
147               run when a message is delivered to the shared mailbox (not used
148               for personal mailboxes).
149
150           "squat"
151               Indicates that the mailbox should have a squat index created
152               for it.
153
154       "renamemailbox" ["--partition" partition] oldname newname
155       "rename" ["--partition" partition] oldname newname
156       "renm" ["--partition" partition] oldname newname
157       "renamemailbox" oldname newname [partition]
158       "rename" oldname newname [partition]
159       "renm" oldname newname [partition]
160           Rename the specified mailbox, optionally moving it to a different
161           partition.  Both old-style and getopt-style usages are accepted;
162           combining them will produce an error.
163
164       server [--noauthenticate] [server]
165       connect [--noauthenticate] [server]
166       servername [--noauthenticate] [server]
167           With no arguments, show the current server.  With an argument,
168           connect to that server.  It will prompt for automatic login unless
169           the "--noauthenticate" option is specified.  (This may change; in
170           particular, either automatic authentication will be removed or all
171           "authenticate" options will be added.)
172
173           When connected to a server, cyradm's prompt changes from "cyradm>"
174           to "servername>", where servername is the fully qualified domain
175           name of the connected server.
176
177       "setaclmailbox" mailbox id rights [id rights ...]
178       "setacl" mailbox id rights [id rights ...]
179       "sam" mailbox id rights [id rights ...]
180           Set ACLs on a mailbox.  The ACL may be one of the special strings
181           "none", "read" ("lrs"), "post" ("lrsp"), "append" ("lrsip"),
182           "write" ("lrswipkxte"), "delete" ("lrxte"), or "all"
183           ("lrswipkxte"), or any combinations of the ACL codes:
184
185           l   Lookup (mailbox is visible to LIST/LSUB, SUBSCRIBE mailbox)
186
187           r   Read (SELECT/EXAMINE the mailbox, perform STATUS)
188
189           s   Seen (set/clear \SEEN flag via STORE, also set \SEEN flag
190               during
191                   APPEND/COPY/FETCH BODY[...])
192
193           w   Write flags other than \SEEN and \DELETED
194
195           i   Insert (APPEND, COPY destination)
196
197           p   Post (send mail to mailbox)
198
199           k   Create mailbox (CREATE new sub-mailboxes, parent for new
200               mailbox in RENAME)
201
202           x   Delete mailbox (DELETE mailbox, old mailbox name in RENAME)
203
204           t   Delete messages (set/clear \DELETED flag via STORE, also set
205               \DELETED
206                   flag during APPEND/COPY)
207
208           e   Perform EXPUNGE and expunge as part of CLOSE
209
210           a   Administer (SETACL/DELETEACL/GETACL/LISTRIGHTS)
211
212       "setinfo" attribute value
213           Set server metadata.  A value of "none" will remove the attribute.
214           The currently supported attributes are:
215
216           "motd"
217               Sets a "message of the day".  The message gets displayed as an
218               ALERT upon connection.
219
220           "comment"
221               Sets a comment or description associated with the server.
222
223           "admin"
224               Sets the administrator email address for the server.
225
226           "shutdown"
227               Sets a shutdown message.  The message gets displayed as an
228               ALERT and all users are disconnected from the server
229               (subsequent logins are disallowed).
230
231           "expire"
232               Sets the number of days after which messages will be expired
233               from the server (unless overridden by a mailbox annotation).
234
235           "squat"
236               Indicates that all mailboxes should have a squat indexes
237               created for them (unless overridden by a mailbox annotation).
238
239       "setquota" root resource value [resource value ...]
240       "sq" root resource value [resource value ...]
241           Set a quota on the specified root, which may or may not be an
242           actual mailbox.  The only resource understood by Cyrus is
243           "STORAGE".  The units are as defined in RFC 2087, groups of 1024
244           octets (i.e. Kilobytes).  The value may be the special string
245           "none" which will remove the quota.
246
247       "version"
248       "ver"
249           Display the version info of the current server.
250
251       "xfermailbox" ["--partition" partition] mailbox server
252       "xfer" ["--partition" partition] mailbox server
253       "xfermailbox" mailbox server [partition]
254       "xfer" mailbox server [partition]
255           Transfer (relocate) the specified mailbox to a different server.
256           Both old-style and getopt-style usages are accepted; combining them
257           will produce an error.
258

NOTES

260       GNU-style long options must be given in their entirety; Tcl-style
261       options may be abbreviated.
262
263       Tcl-style options are provided as a compatibility feature.  They will
264       probably go away in the future.
265
266       Multiple commands can be given on a line, separated by ';' characters.
267
268       All commands set an exit status, which at present is not useful.
269
270       Unknown commands are passed to a subshell for execution.
271
272       The Tcl version of cyradm is used for scripting as well as
273       interactively.  While this is possible to a limited extent by use of
274       the "run" method, scripting would normally be done with
275       "Cyrus::IMAP::Admin", which is far more flexible than either
276       interactive "cyradm" or the Tcl scripting mechanism for Cyrus.
277
278       cyradm understands /bin/sh-style redirection:  any command can have its
279       standard or error output redirected, with all sh-style redirections
280       (except "<>") supported.  It does not currently understand pipes or
281       backgrounding.
282
283       If the "Term::Readline::Perl" or "Term::Readline::GNU" modules are
284       available, cyradm will use it.
285
286       An alias facility is implemented internally, but no access is currently
287       provided to it.  This will change, if only to allow some of the
288       predefined aliases to be removed if they conflict with useful shell
289       commands.
290

AUTHOR

292       Brandon S. Allbery, allbery@ece.cmu.edu
293

SEE ALSO

295       Cyrus::IMAP::Admin Term::ReadLine sh(1), perl(1), imapd(8).
296
297
298
299perl v5.10.1                      2008-04-04                    IMAP::Shell(3)
Impressum