Name
HostConnect
Description
($err, $hostHandle) = HostConnect($apiVersion,
$hostType,
$hostName,
$hostPort,
$userName,
$password,
$options,
$propertyListHandle);
Creates a host handle.
Parameters
- apiVersion
-
Must be
VIX_API_VERSION.
- hostType
-
VIX_SERVICEPROVIDER_VMWARE_SERVER
for VMware Server 1.x,
VIX_SERVICEPROVIDER_VMWARE_WORKSTATION
for Workstation 6.x, or
VIX_SERVICEPROVIDER_VMWARE_VI_SERVER
for VMware Server 2.x.
- hostName
-
DNS name, IP address, or URL of the remote host.
For VMware Server 1.x, use a DNS name or IP address.
For VMware Server 2.x, use a URL of the form
"https://<hostName>:<port>/sdk" where <hostName>
could be DNS name or IP address. Use
undef
to connect to
local host.
- hostPort
-
TCP/IP port of remote host. Use zero for local host.
On VMware Server 2.x you must specify port number within
the hostName parameter, so this parameter is ignored.
- userName
-
Username to authenticate with on remote machine. Use
undef
to authenticate as current user on local host.
- password
-
Password to authenticate with on remote machine. Use
undef
to authenticate as current user on local host.
- options
-
must be 0.
- propertyListHandle
-
Must be
VIX_INVALID_HANDLE.
Return Value
$err. The error code returned by the operation. For returned values, see Topics > Error Codes.
$hostHandle. A handle to host.
Remarks
- To specify the local host (where the API client runs), pass null values
for the hostName, hostPort, userName, and password parameters.
- For VMware Server 2.x, the URL for the hostName argument should specify the port.
Otherwise an HTTPS connection is attempted on port 443.
HTTPS is strongly recommended.
Port numbers are set during installation of Server 2.x.
The installer's default HTTP and HTTPS values
are 8222 and 8333 for Server on Windows,
or (if not already in use) 80 and 443 for Server on Linux,
and 902 for the automation socket, authd.
If connecting to a virtual machine though a firewall,
port 902 and the communicating port must be opened to allow guest operations.
- If you are already connected to the host, a subsequent call to
HostConnect()
succeeds if you connect as the same user and use the
same host name. Subsequent calls return the same handle value.
Side Effects
None.
Requirements
use VMware::Vix::Simple;
use VMware::Vix::API::Constants;
since VMware Server 1.0
Example
use VMware::Vix::Simple;
use VMware::Vix::API::Constants;
my $err = VIX_OK;
my $hostHandle = VIX_INVALID_HANDLE;
($err, $hostHandle) = HostConnect(VIX_API_VERSION,
VIX_SERVICEPROVIDER_VMWARE_VI_SERVER,
"https://viserver/sdk", # hostName
0, # hostPort
"root", # userName
"rootpasswd", # password
0, # options
VIX_INVALID_HANDLE); # propertyListHandle
die "HostConnect() failed, $err ", GetErrorText($err), "\n" if $err != VIX_OK;
# ...Do everything in your program...
HostDisconnect($hostHandle);