New series history part 2

0.3.21 - 12/09/2008

dclib:

 dclib/cclient.cpp            |  166 ++++++--------
 dclib/cclient.h              |   42 ++-
 dclib/cclientssl.cpp         |   17 -
 dclib/cclientssl.h           |    2 
 dclib/cconfig.cpp            |   12 -
 dclib/cconfig.h              |   20 -
 dclib/cconnectionmanager.cpp |    2 
 dclib/cdownloadmanager.cpp   |  108 +++------
 dclib/cdownloadmanager.h     |    3 
 dclib/cfilemanager.cpp       |   90 +++++++
 dclib/cfilemanager.h         |    4 
 dclib/cmessagehandler.cpp    |  166 +++++---------
 dclib/cmessagehandler.h      |    2 
 dclib/core/cbytearray.cpp    |   14 -
 dclib/core/cconnection.cpp   |   15 +
 dclib/core/cfile.cpp         |   47 +++-
 dclib/core/cfile.h           |    8 
 dclib/core/ciconv.cpp        |    7 
 dclib/core/cstringlist.h     |    2 
 dclib/core/ctraffic.h        |   14 -
 dclib/core/cxml.cpp          |   74 +++---
 dclib/core/cxml.h            |    3 
 dclib/csearchindex.cpp       |  487 ++++++++++++++++++-------------------------
 dclib/csearchindex.h         |   29 ++
 dclib/csearchmanager.cpp     |   13 -
 dclib/csharelist.cpp         |   24 --
 dclib/dcobject.cpp           |   30 --
 dclib/dcobject.h             |   73 ------
 dclib/dcos.h.in              |    4 
 tests/Makefile.am            |   18 +
 tests/case-fold.cpp          |   49 ++++
 tests/ciconv-test.cpp        |   82 +++++++
 tests/cstring-find.cpp       |  138 ++++++++++++
 tests/cstring-self.cpp       |   86 +++++++
 tests/tth-test.cpp           |   63 +++++
 35 files changed, 1127 insertions(+), 787 deletions(-)

valknut:

 dcchat.cpp              |   27 ++++-
 dcclient.cpp            |    9 +
 dcgui.cpp               |    5 -
 dcguiutils.cpp          |    1 
 dcoptions.cpp           |   44 ++++----
 dcoptions.h             |    2 
 dcsigterm.cpp           |  104 +++++++++++++++++++++
 dcsigterm.h             |   61 ++++++++++++
 dctransferview.cpp      |   15 ++-
 main.cpp                |   38 ++-----
 ui/DCDialogHubSearch.ui |   26 ++---
 ui/DCDialogMagnet.ui    |  235 ++++++++++++++++++++++++++++++++++++++++++++++++
 ui/DCDialogOptions.ui   |   10 +-
 13 files changed, 500 insertions(+), 77 deletions(-)

Because it was a smaller release, fixing serious bugs, the diffstat is quite useful. Besides the bug fixes, in dclib the code for /rebuild and /validate was separated and re-written, and 5 tests for "make check" were added.

In valknut, there were a few bug fixes, the dialog for magnet links was added but is not used in 0.3.21, the code for handling SIGTERM was re-written as per the Qt documentation, and put into a new class, DCSigTerm.

0.3.22 - 22/11/2008

dclib:

 dclib/ccasefolder.h           |    5 
 dclib/cclient.cpp             |  120 +-
 dclib/cclient.h               |   27 
 dclib/cclientssl.cpp          |    2 
 dclib/cclientssl.h            |   14 
 dclib/cconfig.cpp             |  262 +----
 dclib/cconfig.h               |  150 ++-
 dclib/cconnectionmanager.cpp  |   41 
 dclib/cconnectionmanager.h    |   20 
 dclib/cdcproto.cpp            |   47 -
 dclib/cdcproto.h              |   17 
 dclib/cdownloadmanager.cpp    |  634 +++++--------
 dclib/cdownloadmanager.h      |   87 +
 dclib/cdownloadqueue.cpp      |   37 
 dclib/cdownloadqueue.h        |   36 
 dclib/cencrypt.cpp            |   41 
 dclib/cencrypt.h              |    9 
 dclib/cfilehasher.cpp         |  166 +--
 dclib/cfilehasher.h           |   53 -
 dclib/cfilemanager.cpp        |   58 -
 dclib/cfilemanager.h          |   18 
 dclib/chttp.cpp               |    9 
 dclib/chttp.h                 |   15 
 dclib/chublistmanager.cpp     |  148 ---
 dclib/chublistmanager.h       |   22 
 dclib/clistenmanager.cpp      |   24 
 dclib/clistenmanager.h        |   21 
 dclib/cmessagehandler.cpp     | 1921 ++++++++++++++++++++----------------------
 dclib/cmessagehandler.h       |   26 
 dclib/core/casyncdns.cpp      |   20 
 dclib/core/casyncdns.h        |   22 
 dclib/core/cbase32.cpp        |  130 +-
 dclib/core/cbase32.h          |   24 
 dclib/core/cbase64.cpp        |   10 
 dclib/core/cbase64.h          |   14 
 dclib/core/cbytearray.cpp     |   34 
 dclib/core/cbytearray.h       |   20 
 dclib/core/cbz.cpp            |  149 ++-
 dclib/core/cbz.h              |   29 
 dclib/core/ccallback.h        |   22 
 dclib/core/cconnection.cpp    |  113 +-
 dclib/core/cconnection.h      |   22 
 dclib/core/cdir.cpp           |  159 +--
 dclib/core/cdir.h             |   23 
 dclib/core/cfile.cpp          |   61 -
 dclib/core/cfile.h            |   14 
 dclib/core/che3.cpp           |    2 
 dclib/core/che3.h             |   27 
 dclib/core/ciconv.cpp         |    8 
 dclib/core/ciconv.h           |   14 
 dclib/core/clist.h            |   62 -
 dclib/core/clisten.cpp        |    2 
 dclib/core/clisten.h          |   18 
 dclib/core/clogfile.cpp       |   12 
 dclib/core/clogfile.h         |   14 
 dclib/core/cmanager.cpp       |    6 
 dclib/core/cmanager.h         |   25 
 dclib/core/cmutex.cpp         |   27 
 dclib/core/cmutex.h           |   26 
 dclib/core/cnetaddr.cpp       |   80 +
 dclib/core/cnetaddr.h         |   14 
 dclib/core/cplugin.h          |   11 
 dclib/core/csingleton.h       |   11 
 dclib/core/csocket.cpp        |  156 +--
 dclib/core/csocket.h          |   43 
 dclib/core/cssl.cpp           |    4 
 dclib/core/cssl.h             |   28 
 dclib/core/cstring.cpp        |   46 -
 dclib/core/cstring.h          |   80 +
 dclib/core/cstringlist.h      |   32 
 dclib/core/cthread.cpp        |  109 ++
 dclib/core/cthread.h          |   50 +
 dclib/core/ctraffic.h         |    7 
 dclib/core/cxml.cpp           |   68 +
 dclib/core/cxml.h             |   12 
 dclib/core/czlib.cpp          |    2 
 dclib/core/czlib.h            |   10 
 dclib/core/platform.cpp       |   87 -
 dclib/core/platform.h         |   34 
 dclib/core/types.h            |   12 
 dclib/cpluginmanager.cpp      |   11 
 dclib/cpluginmanager.h        |   28 
 dclib/cquerymanager.cpp       |    9 
 dclib/cquerymanager.h         |   33 
 dclib/csearchindex.cpp        |  204 ++--
 dclib/csearchindex.h          |   58 -
 dclib/csearchmanager.cpp      |   23 
 dclib/csearchmanager.h        |   33 
 dclib/csearchsocket.cpp       |   36 
 dclib/csearchsocket.h         |   19 
 dclib/csharelist.cpp          |  114 --
 dclib/csharelist.h            |   15 
 dclib/csharetreefolder.cpp    |    8 
 dclib/csharetreefolder.h      |    2 
 dclib/ctransfer.cpp           |  428 ++-------
 dclib/ctransfer.h             |   67 +
 dclib/cuserlist.cpp           |  106 +-
 dclib/cuserlist.h             |   19 
 dclib/cutils.cpp              |   35 
 dclib/cutils.h                |   13 
 dclib/dclib.cpp               |   47 -
 dclib/dclib.h                 |   33 
 dclib/dcobject.cpp            |   84 -
 dclib/dcobject.h              |  245 ++---
 dclib/dcos.h.in               |   26 
 tests/case-fold.cpp           |   34 
 tests/cstring-number.cpp      |  165 +++
 tests/cstring-upper-lower.cpp |   91 +
 tests/threads-mutex.cpp       |  191 ++++
 tests/tth-test.cpp            |   48 +
 110 files changed, 4303 insertions(+), 3957 deletions(-)

valknut:

 about.h                    |   24 
 dcapplicationevents.cpp    |    2 
 dcapplicationevents.h      |    4 
 dcchat.cpp                 |  552 ++++++++++++------
 dcchat.h                   |   12 
 dcclient.cpp               |  248 ++++----
 dcclient.h                 |   10 
 dcconfig.cpp               |  164 +++--
 dcconfig.h                 |   76 --
 dcconnectionmanager.cpp    |   68 --
 dcconnectionmanager.h      |    4 
 dcdebug.cpp                |   61 +-
 dcdebug.h                  |    4 
 dceditserver.cpp           |   12 
 dceditserver.h             |    6 
 dcedittransfer.cpp         |    2 
 dcedittransfer.h           |    4 
 dcevent.cpp                |    2 
 dcevent.h                  |    4 
 dcfilebrowser.cpp          |  115 ++-
 dcfilebrowser.h            |    6 
 dcfilebrowseritems.cpp     |    2 
 dcfilebrowseritems.h       |    4 
 dcfilelistdecompressor.cpp |  144 +++-
 dcfilelistdecompressor.h   |    2 
 dcfiletool.cpp             |    4 
 dcfiletool.h               |    6 
 dcfiletransferinfo.cpp     |    4 
 dcfiletransferinfo.h       |    4 
 dcfriendobject.h           |    8 
 dcgui.cpp                  |   37 -
 dcgui.h                    |    4 
 dcguiutils.cpp             |   34 +
 dcguiutils.h               |    5 
 dchubfilter.cpp            |    2 
 dchubfilter.h              |    4 
 dchublistitems.cpp         |    2 
 dchublistmanager.cpp       |   86 +-
 dchublistmanager.h         |    4 
 dchubprofile.cpp           |   21 
 dchubprofile.h             |    4 
 dchubsearch.cpp            |   93 +--
 dchubsearch.h              |    4 
 dciconloader.cpp           |    2 
 dciconloader.h             |    4 
 dcmenuhandler.cpp          |   14 
 dcmenuhandler.h            |    7 
 dcoptions.cpp              |  321 +++-------
 dcoptions.h                |   25 
 dcpluginmanager.cpp        |    2 
 dcpluginmanager.h          |    4 
 dcshellcommandrunner.cpp   |   10 
 dcshellcommandrunner.h     |    6 
 dcsigterm.cpp              |    2 
 dcsplash.cpp               |    9 
 dcsplash.h                 |    4 
 dcspy.cpp                  |   23 
 dcspy.h                    |    6 
 dctransferview.cpp         |   25 
 dctransferview.h           |    4 
 dctransferviewitems.h      |   39 -
 dctranslator.cpp           |    2 
 dctranslator.h             |    4 
 dcusercommandeditor.cpp    |   46 -
 dcusercommandeditor.h      |   10 
 dcuserslist.cpp            |    2 
 dcuserslist.h              |    4 
 main.cpp                   |   56 -
 ui/DCDialogAbout.ui        |    4 
 ui/DCDialogEditServer.ui   |   11 
 ui/DCDialogFileBrowser.ui  |   10 
 ui/DCDialogHubProfile.ui   |    4 
 ui/DCDialogOptions.ui      | 1334 ++++++++++++++++++++++++---------------------
 ui/cdialogmessage.cpp      |    2 
 ui/cdialogmessage.h        |    4 
 ui/cdialogpicturemap.cpp   |    2 
 ui/cdialogpicturemap.h     |    4 
 ui/dcqtextedit.cpp         |    2 
 ui/dcqtextedit.h           |    4 
 ui/dcwidget.cpp            |  109 +--
 ui/dcwidget.h              |   30 -
 81 files changed, 2138 insertions(+), 1871 deletions(-)

Besides numerous bug fixes, there were changes to upload slot handling.

All the sources were converted to UTF-8 (mostly a name), and some comments were added to dclib. cmessagehandler.cpp had a lot of re-indenting after checking if "new" returned NULL was removed (it doesn't).

0.3.23 - 10/02/2009

dclib:

 dclib/ccasefolder.cpp                  |    6 -
 dclib/cclient.cpp                      |   43 +-------
 dclib/cclient.h                        |    6 -
 dclib/cconfig.cpp                      |   83 ++++-------------
 dclib/cconfig.h                        |   45 +++------
 dclib/cconnectionmanager.cpp           |    2 
 dclib/cconnectionmanager.h             |    4 
 dclib/cdcproto.cpp                     |    8 +
 dclib/cdcproto.h                       |    2 
 dclib/cdownloadmanager.cpp             |   83 +++++++++++++++--
 dclib/cdownloadmanager.h               |   12 +-
 dclib/cdownloadqueue.cpp               |   36 +++++++
 dclib/cdownloadqueue.h                 |   10 ++
 dclib/cfilehasher.h                    |    4 
 dclib/chttp.cpp                        |    4 
 dclib/chttp.h                          |    4 
 dclib/chublistmanager.cpp              |    2 
 dclib/core/casyncdns.h                 |    4 
 dclib/core/cbytearray.cpp              |   30 ++----
 dclib/core/cbytearray.h                |    3 
 dclib/core/cdir.h                      |    4 
 dclib/core/clogfile.h                  |    4 
 dclib/core/cplugin.h                   |    4 
 dclib/core/csocket.cpp                 |   73 +++++++--------
 dclib/core/csocket.h                   |   16 +--
 dclib/core/cssl.cpp                    |   50 ++++++++++
 dclib/core/cssl.h                      |   16 +++
 dclib/core/cstring.cpp                 |   40 ++++----
 dclib/core/ctraffic.h                  |    4 
 dclib/core/cxml.h                      |    4 
 dclib/core/types.h                     |   80 ++++++++--------
 dclib/cquerymanager.h                  |    4 
 dclib/csearchmanager.cpp               |   16 +--
 dclib/csearchmanager.h                 |   18 +--
 dclib/csearchsocket.cpp                |  131 +++++++++++++++++++--------
 dclib/csearchsocket.h                  |   31 ++++--
 dclib/ctransfer.cpp                    |    4 
 dclib/ctransfer.h                      |   13 +-
 dclib/cuserlist.cpp                    |   37 -------
 dclib/cuserlist.h                      |    3 
 dclib/dcobject.cpp                     |    7 -
 dclib/dcobject.h                       |   14 +-
 dclib/dcos.h.in                        |    4 
 dclib/unicode/gen-case-folding-src.cpp |    4 
 tests/cstring-compare.cpp              |  160 +++++++++++++++++++++++++++++++++
 tests/priv-ips.cpp                     |   68 ++++++++++++++
 46 files changed, 769 insertions(+), 431 deletions(-)

valknut:

 dcchat.cpp                    |   70 ++-
 dcchat.h                      |    2 
 dcclient.cpp                  |  471 +++++++++--------------
 dcclient.h                    |   19 
 dcconfig.cpp                  |  249 ++----------
 dcconfig.h                    |  119 +----
 dcdebug.cpp                   |  140 +-----
 dcdebug.h                     |   18 
 dcevent.cpp                   |   12 
 dcfilebrowser.cpp             |  402 +++++++++++++++++--
 dcfilebrowser.h               |   22 -
 dcfilebrowseritems.cpp        |    4 
 dcfilelistdecompressor.cpp    |   40 +
 dcfiletool.cpp                |   47 +-
 dcfiletool.h                  |    4 
 dcgui.cpp                     |  129 +++++-
 dcgui.h                       |   14 
 dchublistmanager.cpp          |  366 ++++++++++-------
 dchublistmanager.h            |   11 
 dchubsearch.cpp               |   60 +-
 dchubsearch.h                 |   11 
 dciconloader.cpp              |  174 ++++----
 dciconloader.h                |   91 ++--
 dcmenuhandler.cpp             |   70 +--
 dcmenuhandler.h               |    5 
 dcoptions.cpp                 |  232 +++++------
 dcoptions.h                   |   10 
 dcshellcommandrunner.cpp      |    1 
 dctransferview.cpp            |   15 
 dctranslator.cpp              |   19 
 dctranslator.h                |    7 
 main.cpp                      |   85 +---
 search-result-columns.h       |   36 +
 ui/DCDialogAbout.ui           |    8 
 ui/DCDialogAskDownloadMode.ui |    7 
 ui/DCDialogDebug.ui           |   14 
 ui/DCDialogDebugSettings.ui   |   52 ++
 ui/DCDialogFileBrowser.ui     |   73 +++
 ui/DCDialogHubListManager.ui  |   67 ++-
 ui/DCDialogHubSearch.ui       |   17 
 ui/DCDialogOptions.ui         |  860 +++++++++++++++++-------------------------
 ui/dcwidget.cpp               |   19 
 ui/dcwidget.h                 |    2 
 43 files changed, 2191 insertions(+), 1883 deletions(-)

In dclib, added capturing the source IP address of active mode (UDP) search results, and made changes to transfer wait list handling, which then lead to fixing a bug present in all previous versions - never removing entries which got no response.

In valknut, the main feature is the find function for searching within filelists. The icon changes and several Qt4 specific bug fixes are not shown in the diffstat.

The hub address was also added to the Lock/PK of transfers, which is to help trace hubs that use the clients in them for denial-of-service attacks, this has also been added to DC++.