On 08/13/2013 04:48 PM, Eric Blake wrote:

>>    virNetworkGetDHCPLeaseForMAC(virNetworkPtr network,
>>                                 unsigned char *macaddr,
> 
> I personally think the public API should stick to stringized
> representations.  Yes, it's less friendly to machine code, but
> internally, our src/util/virmacaddr.h helps transfer between stringized
> and binary.  Furthermore, we already have other API that operates on
> stringized versions, but none that operates on raw (see
> virDomainSetInterfaceParameters).  Knowing what representation we are
> targetting impacts how this API will look.

For comparison, look at the API for virDomainLookupByUUID (takes a raw
uuid - fixed number of bytes, unsigned char* argument) vs.
virDomainLookupByUUIDString (takes a stringized uuid, char* argument).
If efficiency were a concern, then I'd propose that we have two API:

virNetworkGetDHCPLeaseForMAC(virNetworkPtr network,
                             unsigned char *macaddr, ...)

virNetworkGetDHCPLeaseForMACString(virNetworkPtr network,
                                   char *macaddr, ...)

But I don't think efficiency is a concern, and rather than add a new API
that has to have dual forms, I'd rather stick with the shorter name but
using the stringized form of MAC.

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

Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to