[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

netconf control socket protocol: rfc822, xml-rpc, or dbus

Hi there,

As you may know, netconf[0] sports a control socket with which you
can control a running instance of the daemon. The idea is that tools
like /sbin/ifup then are nothing more than clients of this socket,
issuing the right commands to the daemon process.

0. http://netconf.alioth.debian.org/

Currently, the netconf control socket is implemented using,
a pseudo-rfc822-based protocol (see [1] for some information).

1. http://git.debian.org/?p=netconf/netconf.git;a=blob;f=doc/control_socket.txt

Many people have suggested using dbus for this, but I always refused
because I did not want the dependency. I always wanted to make dbus
optional, i.e. provide netconf-dbus which, when installed, links
netconf in with the dbus infrastructure. However, that would be
independendent of the control socket, for which I still need
a protocol.

While working on Ikiwiki, it dawned on me that I really ought to be
using XML RPC for this [2]. Why? Because it's already
there to do exactly the kind of thing I am doing, and standardised.
Furthermore, dbus *is* XML RPC.

2. http://lists.alioth.debian.org/pipermail/netconf-devel/2007-October/000197.html

Python (netconf is currently prototyped in Python) makes XML RPC
trivial and does not introduce any new dependencies, except for
python-dbus, if I want to use dbus instead of simple XML RPC.

However, I do want (someone) to port netconf to C or C++ once I am
comfortable with the design. In order to parse XML with C/C++,
netconf would need to depend on e.g. libxmlrpc++0 or even
libdbus-1-3 - static linking is out of the question for I'd prefer
not to die a long and painful death caused by the security team.

I want netconf to eventually replace ifupdown and thus become part
of Debian's base system. Thus, I need to strive for minimal
dependencies, and thus the XML RPC library needed by a C/C++
incarnation of netconf is a thorn in my flesh.

Do you think that a libdbus-1-3 or libxmlrpc++0 dependency would be
a showstopper (given how dbus is becoming a standard)?

Or do you hold the opinion that there should be no question and dbus
is the way forward?

 .''`.   martin f. krafft <madduck@debian.org>
: :'  :  proud Debian developer, author, administrator, and user
`. `'`   http://people.debian.org/~madduck - http://debiansystem.info
  `-  Debian - when you have better things to do than fixing systems
micro$oft windoze is like an air-conditioner:
it breaks down if you open a window.

Attachment: digital_signature_gpg.asc
Description: Digital signature (see http://martin-krafft.net/gpg/)

Reply to: