On Wed, 26 Apr 2006, David Lee wrote: > [...] > In "membership/ccm/ccm.c" (gdb frame #4 above) the code is: > ------------------------------ > type = ha_msg_value(msg, F_TYPE); > orig = ha_msg_value(msg, F_ORIG); > status = ha_msg_value(msg, F_STATUS); > > ccm_debug(LOG_DEBUG, "recv msg %s from %s, status:%s" > , type, orig, status); > ------------------------------ > > > Looking at the values: > ------------------------------ > (gdb) print type > $3 = 0x39da8 "resource" > (gdb) print orig > $4 = 0x36928 "shiel" > (gdb) print status > $5 = 0x0 > (gdb) > ------------------------------ > > > So that's the problem: calling a "printf"-like routine with a null pointer > (variable "status") for a "%s" value. A null "%s" is technically illegal.
I've applied patch in CVS, so that the "status" passed to "ccm_debug(...)" is never null. Now BasicSanityCheck (which is what exposed the problem in my case) is one step closer to working on Solaris. (Indeed, with CSW/blastwave Solaris packages, BSC is almost (not quite) all there. Pleasing.) -- : David Lee I.T. Service : : Senior Systems Programmer Computer Centre : : Durham University : : http://www.dur.ac.uk/t.d.lee/ South Road : : Durham DH1 3LE : : Phone: +44 191 334 2752 U.K. : _______________________________________________________ Linux-HA-Dev: [email protected] http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev Home Page: http://linux-ha.org/
