Hi,
Doing a first install of dovecot, trying to copy over some of the config
settings from 1.1.6. I'm getting an error, I think from the ACL plugin
module. This is the error I'm getting on the console:
Error: imap dump-capability process returned 89
Fatal: Invalid configuration in /etc/opt/dovecot1.8/dovecot.conf
And this is what is appearing in syslog:
Jan 23 12:46:57 mars.tc.umn.edu imap(dump-capability): : [ID 315030
mail.info] Loading modules from directory: /opt/dovecot1.8/lib/dovecot/imap
Jan 23 12:46:57 mars.tc.umn.edu imap(dump-capability): : [ID 817342
mail.error] dlopen(/opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so)
failed: ld.so.1: imap: fatal: relocation error: file
/opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so: symbol i_strcmp_p:
referenced symbol not found
Other pertinent info:
# /opt/dovecot1.8/sbin/dovecot --version
1.1.8
# /opt/dovecot1.8/sbin/dovecot -n
# 1.1.8: /etc/opt/dovecot1.8/dovecot.conf
Warning: fd limit 256 is lower than what Dovecot can use under full load
(more than 8448). Either grow the limit or change
login_max_processes_count and max_mail_processes settings
# OS: SunOS 5.10 sun4u
syslog_facility: local6
protocols: imap imaps pop3 pop3s
ssl_cert_file: /etc/opt/openssl/certs/dovecot.pem
ssl_key_file: /etc/opt/openssl/private/dovecot.pem
shutdown_clients: no
login_dir: /var/opt/dovecot1.8/run/dovecot/login
login_executable(default): /opt/dovecot1.8/libexec/dovecot/imap-login
login_executable(imap): /opt/dovecot1.8/libexec/dovecot/imap-login
login_executable(pop3): /opt/dovecot1.8/libexec/dovecot/pop3-login
login_log_format_elements: user=<%u> pid=<%p> method=%m rip=%r
lip=%l %c
max_mail_processes: 8192
first_valid_uid: 99
mail_location:
mbox:~:INBOX=/var/mail/%u:INDEX=/var/mail/.dovecot-index/%1u/%u/
mail_debug: yes
mbox_lazy_writes: no
mail_executable(default): /opt/dovecot/libexec/dovecot/imap-helper
mail_executable(imap): /opt/dovecot/libexec/dovecot/imap-helper
mail_executable(pop3): /opt/dovecot1.8/libexec/dovecot/pop3
mail_plugins(default): acl
mail_plugins(imap): acl
mail_plugins(pop3):
mail_plugin_dir(default): /opt/dovecot1.8/lib/dovecot/imap
mail_plugin_dir(imap): /opt/dovecot1.8/lib/dovecot/imap
mail_plugin_dir(pop3): /opt/dovecot1.8/lib/dovecot/pop3
mail_log_prefix: [%p] %Us(%u):
imap_client_workarounds(default): delay-newmail outlook-idle
tb-extra-mailbox-sep
imap_client_workarounds(imap): delay-newmail outlook-idle
tb-extra-mailbox-sep
imap_client_workarounds(pop3):
namespace:
type: private
separator: /
location:
mbox:~:INBOX=/var/mail/%u:INDEX=/var/mail/.dovecot-index/%1u/%u/
inbox: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: mail/
location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: ~/mail/
location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: ~%u/mail/
location: mbox:~/mail/:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: Shared/
location:
maildir:~/Maildir/Shared:INDEX=/var/mail/.dovecot-index/%1u/%u/shared:CONTROL=/var/mail/.dovecot-index/%1u/%u/shared-control
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: mail/Shared/
location:
maildir:~/Maildir/Shared:INDEX=/var/mail/.dovecot-index/%1u/%u/shared:CONTROL=/var/mail/.dovecot-index/%1u/%u/shared-control
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: ~/mail/Shared/
location:
maildir:~/Maildir/Shared:INDEX=/var/mail/.dovecot-index/%1u/%u/shared:CONTROL=/var/mail/.dovecot-index/%1u/%u/shared-control
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: AutoFiled/
location:
mbox:/archive/home/%1u/%u/mail/AutoFiled:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: mail/AutoFiled/
location:
mbox:/archive/home/%1u/%u/mail/AutoFiled:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: ~/mail/AutoFiled/
location:
mbox:/archive/home/%1u/%u/mail/AutoFiled:INDEX=/var/mail/.dovecot-index/%1u/%u/
hidden: yes
list: yes
subscriptions: yes
namespace:
type: private
separator: /
prefix: Prefs/
location: mbox:~:INDEX=MEMORY
hidden: yes
list: yes
subscriptions: yes
auth default:
username_format: %Lu
passdb:
driver: pam
args: session=yes *
userdb:
driver: passwd
plugin:
acl: vfile:
Any help would be great. Thanks!
*************************************************************************
* Tom Goerger - Email/Unix System Administrator *
* *
* University of Minnesota Email: tmg at umn.edu *
* Operations, Infrastructure and Architecture Phone: 4-5804 *
* Internet Services Office: 626J WBOB *
* *
*************************************************************************
On Fri, 2009-01-23 at 12:48 -0600, Thomas M Goerger wrote:> Jan 23 12:46:57 mars.tc.umn.edu imap(dump-capability): : [ID 817342 > mail.error] dlopen(/opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so) > failed: ld.so.1: imap: fatal: relocation error: file > /opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so: symbol i_strcmp_p: > referenced symbol not foundYour linker was trying to be smart and didn't include i_strcmp_p() function in imap binary, because it wasn't used anywhere in the imap binary itself. ACL plugin needs it, but since linker dropped it it's no longer there. The possibilities for how to fix this would be: a) Modify linker flags so that it doesn't drop all these unused functions. b) Move the i_strcmp_p() code to ACL plugin. c) Use i_strcmp_p() somewhere in IMAP code. d) Make liblib.a a shared library instead so that the linker won't try to drop useful stuff. I think for now you should go with a), b) or c). The long term solution will be d), but I wasn't really planning on doing it soon.. Hmm. Maybe for v1.3. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20090125/bb602153/attachment-0002.bin>
Hi Timo, I'd like to do option A, but I'm not certain as to what steps to take to do so. Could you let me know where the code for this function is located, and what might need to be done to link it? I'm not terribly familiar with the linker, so I'm having a bit of trouble figuring out what exactly needs to be done for the rebuild. Thanks, ************************************************************************* * Tom Goerger - Email/Unix System Administrator * * * * University of Minnesota Email: tmg at umn.edu * * Operations, Infrastructure and Architecture Phone: 4-5804 * * Internet Services Office: 626J WBOB * * * ************************************************************************* On Sun, 25 Jan 2009, Timo Sirainen wrote:> On Fri, 2009-01-23 at 12:48 -0600, Thomas M Goerger wrote: > > Jan 23 12:46:57 mars.tc.umn.edu imap(dump-capability): : [ID 817342 > > mail.error] dlopen(/opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so) > > failed: ld.so.1: imap: fatal: relocation error: file > > /opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so: symbol i_strcmp_p: > > referenced symbol not found > > Your linker was trying to be smart and didn't include i_strcmp_p() > function in imap binary, because it wasn't used anywhere in the imap > binary itself. ACL plugin needs it, but since linker dropped it it's no > longer there. The possibilities for how to fix this would be: > > a) Modify linker flags so that it doesn't drop all these unused > functions. > > b) Move the i_strcmp_p() code to ACL plugin. > > c) Use i_strcmp_p() somewhere in IMAP code. > > d) Make liblib.a a shared library instead so that the linker won't try > to drop useful stuff. > > I think for now you should go with a), b) or c). The long term solution > will be d), but I wasn't really planning on doing it soon.. Hmm. Maybe > for v1.3. >
Hi, I'd like to do option A, but I'm not certain as to what steps to take to do so. Could you let me know where the code for this function is located, and what might need to be done to link it? I'm not terribly familiar with the linker, so I'm having a bit of trouble figuring out what exactly needs to be done for the rebuild. Thanks, ************************************************************************* * Tom Goerger - Email/Unix System Administrator * * * * University of Minnesota Email: tmg at umn.edu * * Operations, Infrastructure and Architecture Phone: 4-5804 * * Internet Services Office: 626J WBOB * * * ************************************************************************* On Sun, 25 Jan 2009, Timo Sirainen wrote:> On Fri, 2009-01-23 at 12:48 -0600, Thomas M Goerger wrote: > > Jan 23 12:46:57 mars.tc.umn.edu imap(dump-capability): : [ID 817342 > > mail.error] dlopen(/opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so) > > failed: ld.so.1: imap: fatal: relocation error: file > > /opt/dovecot1.8/lib/dovecot/imap/lib01_acl_plugin.so: symbol i_strcmp_p: > > referenced symbol not found > > Your linker was trying to be smart and didn't include i_strcmp_p() > function in imap binary, because it wasn't used anywhere in the imap > binary itself. ACL plugin needs it, but since linker dropped it it's no > longer there. The possibilities for how to fix this would be: > > a) Modify linker flags so that it doesn't drop all these unused > functions. > > b) Move the i_strcmp_p() code to ACL plugin. > > c) Use i_strcmp_p() somewhere in IMAP code. > > d) Make liblib.a a shared library instead so that the linker won't try > to drop useful stuff. > > I think for now you should go with a), b) or c). The long term solution > will be d), but I wasn't really planning on doing it soon.. Hmm. Maybe > for v1.3. >