RFC: Integration of Cagibi, a SSDP cache/proxy daemon (proposed part of UPnP support)

Friedrich W. H. Kossebau kossebau at kde.org
Thu Apr 8 17:36:45 BST 2010


(followups please only on kde-core-devel)

you may know that there has been some activity to open the world of UPnP to 
KDEs software. Stuff in the UPnP world, that may be services like MediaServers 
for most of you, serving collections of media files (see [MS] for a list).

Recently support to both Solid and the network:/ kio-slave has been added in 
trunk to list also list UPnP devices/services (see [US]). This was done by 
code connecting to Coherence [CP] via D-Bus, thus introducing an optional 
runtime dependency. Just, Coherence has a big footprint (10,7 MiB unshared 
memory shown in System Activity), which is for sure too much for the simple 
thing it is currently used for by both the Solid backend and the network:/ 
kio-slave, namely a SSDP (Simple Service Discovery Protocol) cache/proxy 
Compare this to avahi-daemon with just 176 kiB unshared memory, doing 
something similar.

So I hacked up a little Qt-only daemon named Cagibi [CA] for that purpose, to 
be interfaced with D-Bus. Not perfect with 424 kiB unshared memory, but a 
start. It's now up to a first release 0.1 and works nicely for the local ports 
of the Solid backend and the network:/ kio-slave I have done.

While it still is under discussion if Cagibi is a proper part of the KDE 
Platform's wrapping of the UPnP world, I think it is and would like to get 
things done and improved. The GSoC candidate to work on an UPnP MediaServer 
kio-slave is interested, too.
So I would like to move Cagibi to kdesupport, as it might be interesting also 
to software built on other frameworks (like Avahi is to all). And also do 
releases from there, so I could commit the ports of the Solid backend and the 
network:/ kio-slave.
Would I have to pass kdereview? I guess no. Who is in charge of kdesupport? Or 
would I just move the code over from playground?

Comments, flames, chocolate?

[MS] http://www.upnp-database.info/listDevices.jsp?filterType=servers
[CP] http://coherence-project.org/
[CA] http://websvn.kde.org/trunk/playground/network/cagibi/

KDE Okteta - a simple hex editor - http://utils.kde.org/projects/okteta

More information about the kde-core-devel mailing list