proxymap segfaulting

From: Todd A Green (no email)
Date: Mon Jan 02 2006 - 12:47:00 EST

  • Next message: Wietse Venema: "Re: proxymap segfaulting"

    I'm having proxymap segfault (generally every hour or so) on postfix 2.2.7,
    running under SuSE-9.2 x86-64 kernel 2.6.8-24.19-smp on a dual opteron.
    This started happening shortly after putting the box into production (and
    having installed mailman which could be just coincidence.) For the previous
    few days during testing I sent thousands upon thousands of messages through
    the box via smtp-source (with sizes up to 200MB and 100 simultaneous
    connections) without a single segfault, though that was from a single source
    to a single destination. It looks like the segfault is an illegal
    instruction fetch (unless I'm misinterpreting the error 4 the kernel is
    giving.) I've run ldd on the binaries and verified that they are all using
    the same shared libs, etc.

    Ideas?

    Compiled via:

    CCARGS="-DHAS_PCRE -DUSE_TLS -DUSE_SASL_AUTH -I/uusoc/sasl2/include/sasl" \
    AUXLIBS="-L/uusoc/sasl2/lib -lssl -lcrypto -lsasl2 -lpcre"

    postconf -n (with domain obfuscated)

    address_verify_sender = <>
    alias_database = hash:/etc/postfix/aliases
    alias_maps = hash:/etc/postfix/aliases hash:/usr/local/mailman/data/aliases
    allow_percent_hack = no
    allow_untrusted_routing = no
    anvil_rate_time_unit = 30s
    append_at_myorigin = yes
    biff = no
    body_checks = pcre:/etc/postfix/body_checks
    bounce_queue_lifetime = 3d
    command_directory = /usr/sbin
    config_directory = /etc/postfix
    content_filter = amavisd-new:[localhost]:smtp-amavis
    daemon_directory = /usr/lib/postfix
    debug_peer_level = 2
    default_destination_concurrency_limit = 75
    default_process_limit = 150
    disable_vrfy_command = yes
    empty_address_recipient = MAILER-DAEMON
    header_checks = pcre:/etc/postfix/header_checks
    regexp:/etc/postfix/header_checks_av
    home_mailbox = Maildir/
    html_directory = /usr/share/doc/packages/postfix/html
    inet_interfaces = all
    local_destination_concurrency_limit = 50
    local_header_rewrite_clients = permit_mynetworks
    local_recipient_maps = proxy:unix:passwd.byname $alias_maps
    mail_owner = postfix
    mailbox_command = /uusoc/bin/procmail -a "$EXTENSION"
    mailbox_size_limit = 0
    mailq_path = /usr/bin/mailq
    manpage_directory = /usr/local/man
    masquerade_domains = flux.cs.some.dom fast.cs.some.dom $mydomain
    masquerade_exceptions = root, mailer-daemon, postmaster, sys, adm, bin, daemon
    maximal_queue_lifetime = 3d
    message_size_limit = 268435456
    mydestination = $myhostname, localhost.$mydomain, $mydomain, ces.some.dom,
    rio.cs.some.dom, smtps.cs.some.dom, mail-svr2.cs.some.dom, mail-svr3.cs.some.dom
    mydomain = cs.some.dom
    myhostname = mail-svr1.cs.some.dom
    mynetworks = /etc/postfix/networks
    myorigin = $mydomain
    nested_header_checks = $header_checks
    newaliases_path = /usr/bin/newaliases
    queue_directory = /var/spool/postfix
    readme_directory = /etc/postfix/README_FILES
    recipient_delimiter = +
    relay_domains = $mydestination, /etc/postfix/relay_domains
    relocated_maps = hash:/etc/postfix/relocated
    require_home_directory = yes
    sample_directory = /etc/postfix/samples
    sendmail_path = /usr/sbin/sendmail
    setgid_group = postdrop
    smtp_tls_CAfile = /etc/postfix/uofucacer.pem
    smtpd_banner = $myhostname ESMTP
    smtpd_client_connection_rate_limit = 30
    smtpd_client_message_rate_limit = 90
    smtpd_client_recipient_rate_limit = 120
    smtpd_client_restrictions = permit_mynetworks
    hash:/etc/postfix/client_restrictions
    cidr:/etc/postfix/cidr_client_restrictions
    pcre:/etc/postfix/pcre_client_restrictions
    smtpd_data_restrictions = reject_unauth_pipelining
    reject_multi_recipient_bounce
    smtpd_etrn_restrictions = permit_mynetworks reject_unknown_client
    smtpd_hard_error_limit = 10
    smtpd_helo_required = yes
    smtpd_helo_restrictions = permit_mynetworks check_helo_access
    hash:/etc/postfix/helo_restrictions reject_invalid_hostname
    reject_non_fqdn_hostname
    smtpd_recipient_restrictions = permit_mynetworks
    reject_unauth_destination hash:/etc/postfix/recipient_restrictions
    reject_unlisted_recipient reject_unknown_recipient_domain
    reject_unverified_recipient reject_rbl_client sbl-xbl.spamhaus.org
    reject_rbl_client relays.ordb.org reject_rbl_client list.dsbl.org
    reject_rbl_client dul.dnsbl.sorbs.net reject_rbl_client
    zombie.dnsbl.sorbs.net reject_rbl_client cbl.abuseat.org
    check_policy_service inet:localhost:smtp-postgrey
    smtpd_reject_unlisted_sender = yes
    smtpd_sender_restrictions = permit_mynetworks
    hash:/etc/postfix/sender_restrictions
    pcre:/etc/postfix/pcre_sender_restrictions reject_unknown_sender_domain
       hash:/etc/postfix/sender_verification check_sender_mx_access
    cidr:/etc/postfix/cidr_mx_access check_sender_mx_access
    hash:/etc/postfix/sender_mx_access check_sender_ns_access
    hash:/etc/postfix/sender_ns_access
    smtpd_soft_error_limit = 5
    smtpd_tls_cert_file = /etc/postfix/smtpscer.pem
    smtpd_tls_dh1024_param_file = /etc/postfix/dh_1024.pem
    smtpd_tls_dh512_param_file = /etc/postfix/dh_512.pem
    smtpd_tls_key_file = /etc/postfix/smtpskey.pem
    strict_rfc821_envelopes = yes
    swap_bangpath = no
    transport_maps = hash:/etc/postfix/transport
    unverified_recipient_reject_code = 550
    unverified_sender_reject_code = 550
    virtual_mailbox_limit = 0

    strace info on proxmap:

    alarm(6000) = 5999
    select(21, [5 6 8 9 10 11 12 13 14 15 16], [], [5 6 8 9 10 11 12 13 14 15
    16], NULL) = 1 (in [15])
    time(NULL) = 1136179985
    ioctl(15, FIONREAD, [76]) = 0
    write(5, "V\32\0\0.\0\0\0\0\0\0\0", 12) = 12
    select(16, [15], NULL, [15], {3600, 0}) = 1 (in [15], left {3600, 0})
    read(15, "request\0lookup\0table\0unix:passwd"..., 4096) = 76
    time(NULL) = 1136179985
    socket(PF_FILE, SOCK_STREAM, 0) = 17
    fcntl(17, F_GETFL) = 0x2 (flags O_RDWR|O_LARGEFILE)
    fcntl(17, F_SETFL, O_RDWR|O_NONBLOCK) = 0
    connect(17, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = 0
    poll([{fd=17, events=POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}], 1, 5000) = 1
    writev(17, [{"\2\0\0\0\0\0\0\0\26\0\0\0", 12}, {"\0",
    22}], 2) = 34
    poll([{fd=17, events=POLLIN|POLLERR|POLLHUP, revents=POLLIN}], 1, 5000) = 1
    read(17, "\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\377\377"..., 36) = 36
    close(17) = 0
    --- SIGSEGV (Segmentation fault) @ 0 (0) ---

    mail logs:

    Jan 1 22:33:35 rio postfix/smtpd[8116]: warning: premature end-of-input on
    private/proxymap socket while reading input attribute name
    Jan 1 22:33:35 rio postfix/smtpd[8116]: warning: dict_proxy_lookup: service
    private/proxymap socket: Connection reset by peer
    Jan 1 22:33:35 rio postfix/smtpd[8118]: warning: premature end-of-input on
    private/proxymap socket while reading input attribute name
    Jan 1 22:33:35 rio postfix/smtpd[8118]: warning: dict_proxy_lookup: service
    private/proxymap socket: Success

    messages:

    Jan 1 22:33:35 rio kernel: proxymap[6742]: segfault at 0000002afec50326 rip
    0000002a960e35cf rsp 0000007fbffff7e0 error

    Frequency of the latest segfaults:
    Jan 2 08:02:24
    Jan 2 09:11:40
    Jan 2 10:26:10
    Jan 1 22:33:35

    Thanks for any light you can shed,
    Todd


  • Next message: Wietse Venema: "Re: proxymap segfaulting"





    Hosted Email Solutions

    Invaluement Anti-Spam DNSBLs



    Powered By FreeBSD   Powered By FreeBSD