[Exim] Courier Maildirsize MaildirMake DeliveryQuota (exim 4…

トップ ページ
このメッセージを削除
このメッセージに返信
著者: Silmar A. Marca
日付:  
To: exim-users
題目: [Exim] Courier Maildirsize MaildirMake DeliveryQuota (exim 4.20)
I need to make a file "maildirsize" in root of "home" user to read imap command
"GETQUOTA ROOT" for a imp/courier.
This is ok if I run "maildirmake" every message...
For a real users I'm use (this is ok!)
--------------------------------------------------------------------------------
-->Routers
local_domain_maildirsize:
  driver                = accept
  check_local_user
  transport             = local_delivery_maildirsize
  domains               = DOM_LOCAL : DOM_ALIAS
  unseen
local_domain:
  driver                = accept
  check_local_user
  transport             = local_delivery
  domains               = DOM_LOCAL : DOM_ALIAS
-->Transport
local_delivery_maildirsize:
  driver                = pipe
  return_output
  log_defer_output
  log_fail_output
  command               = "/usr/bin/maildirmake -q 33554432S,500C
$home/Maildir"
  group                 = mail
  user                  = $local_part
local_delivery:
  driver                = appendfile
  directory             = $home/Maildir
  group                 = mail
  quota                 = 32M
  quota_filecount       = 500
  maildir_format
  maildir_tag           = ,S=$message_size
  quota_size_regex      = ,S=(\d+)
  create_directory


--------------------------------------------------------------------------------
But, I need to use this for a virtual user, and "virtual quota". If run a
command:
command = "/usr/bin/maildirmake -q ${lookup mysql{MYSQL_QUOTAX}{$value}fail}
${lookup mysql{MYSQL_DIRECTORY}{$value}fail}"
or
command = /usr/bin/maildirmake -q ${lookup mysql{MYSQL_QUOTAX}{$value}fail}
${lookup mysql{MYSQL_DIRECTORY}{$value}fail}
or
command = "/usr/bin/maildirmake -q mysql;MYSQL_QUOTAX mysql;MYSQL_DIRECTORY"
or
command = /usr/bin/maildirmake -q mysql;MYSQL_QUOTAX mysql;MYSQL_DIRECTORY

this command is fail... exim dont make a query...

I try to use:
home_directory        = ${lookup mysql{MYSQL_DIRECTORY}{$value}fail}
command               = "/usr/bin/maildirmake -q 33554432S,500C ${home}"
and... this is OK! But quota dont is a real quota... quota is in mysql select
and mysql select dont run!


Whow to make a "maildirsize" using quota and home stored in mysql?? My version
of exim is 4.20.
Have a "$run" command to run in "driver = appendfile" and get mysql data? Or
have a internal instruction to make a maildirsize file?? Format of maildirsize
is very simple!
->
33554432S,500C
1308794 19
->
The first line is quotasize+S,quota_filecount+C
The second line is size actual and count files

If exim have a inernal quota control (by size and file count) I suggest to make
this file aways, independent of this old content...

Thanks from pt-BR
Cordialmente, Silmar A. Marca
GrupoGSN - Desenvolvimento, Implantação e Verificação de Servidores
Profissionais baseados em Linux/Novell
http://www.grupogsn.com.br/~marca/
------------------------------------------------------------
Se algo não lhe faz mal (fisico, moral ou psicologicamente),
experimente! O máximo e você perder tempo! E tempo, e
o que você tem a vida toda pra perder.....
Mais vale um instante de prazer que uma eternidade fútil!
------------------------------------------------------------