Share via


COSERVERINFO (Compact 2013)

3/26/2014

This structure is used to identify a remote machine resource to the new or enhanced activation functions.

Syntax

typedef struct _COSERVERINFO {
  DWORD dwReserved1;
  LPWSTR pwszName;
  COAUTHINFO* pAuthInfo;
  DWORD dwReserved2;
} COSERVERINFO;

Members

  • dwReserved1
    Reserved; set to 0 (zero).
  • pwszName
    Pointer to the name of the machine to be used.
  • pAuthInfo
    Set to a pointer to a COAUTHINFO structure to override the default activation security for machine remote activations. Otherwise, set to NULL to indicate that default values should be used.

    For more information, see the Remarks section.

  • dwReserved2
    Reserved; set to 0 (zero).

Remarks

The COSERVERINFO structure is used primarily to identify a remote system in object creation functions.

Machine resources are named using the naming scheme of the network transport. By default, all UNC and DNS names are allowed.

If pAuthInfo is set to NULL, NTLMSSP with the identity of the client will be used. To meet any of the needs in the following list, pAuthInfo can be set to point to a non-NULL COAUTHINFO structure:

  • To specify a different client identity for machine remote activations. The specified identity is used for the launch permission check on the server rather than the real client identity.
  • To specify that Kerberos, rather than NTLMSSP, is used for machine remote activation. A nondefault client identity might or might not be specified.
  • To request unsecure activation.
  • To specify a proprietary authentication service.

If pAuthInfo is not NULL, those values are used to specify the authentication settings for the remote call.

If the pAuthInfo member is not specified, values in the AppID section of the registry are used to override default authentication settings.

The following table shows the settings that are overridden.

pAhuthInfo member

Setting

dwAuthnSvc

RPC_C_AUTHN_WINNT

dwAuthzSvc

RPC_C_AUTHZ_NONE

pszServerPrincName

NULL

dwAuthnLevel

RPC_C_AUTHN_LEVEL_CONNECT

dwImpersonationLevel

RPC_C_IMP_LEVEL_IMPERSONATE

pvAuthIdentityData

NULL

dwCapabilities

RPC_C_QOS_CAPABILITIES_DEFAULT

Requirements

Header

wtypes.h

See Also

Reference

COM Structures and Enumerations
COAUTHINFO