[libvirt] libvirt library binary name for linux

Eric Blake eblake at redhat.com
Tue Oct 19 14:28:09 UTC 2010


On 10/19/2010 08:23 AM, Matthias Bolte wrote:
>> strdup() is nothing more than malloc() followed by strcpy();

> See [1] for more details. When I understood Arnaud correctly then
> passing the result of Marshal.StringToHGlobalAuto() directly as
> cred.result didn't work, but passing the result from strdup() works.

Thanks for the reminder.  I'm not very familiar with C# myself, but I do 
agree with the analysis that Windows memory management is not always 
straight-forward, since there is more than just the malloc() pool, and 
therefore strdup() is not necessarily a trivial operation since it 
determines which memory pool is in use.  Sorry if my previous message 
came across harsher than intended (now that I've gone back and re-read it).

> Marshal.StringToHGlobalAuto() + strdup() just works for now but is
> ugly. Arnaud said  that he is working on a better approach for this
> (custom marshaling), that doesn't require strdup().

Good luck with it, and thanks again to Arnaud for taking on the task of 
a new language binding.

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org




More information about the libvir-list mailing list