[Dovecot] expire plugin with 1.2 cronjob undefined symbol: capability_string / ignoring virtual namespace ?

Robert Schetterer robert at schetterer.org
Fri Jul 10 12:16:45 EEST 2009


Robert Schetterer schrieb:
> dovecot at dovecot.org schrieb:
>> Hi,
>>
>> this looks like one of my queued problems:
>>
>> On AIX I get a message that indicates missing global symbols.
>>
>> For example "client_read_args". It is defined in src/imap/client.c but
>> just linked at build time to the "imap" executable, while the
>> "expire-tool" does not provide this function.
>>
>> Does expire-tool require the plugins "quota" and "quota_imap" at all?
>>
>> Is it the same issue or just another AIX specific problem I've to fix? :-)
>>
>> Ralf
>>
>>
>> This is what the AIX runtime linker outputs:
>>
>> # /usr/local/dovecot-1.2.dev/sbin/dovecot \
>>     --exec-mail ext \
>>     /usr/local/dovecot-1.2.dev/libexec/dovecot/expire-tool \
>>      --test
>>
>> Info: Loading modules from directory:
>>      /usr/local/dovecot-1.2.dev/lib/dovecot/imap
>> Info: Module loaded:
>>      /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib10_quota_plugin.so
>> Error:
>> dlopen(/usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so)
>> failed: rtld: 0712-001 Symbol client_read_args was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol client_send_command_error was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol client_send_tagline was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol command_register was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol capability_string was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol command_unregister was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> rtld: 0712-001 Symbol client_send_line was referenced
>>       from module
>> /usr/local/dovecot-1.2.dev/lib/dovecot/imap/lib11_imap_quota_plugin.so(),
>>       but a runtime definition of the symbol was not found.
>> Additional errors occurred but are not reported.
>> Fatal: Couldn't load required plugins
>>
>>
>> Robert Schetterer schrieb am 08.07.2009 11:13:
>>> Hi,
>>> sorry if this asked twice,
>>> i ve searched the list and found some equal posts, but couldnt
>>> get my problem fixed with it
>>>
>>> if running cronjob with expire ( using mysql )
>>> i get
>>>
>>> dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext
>>> /usr/lib/dovecot/expire-tool --test
>>> Info: Loading modules from directory: /usr/lib/dovecot/modules/imap
>>> Info: Module loaded: /usr/lib/dovecot/modules/imap/lib01_acl_plugin.so
>>> Error: dlopen(/usr/lib/dovecot/modules/imap/lib02_imap_acl_plugin.so)
>>> failed: /usr/lib/dovecot/modules/imap/lib02_imap_acl_plugin.so:
>>> undefined symbol: capability_string
>>> Fatal: Couldn't load required plugins
>>>
>>> someone tips how to fix it ?
>>> perhaps problems relate to mail_location settings?
>>>
>>> dovecot --version
>>> 1.2.rc8
>>>
> 
> Hm, I ve read
> 
> http://dovecot.org/pipermail/dovecot/2009-June/040126.html
> 
> and used this script ( only problem to original was case sensitve
> mail_plugins)
> 
> #!/bin/bash
> MAIL_PLUGINS=${mail_plugins//imap_quota/}
> /usr/lib/dovecot/expire-tool $1
> 
> now it runs
> dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext
> /usr/sbin/expire-tool.sh --test
> Info: Loading modules from directory: /usr/lib/dovecot/modules/imap
> Info: robert at schetterer.com/Trash: stop, expire time in future: Wed Jul
> 15 10:34:39 2009
> 
> but i still have to test if there is a real delete

now that i run the cronjob
it stops before deleting
cause of hanging with virtual namespace
it should be possible to ignore ( not honor ) this with the script
but for now i hung with how to, can somebody help ?

dovecot -c /etc/dovecot/dovecot.conf --exec-mail ext
/usr/sbin/expire-tool.sh
Info: Loading modules from directory: /usr/lib/dovecot/modules/imap
Info: auth input:
home=maildir:/usr/local/virtual/schetterer.com/robert at schetterer.com/
Info: auth input: quota_rule=*:bytes=10240000
Info: auth input: quota_rule2=Trash:storage=50240
Info: auth input: quota_rule3=Sent:storage=50240
Info: auth input: quota_rule4=Drafts:storage=50240
Info: auth input: quota_rule5=Templates:storage=50240
Info: auth input: quota_rule6=Junk:storage=50240
Info: auth input:
mail=maildir:/usr/local/virtual/schetterer.com/robert at schetterer.com/
Info: auth input: namespace_1_inbox=yes
Info: auth input: uid=1001
Info: auth input: gid=1001
Info: Namespace: type=private, prefix=, sep=/, inbox=yes, hidden=no,
list=yes, subscriptions=yes
Info: maildir:
data=/usr/local/virtual//root/:CONTROL=/usr/local/virtual//root/:INDEX=/usr/local/virtual//root/:INBOX=/usr/local/virtual//root/
Info: maildir++: root=/usr/local/virtual//root, index=, control=,
inbox=/usr/local/virtual//root
Info: Namespace: type=private, prefix=virtual/, sep=/, inbox=no,
hidden=yes, list=(null), subscriptions=no
Error: Namespace 'virtual/': Unknown mail storage driver virtual



-- 
Best Regards

MfG Robert Schetterer

Germany/Munich/Bavaria


More information about the dovecot mailing list