bugGNUstep - Bugs: bug #30427, Please port to native Avahi

Group
 
 

bug #30427: Please port to native Avahi

Submitter:  Yavor Doganov <yavor>
Submitted:  Tue 13 Jul 2010 07:42:37 AM UTC
   
 
Category:  Base/Foundation Severity:  3 - Normal
Item Group:  Change Request Status:  Fixed
Privacy:  Public Assigned to:  None
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Sat 05 Mar 2011 03:16:14 PM UTC, comment #5: 

No update after several months ... assumed fixed.

Richard Frith-Macdonald <CaS>
Group Member
Mon 26 Jul 2010 08:09:58 PM UTC, comment #4: 

Changed state to "in test".

Fred Kiefer <FredKiefer>
Group Member
Tue 13 Jul 2010 11:05:34 AM UTC, comment #3: 

I just attempted to integrate Niels' patch on trunk.
I have no idea if it works though as I don't currently have a system with avahi installed (and I don't have any test code).

Richard Frith-Macdonald <CaS>
Group Member
Tue 13 Jul 2010 10:25:42 AM UTC, comment #2: 

Aha, I remember now (it is amazing how quickly I tend to forget these days):
http://thread.gmane.org/gmane.comp.lib.gnustep.devel/8770

Given the comments were positive, maybe it's worth including it right now in trunk to allow some testing before the next major stable release?

About the future plans for DBusKit, I guess you're right that there's no point in using the C wrapper (avahi-client) on the long term.  Probably DBusKit can be integrated as Additions, once it is complete?  Otherwise, it would be very difficult to avoid the circular dependency...

Yavor Doganov <yavor>
Tue 13 Jul 2010 09:17:03 AM UTC, comment #1: 

Hello Yavor,

a while back, I implemented native Avahi support for NSNetServices, mostly because of the reasons you describe (i.e. the compatibility layer being everything but well maintained). You can take a look at the patch at [0], though I'm not sure whether it still applies correctly. But while it should work, it's not the most sensible thing to do. Ideally, we would want to talk to Avahi via its D-Bus interface (and avoid all the runloop integration stuff).

Allowing this is one of the motivations for my present work on D-Bus integration for GNUstep as part of GSoC (see libs/dbuskit in svn), though I'm not quite sure how to integrate it because at the moment, that code is designed as a separate framework depending on gnustep-base. I'll keep you updated on the further developments.

Cheers,

Niels

[0] http://www.halbordnung.de/~niels.grewe/gnustep/NSNetServices+avahi.patch

Niels Grewe <thebeing>
Group Member
Tue 13 Jul 2010 07:42:37 AM UTC, original submission:  

Debian plans to drop the Apple Bonjour compatibility library ( libavahi-compat-libdnssd) at some point, since only 3 packages depend on it -- gnustep-base being one of them.  Furthermore, it is poorly supported upstream; as the Avahi documentation says:

"Please note that these compatibility layers are incomplete and generally a waste of resources. We strongly encourage everyone to use our native APIs for newly written programs and to port older programs to avahi-client!"

Is there a specific reason why NSNetServices uses dns_sd?  I may be able to work on this, but would like to know in advance more details.  Is native avahi support something desirable as a complete replacement of dns_sd, or it must be conditionalized, keeping the old code?  Or is it a no-op?

Yavor Doganov <yavor>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by FredKiefer (Posted a comment)
  • -email is unavailable- added by CaS (Posted a comment)
  • -email is unavailable- added by thebeing (Posted a comment)
  • -email is unavailable- added by yavor (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2011-03-05 CaS StatusReady For Test Fixed
        Open/ClosedIn Test Closed
    2010-07-26 FredKiefer StatusNone Ready For Test
        Open/ClosedOpen In Test

    Back to the top

    Powered by Savane 3.14-8aba.
    Corresponding source code