Name

VixHost_Connect

Description

VixHandle
VixHost_Connect(int apiVersion,
                VixServiceProvider hostType,
                const char *hostName,
                int hostPort,
                const char *userName,
                const char *password,
                VixHostOptions options,
                VixHandle propertyListHandle,
                VixEventProc *callbackProc,
                void *clientData);

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 NULL 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 NULL to authenticate as current user on local host.
password
Password to authenticate with on remote machine. Use NULL to authenticate as current user on local host.
options
Optionally VIX_HOSTOPTION_USE_EVENT_PUMP (see Remarks section), otherwise zero.
propertyListHandle
Must be VIX_INVALID_HANDLE.
callbackProc
Optional callback of type VixEventProc.
clientData
Optional user supplied opaque data to be passed to optional callback.

Return Value

A job handle. When the job completes, retrieve the Host handle from the job handle using the VIX_PROPERTY_JOB_RESULT_HANDLE property.

Remarks

Side Effects

None.

Requirements

vix.h, since VMware Server 1.0

Example

#include "vix.h"
int main(int argc, char * argv[])
{
   VixHandle hostHandle = VIX_INVALID_HANDLE;
   VixHandle jobHandle = VIX_INVALID_HANDLE;
   VixError err;
   // Connect as current user on local host.
   jobHandle = VixHost_Connect(VIX_API_VERSION,
                               VIX_SERVICEPROVIDER_VMWARE_VI_SERVER,
                               https://viserver/sdk, // hostName
                               0, // hostPort
                               "Administrator", // userName
                               "adminpass", // password,
                               0, // options
                               VIX_INVALID_HANDLE, // propertyListHandle
                               NULL, // callbackProc
                               NULL); // clientData

   err = VixJob_Wait(jobHandle,
                     VIX_PROPERTY_JOB_RESULT_HANDLE,
                     &hostHandle,
                     VIX_PROPERTY_NONE);

   if (VIX_OK != err) {
      // Handle the error...
      goto abort;
   }
   Vix_ReleaseHandle(jobHandle);
   // Other code goes here...
   abort:
   Vix_ReleaseHandle(jobHandle);
   VixHost_Disconnect(hostHandle);
}

Copyright (C) 2007-2008 VMware, Inc. All rights reserved.