Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jul 2017 15:21:31 +0000 (UTC)
From:      Bernhard Froehlich <decke@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r446746 - in head/www/phpvirtualbox: . files
Message-ID:  <201707271521.v6RFLVO5038177@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: decke
Date: Thu Jul 27 15:21:31 2017
New Revision: 446746
URL: https://svnweb.freebsd.org/changeset/ports/446746

Log:
  - Update to an unofficial 5.1-1 which supports VirtualBox 5.1
  
  Sadly upstream is very silent and has not released a new version
  which supports VirtualBox 5.1, supports PHP 7.1 or fixes bugs. In
  the meantime the community has created patches which are
  collected in the github projects bugtracker and pull requests.
  This unofficial version cherry picks the useful stuff of it.
  
  Highlights of unofficial phpvirtualbox 5.1-1:
  
  * based on git commit 65ebced (latest commit from May 19, 2016)
  
  * Patch to support Virtualbox 5.1
  https://github.com/phpvirtualbox/phpvirtualbox/pull/22
  
  * Fix argument count mismatches revealed by PHP 7.1
  https://github.com/phpvirtualbox/phpvirtualbox/pull/24
  
  * Make decryption of images/VMs work by not providing a password ID
  https://github.com/phpvirtualbox/phpvirtualbox/pull/55
  
  * Tried to make clearOnSuspend work
  https://github.com/phpvirtualbox/phpvirtualbox/pull/57
  
  PR:		ports/220171
  Submitted By:	rozhuk.im
  With hat:	vbox@ (kind of)

Added:
  head/www/phpvirtualbox/files/
  head/www/phpvirtualbox/files/patch-endpoints_lib_config.php   (contents, props changed)
  head/www/phpvirtualbox/files/patch-endpoints_lib_vboxServiceWrappers.php   (contents, props changed)
  head/www/phpvirtualbox/files/patch-endpoints_lib_vboxconnector.php   (contents, props changed)
  head/www/phpvirtualbox/files/patch-endpoints_lib_vboxweb-5.1.wsdl   (contents, props changed)
  head/www/phpvirtualbox/files/patch-endpoints_lib_vboxwebService-5.1.wsdl   (contents, props changed)
  head/www/phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html   (contents, props changed)
Modified:
  head/www/phpvirtualbox/Makefile
  head/www/phpvirtualbox/distinfo
  head/www/phpvirtualbox/pkg-plist

Modified: head/www/phpvirtualbox/Makefile
==============================================================================
--- head/www/phpvirtualbox/Makefile	Thu Jul 27 15:11:50 2017	(r446745)
+++ head/www/phpvirtualbox/Makefile	Thu Jul 27 15:21:31 2017	(r446746)
@@ -2,9 +2,8 @@
 # $FreeBSD$
 
 PORTNAME=	phpvirtualbox
-DISTVERSION=	5.0-5
+DISTVERSION=	5.1-1
 CATEGORIES=	www
-MASTER_SITES=	SF/${PORTNAME}
 
 MAINTAINER=	vbox@FreeBSD.org
 COMMENT=	AJAX Web Interface for VirtualBox
@@ -13,11 +12,18 @@ LICENSE=	GPLv3
 
 NO_ARCH=	yes
 NO_BUILD=	yes
+USES=		dos2unix php
 USE_PHP=	json session simplexml soap xml
-USES=		dos2unix php zip
 
+USE_GITHUB=	yes
+GH_TAGNAME=	65ebced
+
 DOS2UNIX_REGEX=	.*\.(php|txt|js|css|html)
 ETCDIR=		${WWWDIR}
+
+post-patch:
+	@${MV} ${WRKSRC}/endpoints/lib/vboxweb-5.0.wsdl ${WRKSRC}/endpoints/lib/vboxweb-5.1.wsdl
+	@${MV} ${WRKSRC}/endpoints/lib/vboxwebService-5.0.wsdl ${WRKSRC}/endpoints/lib/vboxwebService-5.1.wsdl
 
 do-install:
 	${MKDIR} ${STAGEDIR}${WWWDIR}

Modified: head/www/phpvirtualbox/distinfo
==============================================================================
--- head/www/phpvirtualbox/distinfo	Thu Jul 27 15:11:50 2017	(r446745)
+++ head/www/phpvirtualbox/distinfo	Thu Jul 27 15:21:31 2017	(r446746)
@@ -1,2 +1,3 @@
-SHA256 (phpvirtualbox-5.0-5.zip) = c80c423fda30e5795872c9b9adc68429deee5726e468729472a573c324303c05
-SIZE (phpvirtualbox-5.0-5.zip) = 4093766
+TIMESTAMP = 1501174865
+SHA256 (phpvirtualbox-phpvirtualbox-5.1-1-65ebced_GH0.tar.gz) = d7b36c84aa2cf8be650f6da74860a4af4abf17bd878590e31fd948f45ed51753
+SIZE (phpvirtualbox-phpvirtualbox-5.1-1-65ebced_GH0.tar.gz) = 3716806

Added: head/www/phpvirtualbox/files/patch-endpoints_lib_config.php
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/phpvirtualbox/files/patch-endpoints_lib_config.php	Thu Jul 27 15:21:31 2017	(r446746)
@@ -0,0 +1,11 @@
+--- endpoints/lib/config.php.orig	2017-07-27 16:54:58 UTC
++++ endpoints/lib/config.php
+@@ -14,7 +14,7 @@
+ /*
+  * This version of phpVirtualBox
+  */
+-define('PHPVBOX_VER', '5.0-6');
++define('PHPVBOX_VER', '5.1-1');
+ 
+ class phpVBoxConfigClass {
+ 

Added: head/www/phpvirtualbox/files/patch-endpoints_lib_vboxServiceWrappers.php
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/phpvirtualbox/files/patch-endpoints_lib_vboxServiceWrappers.php	Thu Jul 27 15:21:31 2017	(r446746)
@@ -0,0 +1,13 @@
+--- endpoints/lib/vboxServiceWrappers.php.orig	2017-07-27 16:54:58 UTC
++++ endpoints/lib/vboxServiceWrappers.php
+@@ -7889,6 +7889,10 @@ class IMedium extends VBox_ManagedObject
+ 
+     public function changeEncryption($arg_currentPassword, $arg_cipher, $arg_newPassword, $arg_newPasswordId)
+     {
++        // No password ID in case of decryption and de-/encryption are both handled here.
++        $isDecryption      = ($arg_cipher == '') && ($arg_newPassword == '');
++        $arg_newPasswordId = $isDecryption ? '' : $arg_newPasswordId;
++
+         $request = new stdClass();
+         $request->_this = $this->handle;
+         $request->currentPassword = $arg_currentPassword;

Added: head/www/phpvirtualbox/files/patch-endpoints_lib_vboxconnector.php
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/phpvirtualbox/files/patch-endpoints_lib_vboxconnector.php	Thu Jul 27 15:21:31 2017	(r446746)
@@ -0,0 +1,209 @@
+--- endpoints/lib/vboxconnector.php.orig	2017-07-27 16:54:58 UTC
++++ endpoints/lib/vboxconnector.php
+@@ -1126,7 +1126,7 @@ class vboxconnector {
+ 			// Try to register medium.
+ 			foreach($checks as $iso) {
+ 				try {
+-					$gem = $this->vbox->openMedium($iso,'DVD','ReadOnly');
++					$gem = $this->vbox->openMedium($iso,'DVD','ReadOnly',null);
+ 					break;
+ 				} catch (Exception $e) {
+ 					// Ignore
+@@ -1358,7 +1358,7 @@ class vboxconnector {
+ 			$src = $nsrc->machine;
+ 		}
+ 		/* @var $m IMachine */
+-		$m = $this->vbox->createMachine($this->vbox->composeMachineFilename($args['name'],null,null),$args['name'],null,null,null,false);
++		$m = $this->vbox->createMachine($this->vbox->composeMachineFilename($args['name'],null,null,null),$args['name'],null,null,null,false);
+ 		$sfpath = $m->settingsFilePath;
+ 
+ 		/* @var $cm CloneMode */
+@@ -1522,7 +1522,7 @@ class vboxconnector {
+ 									$md->releaseRemote();
+ 								}
+ 							} else {
+-								$med = $this->vbox->openMedium($ma['medium']['location'],$ma['type']);
++								$med = $this->vbox->openMedium($ma['medium']['location'],$ma['type'],null,null);
+ 							}
+ 						} else {
+ 							$med = null;
+@@ -1591,7 +1591,7 @@ class vboxconnector {
+ 			if($state != 'Saved') {
+ 
+ 				// Network properties
+-				$eprops = $n->getProperties();
++				$eprops = $n->getProperties(null);
+ 				$eprops = array_combine($eprops[1],$eprops[0]);
+ 				$iprops = array_map(create_function('$a','$b=explode("=",$a); return array($b[0]=>$b[1]);'),preg_split('/[\r|\n]+/',$args['networkAdapters'][$i]['properties']));
+ 				$inprops = array();
+@@ -2028,7 +2028,7 @@ class vboxconnector {
+ 						}
+ 					} else {
+ 						/* @var $med IMedium */
+-						$med = $this->vbox->openMedium($ma['medium']['location'],$ma['type']);
++						$med = $this->vbox->openMedium($ma['medium']['location'],$ma['type'],null,null);
+ 					}
+ 				} else {
+ 					$med = null;
+@@ -2111,7 +2111,7 @@ class vboxconnector {
+ 			*/
+ 
+ 			// Network properties
+-			$eprops = $n->getProperties();
++			$eprops = $n->getProperties(null);
+ 			$eprops = array_combine($eprops[1],$eprops[0]);
+ 			$iprops = array_map(create_function('$a','$b=explode("=",$a); return array($b[0]=>$b[1]);'),preg_split('/[\r|\n]+/',$args['networkAdapters'][$i]['properties']));
+ 			$inprops = array();
+@@ -2519,7 +2519,7 @@ class vboxconnector {
+ 	 */
+ 	public function remote_vboxGetEnumerationMap($args) {
+ 
+-		$c = new $args['class'];
++		$c = new $args['class'](null,null);
+ 		return (@isset($args['ValueMap']) ? $c->ValueMap : $c->NameMap);
+ 	}
+ 
+@@ -3697,7 +3697,7 @@ class vboxconnector {
+ 			$hds = array();
+ 			$delete = $machine->unregister('DetachAllReturnHardDisksOnly');
+ 			foreach($delete as $hd) {
+-				$hds[] = $this->vbox->openMedium($hd->location,'HardDisk')->handle;
++				$hds[] = $this->vbox->openMedium($hd->location,'HardDisk',null,null)->handle;
+ 			}
+ 
+ 			/* @var $progress IProgress */
+@@ -3772,7 +3772,7 @@ class vboxconnector {
+ 			$args['name'] = $_SESSION['user'] . '_' . $args['name'];
+ 
+ 		/* Check if file exists */
+-		$filename = $this->vbox->composeMachineFilename($args['name'],($this->settings->phpVboxGroups ? '' : $args['group']),$this->vbox->systemProperties->defaultMachineFolder);
++		$filename = $this->vbox->composeMachineFilename($args['name'],($this->settings->phpVboxGroups ? '' : $args['group']),$this->vbox->systemProperties->defaultMachineFolder,null);
+ 
+ 		if($this->remote_fileExists(array('file'=>$filename))) {
+ 			return array('exists' => $filename);
+@@ -3874,7 +3874,7 @@ class vboxconnector {
+ 
+ 				$sc->releaseRemote();
+ 
+-				$m = $this->vbox->openMedium($args['disk'],'HardDisk');
++				$m = $this->vbox->openMedium($args['disk'],'HardDisk',null,null);
+ 
+ 				$this->session->machine->attachDevice(trans($HDbusType,'UIMachineSettingsStorage'),0,0,'HardDisk',$m->handle);
+ 
+@@ -3941,7 +3941,7 @@ class vboxconnector {
+ 			if($at == 'NAT') $nd = $n->NATEngine; /* @var $nd INATEngine */
+ 			else $nd = null;
+ 
+-			$props = $n->getProperties();
++			$props = $n->getProperties(null);
+ 			$props = implode("\n",array_map(create_function('$a,$b','return "$a=$b";'),$props[1],$props[0]));
+ 
+ 			$adapters[] = array(
+@@ -4381,7 +4381,7 @@ class vboxconnector {
+ 	        }
+ 
+     	    try {
+-    	        $this->session->console->addDiskEncryptionPassword($creds['id'], $creds['password'], (bool)@$args['clearOnSuspend']);
++    	        $this->session->console->addDiskEncryptionPassword($creds['id'], $creds['password'], (bool)$creds['clearOnSuspend']);
+     	        $response['accepted'][] = $creds['id'];
+     		} catch (Exception $e) {
+     		    $response['failed'][] = $creds['id'];
+@@ -4690,7 +4690,7 @@ class vboxconnector {
+ 			$machine->lockMachine($this->session->handle, ((string)$machine->sessionState == 'Unlocked' ? 'Write' : 'Shared'));
+ 
+ 			/* @var $progress IProgress */
+-			list($progress, $snapshotId) = $this->session->machine->takeSnapshot($args['name'], $args['description']);
++			list($progress, $snapshotId) = $this->session->machine->takeSnapshot($args['name'], $args['description'],null);
+ 
+ 			// Does an exception exist?
+ 			try {
+@@ -4853,7 +4853,7 @@ class vboxconnector {
+ 	    // Connect to vboxwebsrv
+ 	    $this->connect();
+ 
+-	    $m = $this->vbox->openMedium($args['medium'],'HardDisk');
++	    $m = $this->vbox->openMedium($args['medium'],'HardDisk',null,null);
+ 
+ 	    $retval = $m->checkEncryptionPassword($args['password']);
+ 
+@@ -4874,7 +4874,7 @@ class vboxconnector {
+ 	    // Connect to vboxwebsrv
+ 	    $this->connect();
+ 
+-	    $m = $this->vbox->openMedium($args['medium'], 'HardDisk', 'ReadWrite');
++	    $m = $this->vbox->openMedium($args['medium'], 'HardDisk', 'ReadWrite',null);
+ 
+ 	    /* @var $progress IProgress */
+ 	    $progress = $m->changeEncryption($args['old_password'],
+@@ -4915,7 +4915,7 @@ class vboxconnector {
+ 		// Connect to vboxwebsrv
+ 		$this->connect();
+ 
+-		$m = $this->vbox->openMedium($args['medium'], 'HardDisk');
++		$m = $this->vbox->openMedium($args['medium'], 'HardDisk',null,null);
+ 
+ 		/* @var $progress IProgress */
+ 		$progress = $m->resize($args['bytes']);
+@@ -4953,7 +4953,7 @@ class vboxconnector {
+ 		$mid = $target->id;
+ 
+ 		/* @var $src IMedium */
+-		$src = $this->vbox->openMedium($args['src'], 'HardDisk');
++		$src = $this->vbox->openMedium($args['src'], 'HardDisk',null,null);
+ 
+ 		$type = array(($args['type'] == 'fixed' ? 'Fixed' : 'Standard'));
+ 		if($args['split']) $type[] = 'VmdkSplit2G';
+@@ -4991,7 +4991,7 @@ class vboxconnector {
+ 		$this->connect();
+ 
+ 		/* @var $m IMedium */
+-		$m = $this->vbox->openMedium($args['medium'], 'HardDisk');
++		$m = $this->vbox->openMedium($args['medium'], 'HardDisk',null,null);
+ 		$m->type = $args['type'];
+ 		$m->releaseRemote();
+ 
+@@ -5074,7 +5074,7 @@ class vboxconnector {
+ 		// Connect to vboxwebsrv
+ 		$this->connect();
+ 
+-		return $this->vbox->composeMachineFilename($args['name'],($this->settings->phpVboxGroups ? '' : $args['group']),$this->vbox->systemProperties->defaultMachineFolder);
++		return $this->vbox->composeMachineFilename($args['name'],($this->settings->phpVboxGroups ? '' : $args['group']),$this->vbox->systemProperties->defaultMachineFolder,null);
+ 
+ 	}
+ 
+@@ -5129,7 +5129,7 @@ class vboxconnector {
+ 		$this->connect();
+ 
+ 		/* @var $m IMedium */
+-		$m = $this->vbox->openMedium($args['medium'],$args['type']);
++		$m = $this->vbox->openMedium($args['medium'],$args['type'],null,null);
+ 		$mediumid = $m->id;
+ 
+ 		// connected to...
+@@ -5211,7 +5211,7 @@ class vboxconnector {
+ 		if(!$args['type']) $args['type'] = 'HardDisk';
+ 
+ 		/* @var $m IMedium */
+-		$m = $this->vbox->openMedium($args['medium'],$args['type']);
++		$m = $this->vbox->openMedium($args['medium'],$args['type'],null,null);
+ 
+ 		if($args['delete'] && @$this->settings->deleteOnRemove && (string)$m->deviceType == 'HardDisk') {
+ 
+@@ -5380,7 +5380,7 @@ class vboxconnector {
+ 			// Normal medium
+ 			} else {
+ 				/* @var $med IMedium */
+-				$med = $this->vbox->openMedium($args['medium']['location'],$args['medium']['deviceType']);
++				$med = $this->vbox->openMedium($args['medium']['location'],$args['medium']['deviceType'],null,null);
+ 			}
+ 		}
+ 
+@@ -5445,7 +5445,7 @@ class vboxconnector {
+ 		}
+ 
+ 		// For $fixed value
+-		$mvenum = new MediumVariant();
++		$mvenum = new MediumVariant(null,null);
+ 		$variant = 0;
+ 
+ 		foreach($m->variant as $mv) {

Added: head/www/phpvirtualbox/files/patch-endpoints_lib_vboxweb-5.1.wsdl
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/www/phpvirtualbox/files/patch-endpoints_lib_vboxweb-5.1.wsdl	Thu Jul 27 15:21:31 2017	(r446746)
@@ -0,0 +1,2647 @@
+--- endpoints/lib/vboxweb-5.0.wsdl	2017-07-10 13:31:02 UTC
++++ endpoints/lib/vboxweb-5.1.wsdl
+@@ -38,6 +38,7 @@
+             v1_13: 15 -
+             v1_14: 16 -
+             v1_15: 17 -
++            v1_16: 18 -
+             Future: 99999 -
+             -->
+       <xsd:simpleType name="SettingsVersion">
+@@ -60,6 +61,7 @@
+           <xsd:enumeration value="v1_13"/>
+           <xsd:enumeration value="v1_14"/>
+           <xsd:enumeration value="v1_15"/>
++          <xsd:enumeration value="v1_16"/>
+           <xsd:enumeration value="Future"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+@@ -156,13 +158,17 @@
+             PAE: 1 -
+             LongMode: 2 -
+             TripleFaultReset: 3 -
++            APIC: 4 -
++            X2APIC: 5 -
+             -->
+       <xsd:simpleType name="CPUPropertyType">
+         <xsd:restriction base="xsd:string">
+           <xsd:enumeration value="Null"/>
+           <xsd:enumeration value="PAE"/>
+           <xsd:enumeration value="LongMode"/>
+           <xsd:enumeration value="TripleFaultReset"/>
++          <xsd:enumeration value="APIC"/>
++          <xsd:enumeration value="X2APIC"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+       <!-- enum: HWVirtExPropertyType -
+@@ -331,6 +337,18 @@
+           <xsd:enumeration value="MessageAndMenu"/>
+         </xsd:restriction>
+       </xsd:simpleType>
++      <!-- enum: APICMode -
++            Disabled: 0 -
++            APIC: 1 -
++            X2APIC: 2 -
++            -->
++      <xsd:simpleType name="APICMode">
++        <xsd:restriction base="xsd:string">
++          <xsd:enumeration value="Disabled"/>
++          <xsd:enumeration value="APIC"/>
++          <xsd:enumeration value="X2APIC"/>
++        </xsd:restriction>
++      </xsd:simpleType>
+       <!-- enum: ProcessorFeature -
+             HWVirtEx: 0 -
+             PAE: 1 -
+@@ -595,6 +613,20 @@
+           <xsd:enumeration value="StripAllNonNATMACs"/>
+         </xsd:restriction>
+       </xsd:simpleType>
++      <!-- enum: CertificateVersion -
++            V1: 1 -
++            V2: 2 -
++            V3: 3 -
++            Unknown: 99 -
++            -->
++      <xsd:simpleType name="CertificateVersion">
++        <xsd:restriction base="xsd:string">
++          <xsd:enumeration value="V1"/>
++          <xsd:enumeration value="V2"/>
++          <xsd:enumeration value="V3"/>
++          <xsd:enumeration value="Unknown"/>
++        </xsd:restriction>
++      </xsd:simpleType>
+       <!-- enum: VirtualSystemDescriptionType -
+             Ignore: 1 -
+             OS: 2 -
+@@ -1102,7 +1134,7 @@
+             WaitForProcessStartOnly: 1 -
+             IgnoreOrphanedProcesses: 2 -
+             Hidden: 4 -
+-            NoProfile: 8 -
++            Profile: 8 -
+             WaitForStdOut: 16 -
+             WaitForStdErr: 32 -
+             ExpandArguments: 64 -
+@@ -1114,7 +1146,7 @@
+           <xsd:enumeration value="WaitForProcessStartOnly"/>
+           <xsd:enumeration value="IgnoreOrphanedProcesses"/>
+           <xsd:enumeration value="Hidden"/>
+-          <xsd:enumeration value="NoProfile"/>
++          <xsd:enumeration value="Profile"/>
+           <xsd:enumeration value="WaitForStdOut"/>
+           <xsd:enumeration value="WaitForStdErr"/>
+           <xsd:enumeration value="ExpandArguments"/>
+@@ -1442,7 +1474,9 @@
+             Properties: 0x80 -
+             TcpNetworking: 0x100 -
+             VFS: 0x200 -
+-            CapabilityMask: 0x3FF -
++            Discard: 0x400 -
++            Preferred: 0x800 -
++            CapabilityMask: 0xFFF -
+             -->
+       <xsd:simpleType name="MediumFormatCapabilities">
+         <xsd:restriction base="xsd:string">
+@@ -1456,6 +1490,8 @@
+           <xsd:enumeration value="Properties"/>
+           <xsd:enumeration value="TcpNetworking"/>
+           <xsd:enumeration value="VFS"/>
++          <xsd:enumeration value="Discard"/>
++          <xsd:enumeration value="Preferred"/>
+           <xsd:enumeration value="CapabilityMask"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+@@ -1522,11 +1558,23 @@
+       <!-- enum: GuestMonitorStatus -
+             Disabled: 0 -
+             Enabled: 1 -
++            Blank: 2 -
+             -->
+       <xsd:simpleType name="GuestMonitorStatus">
+         <xsd:restriction base="xsd:string">
+           <xsd:enumeration value="Disabled"/>
+           <xsd:enumeration value="Enabled"/>
++          <xsd:enumeration value="Blank"/>
++        </xsd:restriction>
++      </xsd:simpleType>
++      <!-- enum: ScreenLayoutMode -
++            Apply: 0 -
++            Reset: 1 -
++            -->
++      <xsd:simpleType name="ScreenLayoutMode">
++        <xsd:restriction base="xsd:string">
++          <xsd:enumeration value="Apply"/>
++          <xsd:enumeration value="Reset"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+       <!-- enum: NetworkAttachmentType -
+@@ -1749,6 +1797,7 @@
+             Floppy: 4 -
+             SAS: 5 -
+             USB: 6 -
++            PCIe: 7 -
+             -->
+       <xsd:simpleType name="StorageBus">
+         <xsd:restriction base="xsd:string">
+@@ -1759,6 +1808,7 @@
+           <xsd:enumeration value="Floppy"/>
+           <xsd:enumeration value="SAS"/>
+           <xsd:enumeration value="USB"/>
++          <xsd:enumeration value="PCIe"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+       <!-- enum: StorageControllerType -
+@@ -1772,6 +1822,7 @@
+             I82078: 7 -
+             LsiLogicSas: 8 -
+             USB: 9 -
++            NVMe: 10 -
+             -->
+       <xsd:simpleType name="StorageControllerType">
+         <xsd:restriction base="xsd:string">
+@@ -1785,6 +1836,7 @@
+           <xsd:enumeration value="I82078"/>
+           <xsd:enumeration value="LsiLogicSas"/>
+           <xsd:enumeration value="USB"/>
++          <xsd:enumeration value="NVMe"/>
+         </xsd:restriction>
+       </xsd:simpleType>
+       <!-- enum: ChipsetType -
+@@ -2072,7 +2124,9 @@
+           <xsd:element name="recommendedAudioCodec" type="vbox:AudioCodecType"/>
+           <xsd:element name="recommendedFloppy" type="xsd:boolean"/>
+           <xsd:element name="recommendedUSB" type="xsd:boolean"/>
++          <xsd:element name="recommendedUSB3" type="xsd:boolean"/>
+           <xsd:element name="recommendedTFReset" type="xsd:boolean"/>
++          <xsd:element name="recommendedX2APIC" type="xsd:boolean"/>
+         </xsd:sequence>
+       </xsd:complexType>
+       <!-- interface IAdditionsFacility as struct: -->
+@@ -3738,6 +3792,353 @@
+           </xsd:sequence>
+         </xsd:complexType>
+       </xsd:element>
++      <!--Interface ICertificate-->
++      <!-- readonly attribute ICertificate::versionNumber-->
++      <xsd:element name="ICertificate_getVersionNumber">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getVersionNumberResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="vbox:CertificateVersion"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::serialNumber-->
++      <xsd:element name="ICertificate_getSerialNumber">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSerialNumberResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::signatureAlgorithmOID-->
++      <xsd:element name="ICertificate_getSignatureAlgorithmOID">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSignatureAlgorithmOIDResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::signatureAlgorithmName-->
++      <xsd:element name="ICertificate_getSignatureAlgorithmName">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSignatureAlgorithmNameResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::issuerName-->
++      <xsd:element name="ICertificate_getIssuerName">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getIssuerNameResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::subjectName-->
++      <xsd:element name="ICertificate_getSubjectName">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSubjectNameResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::friendlyName-->
++      <xsd:element name="ICertificate_getFriendlyName">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getFriendlyNameResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::validityPeriodNotBefore-->
++      <xsd:element name="ICertificate_getValidityPeriodNotBefore">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getValidityPeriodNotBeforeResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::validityPeriodNotAfter-->
++      <xsd:element name="ICertificate_getValidityPeriodNotAfter">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getValidityPeriodNotAfterResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::publicKeyAlgorithmOID-->
++      <xsd:element name="ICertificate_getPublicKeyAlgorithmOID">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getPublicKeyAlgorithmOIDResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::publicKeyAlgorithm-->
++      <xsd:element name="ICertificate_getPublicKeyAlgorithm">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getPublicKeyAlgorithmResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::subjectPublicKey-->
++      <xsd:element name="ICertificate_getSubjectPublicKey">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSubjectPublicKeyResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::issuerUniqueIdentifier-->
++      <xsd:element name="ICertificate_getIssuerUniqueIdentifier">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getIssuerUniqueIdentifierResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::subjectUniqueIdentifier-->
++      <xsd:element name="ICertificate_getSubjectUniqueIdentifier">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSubjectUniqueIdentifierResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::certificateAuthority-->
++      <xsd:element name="ICertificate_getCertificateAuthority">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getCertificateAuthorityResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:boolean"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::keyUsage-->
++      <xsd:element name="ICertificate_getKeyUsage">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getKeyUsageResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:unsignedInt"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::extendedKeyUsage-->
++      <xsd:element name="ICertificate_getExtendedKeyUsage">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getExtendedKeyUsageResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::rawCertData-->
++      <xsd:element name="ICertificate_getRawCertData">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getRawCertDataResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::selfSigned-->
++      <xsd:element name="ICertificate_getSelfSigned">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getSelfSignedResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:boolean"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::trusted-->
++      <xsd:element name="ICertificate_getTrusted">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getTrustedResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:boolean"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- readonly attribute ICertificate::expired-->
++      <xsd:element name="ICertificate_getExpired">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_getExpiredResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:boolean"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- method ICertificate::isCurrentlyExpired-->
++      <xsd:element name="ICertificate_isCurrentlyExpired">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_isCurrentlyExpiredResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:boolean"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- method ICertificate::queryInfo-->
++      <xsd:element name="ICertificate_queryInfo">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="what" type="xsd:int"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="ICertificate_queryInfoResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
+       <!--Interface IAppliance-->
+       <!-- readonly attribute IAppliance::path-->
+       <xsd:element name="IAppliance_getPath">
+@@ -3799,6 +4200,21 @@
+           </xsd:sequence>
+         </xsd:complexType>
+       </xsd:element>
++      <!-- readonly attribute IAppliance::certificate-->
++      <xsd:element name="IAppliance_getCertificate">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IAppliance_getCertificateResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
+       <!-- method IAppliance::read-->
+       <xsd:element name="IAppliance_read">
+         <xsd:complexType>
+@@ -4240,6 +4656,34 @@
+           <xsd:sequence/>
+         </xsd:complexType>
+       </xsd:element>
++      <!-- read/write attribute IBIOSSettings::APICMode-->
++      <xsd:element name="IBIOSSettings_getAPICMode">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IBIOSSettings_getAPICModeResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="vbox:APICMode"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IBIOSSettings_setAPICMode">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="APICMode" type="vbox:APICMode"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IBIOSSettings_setAPICModeResponse">
++        <xsd:complexType>
++          <xsd:sequence/>
++        </xsd:complexType>
++      </xsd:element>
+       <!-- read/write attribute IBIOSSettings::timeOffset-->
+       <xsd:element name="IBIOSSettings_getTimeOffset">
+         <xsd:complexType>
+@@ -5614,6 +6058,21 @@
+           </xsd:sequence>
+         </xsd:complexType>
+       </xsd:element>
++      <!-- readonly attribute IMachine::settingsAuxFilePath-->
++      <xsd:element name="IMachine_getSettingsAuxFilePath">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_getSettingsAuxFilePathResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
+       <!-- readonly attribute IMachine::settingsModified-->
+       <xsd:element name="IMachine_getSettingsModified">
+         <xsd:complexType>
+@@ -6483,6 +6942,62 @@
+           <xsd:sequence/>
+         </xsd:complexType>
+       </xsd:element>
++      <!-- read/write attribute IMachine::paravirtDebug-->
++      <xsd:element name="IMachine_getParavirtDebug">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_getParavirtDebugResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_setParavirtDebug">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="paravirtDebug" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_setParavirtDebugResponse">
++        <xsd:complexType>
++          <xsd:sequence/>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- read/write attribute IMachine::CPUProfile-->
++      <xsd:element name="IMachine_getCPUProfile">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_getCPUProfileResponse">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="returnval" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_setCPUProfile">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="CPUProfile" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IMachine_setCPUProfileResponse">
++        <xsd:complexType>
++          <xsd:sequence/>
++        </xsd:complexType>
++      </xsd:element>
+       <!-- method IMachine::lockMachine-->
+       <xsd:element name="IMachine_lockMachine">
+         <xsd:complexType>
+@@ -9289,6 +9804,38 @@
+           </xsd:sequence>
+         </xsd:complexType>
+       </xsd:element>
++      <!-- method IHost::addUSBDeviceSource-->
++      <xsd:element name="IHost_addUSBDeviceSource">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="backend" type="xsd:string"/>
++            <xsd:element name="id" type="xsd:string"/>
++            <xsd:element name="address" type="xsd:string"/>
++            <xsd:element name="propertyNames" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
++            <xsd:element name="propertyValues" minOccurs="0" maxOccurs="unbounded" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IHost_addUSBDeviceSourceResponse">
++        <xsd:complexType>
++          <xsd:sequence/>
++        </xsd:complexType>
++      </xsd:element>
++      <!-- method IHost::removeUSBDeviceSource-->
++      <xsd:element name="IHost_removeUSBDeviceSource">
++        <xsd:complexType>
++          <xsd:sequence>
++            <xsd:element name="_this" type="xsd:string"/>
++            <xsd:element name="id" type="xsd:string"/>
++          </xsd:sequence>
++        </xsd:complexType>
++      </xsd:element>
++      <xsd:element name="IHost_removeUSBDeviceSourceResponse">
++        <xsd:complexType>
++          <xsd:sequence/>
++        </xsd:complexType>
++      </xsd:element>
+       <!--Interface ISystemProperties-->
+       <!-- readonly attribute ISystemProperties::minGuestRAM-->

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201707271521.v6RFLVO5038177>