On Mon, Sep 26, 2011 at 03:59:05PM +0400, Dmitry Mishin wrote: > Parallels Server Bare Metal is a virtualization solution which allows to run > both Containers (OpenVZ-like) and virtual machines (like any other hardware > hypervisor). > > This patch implements initial driver stub with almost no functionality except an > ability to open and close driver. At the same time it contains initialization of > Parallels API and clearly demonstrates supposed approach to future driver > implementation. In particular, I suppose to use parallels-virtualization-sdk > library provisioned with the PSBM distribution (and separately also) for PSBM's > virtual servers management. > > Signed-off-by: Dmitry Mishin <dim@xxxxxxxxxxxxx> [...] > diff --git a/src/psbm/psbm_api.c b/src/psbm/psbm_api.c > new file mode 100644 > index 0000000..b5a89f1 > --- /dev/null > +++ b/src/psbm/psbm_api.c > @@ -0,0 +1,117 @@ > +/* > + * psbm_api.c: core driver methods for managing PSBM virtual servers > + * > + * Copyright (C) 2011 Parallels, Inc. > + * > + * This library is free software; you can redistribute it and/or > + * modify it under the terms of the GNU Lesser General Public > + * License as published by the Free Software Foundation; either > + * version 2.1 of the License, or (at your option) any later version. > + * > + * This library is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + * Lesser General Public License for more details. > + * > + * You should have received a copy of the GNU Lesser General Public > + * License along with this library; if not, write to the Free Software > + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA > + * > + * Authors: > + * Dmitry Mishin <dim@xxxxxxxxxxxxx> > + * > + */ Copyrights and licencing terms looks okay :) > +int psbmApiInit(struct psbm_driver *driver) > +{ > + const char *libname = "libprl_sdk.so"; > + void *handle = NULL; > + PRL_RESULT res; That I dislike, sorry this must not be dlopen'ed in at runtime, but checked in at configure time and properly linked in. Also means that proper dependancies and packaging have to be in place. > + handle = dlopen(libname, RTLD_LAZY); > + if (!handle) { > + psbmError(VIR_ERR_INTERNAL_ERROR, > + _("Failed to load SDK library %s %s"), libname, dlerror()); > + return VIR_ERR_INTERNAL_ERROR; > + } So what is that SDK library, how is it distributed and what is the licencing for it ? As much as I like adding a driver, I would like to make sure the deployement is clean and there is no licencing issues. Any pointers ? All I found was http://www.parallels.com/ptn/download/sdk/ and it's quite silent on code availability and Licence for the libraries. thanks in advance ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@xxxxxxxxxxxx | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/ -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list