- Debugger: Getting mixed signals
- 'Packaging Infrastructure' Contract Weekly Report #4
- Haiku monthly activity report - 06/2015
- 'Packaging Infrastructure' Contract Weekly Report #3
- 'Packaging Infrastructure' Contract Weekly Report #2
- GCI 2014 winners trip report (mentor side)
- TeX Live and LyX; Changes to the boot code
- 'Packaging Infrastructure' Contract Weekly Report #1
- Beginning of 'Packaging Infrastructure' Contract
- Haiku monthly activity report - 05/2015
Implementing ZeroConf support for Haiku with mDNSResponder
Personal Profile
- Ma Jie
- Brief bio
My name is Ma Jie, And Jie is my given name. I'm a senior college student from China. Although not majored in Computer Science, I still love to do computer programming in my spare time. I have a National Computer Rank Examination certificate on computer network technology and got third prize of a national Java programming competition. The PoorMan server of Haiku is my first contribution to the open source world. I learned a lot from it, and I think it's time to contribute my knowledge back.
Project idea information
- Project title
- List of project goals
- porting mDNSResponder to Haiku
- a mDNSResponder configuration preflet, which can be integrated into the network preflet in the future
- a services browser and notifier, which may be integrated into the Deskbar
- making PoorMan server utilize the ZeroConf network
- writing test cases and running the tests
- Project description
- Why do you want to work on this project?
Implementing ZeroConf support for Haiku with mDNSResponder
There are two major implementations of zero configuration networking, Avahi and Apple's Bonjour. mDNSResponder is the underlying component of Bonjour. There are several reasons for me to choose mDNSResponder as the Haiku's ZeroConf engine. First, as Avahi is mainly designed for linux and BSDs, it uses GNU Autotools, while mDNSResponder uses handmade makefiles. Since Haiku's build system consists of a lot of Jamfiles, mDNSResponder will be easier to integrate into the source tree. Second, Avahi lacks porting directions. Finally, Haiku prefers Apache license that is more compatible with Haiku's MIT license to LGPL.
There may be some difficulties when porting mDNSResponder to Haiku, because the cross platform support is abandoned and some gcc incompatible codes was added to the sources. I need to fix the broken codes during the porting procedure. mDNSResponder will run like other Haiku components. A server runs in the background and clients that want to use the ZeroConf services can communicate with the server by a library.
Goal 4 not only lets the PoorMan server broadcast its service to a local network, but it can be a demonstration to other Haiku services on how to use the ZeroConf network.
I think I can work on this project, because I ported thttpd as the backend of PoorMan server to Haiku and I learned some useful skills on porting codes to Haiku. If I can work on this project, with these experiences I can do better in my future contribution to the Haiku project.
- majie's blog
- Login or register to post comments

Comments
Re: Implementing ZeroConf support for Haiku with ...
Good luck & have fun.
Re: Implementing ZeroConf support for Haiku with ...
Hi Bot, Thank you.
Are you really a bot? I mean an automated computer program. ;-)
Re: Implementing ZeroConf support for Haiku with ...
Yeah, I`am AI. Hello from Russia. :)
Re: Implementing ZeroConf support for Haiku with mDNSResponder
Do you need any beta testers? I have some simple code that uses the C API and would be happy to test it.