Vlad,

thanks for your help.


Try this:

- when you open mailbox specify /debug option, it will output all client
IMAP
  communication into log file, so we can spot the place in c-client it
dies.
  Example ns_imap open -mailbox {{localhost/debug}INBOX}

I tried this and it didn't seem to do anything, do I need to alter the debug param in the aolserver startup file ? It is currently set to 1.

- run aolserver under debugger, to do so you can do:

bash-2.05b# gdb
GNU gdb Red Hat Linux (5.2.1-4)
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux".
(gdb) cd /usr/local/aolserver
Working directory /usr/local/aolserver
 (canonically /opt/local/aolserver).
(gdb) file bin/nsd
Reading symbols from bin/nsd...done.
(gdb) run -t oss2/etc/nsd.tcl -u vlad -d -f >> oss2/logs/nsd.log 2>&1
Starting program: /opt/local/aolserver/bin/nsd -t oss2/etc/nsd.tcl -u
vlad -d -f >> oss2/logs/nsd.log 2>&1
[New Thread 8192 (LWP 20584)]

Replace path oss2/etc and oss2/logs to log file and config file
according to your installed system
and instead of vlad use your user for aolserver.
Once it started run your script, after crash in gdb run bt command, it
should show the place
it crashed.

BTW: try the latest ns_imap from my site, recently i fixed one possible
crash error.

I have grabbed the latest one and recompiled, all the tests are done with this.


Running in gdb I get:

__strnlen (str=0x58 <Address 0x58 out of bounds>, maxlen=33)
    at ../sysdeps/generic/strnlen.c:116
116     ../sysdeps/generic/strnlen.c: No such file or directory.
        in ../sysdeps/generic/strnlen.c


The output from the bt command in gdb:


(gdb) bt
#0  __strnlen (str=0x58 <Address 0x58 out of bounds>, maxlen=33)
    at ../sysdeps/generic/strnlen.c:116
#1  0x400afc04 in _IO_vfprintf (s=0xbf3f94fc, format=0x4066a939
"%.65s %.33s", ap=0xbf3f95ec)
    at ../sysdeps/i386/bits/string.h:239
#2  0x400ca625 in _IO_vsprintf (string=0xbf3f95fc "[EMAIL PROTECTED] ",
    format=0x4066a939 "%.65s %.33s", args=0xbf3f95e4) at iovsprintf.c:46
#3  0x400b7c89 in sprintf (s=0xbf3f95fc "[EMAIL PROTECTED] ",
    format=0x4066a939 "%.65s %.33s") at sprintf.c:38
#4  0x405e5b91 in auth_md5_client (challenger=0x40600e50 <imap_challenge>,
    responder=0x40600ef0 <imap_response>, service=0x4066d50d "imap",
mb=0xbf3f9aec,
    stream=0x880ae40, trial=0xbf3f9a54, user=0xbf3f9e8c
"[EMAIL PROTECTED]")
    at auth_md5.c:107
#5  0x40600ad0 in imap_auth (stream=0x880ae40, mb=0xbf3f9aec,
    tmp=0xbf3fa28c "00000001 AUTHENTICATE CRAM-MD5", usr=0xbf3f9e8c
"[EMAIL PROTECTED]")
    at imap4r1.c:884
#6  0x405fff98 in imap_open (stream=0x880ae40) at imap4r1.c:666
#7  0x405d8666 in mail_open (stream=0x0, name=0x880adf8
"{127.0.0.1/debug}", options=0)
    at mail.c:1058
#8  0x405d00b3 in openSession (session=0x880acf0, objc=8,
objv=0xbf3fb78c, interp=0x87f2030)
    at nsimap.c:448
#9  0x405d1dc8 in MailCmd (arg=0x0, interp=0x87f2030, objc=8,
objv=0xbf3fb78c) at nsimap.c:863
#10 0x080e2e8c in EvalObjv (interp=0x87f2030, objc=8, objv=0xbf3fb78c,
    command=0x883e9c2 "ns_imap open -mailbox $mailbox -user $email
-password $password]\n\nset message_count [ns_imap n_msgs
$imap]\n\n\n    \t", length=63, flags=0)
    at ./../generic/tclParse.c:932
#11 0x080e37e2 in Tcl_EvalEx (interp=0x87f2030,
    script=0x883e9c2 "ns_imap open -mailbox $mailbox -user $email
-password $password]\n\nset message_count [ns_imap n_msgs
$imap]\n\n\n    \t", numBytes=63, flags=0)
    at ./../generic/tclParse.c:1393
#12 0x080e332c in Tcl_EvalTokens (interp=0x87f2030,
tokenPtr=0xbf3fbb14, count=1)
    at ./../generic/tclParse.c:1192
#13 0x080e3751 in Tcl_EvalEx (interp=0x87f2030,
    script=0x883e8e8 "\n    \t  ad_page_contract
{\n\ttesting...\n}\n\nns_log notice [ns_imap sessions]\n\nset email
\"[EMAIL PROTECTED]"\n\nset password [EMAIL PROTECTED] Connect to
INBOX mailbox on localhost\nset mailbox {{127.0.0.1/"...,
numBytes=332, flags=262144)
    at ./../generic/tclParse.c:1381
#14 0x0809a553 in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885d2c8,
flags=262144)
    at ./../generic/tclBasic.c:2580
#15 0x080ec1ce in Tcl_UplevelObjCmd (dummy=0x0, interp=0x87f2030,
objc=1, objv=0x87f2990)
    at ./../generic/tclProc.c:604
#16 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x883ea40)
    at ./../generic/tclExecute.c:845
#17 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885d280, flags=0)
    at ./../generic/tclBasic.c:2733
#18 0x080ec92a in TclObjInterpProc (clientData=0x883e768,
interp=0x87f2030, objc=1,
    objv=0x87f2988) at ./../generic/tclProc.c:1001
#19 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x88386d0)
    at ./../generic/tclExecute.c:845
#20 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885cf38, flags=0)
    at ./../generic/tclBasic.c:2733
#21 0x080a316f in Tcl_IfObjCmd (dummy=0x0, interp=0x87f2030, objc=3,
objv=0xbf3fc42c)
    at ./../generic/tclCmdIL.c:233
#22 0x080e2e8c in EvalObjv (interp=0x87f2030, objc=3, objv=0xbf3fc42c,
    command=0x88355b8 "\n\n    if { [file exists $__adp_stub.tcl] }
{\n\n      # ensure that data source preparation procedure exists and
is up-to-date\n      adp_init tcl $__adp_stub\n\n      # remember the
file_stub in case the "..., length=800, flags=0) at
./../generic/tclParse.c:932
#23 0x080e37e2 in Tcl_EvalEx (interp=0x87f2030,
    script=0x88355b8 "\n\n    if { [file exists $__adp_stub.tcl] }
{\n\n      # ensure that data source preparation procedure exists and
is up-to-date\n      adp_init tcl $__adp_stub\n\n      # remember the
file_stub in case the "..., numBytes=800, flags=262144)
    at ./../generic/tclParse.c:1393
---Type <return> to continue, or q <return> to quit---
#24 0x0809a553 in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885ced8,
flags=262144)
    at ./../generic/tclBasic.c:2580
#25 0x080ec1ce in Tcl_UplevelObjCmd (dummy=0x0, interp=0x87f2030,
objc=1, objv=0x87f2984)
    at ./../generic/tclProc.c:604
#26 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x88358f0)
    at ./../generic/tclExecute.c:845
#27 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x88eead0, flags=0)
    at ./../generic/tclBasic.c:2733
#28 0x080ec92a in TclObjInterpProc (clientData=0x41aca890,
interp=0x87f2030, objc=1,
    objv=0x87f297c) at ./../generic/tclProc.c:1001
#29 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x8835c98)
    at ./../generic/tclExecute.c:845
#30 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x88eebc0, flags=0)
    at ./../generic/tclBasic.c:2733
#31 0x080ec92a in TclObjInterpProc (clientData=0x41a33530,
interp=0x87f2030, objc=3,
    objv=0x87f2970) at ./../generic/tclProc.c:1001
#32 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x8838420)
    at ./../generic/tclExecute.c:845
#33 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x895b8f8, flags=0)
    at ./../generic/tclBasic.c:2733
#34 0x080ec92a in TclObjInterpProc (clientData=0x41f51c20,
interp=0x87f2030, objc=1,
    objv=0xbf3fd5cc) at ./../generic/tclProc.c:1001
#35 0x080e2e8c in EvalObjv (interp=0x87f2030, objc=1, objv=0xbf3fd5cc,
    command=0x89da1c8 "\n\t$handler\n      ", length=17, flags=0)
    at ./../generic/tclParse.c:932
#36 0x080e37e2 in Tcl_EvalEx (interp=0x87f2030, script=0x89da1c8
"\n\t$handler\n      ",
    numBytes=17, flags=262144) at ./../generic/tclParse.c:1393
#37 0x0809a553 in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885cd28,
flags=262144)
    at ./../generic/tclBasic.c:2580
#38 0x080ec1ce in Tcl_UplevelObjCmd (dummy=0x0, interp=0x87f2030,
objc=1, objv=0x87f296c)
    at ./../generic/tclProc.c:604
#39 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x89db1c0)
    at ./../generic/tclExecute.c:845
#40 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x88f2220, flags=0)
    at ./../generic/tclBasic.c:2733
#41 0x080ec92a in TclObjInterpProc (clientData=0x8932250,
interp=0x87f2030, objc=5,
    objv=0x87f2954) at ./../generic/tclProc.c:1001
#42 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x8837d20)
    at ./../generic/tclExecute.c:845
#43 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x895a9f8, flags=0)
    at ./../generic/tclBasic.c:2733
#44 0x080ec92a in TclObjInterpProc (clientData=0x4020d910,
interp=0x87f2030, objc=2,
    objv=0x87f294c) at ./../generic/tclProc.c:1001
#45 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x89e25d0)
    at ./../generic/tclExecute.c:845
#46 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x8959ea0, flags=0)
    at ./../generic/tclBasic.c:2733
#47 0x080ec92a in TclObjInterpProc (clientData=0x89bb8f0,
interp=0x87f2030, objc=2,
    objv=0xbf3fe76c) at ./../generic/tclProc.c:1001
#48 0x080e2e8c in EvalObjv (interp=0x87f2030, objc=2, objv=0xbf3fe76c,
    command=0x89e1040 "\n\trp_serve_abstract_file
\"$root/$path\"\n\tset tcl_url2file([ad_conn url]) [ad_conn
file]\n\tset tcl_url2path_info([ad_conn url]) [ad_conn path_info]\n
",
    length=151, flags=0) at ./../generic/tclParse.c:932
#49 0x080e37e2 in Tcl_EvalEx (interp=0x87f2030,
    script=0x89e1040 "\n\trp_serve_abstract_file
\"$root/$path\"\n\tset tcl_url2file([ad_conn url]) [ad_conn
file]\n\tset tcl_url2path_info([ad_conn url]) [ad_conn path_info]\n
",
    numBytes=151, flags=262144) at ./../generic/tclParse.c:1393
#50 0x0809a553 in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x885c368,
flags=262144)
    at ./../generic/tclBasic.c:2580
#51 0x080ec1ce in Tcl_UplevelObjCmd (dummy=0x0, interp=0x87f2030,
objc=1, objv=0x87f2948)
    at ./../generic/tclProc.c:604
#52 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x89db1c0)
    at ./../generic/tclExecute.c:845
#53 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x88f2220, flags=0)
    at ./../generic/tclBasic.c:2733
#54 0x080ec92a in TclObjInterpProc (clientData=0x8932250,
interp=0x87f2030, objc=11,
    objv=0x87f2918) at ./../generic/tclProc.c:1001
#55 0x080be049 in TclExecuteByteCode (interp=0x87f2030, codePtr=0x88343d0)
    at ./../generic/tclExecute.c:845
#56 0x0809a87c in Tcl_EvalObjEx (interp=0x87f2030, objPtr=0x895af38, flags=0)
    at ./../generic/tclBasic.c:2733
#57 0x080ec92a in TclObjInterpProc (clientData=0x89f9d50,
interp=0x87f2030, objc=1,
    objv=0xbf3ff44c) at ./../generic/tclProc.c:1001
#58 0x080e2e8c in EvalObjv (interp=0x87f2030, objc=1, objv=0xbf3ff44c,
    command=0xbf3ff6c8 "rp_handler", length=10, flags=0) at
./../generic/tclParse.c:932
#59 0x080e37e2 in Tcl_EvalEx (interp=0x87f2030, script=0xbf3ff6c8
"rp_handler", numBytes=10,
    flags=0) at ./../generic/tclParse.c:1393
#60 0x080e3ae1 in Tcl_Eval (interp=0x87f2030, string=0xbf3ff6c8 "rp_handler")
    at ./../generic/tclParse.c:1512
#61 0x0809c5c1 in Tcl_GlobalEval (interp=0x87f2030,
command=0xbf3ff6c8 "rp_handler")
    at ./../generic/tclBasic.c:4149
#62 0x08089f05 in TclDoOp (arg=0x85a46e0, conn=0x87ea458) at tclop.c:588
#63 0x080787a7 in Ns_ConnRunRequest (conn=0x87ea458) at op.c:196
#64 0x0807f002 in ConnRun (connPtr=0x87ea458) at serv.c:880
#65 0x0807e950 in NsConnThread (arg=0x87a5698) at serv.c:669
#66 0x08119f7b in NsThreadMain (arg=0x8156018) at thread.c:228
#67 0x40027f87 in pthread_start_thread (arg=0xbf3ffc00) at manager.c:284

Unfortunately I don't know enough to make much sense of this but any
help would be greatly appreciated.

Thanks

Matthew



Matthew Walker wrote:
I am having trouble with nsimap on a redhat 7.2 box. The nsimap.so
loads at startup OK and installs its garbage collector but when I try
to open a session from a tcl page using ns_imap open I get (with
debug logging turned on):

[18/Mar/2003:17:34:34][15182.5126][-conn2-] Debug: ns_imap: open:
0x8ca8f50: 1: {127.0.0.1}: [EMAIL PROTECTED]
Killed

<snipped>



-- AOLserver - http://www.aolserver.com/ To Remove yourself from this list: http://www.aolserver.com/listserv.html List information and options: http://listserv.aol.com/

Reply via email to