After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 312953 - Bonjour support
Bonjour support
Product: ekiga
Classification: Applications
Component: general
Other Linux
: Normal normal
: ---
Assigned To: Ekiga maintainers
Ekiga maintainers
Depends on:
Reported: 2005-08-09 00:03 UTC by Hans Petter Jansson
Modified: 2006-08-31 19:54 UTC
See Also:
GNOME target: ---
GNOME version: ---

Adds Bonjour support. (32.83 KB, patch)
2005-08-09 00:04 UTC, Hans Petter Jansson
none Details | Review
Updated patch for bonjour support (22.84 KB, patch)
2005-10-01 05:37 UTC, Snark
none Details | Review

Description Hans Petter Jansson 2005-08-09 00:03:33 UTC
I've written a patch to support Apple's zeroconf implementation, Bonjour, in
addition to Howl. It adds the following configure options:


Howl remains the default, and if both are present on the system, you have to
--disable-howl and --enable-bonjour to use the Bonjour implementation. Patch is
against HEAD.
Comment 1 Hans Petter Jansson 2005-08-09 00:04:39 UTC
Created attachment 50424 [details] [review]
Adds Bonjour support.
Comment 2 Damien Sandras 2005-08-09 16:53:47 UTC
thanks for the great patch!

however, I have a small request. 

Do you think it is possible for you to separate HOWL and BONJOUR support in 2
separate files? (I would create a gm-remote-contacts-bonjour.cpp file)

The reason for this is to make the code easier to read. Moreover, another person
is working on AVAHI-based zeroconf support, so that would be better.

Comment 3 Hans Petter Jansson 2005-08-09 18:33:19 UTC
I could separate the code (gm_contacts-zeroconf-bonjour.cpp and .h,
zeroconf_publisher-bonjour.cpp and .h), however there would be a couple of
hundred lines of duplicated code, which would have to be changed in both places
if you want to change it later. It's your call, though.

The reason I want Bonjour support is that being Apple's, it may get more QA and
security scrutiny than Howl, and KDE already uses it. This makes it easier to
maintain a distribution where both GNOME and KDE are installed.

I've submitted a similar patch for gnome-vfs. See bug 311882.
Comment 4 Damien Sandras 2005-08-09 21:03:57 UTC
OK, nice justification. I'll examine your patch and commit it in the OPAL branch
of CVS later this month.

Comment 5 Snark 2005-10-01 05:37:49 UTC
Created attachment 52899 [details] [review]
Updated patch for bonjour support

This updated patch has been provided by Sébastien Estienne the 20050929, so it
could apply to a more recent cvs (opal branch).

I made the following remarks about it ; which should probably be answered by
the original author :
* lib/contacts/gm_contacts-zeroconf.cpp, it removes #undef to add # undef
instead... it isn't part of the feature-adding patch ;
* lib/contacts/gm_contacts-zeroconf.cpp, in GMZeroconfBrowser::Start, in case
of bonjour there is an unconditional Browse+Resume, otherwise it is just
Resume, and then only if discovery... is it normal ?
* lib/contacts/gm_contacts-zeroconf.h: some variables are moving out of the
private section of the class ; it doesn't look honest ;
* src/zeroconf_publisher.cpp, in GMZeroconfPublisher::GMZeroconfPublisher, the
default definitions of name and port moved upward, which is logical to make
them common to both sections of code (#if bonjour and #else) ; however I wonder
if we don't lose more readability than we win by making them common... perhaps
that will settle when howl will be kicked out ;
* src/zeroconf_publisher.cpp, I find the "check_okay" a little shocking...
* src/zeroconf_publisher.cpp, in GMZeroconfPublisher::Start, if HAS_BONJOUR,
then unconditional Resume ; otherwise, Resume only if discovery... is it normal

I have to add that we discussed about the future of zeroconf in gnomemeeting
among some of us (Damien, Sébastien and myself), and decided we would have
bonjour+avahi ; so the plan is :
1) push avahi in (done) ;
2) push bonjour in (pending) ;
3) push howl out ;
4) clean the zeroconf code so it doesn't shows too much about the surgery.

Snark on #gnomemeeting
Comment 6 Hans Petter Jansson 2006-01-31 21:11:31 UTC
It's been a while since I wrote the original Bonjour patch, but if the new one is tested and works, I don't see why it shouldn't go in.

Long term, it might be good to keep the zeroconf backends in separate files.

Note that I tested my original patch, and that worked. I don't have the time right now to test the new one - I wiped the dev environment I used back then. Sorry.
Comment 7 Snark 2006-08-31 19:06:53 UTC
Sigh... I just hate when someone contributes something and we don't make a serious use of the help :-(

Do we still care about bonjour support or has the avahi support superseded this ?

I don't think I can even test a patch about this :-(
Comment 8 Hans Petter Jansson 2006-08-31 19:50:28 UTC
Probably best to just leave it out now, since Avahi is more mature and the platform seems to be going that way.
Comment 9 Snark 2006-08-31 19:54:01 UTC
Ok. Still sorry to lose your contribution though. :-(