On Wed, Oct 10, 2012 at 12:22 PM, Timo Sirainen tss@iki.fi wrote:
On 10.10.2012, at 13.00, Natanael Copa wrote:
Running doveadm on Alpine Linux will show various underlinking errors:
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.
Why does it need to load all the plugins? Why not only try to load those who are 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. :)
Link statically? Or only link in the .o files that has the needed symbols?
I'm not familiar with the code, but how about adding an char* adm_module to the module struct, and then instead of trying to dlopen all in doveadm dir, loop through all the already loaded modules and dlopen(loaded_module->adm_module)?
-- Natanael Copa