Floating point exception in httpd, FreeBSD 10.1, Cyrus-IMAPd 2.5.3

Bron Gondwana brong at fastmail.fm
Wed May 27 03:33:41 EDT 2015


Rebuilding with debugging symbols would be a great first step.

Other than that - are you using DIGEST-MD5 authentication?  I suspect
that might be the problem.

Bron.

On Wed, May 27, 2015, at 05:18 PM, Scott Lambert wrote:
> I suspect I have a problem which is purely local to my machine.
> Probably user/admin error.  I have fought it in my spare time the past
> several days.  At this point, I would really appreciate some help to get
> this figured out.
> 
> I've upgraded my personal system from 2.4.17 to 2.5.3.  I actually
> installed 2.5.2 the day before 2.5.3 was released and had, apparently,
> the same issue with 2.5.2.
> 
> FreeBSD 10.1-STABLE (mid-February).  Cyrus is running inside a FreeBSD
> jail.  The jail only has a private IP and is NATed in from the public by
> the firewall.  List of installed packages below the .sig, just in case.
> 
> I rebuilt/reinstalled the cyrus-* packages and postfix last night just
> to make sure they were consistent with the other libraries.
> 
> I'm trying to learn how to use the caldav services in
> iCal on my MacBook.  I've configured iCal according to
> http://cyrusimap.org/docs/cyrus-imapd/2.5.3/install-http.php
> (hopefully), but I don't seem to get very far.
> 
> IMAPd and POP3 seem to be working perfectly.
> 
> I've added to imapd.conf:
> caldav_allowscheduling: yes
> httpmodules: caldav carddav domainkey ischedule rss 
> and changed the autocreate options.
> 
> I've added to cyrus.conf in the SERVICES section:
>   https         cmd="httpd -s" listen="8443" prefork=1
> 
> iCal throws this error when I try to create new calendar on the server:
> 
> "Calendar encountered a critical error while saving to the database, and
> recent changes may be lost.  More information may be available in the
> console."
> 
> console shows:
> 
> 5/27/15 12:00:15.628 AM CalendarAgent[284]: [com.apple.calendar.store.log.caldav.queue] [Got error on refresh, but not rectifying principal because it was manually configured: Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." UserInfo=0x7ff03dd65160 {NSUnderlyingError=0x7ff03b6a0220 "The network connection was lost.", NSErrorFailingURLStringKey=https://lambert%40lambertfam.org@mail.lambertfam.org:8443/dav/calendars/user/, NSErrorFailingURLKey=https://lambert%40lambertfam.org@mail.lambertfam.org:8443/dav/calendars/user/, NSLocalizedDescription=The network connection was lost.}]
> 5/27/15 12:00:15.632 AM CalendarAgent[284]: [com.apple.calendar.store.log.caldav.queue] [Account refresh failed with error: Error Domain=NSURLErrorDomain Code=-1005 "The network connection was lost." UserInfo=0x7ff03dbb81e0 {NSUnderlyingError=0x7ff03b6a0220 "The network connection was lost.", NSErrorFailingURLStringKey=https://lambert%40lambertfam.org@mail.lambertfam.org:8443/dav/calendars/user/, NSErrorFailingURLKey=https://lambert%40lambertfam.org@mail.lambertfam.org:8443/dav/calendars/user/, AccountName=lambertfam.org at https://mail.lambertfam.org:8443/, CalDAVErrFromRefresh=YES, NSLocalizedDescription=The network connection was lost.}]
> 
> at the same time, in the imap.log, I see: 
> 
> May 27 00:00:15 mail https[20778]: inittls: Loading hard-coded DH parameters
> May 27 00:00:15 mail https[20778]: starttls: TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits new) no authentication
> May 27 00:00:15 mail master[19572]: process type:SERVICE name:https path:/usr/local/cyrus/bin/httpd age:0.165s pid:20778 signaled to death by signal 8 (Floating point exception)
> 
> I suspect my issue is whatever is causing the FPE in https.
> 
> running truss on the httpd ends in :
> ...
> sigaction(SIGALRM,{ 0x804a54d80 SA_RESTART|SA_SIGINFO ss_t },{ 0x804a54d80 SA_RESETHAND|SA_SIGINFO ss_t }) = 0 (0x0)^M
> sigprocmask(SIG_SETMASK,0x0,0x0)                 = 0 (0x0)^M
> open("/imap/cd1/msg/shutdown",O_RDONLY,0666)     ERR#2 'No such file or directory'^M
> sigprocmask(SIG_BLOCK,SIGINT|SIGQUIT|SIGALRM|SIGTERM|SIGCHLD,0x0) = 0 (0x0)^M
> pselect(0x1,0x7fffffff8ee0,0x0,0x0,0x7fffffff8e38,0x7fffffff8e18) = 1 (0x1)^M
> sigprocmask(SIG_SETMASK,0x0,0x0)                 = 0 (0x0)^M
> sigprocmask(SIG_BLOCK,SIGINT|SIGQUIT|SIGALRM|SIGTERM|SIGCHLD,0x0) = 0 (0x0)^M
> pselect(0x1,0x7fffffff9ef0,0x0,0x0,0x7fffffff9e88,0x7fffffff9e68) = 1 (0x1)^M
> sigprocmask(SIG_SETMASK,0x0,0x0)                 = 0 (0x0)^M
> read(0,"\^W\^C\^C\^A\M^@",5)                     = 5 (0x5)^M
> read(0,"`^\M-Y\M^Z_{\M-,\M-5\M-u\M-%AK"...,384)  = 384 (0x180)^M
> setitimer(0,{0.000000, 0.000000 },{0.000000, 0.000000 }) = 0 (0x0)^M
> issetugid(0x804dbe490,0x80500e098,0x1,0x0,0x80602f0a8,0x8080808080808080) = 0 (0x0)^M
> open("/usr/share/zoneinfo/UTC",O_RDONLY,00)      = 10 (0xa)^M
> fstat(10,{ mode=-r--r--r-- ,inode=267701,size=118,blksize=4096 }) = 0 (0x0)^M
> read(10,"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0"...,41448) = 118 (0x76)^M
> close(10)                                        = 0 (0x0)^M
> issetugid(0x804dbe494,0x8064ed000,0x0,0xffffffd0,0x0,0x0) = 0 (0x0)^M
> open("/usr/share/zoneinfo/posixrules",O_RDONLY,00) = 10 (0xa)^M
> fstat(10,{ mode=-r--r--r-- ,inode=267649,size=3519,blksize=4096 }) = 0 (0x0)^M
> read(10,"TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0"...,41448) = 3519 (0xdbf)^M
> close(10)                                        = 0 (0x0)^M
> openat(0xffffff9c,0x802018977,0x0,0x0,0x2,0x8064dc010) = 10 (0xa)^M
> read(10,"\M-I\^T\M^Z\^Ocq",6)                    = 6 (0x6)^M
> close(10)                                        = 0 (0x0)^M
> getrusage(0,{ u=0.072776,s=0.081873,in=0,out=8 }) = 0 (0x0)^M
> SIGNAL 8 (SIGFPE)^M
> process exit, rval = 0^M
> 
> I got a corefile.  The truss and the core were different instances, IIRC:
> 
> -rw-------   1 cyrus  cyrus  458752 May 27 00:00 httpd.00.core
> 
> gdb says:
> Core was generated by `httpd'.
> Program terminated with signal 8, Arithmetic exception.
> Cannot access memory at address 0x8008747d0
> #0  0x0000000806a0f664 in ?? ()
> 
> The binary is stripped.  I may have to rebuild the port and keep the
> unstripped binary to get further info.
> 
> I don't know what to do to troubleshoot this further.
> 
> 
> -- 
> Scott Lambert                    KC5MLE                       Unix SysAdmin
> lambert at lambertfam.org
> 
> arc-5.21p                      Create & extract files from DOS .ARC files
> arj-3.10.22_4                  Open source implementation of the ARJ archiver
> autoconf-2.69                  Automatically configure source code on many Un*x platforms
> autoconf-wrapper-20131203      Wrapper script for GNU autoconf
> bash-4.3.33                    The GNU Project's Bourne Again SHell
> bison-2.7.1,1                  Parser generator from FSF, (mostly) compatible with Yacc
> ca_root_nss-3.19               Root certificate bundle from the Mozilla Project
> clamav-0.98.7                  Command line virus scanner written entirely in C
> cmake-3.1.3                    Cross-platform Makefile generator
> cmake-modules-3.1.3            Modules and Templates for CMake
> curl-7.42.1                    Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers
> cvs-1.20120905_3               Version control system
> cyrus-imapd25-2.5.3            The cyrus mail server, supporting POP3 and IMAP4 protocols
> cyrus-sasl-2.1.26_9            RFC 2222 SASL (Simple Authentication and Security Layer)
> db48-4.8.30.0_2                The Berkeley DB package, revision 4.8
> db5-5.3.28_2                   The Oracle Berkeley DB, revision 5.3
> dialog4ports-0.1.5_2           Console Interface to configure ports
> expat-2.1.0_2                  XML 1.0 parser written in C
> gettext-0.19.4                 GNU gettext meta package
> gettext-runtime-0.19.4         GNU gettext runtime libraries and programs
> gettext-tools-0.19.4           GNU gettext development and translation tools
> gmake-4.1_2                    GNU version of 'make' utility
> gmake-lite-4.1_1               Minimalist version of gnu make
> help2man-1.43.3_1              Automatically generating simple manual pages from program output
> indexinfo-0.2.3                Utility to regenerate the GNU info page index
> jansson-2.7                    C library for encoding, decoding, and manipulating JSON data
> lha-1.14i_6                    Archive files using LZSS and Huffman compression (.lzh files)
> libffi-3.2.1                   Foreign Function Interface
> libical-1.0.1                  Implementation of the IETF Calendaring and Scheduling protocols
> libiconv-1.14_8                Character set conversion library
> libltdl-2.4.6                  System independent dlopen wrapper
> libspf2-1.2.10_2               Sender Rewriting Scheme 2 C Implementation
> libtool-2.4.6                  Generic shared library support script
> libxml2-2.9.2_2                XML parser library for GNOME
> m4-1.4.17_1,1                  GNU m4
> majordomo-1.94.5_8             A mailing list manager
> mysql55-client-5.5.43          Multithreaded SQL database (client)
> p5-Bit-Vector-7.4              Library of advanced math functions that includes a Perl OO module
> p5-Carp-Clan-6.04_1            Report errors from perspective of caller of a "clan" of modules
> p5-Date-Calc-6.4               Gregorian calendar date calculations
> p5-Locale-gettext-1.05_4       Message handling functions
> pcre-8.37                      Perl Compatible Regular Expressions library
> perl5.16-5.16.3_21             Practical Extraction and Report Language
> pflogsumm-1.1.5,1              Postfix Log Entry Summarizer
> pkg-1.5.2                      Package manager
> pkgconf-0.9.11                 Utility to help to configure compiler and linker flags
> portmaster-3.17.7              Manage your ports without external databases or languages
> postfix-2.11.5,1               Secure alternative to widely-used Sendmail
> py27-Babel-1.3_2               Collection of tools for internationalizing Python applications
> py27-Jinja2-2.7.3              Fast and easy to use stand-alone template engine
> py27-MarkupSafe-0.23           Implements a XML/HTML/XHTML Markup safe string for Python
> py27-docutils-0.12             Python Documentation Utilities
> py27-pygments-2.0.2            Syntax highlighter written in Python
> py27-pytz-2014.10,1            World Timezone Definitions for Python
> py27-setuptools27-5.5.1_1      Python packages installer
> py27-sphinx-1.2.3              Python documentation generator
> python27-2.7.9_1               Interpreted object-oriented programming language
> sqlite3-3.8.10.1               SQL database engine in a C library
> sudo-1.8.13                    Allow others to run commands as root
> unzoo-4.4_2                    ZOO archive extractor
> ----
> Cyrus Home Page: http://www.cyrusimap.org/
> List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
> To Unsubscribe:
> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus


-- 
  Bron Gondwana
  brong at fastmail.fm


More information about the Info-cyrus mailing list