Core dump on one machine but not on another

Greetings,

This is my first post here. I am using a library based on Net-SNMP in TCL scripts. The person who developed the library has disappeared and I don't have the source code. When the script is running on one UNIX workstation, core dump happens from time to time but it works well on another workstation. Both machines use Solaris 5.8.

I'm not expert on unix. Stack trace form mdb is something like below. Any ideas help me out? I'm suspecting that some libraries don't match very well.

Thanks a lot in adv.

> ::stack
libc.so.1`_free_unlocked+0x40(28, ff13c004, 28, ff13c004, 225d8, ff0c2b44)
libc.so.1`free+0x20(28, 0, 400, ffbeb390, 1, c7d460)
snmp8.3.so`DoCallback+0xf84(2, 9b8, 0, 0, bfb168, c581f0)
snmp8.3.so`Wakeup+0xe0(2, 0, 9b8, 0, 0, bfb168)
snmp8.3.so`CheckTimeout+0x218(c44fa8, ff0590f0, 0, 0, 5dbf, ffbeb9f0)
libtcl8.3.so`TimerHandlerEventProc+0x8c(be95b0, 541e0, 0, 0, 4dea4, ffbeb9a8)
libtcl8.3.so`Tcl_ServiceEvent+0x84(18, 18, ff2f0344, ff2cd844, ff076c5c, bfb168)
libtcl8.3.so`Tcl_DoOneEvent+0x168(18, 0, ff2cd7dc, 0, 0, 0)
snmp8.3.so`DoCommand+0x578(4dfb0, 4, ffbebe80, c78348, 1, 0)
snmp8.3.so`SessProc+0x224(c78348, 4dfb0, 4, ffbebe80, ff054b5c, 2d6e6f6e)
libtcl8.3.so`TclInvokeStringCommand+0x64(c79ef0, 4dfb0, 4, 4ec70, ff2a58c4, c581f6)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bc4fb0, c74828, bc51b6, bc17c0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 8f568, 0, ffbec3d0, 7b0a09, 0)
libtcl8.3.so`TclObjInterpProc+0x334(93228, 4dfb0, 4, 4ec60, 4ec60, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bc8598, ff321aec, bc8628, 0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 8f550, 0, ffbec900, 646576, 0)
libtcl8.3.so`TclObjInterpProc+0x334(93340, 4dfb0, 3, 4ec54, 4ec54, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bc7fe0, ff321aec, bc8088, 0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 9bd380, 0, ffbece30, ff30a078, bc1500)
libtcl8.3.so`TclObjInterpProc+0x334(9d4a50, 4dfb0, 5, 4ec40, 4ec40, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bc2648, ff321aec, bc26c6, 0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 9bd308, 0, ffbed360, ff30a078, bfebf8)
libtcl8.3.so`TclObjInterpProc+0x334(9d4ca8, 4dfb0, 6, 4ec28, 4ec28, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, c27bd8, ff321aec, c288fd, 0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, b43188, 0, ffbed890, ff30a078, c09148)
libtcl8.3.so`TclObjInterpProc+0x334(b81ec0, 4dfb0, 4, 4ec18, 4ec18, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bda0e0, ff321aec, bda175, 225b0, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, b431b8, 0, ffbeddc0, ff30a078, bf9058)
libtcl8.3.so`TclObjInterpProc+0x334(b81e48, 4dfb0, 4, 4ec08, 4ec08, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, c07f50, c4edb8, c08193, c44e08, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 9bd668, 0, ffbee2f0, ff30a078, be9990)
libtcl8.3.so`TclObjInterpProc+0x334(9ccd80, 4dfb0, 1, 4ec04, 4ec04, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, bf5400, ff321aec, bf553d, ff30ad70, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 6c748, 0, ffbee820, ff30a078, c03da0)
libtcl8.3.so`TclObjInterpProc+0x334(6fe28, 4dfb0, 2, 4ebfc, 4ebfc, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, c0a020, ff321aec, c0a098, ff30ad18, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, 6f5e8, 0, ffbeed50, ff30a078, c03e60)
libtcl8.3.so`TclObjInterpProc+0x334(6fc48, 4dfb0, 1, 4ebf8, 4ebf8, 4dfb0)
libtcl8.3.so`TclExecuteByteCode+0x958(4dfb0, c09ec0, ff2b92cc, c09f52, 200, 4ebf8)
libtcl8.3.so`Tcl_EvalObjEx+0x370(4dfb0, becb78, 0, 0, a646576, 7468656e)
libtcl8.3.so`Tcl_IfObjCmd+0x21c(0, 4dfb0, 3, ffbef100, 414, 410)
libtcl8.3.so`EvalObjv+0x390(4dfb0, 3, ffbef100, 65e3c, 17f, 0)
libtcl8.3.so`Tcl_EvalEx+0x108(0, 65180, 0, ffbef1e8, e3b, 0)
libtcl8.3.so`Tcl_EvalFile+0x144(4dfb0, ffbef833, 1, 0, 6d, 2d)
exp_interpret_cmdfilename+0x34(4dfb0, ffbef833, ffbef6e4, 300, 225b0, ff09bc18)
main+0x148(3, ffbef6e4, ffbef6f4, 4bb98, 0, 0)
_start+0x5c(0, 0, 0, 0, 0, 0)