|
|
|
@ -2744,6 +2744,61 @@ tcl::namespace::eval punk::imap4 {
|
|
|
|
|
} |
|
|
|
|
# ++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ |
|
|
|
|
|
|
|
|
|
tcl::namespace::eval punk::imap4::admin { |
|
|
|
|
tcl::namespace::export {[a-zA-Z]*} ;# Convention: export all lowercase |
|
|
|
|
variable PUNKARGS |
|
|
|
|
variable PUNKARGS_aliases |
|
|
|
|
|
|
|
|
|
lappend PUNKARGS [list { |
|
|
|
|
@id -id "::punk::imap4::admin::GETQUOTA" |
|
|
|
|
@cmd -name "punk::imap4::::admin::GETQUOTA" -help\ |
|
|
|
|
"Get quota information" |
|
|
|
|
@leaders -min 1 -max 1 |
|
|
|
|
chan |
|
|
|
|
@opts |
|
|
|
|
@values -min 1 -max 1 |
|
|
|
|
mailbox -help\ |
|
|
|
|
"e.g user/account.test" |
|
|
|
|
}] |
|
|
|
|
proc GETQUOTA {args} { |
|
|
|
|
set argd [punk::args::parse $args withid ::punk::imap4::admin::GETQUOTA] |
|
|
|
|
lassign [dict values $argd] leaders opts values received |
|
|
|
|
set chan [dict get $leaders chan] |
|
|
|
|
set mailbox [dict get $values mailbox] |
|
|
|
|
|
|
|
|
|
punk::imap4::proto::simplecmd $chan GETQUOTA {AUTH SELECT} $mailbox |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
lappend PUNKARGS [list { |
|
|
|
|
@id -id "::punk::imap4::admin::SETQUOTARESOURCE" |
|
|
|
|
@cmd -name "punk::imap4::admin::SETQUOTARESOURCE" -help\ |
|
|
|
|
"Set quota for a resource" |
|
|
|
|
@leaders -min 1 -max 1 |
|
|
|
|
chan |
|
|
|
|
@opts |
|
|
|
|
-resource -default STORAGE -help\ |
|
|
|
|
"This interface only allows setting of a single resource |
|
|
|
|
at a time." |
|
|
|
|
@values -min 2 -max 2 |
|
|
|
|
mailbox -help\ |
|
|
|
|
"e.g user/account.test" |
|
|
|
|
quota -type integer -minsize 0 -help\ |
|
|
|
|
"Number of 1024 Byte blocks |
|
|
|
|
(KB)" |
|
|
|
|
}] |
|
|
|
|
proc SETQUOTARESOURCE {args} { |
|
|
|
|
set argd [punk::args::parse $args withid ::punk::imap4::admin::SETQUOTARESOURCE] |
|
|
|
|
lassign [dict values $argd] leaders opts values received |
|
|
|
|
set chan [dict get $leaders chan] |
|
|
|
|
set mailbox [dict get $values mailbox] |
|
|
|
|
set resource [dict get $opts -resource] |
|
|
|
|
set quota [dict get $values quota] |
|
|
|
|
|
|
|
|
|
punk::imap4::proto::simplecmd $chan SETQUOTA {AUTH SELECT} $mailbox "($resource $quota)" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# ++ +++ +++ +++ +++ +++ +++ +++ +++ +++ +++ |
|
|
|
|
# Secondary API namespace |
|
|
|
@ -3294,7 +3349,7 @@ tcl::namespace::eval punk::imap4 {
|
|
|
|
|
# variable PUNKARGS_aliases |
|
|
|
|
namespace eval ::punk::args::register { |
|
|
|
|
#use fully qualified so 8.6 doesn't find existing var in global namespace |
|
|
|
|
lappend ::punk::args::register::NAMESPACES ::punk::imap4 ::punk::imap4::proto |
|
|
|
|
lappend ::punk::args::register::NAMESPACES ::punk::imap4 ::punk::imap4::admin ::punk::imap4::proto |
|
|
|
|
} |
|
|
|
|
# ----------------------------------------------------------------------------- |
|
|
|
|
|
|
|
|
|