lmtpd Internal error: asserstion failed: append.c
Shelley Waltz
shwaltz at cabm.rutgers.edu
Fri Jun 6 12:12:00 EDT 2008
After further debugging, I discovered that
/var/spool/imap/stage. and /var/spool/imap/sync.
were owned by root.root rather than cyrus.mail
I am puzzled by how this could be, but once I changed the ownership, it
worked fine. Thanks much for the help.
S
Alain Spineux said:
> On Fri, Jun 6, 2008 at 2:51 PM, Shelley Waltz <shwaltz at cabm.rutgers.edu>
> wrote:
>>
>> Shelley Waltz said:
>>> I am running a postfix-cyrus-amavis configuration. This is a new setup
>>> and I am testing sending a simple local message. I receive this error
>>> in
>>> attempting
>>> delivery ...
>>>
>>> (host domain.edu[/var/lib/imap/socket/lmtp] said: 421 4.3.0 lmtpd:
>>> Internal error: assertion failed: append.c: 479: stage != NULL &&
>>> stage->parts[0] != '\0' (in reply to end of DATA command))
>>>
>>> What might cause this?
>>>
>>> ----
>>> Cyrus Home Page: http://cyrusimap.web.cmu.edu/
>>> Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
>>> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
>>>
>> I am still stumped by this. Here is more information.
>>
>> RHEL5 cyrus-imapd-2.3.7-2.el5
>
> A real Redhat ? Then you should have support and should ask them !
>
> Is it a random or recurrent problem ?
> Is it a 64bit OS ?
> Can you try to send the same email to two of _YOUR_ user
>
> As workaround, you coul try this :
>
> - Can you try to add this is imapd.conf
>
> singleinstancestore: 0
>
> - as last resort you could try to replace
>
> mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
> by
> local_transport = lmtp:unix:/var/lib/imap/socket/lmtp
>
>
>
>> cyrus.conf
>>
>> # standard standalone server implementation
>>
>> START {
>> # do not delete this entry!
>> recover cmd="ctl_cyrusdb -r"
>>
>> # this is only necessary if using idled for IMAP IDLE
>> idled cmd="idled"
>>
>> # replication services - for master server
>> #syncclient cmd="/usr/lib/cyrus-imapd/sync_client -r" listen="csync"
>> }
>>
>> # UNIX sockets start with a slash and are put into /var/lib/imap/sockets
>> SERVICES {
>> # add or remove based on preferences
>> imap cmd="imapd" listen="imap" prefork=5
>> imaps cmd="imapd -s" listen="imaps" prefork=1
>> pop3 cmd="pop3d" listen="pop3" prefork=3
>> pop3s cmd="pop3d -s" listen="pop3s" prefork=1
>> sieve cmd="timsieved" listen="sieve" prefork=0
>>
>> # these are only necessary if receiving/exporting usenet via NNTP
>> # nntp cmd="nntpd" listen="nntp" prefork=3
>> # nntps cmd="nntpd -s" listen="nntps" prefork=1
>>
>> # at least one LMTP is required for delivery
>> # lmtp cmd="lmtpd" listen="lmtp" prefork=0
>> lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp"
>> prefork=1
>>
>> # this is only necessary if using notifications
>> # notify cmd="notifyd" listen="/var/lib/imap/socket/notify"
>> proto="udp"
>> prefork=1
>>
>> # replication services - for replica server
>> #syncserver cmd="/usr/lib/cyrus-imapd/sync_server" listen="csync"
>> }
>>
>> EVENTS {
>> # this is required
>> checkpoint cmd="ctl_cyrusdb -c" period=30
>>
>> # this is only necessary if using duplicate delivery suppression,
>> # Sieve or NNTP
>> delprune cmd="cyr_expire -E 3" at=0400
>>
>> # this is only necessary if caching TLS sessions
>> tlsprune cmd="tls_prune" at=0400
>> }
>>
>>
>> imapd.conf
>> configdirectory: /var/lib/imap
>> partition-default: /var/spool/imap
>> quotawarn: 75
>> admins: cyrus cyrusadmin
>> sievedir: /var/lib/imap/sieve
>> sieve_maxscriptsize: 64
>> sendmail: /usr/sbin/sendmail
>> hashimapspool: true
>> allowplaintext: 1
>> sasl_pwcheck_method: saslauthd
>> sasl_mech_list: PLAIN LOGIN
>> allowapop: 0
>> autocreatequota: 250000
>> autocreateinboxfolders: Sent|Trash|AAA-Spam|AAA-Virus
>> autosubscribeinboxfolders: Sent|Trash|AAA-Spam|AAA-Virus
>> autosubscribesharedfolders: Report-SPAM|Report-NOTSPAM
>> #autocreate_sieve_script:
>> #autocreate_sieve_compiledscript:
>> #generate_compiled_sieve_script: 0
>> #sync_machineid: 1
>> sync_authname: replica
>> sync_log: 1
>> sync_host: replica.domain.edu
>> sync_repeat_interval: 5
>> sync_password: xxxxxxx
>> tls_cert_file: /etc/pki/tls/certs/imapdcert.pem
>> tls_key_file: /etc/pki/tls/certs/imapdkey.pem
>> tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt
>> annotation_db: skiplist
>> duplicate_db: skiplist
>> mboxkey_db: skiplist
>> mboxlist_db: skiplist
>> ptscache_db: skiplist
>> quota_db: quotalegacy
>> seenstate_db: skiplist
>> subscription_db: flat
>> tlscache_db: skiplist
>>
>>
>> postfix/main.cf
>>
>> debug_peer_list = 127.0.0.1 a.b.c.d/24
>> alias_database = hash:/etc/postfix/aliases
>> alias_maps = hash:/etc/postfix/aliases
>> mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
>> #
>> myhostname = master.domain.edu
>> mydomain = domain.edu
>> myorigin = $mydomain
>> mydestination = $myhostname, localhost.$mydomain, $mydomain
>> mynetworks = a.b.c.d/24 127.0.0.0/8
>> masquerade_domains = domain.edu
>> local_recipient_maps = $alias_maps
>> local_transport = local
>> queue_minfree = 75000000
>> message_size_limit = 50000000
>> content_filter = smtp-amavis:[127.0.0.1]:10024
>> max_use = 10
>> # sasl auth config
>> broken_sasl_auth_clients = yes
>> smtpd_sasl_auth_enable = yes
>> smtpd_sasl_security_options = noanonymous
>> smtpd_sasl_tls_security_options = $smtpd_sasl_security_options
>> smtpd_sasl_local_domain =
>> # smtp restrictions to prevent UCE
>> smtpd_delay_reject = yes
>> smtpd_helo_required = yes
>> disable_vrfy_command = yes
>> smtpd_client_restrictions =
>> check_client_access hash:/etc/postfix/access,
>> permit
>> smtpd_helo_restrictions =
>> permit_mynetworks,
>> reject_invalid_hostname,
>> check_helo_access hash:/etc/postfix/helo_access,
>> permit
>> smtpd_recipient_restrictions =
>> permit_sasl_authenticated,
>> permit_mynetworks,
>> reject_unauth_destination,
>> reject_rbl_client zen.spamhaus.org,
>> reject_rbl_client bl.spamcop.net,
>> reject_rbl_client psbl.surriel.com,
>> permit
>> notify_classes = bounce, policy, protocol, resource, software
>> # tls for smtp auth and relaying
>> # Opportunistic TLS - TLS tried first, but otherwise delivery continues
>> using clear
>> # smtpd_use_tls = yes !deprecated, use next line
>> smtpd_tls_security_level = may
>> smtpd_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt
>> smtpd_tls_cert_file = /etc/pki/tls/certs/smtpdcert.pem
>> smtpd_tls_key_file = /etc/pki/tls/certs/smtpdkey.pem
>> smtpd_tls_loglevel = 2
>> smtpd_tls_received_header = yes
>> smtpd_tls_session_cache_database = btree:/etc/postfix/smtpd.scache
>> smtpd_tls_session_cache_timeout = 3600s
>> tls_random_source = dev:/dev/urandom
>>
>> postfix/master.cf
>>
>> smtp inet n - n - - smtpd
>> 81 inet n - n - - smtpd
>> -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject -v
>> #submission inet n - n - - smtpd
>> # -o smtpd_enforce_tls=yes
>> # -o smtpd_sasl_auth_enable=yes
>> # -o smtpd_client_restrictions=permit_sasl_authenticated,reject
>> #smtps inet n - n - - smtpd
>> # -o smtpd_tls_wrappermode=yes
>> # -o smtpd_sasl_auth_enable=yes
>> # -o smtpd_client_restrictions=permit_sasl_authenticated,reject
>> #628 inet n - n - - qmqpd
>> pickup fifo n - n 60 1 pickup
>> cleanup unix n - n - 0 cleanup
>> qmgr fifo n - n 300 1 qmgr
>> #qmgr fifo n - n 300 1 oqmgr
>> tlsmgr unix - - n 1000? 1 tlsmgr
>> rewrite unix - - n - - trivial-rewrite
>> bounce unix - - n - 0 bounce
>> defer unix - - n - 0 bounce
>> trace unix - - n - 0 bounce
>> verify unix - - n - 1 verify
>> flush unix n - n 1000? 0 flush
>> proxymap unix - - n - - proxymap
>> smtp unix - - n - - smtp
>> # When relaying mail as backup MX, disable fallback_relay to avoid MX
>> loops
>> relay unix - - n - - smtp
>> -o fallback_relay=
>> # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
>> showq unix n - n - - showq
>> error unix - - n - - error
>> discard unix - - n - - discard
>> local unix - n n - - local
>> virtual unix - n n - - virtual
>> lmtp unix - - n - - lmtp
>> anvil unix - - n - 1 anvil
>> scache unix - - n - 1
>> scache
>> #
>> # ====================================================================
>> # Interfaces to non-Postfix software. Be sure to examine the manual
>> # pages of the non-Postfix software to find out what options it wants.
>> #
>> # Many of the following services use the Postfix pipe(8) delivery
>> # agent. See the pipe(8) man page for information about ${recipient}
>> # and other message envelope options.
>> # ====================================================================
>> #
>> # Amavisd-new Mail/Virus Scanning daemon
>> smtp-amavis unix - - n - 4 lmtp
>> -o lmtp_data_done_timeout=1200
>> -o lmtp_send_xforward_command=yes
>> -o disable_dns_lookups=yes
>> -o max_use=20
>>
>> 127.0.0.1:10025 inet n - n - - smtpd
>> -o content_filter=
>> -o smtpd_delay_reject=no
>> -o smtpd_client_restrictions=permit_mynetworks,reject
>> -o smtpd_helo_restrictions=
>> -o smtpd_sender_restrictions=
>> -o smtpd_recipient_restrictions=permit_mynetworks,reject
>> -o smtpd_data_restrictions=reject_unauth_pipelining
>> -o smtpd_end_of_data_restrictions=
>> -o smtpd_restriction_classes=
>> -o mynetworks=127.0.0.0/8
>> -o smtpd_error_sleep_time=0
>> -o smtpd_soft_error_limit=1001
>> -o smtpd_hard_error_limit=1000
>> -o smtpd_client_connection_count_limit=0
>> -o smtpd_client_connection_rate_limit=0
>> -o
>> receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_milters
>> -o local_header_rewrite_clients=
>> #
>> # maildrop. See the Postfix MAILDROP_README file for details.
>> # Also specify in main.cf: maildrop_destination_recipient_limit=1
>> #
>> maildrop unix - n n - - pipe
>> flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
>> #
>> # The Cyrus deliver program has changed incompatibly, multiple times.
>> #
>> old-cyrus unix - n n - - pipe
>> flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension}
>> ${user}
>> # Cyrus 2.1.5 (Amos Gouaux)
>> # Also specify in main.cf: cyrus_destination_recipient_limit=1
>> cyrus unix - n n - - pipe
>> user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m
>> ${extension} ${user}
>> #
>> # See the Postfix UUCP_README file for configuration details.
>> #
>> uucp unix - n n - - pipe
>> flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail
>> ($recipient)
>> #
>> # Other external delivery methods.
>> #
>> ifmail unix - n n - - pipe
>> flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
>> bsmtp unix - n n - - pipe
>> flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop
>> $recipient
>>
>>
>> Any suggestions on causes for the lmtp error are appreciated.
>> S
>>
More information about the Info-cyrus
mailing list