[libvirt] [RFC] net-dhcp-leases: Query: Reg: Leases API Script

Eric Blake eblake at redhat.com
Tue Oct 22 15:40:34 UTC 2013


On 10/22/2013 04:15 PM, Daniel P. Berrange wrote:
> On Tue, Oct 22, 2013 at 04:15:37PM +0530, Nehal J Wani wrote:
>> Q1. The --dhcp-script option will require libvirt to provide a script
>> or executable file to be run. Now as the man page says, this file is
>> executed "Whenever a new DHCP  ease is created, or an old one
>> destroyed". Life was easy with the script, as it used the command sed
>> to remove the destroyed lease. eblake had suggested me to use a C
>> program instead. So I wanted to finalize whether to go with C or
>> continue with shell script.
> 
> Libvirt aims to avoid shell code whereever possible, since it is really
> a very bad language from terms of reliability and security. eg quoting
> rules are easy to get wrong, error handling is awful, portability is
> non-trivial.

For examples of writing a helper C program, see how src/util/iohelper.c
is compiled into libvirt_iohelper.

> 
>> Q2. The above executable file will be writing the custom formatted
>> lease parameters to a file "dnsmasq-ip-mac.status" (suggestion open
>> for name). This newly created/updated file will be parsed by the API.
>> We need to decide the format for the file. Do we continue with space
>> separated parameters as before?
> 
> Ideally do not invent any new format - use a format that we already
> have a parser for - eg the src/util/virconf.h or src/util/virkeyfile.h
> APIs for loading configs.

or XML, if the config file format is insufficient.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 621 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20131022/79f40a84/attachment-0001.sig>


More information about the libvir-list mailing list