2007-11-13 15:00:12

Simple BitTorrent Fuzzer

I wrote a simple BitTorrent client protocol fuzzer for a project in my CS389 class. Right now it doesn't do too much beyond the bare minimum and it is pretty retarded with regard to knowledge of the protocol but it does its job. Written in the Sulley fuzzing framework, code is here.

Posted by Thomas | Permanent Link | Categories: Misc

2007-07-11 10:49:48

Update on genipc

Genipc work has been moving along well, and is reaching a state where it can "do" things, at least on the server side. So far, I've gotten the server side to deserialize basic ipc commands, like main_hello, main_quit, correctly, and to call the correct command handler. I've also stripped out the clientlib in my tree for testing purposes and implemented a bit of the new request api, and have been using that to test the codepaths through the server.

Things that still need to be done:
* Right now it can only handle deserializing the more basic types like int, uint, string, so I still need to handle the more complex cases like lists of ints, dicts, etc.
* Implement property requests, right now it only handles methods, not property callbacks and the like. This shouldn't take too long, the code for generating it is almost finished, but I don't know yet how hard it will be to integrate it.
* The server code needs to be converted over to using the new API for registering IPC commands(shouldn't take too long, probably longer for requests).
* The clientlib needs to be converted to implement the new request API.

Also, there are a couple of implementation details that I think may need fixing. Right now, all of the definitions for methods, requests, etc. are all defined in the generated xmmsclient.h This means that everything thats generated needs to include it, which may be a problem, considering that its supposed to be for the client side. I will probably be spilling it up into something like the current xmmsc_idnums.h and a seperate xmmsclient.h that just defines the public interface. Also, the genipc.py script is getting a bit large and unweildy, I want to split it up into a couple of modules and clean it up to make it easier to work with. And eventually, I will need to integrate it into waf(the generating part). I am going to write a GENIPC_README file in my tree(and on the wiki) soon that will explain how all the generated files fit together and expand a bit more on the implementation details.

Posted by Thomas Coppi | Permanent Link | Categories: SoC

2007-07-01 00:56:45

git repos and DNS changes

Today I changed the DNS server for this site(thisnukes4u.net) to freedns(afraid.org), because 1and1 has been having problems lately. I've also imported a bunch of git repositories for some of my old and new projects, you can see them on gitweb. Anyways, thats enough for now, I need to do some more electronics work and work on my SoC project a bit.

Posted by Thomas Coppi | Permanent Link | Categories: Misc

2007-06-27 05:31:20

Quick Update on SoC Progress

I just wanted to make a quick update on my progress with genipc. So far, I've been able to generate header files that describe most all of the client side and a good portion of the server side, as well as written some code that supports the client side(sending requests). The next step(what I am currently working on) is to get the rest of the server side headers done and work on integrating them into the existing setup there. The first step is to allow a cleaner way of registering IPC commands through a structure/function pointer interface. Once I've got that going, the next step is to replace the code currently in ipc.c that is doing all the handling and delegation of ipc messages with a generated equivalent that can interface with the previously mentioned struct/func ptr setup. I'll update again in the next couple of days on how its going and what exactly I've done/any changes in the plan.

Posted by Thomas Coppi | Permanent Link | Categories: SoC

2007-05-29 14:38:22

Summer of Code begins

Today I'm starting work on my SoC project, which is autogenerated IPC for xmms2. This week I'll mostly be setting up my environment, finalizing my design, and dredging a bit further into the parts of the xmms2 codebase that I've been working on. I'll be updating this blog at least once a week on my progress, but I hope that I will be doing enough interesting things to update at least once every day or two. Oh yeah, more info on my project is here.

Posted by Thomas Coppi | Permanent Link | Categories: SoC

Sat May 5 20:16:29 UTC 2007

First entry in new blog

First entry in new blog on new server.

Posted by Thomas Coppi | Permanent Link