|
||||||||||
Hello everyone, my diploma thesis is now officially finished, and so I thought it's time to release the piece of software that we (Daniel Spörri and I) came up with. As I'd mentioned on the m0n0wall-dev mailing list before, the initial idea was to port the existing functionality of m0n0wall to the new architecture described in an earlier term paper (http://m0n0.ch/wall/development.php - yes, I know, most of it still hasn't been translated yet...). However, that wasn't permissible, and anyway, it would probably have been too much work in the available time, what with all the documentation that had to be written as well. So instead, we settled on applying the new concept/architecture to a software package for (FreeBSD based) wireless access points. The result is called "m0n0AP" and uses a core daemon written in C++ that can load modules (also written in C++) dynamically at runtime. All external communication (such as between the core and the GUI) is done via XML-RPC over HTTP, and there are other gimmicks as well (such as certificate-based digital signatures on modules and system images, meta/dependency information in XML files, a neat PHP-based web interface, etc.). Some screenshots: http://m0n0.ch/ap/screens If you're feeling really adventurous, you can download a CF/HD image that should run on most generic PCs, WRAPs and Soekrises here: http://m0n0.ch/ap/m0n0ap-preview1.img (13.6 MB) Note that at least a 256 MB disk is required due to the generous partition layout and the fact that it doesn't use a compressed MFS root file system (unlike m0n0wall). Also, only Atheros-based radios are supported. The default user name/password is admin/mono. Let me stress that this software is in an experimental stage, and it's not clear whether any further development will be done on it. It's simply intended to be a working practical example of the proposed new architecture. The source code (or rather a dump of the repository) is available here: http://m0n0.ch/ap/repos-r278.tgz Now - after writing all the code for m0n0AP, I'm not sure whether the new architecture would be a good fit for m0n0wall. It would be a huge amount of work to port all existing functionality, and at least to me, the advantages of modularizing everything are not evident. So for the time being, I think it's best to try to come up with a stable m0n0wall 1.3 based on the old architecture, and then maybe think about major changes again. So long, Manuel |