The following is quoted from an email I received from Edward J. Sheldrake, maintainer of Valknut.
Perhaps I should tell you some of the bad things about dclib: - Originally dclib used nothing from the standard C++ library, instead implementing everything itself, including: - A string class which used to claim it was implicitly shared in the header, but it's not, and it's mostly passed around by value. Millions of strings used to be burned through during filelist refresh, a bit less now. - Pointer based list always with auto delete. - Pointer based hash table where the "hash" function is take the first character, recursively implemented to use more characters. In addition the remove without delete always used to be broken when more than the first character was used (bug not hit by any current code). - A thread class which calls it's "run" method repeatedly until somebody calls stop, also it inherits the mutex class. - Almost everything in dclib runs on the same thread (CManager), every connection inherits CThread, none are started. Each hub or peer connection has about 5 mutexes. - The hash database keeps nothing in any particular order, and is implemented using a few byte arrays, so is highly prone to error. In fact, even the coding style, putting all variables first at the top of each method, ruined font rendering in the QT4 port for months before 0.4.0 was released. There's nothing explaining why dclib is like it is in the code. On Mon, Oct 6, 2008 at 6:33 PM, Sharad Birmiwal <[EMAIL PROTECTED]>wrote: > > On Sun, Oct 5, 2008 at 10:35 PM, Ishan Arora <[EMAIL PROTECTED]> wrote: > > Hi, > > > > I am working on a rewrite of Valknut in Qt4 (with the maintainer of > Valknut, > > Edward J. Sheldrake) to remove the dependency on dclib. If you people > have a > > solution to inter-hostel networking, it would be easy for me to create > > patches. > > > > Add (graphical) functionality in Valknut for specifying where you (IP > and port) are listening for inbound connections (as an "Advanced" > setting). I think such a feature is present in the present valknut but > that doesn't seem to work properly (may be 'cause where I am trying to > direct all inbound connections isn't an IP assigned to me). This > should work for both search results and file transfers. > > I wonder though why you are trying to remove dependency on dclib? Does > that depend on QT3? I thought it did it's job well? > > > Sharad > > > > --~--~---------~--~----~------------~-------~--~----~ [EMAIL PROTECTED] mailing list -- group http://groups.google.com/group/iitdlug -~----------~----~----~----~------~----~------~--~---
