On 10.10.2012, at 13.00, Natanael Copa wrote:
Running doveadm on Alpine Linux will show various underlinking errors: /usr/bin/doveadm: symbol 'acl_user_module': can't resolve symbol in lib '/usr/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so'. /usr/bin/doveadm: symbol 'acl_identifier_parse': can't resolve symbol in lib '/usr/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so'. .. Which means that lib10_doveadm_acl_plugin.so should be directly linked to lib01_acl_plugin.so. But it is not: .. Below is a patch that should solve it.
I think I once did that with imap_quota plugin for quota plugin. The problem was that then it was possible to set "mail_plugins=imap_quota", which automatically loaded the quota plugin, but didn't call its quota_plugin_init() function, which caused some strange behavior (crashed probably).
With doveadm the similar behavior is done for pretty much the same reason. doveadm tries to load all of the plugins, and it intentionally fails for those that fail to load due to not being enabled in mail_plugins setting. doveadm acl command shouldn't work if acl plugin isn't enabled.
Maybe there are some other ways to make this work more nicely. There would still be time to change it for v2.2 if you have good ideas. :)