Citrix Hypervisor Open Source Licensing and Attribution

The Citrix Hypervisor product is a compilation of software packages. Each package is governed by its own license. The complete licensing terms applicable to a given package can be found in the source RPM of the package, unless the package is covered by a proprietary license which does not permit source redistribution, in which case no source RPM is made available.

The Citrix Hypervisor distribution contains content from CentOS Linux and CentOS Stream. Where the CentOS Project holds any copyright in the packages making up the CentOS Linux or CentOS Stream distributions, that copyright is licensed under the GPLv2 license unless otherwise noted. For more information, see https://www.centos.org/legal/licensing-policy/.

Extracting attribution and licensing information on an installed Citrix Hypervisor server

This article provides a method to extract the licensing information from all RPM packages included in your Citrix Hypervisor installation.

Get overview information

To list all RPMs and their licenses:

  1. Connect to your Citrix Hypervisor server console by SSH or through XenCenter.
  2. At the console command line, run the following command:

    rpm -qa --qf '%{name}-%{version}: %{license}\n'
    

    This command lists all installed components and the licenses they are distributed under. The output is of the following form:

    readline-6.2: GPLv3+
    gnupg2-2.0.22: GPLv3+
    libdb-5.3.21: BSD and LGPLv2 and Sleepycat
    rpm-python-4.11.3: GPLv2+
    sqlite-3.7.17: Public Domain
    qrencode-libs-3.4.1: LGPLv2+
    libselinux-2.5: Public Domain
    ustr-1.0.4: MIT or LGPLv2+ or BSD
    gdbm-1.10: GPLv3+
    procps-ng-3.3.10: GPL+ and GPLv2 and GPLv2+ and GPLv3+ and LGPLv2+
    p11-kit-trust-0.23.5: BSD
    device-mapper-libs-1.02.149: LGPLv2
    xenserver-release-8.2.50: GPLv2
    elfutils-libs-0.170: GPLv2+ or LGPLv3+
    xz-libs-5.2.2: LGPLv2+
    dbus-1.10.24: (GPLv2+ or AFL) and GPLv2+
    elfutils-libelf-0.170: GPLv2+ or LGPLv3+
    systemd-sysv-219: LGPLv2+
    jemalloc-3.6.0: BSD
    

Get detailed information

To obtain a more complete list of information about each installed component:

  1. Connect to your Citrix Hypervisor server console by SSH or through XenCenter.
  2. At the console command line, run the following command:

    rpm -qai | sed '/^Name /i\\n'
    

    The output is of the following form:

    Name        : host-upgrade-plugin
    Version     : 2.2.0
    Release     : 1.xs8
    Architecture: noarch
    Install Date: Thu 03 Jun 2021 08:36:59 AM UTC
    Group       : Unspecified
    Size        : 97131
    License     : GPL
    Signature   : (none)
    Source RPM  : host-upgrade-plugin-2.2.0-1.xs8.src.rpm
    Build Date  : Fri 09 Oct 2020 02:58:51 PM UTC
    Build Host  : 2da9e81a970c4f02af07e64918d7f5f3
    Relocations : (not relocatable)
    Packager    : Koji
    Vendor      : Citrix Systems
    Summary     : Host upgrade plugin
    Description :
    Host upgrade plugin.
    
    Name        : m4
    Version     : 1.4.16
    Release     : 10.el7
    Architecture: x86_64
    Install Date: Thu 03 Jun 2021 08:36:22 AM UTC
    Group       : Applications/Text
    Size        : 525707
    License     : GPLv3+
    Signature   : RSA/SHA256, Wed 25 Nov 2015 03:16:04 PM UTC, Key ID 24c6a8a7f4a80eb5
    Source RPM  : m4-1.4.16-10.el7.src.rpm
    Build Date  : Fri 20 Nov 2015 07:28:07 AM UTC
    Build Host  : worker1.bsys.centos.org
    Relocations : (not relocatable)
    Packager    : CentOS BuildSystem <http://bugs.centos.org>
    Vendor      : CentOS
    URL         : http://www.gnu.org/software/m4/
    Summary     : The GNU macro processor
    Description :
    A GNU implementation of the traditional UNIX macro processor.  M4 is
    useful for writing text files which can be logically parsed, and is used
    by many programs as part of their build process.  M4 has built-in
    functions for including files, running shell commands, doing arithmetic,
    etc.  The autoconf program needs m4 for generating configure scripts, but
    not for running configure scripts.
    

Get more information

In most cases, further information about each component and full license text is installed in either /usr/share/doc/ or /usr/share/licenses.

For example, you can find more information about the component jemalloc-3.6.0 by running the following command:

ls -l /usr/share/doc/jemalloc-3.6.0/

total 120
-rw-r--r--. 1 root root   1703 Mar 31  2014 COPYING
-rw-r--r--. 1 root root 109739 Mar 31  2014 jemalloc.html
-rw-r--r--. 1 root root   1084 Mar 31  2014 README
-rw-r--r--. 1 root root     50 Mar 31  2014 VERSION

However, for some components distributed by CentOS, the license text is not installed in the Citrix Hypervisor product. To view the license text for these components, you can look inside the source RPMs. Citrix makes the source RPMs for the Citrix Hypervisor server available in the following locations

  • For the initial product release, source files are provided on the product download page.
  • For any updates or hotfixes to the initial release, updated source files are provided in the corresponding article on the Citrix Support site.

The name of the source file for a specific component is given by the value of “Source RPM” in the detailed information output. For example:

Source RPM : m4-1.4.16-10.el7.src.rpm

Multiple licenses

Some components in the Citrix Hypervisor product contain multiple licenses. For example, procps-ng-3.3.10contains the following parts:

  • some parts which are licensed with the original GPL (or any later version)
  • some parts which are licensed with the GPL version 2 (only)
  • some parts which are licensed with the GPL version 2 (or any later version)
  • some parts which are licensed with the GPL version 3 (or any later version)
  • some parts which are licensed with the LGPL version 2 (or any later version)

In this case, inspect the documentation in /usr/share/doc/procps-ng-3.3.10 for further information or, if necessary, the corresponding source RPM.

Other Citrix Hypervisor components

Supplemental Packs

Supplemental packs are installed into the Citrix Hypervisor server. If you have supplemental packs installed in your server, their RPM information is included when you complete the steps in the previous section of this article.

The source files for supplemental packs are also provided on the product download page.

XenCenter

To view information about third-party components included in XenCenter, complete the following steps:

  1. In XenCenter, go to Help > About XenCenter.
  2. Click View Legal Notices.

The XenCenter source files are also provided on the product download page.

Citrix VM Tools for Windows

The Citrix VM Tools for Windows comprises the following components:

  • The Management Agent, which is covered by a proprietary license.
  • The Windows I/O drivers, which are covered by the BSD2 license. Copyright Citrix Systems, Inc.

    Licensing information is included in the INF file for each driver. When the drivers are installed on your Windows system by Windows Update or the management agent installer, the INF files are stored as C:\Windows\INF\OEM*.inf. The management agent installer also places the INF files in C:\Program Files\Citrix\XenTools\Drivers***.inf.

Source is not provided for Citrix VM Tools for Windows.

Citrix VM Tools for Linux

The Citrix VM Tools for Linux are covered by the BSD2 license. Copyright Citrix Systems, Inc.

The archive file provided on the product download page contains the license file and source files for the tools.

Virtual Appliances

The following virtual appliances are provided as optional components for your Citrix Hypervisor environment:

  • Demo Linux Virtual Appliance
  • Citrix Hypervisor Conversion Manager Virtual Appliance
  • Workload Balancing Virtual Appliance

These virtual appliances are also CentOS based. You can use the same commands as those given for the Citrix Hypervisor server to get overview and detailed information about the open source packages included in the virtual appliances.

In the console of the virtual appliance, run the following commands:

  • For overview information: rpm -qa --qf '%{name}-%{version}: %{license}\n'
  • For detailed information: rpm -qai | sed '/^Name /i\\n'

In addition, the Citrix Hypervisor Conversion Manager virtual appliance and Workload Balancing virtual appliance dynamically use some third-party components.

  • For Citrix Hypervisor Conversion Manager virtual appliance, the license files for these components are located at the following path: /opt/vpx/wlb.
  • For Workload Balancing virtual appliance, the license files for these components are located at the following path: /opt/vpxxcm/conversion.

Source files for the virtual appliances are provided on the Citrix Hypervisor product downloads page.

Citrix Hypervisor Open Source Licensing and Attribution