Alo Sarv
lead developer

Donate via
MoneyBookers

Latest Builds

version 0.3
tar.gz tar.bz2
Boost 1.33.1 Headers
MLDonkey Downloads Import Module Development
Payment completed
Development in progress.
Developer's Diary
irc.hydranode.com/#hydranode

Tuesday, March 22, 2005

SecIdent operational

Merged the secident code to CVS now, along with bunch of other fixes. Here's the list:
Now, the implementation uses cryptopp lib, but we have a subset of cryptopp now in modules/ed2k dir - cryptopp.cpp and cryptopp.h. However, those two files will need a lot of processing, because:

- They total 16'000 sloc, and add 800kb to binary size in release build (2-3 mb in debug build)
- They don't conform to hydranode coding standards
- They don't compile with -pedantic flag (enforces strict ISO C++)
- They spit out ~500 lines of warnings when compiled with full warnings turned on (-W -Wall)
- They break (crash the app) when compiled with optimizations (-O3, probably with -O2 too)

The basic idea is to get rid of all the libraries intermediate classes, and leave only the actual classes we use. There's a huge class hierarchy behind all that, which is no doubt useful when dealing with full library, however is completely irrelevant for us, since we technically only use a few classes. So I'm hoping to reduce the code size at least 50%, perhaps even more. And with that code size reduction, the crashes with optimizations can also be addressed.

Madcat, ZzZz

PS: The last patchset (excluding crypto lib code) was +800 sloc, raising our (own) codebase finally above the 30'000 sloc line. We were close to 30'000 once before - cpl months ago - but then I basically thew away / replaced ton of code, dropping us down to 26k region. But now we'r back, and exceeded the 30k mark for the first time :)



Comments: Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?