[JDEV] non-unicode XML crashes jabberd

Thomas Muldowney temas at box5.net
Mon Sep 9 10:36:45 CDT 2002


With all the recent JUD problems, is anyone up for writing a new simple
one?  Or a more complete one?

--temas


On Mon, 2002-09-09 at 09:12, Ralph Siemsen wrote:
> Hi Martin,
> 
> Join the club ;)  I have been seeing this also.  The blame lies in the 
> JUD somewhere, if you turn it off then it doesn't happen anymore.
> 
> I spent quite a while trying to debug it.  The problem isn't that 
> non-unicode characters are being transmitted - but rather, that a buffer 
> in memory is getting overwritten with a pointer (8 bytes on most archs).
> I even had Temas and Nathan Sharp poking along with me, but we didn't 
> find the culprit.
> 
> Sorry not to have a solution for you, but maybe you feel better knowing 
> that you're not alone? :P
> 
> -Ralph
> 
> 
> Martin Lesser wrote:
> > The last days our jabberd (1.4.2) crashed two times, both times a client
> > (Gabber)[1] using non-unicode characters was the reason.
> > 
> > The IMHO relevant last lines from the log-files:
> > 
> >      2002-09-07 13:36:21.696523500 deliver.c:678 delivering to instance 'xdb'
> >      2002-09-07 13:36:21.696696500 xdb_file.c:172 handling xdb request <xdb type='set' ...</xdb>
> >      2002-09-07 13:36:21.696844500 xdb_file.c:109 loading /home/jabber/spool/jud/global.xdb
> >      2002-09-07 13:36:21.697376500 deliver.c:474 DELIVER 1:jud <xdb type='result' ...</xdb>
> >      2002-09-07 13:36:21.697487500 deliver.c:678 delivering to instance 'dnsrv'
> >      2002-09-07 13:36:21.697651500 xdb.c:52 xdb_results checking xdb packet <xdb type... </xdb>
> > !!-> 2002-09-07 13:36:21.697770500 xdb_file.c:272 decaching pz<90>íbber/spool/jud/global.xdb
> > ??-> 2002-09-07 13:36:21.949186500 dnsrv.c:155 dnsrv: Read error on coprocess(1): 0 Success
> >      2002-09-07 13:36:21.949236500 dnsrv.c:169 DNSRV CHILD: out of loop.. exiting normal
> > 
> >      2002-09-07 14:36:15.793504500 xdb_file.c:109 loading /home/jabber/spool/jud/global.xdb
> >      2002-09-07 14:36:15.793766500 xdb_file.c:129 caching /home/jabber/spool/jud/global.xdb
> >      2002-09-07 14:36:15.794655500 xdb.c:52 xdb_results checking xdb packet <xdb type...</xdb>
> > !!-> 2002-09-07 14:36:15.794821500 xdb_file.c:272 decaching (gȩ#@bber/spool/jud/global.xdb
> > ??-> 2002-09-07 14:36:15.816514500 dnsrv.c:155 dnsrv: Read error on coprocess(1): 0 Success
> >      2002-09-07 14:36:15.816560500 dnsrv.c:169 DNSRV CHILD: out of loop.. exiting normal
> > 
> > As you can see xdb_file.c tried to handle garbage-characters when
> > decaching the global.xdb[2]
> > 
> > At the moment I don't understand from which point xdb_file.c gets this
> > garbage, this garbage appears _only_ when global.xdb is decached _and_ a
> > client with wrong/none unicode is involved.
> > 
> > Also I don't understand why dnsrv.c claims PID 1 (init) as its parent
> > process. We run jabberd under control of supervise[3] so jabberd is
> > restarted automaticly if it dies with the disadvantage of loosing all
> > established connections.
> > 
> > TIA, Martin
> 
> 
> 
> _______________________________________________
> jdev mailing list
> jdev at jabber.org
> http://mailman.jabber.org/listinfo/jdev





More information about the JDev mailing list