Raphael Manfredi wrote: > Quoting Meelis Roos <[EMAIL PROTECTED]> from ml.softs.gtk-gnutella.devel: > :I have seen current SVN gtk-gnutella crashing abour weekly with UDP > :processing problems. This time I finally got a readable backtrace and > :crash location (by the way, I had to comment out the crash handler to > :get sensible core dumps): > : > :Program terminated with signal 11, Segmentation fault. > :#0 dht_find_bucket (id=0xbff39f9c) at routing.c:1206 > :1206 result = (val & mask) ? kb->one : kb->zero; > : > :So kb seems to be NULL... > > That's not possible unless `root' is also NULL. But otherwise kb can never > be NULL (since we escape the inner loop as soon as `result' is NULL). > > However, `root' is only reset back to NULL in dht_close(). So if it is > becoming NULL during operations, it means there is a memory corruption.
Have you considered that this code is reached even if dht_initialize() was never called? > I am not experiencing any problem with the DHT code here and I have very large > uptimes (> 30 days). The only time I stop gtk-gnutella is when I need to > upgrade... And I naturally switched the DHT code on! Yes, but it's disabled by default for many good reasons. Also you can neither disable or enable it during run-time because the code is widely ignorant of the setting causing crashes when changed at run-time. -- Christian ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ gtk-gnutella-devel mailing list gtk-gnutella-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel