Brief update on TidalWave…
Was up early this morning working on TidalWave.. I started hacking on it around 9:30, two mountain dews and three hours later my eyelids got too heavy to continue. Blasted sleep – it keeps interrupting things. I’ve had to re-engineer a major portion of the code to resolve some problems, and eventually came upon a new strategy for loading .torrent files (which are nothing more than streams of bencoded data). It took some time, but the results so far have been outstanding. However I’ve got a serious problem in generating SHA hashes of segments of becoded messages. It’s a problem that’ll probably take an hour or so to track down, and around five minutes to fix. I need to freeze up the development, and go back and clean up some of the bencoding code. It’s gone through several revisions now, (external API anyhow) and needs a clean & solid interface before I get much futher.
I’ve been tossing around ideas for how to go about handling the tracker and peer communication. I’ve just about settled on a method I think will work pretty well. The fact that it’s insanely BeOS-like helps too. Still this is taking a bit longer to get to than I’d have liked. I’m still working on the little details of parsing the bencoding and getting tracker communication requirements in place. This whole info_hash thing really threw a wrench in the spokes…
At least I have a stable (and correct) SHA hash function now. Silly me, in the shaLib that you can download from this site, (I’m not sure I’ve updated the download yet… I think I have…) I forgot to define -DLITTLE_ENDIAN when compiling the lib. The result was bas-ackwards SHA hashes, with the bits reversed. I laughed when I saw that – after spending two days trying to figure out why my hashes weren’t matching up with what online hash functions were generating. It was either laugh, or cry, or bash my head into my desk repeatedly until I either laughed or cried. I skipped the self-abuse and went straight to laughing. I’ll have a bonified update to libsha later this week… Things are moving along, albeit slowly. I didn’t code this past weekend, as I was totally immersed in a few games of Civilization 3.
In the land of the bizzare – I was having a great nights sleep, having some rather lucid dream that I can’t for the life of me remember… and all of a sudden I swore I heard my cell phone do it’s ‘quiet’ mode ring. I sat straight up in bed, wide bloody awake, listening for the cell phone. Nothing. Look at the clock, 4:30 AM. What the heck? I haven’t shot up in the middle of the night that aware of my whereabouts since I laced Mt. Dew with Vanilla Voom when I was still back at Pittsburgh. The phone never did ring. Must’ve been dreaming it.
