adam_jh at hotmail.com
2007-Dec-11 16:10 UTC
[Dovecot] 1.0.8 with quota 1.0.8 patch - undefined symbol: quota_set
I get the following error after patching the 1.0.8 src.rpm with the quota-rewrite-1.0.8.diff [root at test dovecot]# /etc/rc.d/init.d/dovecot start Starting Dovecot Imap: Edlopen(/usr/lib/dovecot/imap/lib02_imap_quota_plugin.so) failed: /usr/lib/dovecot/imap/lib02_imap_quota_plugin.so: undefined symbol: quota_set FCouldn't load required plugins Error: imap dump-capability process returned 89 Fatal: Invalid configuration in /etc/dovecot.conf [FAILED] I have checked the new quota config changes. The src rpm is taken from http://atrpms.net/dist/el4/dovecot/. Using the same process without the patch, the rpm that's built and installed works (or at least starts). A process of elimination revealed it doesn't understand the imap_quota aspect of the quota imap_quota configuration line. Removing that it works, but I kind of need it! Can anyone help? Thanks, adam To patch it I did: Patch103: dovecot-1.0.beta2-mkcert-permissions.patch Patch105: dovecot-1.0.rc7-mkcert-paths.patch # quota patch Patch106: quota-rewrite-1.0.8.diff and %patch103 -p1 -b .mkcert-permissions %patch105 -p1 -b .mkcert-paths %patch106 -p1 -b .quota Since I'm using centos to match RHEL 4 [rpmbuild at test SPECS]$ cat /etc/redhat-release Red Hat Enterprise Linux WS release 4 (Nahant) I also added to my .rpmmacros for the rpmbuild user I have %bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}} %bcond_without() %{expand:%%{!?_without_%{1}:%%global without_%{1} 1}} %with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}} %without() %{expand:%%{?without_%{1}:0}%%{!?without_%{1}:1}} then rpm -e dovecot su rpmbuild ... rpmbuild -ba postfix.spec rpm -Uvh ...dovecot.rpm [root at test dovecot]# /usr/sbin/postfix -n # 1.0.8: /etc/dovecot.conf login_dir: /var/run/dovecot-login login_executable(default): /usr/libexec/dovecot/imap-login login_executable(imap): /usr/libexec/dovecot/imap-login login_executable(pop3): /usr/libexec/dovecot/pop3-login login_processes_count: 1 first_valid_uid: 505 last_valid_uid: 505 mail_extra_groups: mail mail_location: maildir:/var/vmail/%d/%n maildir_copy_with_hardlinks: yes mail_executable(default): /usr/libexec/dovecot/imap mail_executable(imap): /usr/libexec/dovecot/imap mail_executable(pop3): /usr/libexec/dovecot/pop3 mail_plugins(default): quota imap_quota mail_plugins(imap): quota imap_quota mail_plugins(pop3): quota mail_plugin_dir(default): /usr/lib/dovecot/imap mail_plugin_dir(imap): /usr/lib/dovecot/imap mail_plugin_dir(pop3): /usr/lib/dovecot/pop3 imap_client_workarounds(default): outlook-idle delay-newmail imap_client_workarounds(imap): outlook-idle delay-newmail imap_client_workarounds(pop3): outlook-idle pop3_client_workarounds(default): pop3_client_workarounds(imap): pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh auth default: user: nobody passdb: driver: sql args: /etc/dovecot-mysql.conf userdb: driver: sql args: /etc/dovecot-mysql.conf socket: type: listen client: path: /var/spool/postfix/private/auth mode: 432 user: postfix group: mail master: path: /var/run/dovecot/auth-master mode: 432 user: vmail group: mail plugin: quota: maildir
Juan C. Blanco
2007-Dec-11 17:50 UTC
[Dovecot] 1.0.8 with quota 1.0.8 patch - undefined symbol: quota_set
Helolo, I've forgot to mention that I have had this same error weith the rewrite patch from http://www.dovecot.org/patches/1.0/ The rewrite quota patch includes a name change in the imap_quota plugin from lib20_imap_quota to lib02_imap_quota and I've deduced that the plugins are loaded in name order, then the imap_quota is loaded prior to quota (name lib10_quota) and since the first one depends on the last the load fails. In my modified patch I've also changed the name of the imap_quota plugin to lib12_imap_quota and then loads nicely, I don't know if this is a logical change but... Regards Juan C. Blanco adam_jh at hotmail.com wrote:> I get the following error after patching the 1.0.8 src.rpm with the quota-rewrite-1.0.8.diff > > [root at test dovecot]# /etc/rc.d/init.d/dovecot start > Starting Dovecot Imap: Edlopen(/usr/lib/dovecot/imap/lib02_imap_quota_plugin.so) failed: /usr/lib/dovecot/imap/lib02_imap_quota_plugin.so: undefined symbol: quota_set > FCouldn't load required plugins > Error: imap dump-capability process returned 89 > Fatal: Invalid configuration in /etc/dovecot.conf > [FAILED] > > I have checked the new quota config changes. The src rpm is taken from http://atrpms.net/dist/el4/dovecot/. Using the same process without the patch, the rpm that's built and installed works (or at least starts). A process of elimination revealed it doesn't understand the imap_quota aspect of the quota imap_quota configuration line. Removing that it works, but I kind of need it! > > Can anyone help? > > Thanks, > adam > > > To patch it I did: > Patch103: dovecot-1.0.beta2-mkcert-permissions.patch > Patch105: dovecot-1.0.rc7-mkcert-paths.patch > # quota patch > Patch106: quota-rewrite-1.0.8.diff > and > %patch103 -p1 -b .mkcert-permissions > %patch105 -p1 -b .mkcert-paths > %patch106 -p1 -b .quota > > Since I'm using centos to match RHEL 4 > [rpmbuild at test SPECS]$ cat /etc/redhat-release > Red Hat Enterprise Linux WS release 4 (Nahant) > > I also added to my .rpmmacros for the rpmbuild user I have > %bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}} > %bcond_without() %{expand:%%{!?_without_%{1}:%%global without_%{1} 1}} > %with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}} > %without() %{expand:%%{?without_%{1}:0}%%{!?without_%{1}:1}} > > then > rpm -e dovecot > su rpmbuild > ... > rpmbuild -ba postfix.spec > rpm -Uvh ...dovecot.rpm > > > > [root at test dovecot]# /usr/sbin/postfix -n > # 1.0.8: /etc/dovecot.conf > login_dir: /var/run/dovecot-login > login_executable(default): /usr/libexec/dovecot/imap-login > login_executable(imap): /usr/libexec/dovecot/imap-login > login_executable(pop3): /usr/libexec/dovecot/pop3-login > login_processes_count: 1 > first_valid_uid: 505 > last_valid_uid: 505 > mail_extra_groups: mail > mail_location: maildir:/var/vmail/%d/%n > maildir_copy_with_hardlinks: yes > mail_executable(default): /usr/libexec/dovecot/imap > mail_executable(imap): /usr/libexec/dovecot/imap > mail_executable(pop3): /usr/libexec/dovecot/pop3 > mail_plugins(default): quota imap_quota > mail_plugins(imap): quota imap_quota > mail_plugins(pop3): quota > mail_plugin_dir(default): /usr/lib/dovecot/imap > mail_plugin_dir(imap): /usr/lib/dovecot/imap > mail_plugin_dir(pop3): /usr/lib/dovecot/pop3 > imap_client_workarounds(default): outlook-idle delay-newmail > imap_client_workarounds(imap): outlook-idle delay-newmail > imap_client_workarounds(pop3): outlook-idle > pop3_client_workarounds(default): > pop3_client_workarounds(imap): > pop3_client_workarounds(pop3): outlook-no-nuls oe-ns-eoh > auth default: > user: nobody > passdb: > driver: sql > args: /etc/dovecot-mysql.conf > userdb: > driver: sql > args: /etc/dovecot-mysql.conf > socket: > type: listen > client: > path: /var/spool/postfix/private/auth > mode: 432 > user: postfix > group: mail > master: > path: /var/run/dovecot/auth-master > mode: 432 > user: vmail > group: mail > plugin: > quota: maildir >-- +----------------------------------------------------------------+ | Juan C. Blanco | | | | Centro de Calculo | | | Facultad de Informatica U.P.M. | E-mail: jcblanco at fi.upm.es | | Campus de Montegancedo | | | Boadilla del Monte | Tel.: (+34) 91 336 7466 | | 28660 MADRID (Spain) | Fax : (+34) 91 336 6913 | +----------------------------------------------------------------+