|
|
//+----------------------------------------------------------------------------
//
// Copyright (C) 1995, Microsoft Corporation
//
// File: marshal.hxx
//
// Contents: Dfs Marshalling macros for Dfs Manager structures
//
// Classes:
//
// Functions:
//
// History: April 10, 1995 Milans created
// December 7, 1998 Jharper updated
//
//-----------------------------------------------------------------------------
#ifndef _MARSHAL_
#define _MARSHAL_
//
// Marshalling info for FILETIME structure
//
extern MARSHAL_INFO MiFileTime;
#define INIT_FILE_TIME_INFO() \
static MARSHAL_TYPE_INFO _MCode_FileTime[] = { \ _MCode_ul(FILETIME, dwLowDateTime), \ _MCode_ul(FILETIME, dwHighDateTime) \ }; \ MARSHAL_INFO MiFileTime = _mkMarshalInfo(FILETIME, _MCode_FileTime);
//
// Marshalling info for DFS_ID_PROPS structure
//
extern MARSHAL_INFO MiDfsIdProps;
#define INIT_DFS_ID_PROPS_INFO() \
static MARSHAL_TYPE_INFO _MCode_DfsIdProps[] = { \ _MCode_pwstr(DFS_ID_PROPS, wszPrefix), \ _MCode_pwstr(DFS_ID_PROPS, wszShortPath), \ _MCode_guid(DFS_ID_PROPS, idVolume), \ _MCode_ul(DFS_ID_PROPS, dwState), \ _MCode_ul(DFS_ID_PROPS, dwType), \ _MCode_pwstr(DFS_ID_PROPS, wszComment), \ _MCode_struct(DFS_ID_PROPS, ftEntryPath, &MiFileTime), \ _MCode_struct(DFS_ID_PROPS, ftState, &MiFileTime), \ _MCode_struct(DFS_ID_PROPS, ftComment, &MiFileTime) \ }; \ MARSHAL_INFO MiDfsIdProps = _mkMarshalInfo(DFS_ID_PROPS, _MCode_DfsIdProps);
//
// Marshalling info for DFS_REPLICA_INFO structure
//
extern MARSHAL_INFO MiDfsReplicaInfo;
#define INIT_DFS_REPLICA_INFO_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_DfsReplicaInfo[] = { \ _MCode_ul(DFS_REPLICA_INFO, ulReplicaState), \ _MCode_ul(DFS_REPLICA_INFO, ulReplicaType), \ _MCode_pwstr(DFS_REPLICA_INFO, pwszServerName), \ _MCode_pwstr(DFS_REPLICA_INFO, pwszShareName), \ }; \ MARSHAL_INFO MiDfsReplicaInfo = _mkMarshalInfo(DFS_REPLICA_INFO, _MCode_DfsReplicaInfo);
//
// Marshalling info for DFS_SITENAME_INFO
//
extern MARSHAL_INFO MiDfsSiteNameInfo;
#define INIT_DFS_SITENAME_INFO_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_DfsSiteNameInfo[] = { \ _MCode_ul(DFS_SITENAME_INFO, SiteFlags), \ _MCode_pwstr(DFS_SITENAME_INFO, SiteName), \ }; \ MARSHAL_INFO MiDfsSiteNameInfo = _mkMarshalInfo(DFS_SITENAME_INFO, _MCode_DfsSiteNameInfo);
//
// Marshalling info for DFS_SITELIST_INFO
//
extern MARSHAL_INFO MiDfsSiteListInfo;
#define INIT_DFS_SITELIST_INFO_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_DfsSiteListInfo[] = { \ _MCode_ul(DFS_SITELIST_INFO, cSites), \ _MCode_castruct(DFS_SITELIST_INFO,Site,cSites,&MiDfsSiteNameInfo), \ }; \ MARSHAL_INFO MiDfsSiteListInfo = _mkMarshalInfo(DFS_SITELIST_INFO, _MCode_DfsSiteListInfo);
//
// Marshalling info for DFSM_SITE_ENTRY
//
extern MARSHAL_INFO MiDfsmSiteEntry;
#define INIT_DFSM_SITE_ENTRY_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_DfsmSiteEntry[] = { \ _MCode_pwstr(DFSM_SITE_ENTRY, ServerName), \ _MCode_struct(DFSM_SITE_ENTRY,Info,&MiDfsSiteListInfo), \ }; \ MARSHAL_INFO MiDfsmSiteEntry = _mkMarshalInfo(DFSM_SITE_ENTRY, _MCode_DfsmSiteEntry);
//
// Marshalling info for LDAP_OBJECT
//
extern MARSHAL_INFO MiLdapObject;
#define INIT_LDAP_OBJECT_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_LdapObjectInfo[] = { \ _MCode_pwstr(LDAP_OBJECT, wszObjectName), \ _MCode_ul(LDAP_OBJECT, cbObjectData), \ _MCode_pcauch(LDAP_OBJECT, pObjectData, cbObjectData) \ }; \ MARSHAL_INFO MiLdapObject = _mkMarshalInfo(LDAP_OBJECT, _MCode_LdapObjectInfo);
//
// Marshalling info for LDAP_PKT
//
extern MARSHAL_INFO MiLdapPkt;
#define INIT_LDAP_PKT_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_LdapPktInfo[] = { \ _MCode_ul(LDAP_PKT, cLdapObjects), \ _MCode_pcastruct(LDAP_PKT, rgldapObjects, cLdapObjects, &MiLdapObject) \ }; \ MARSHAL_INFO MiLdapPkt = _mkMarshalInfo(LDAP_PKT, _MCode_LdapPktInfo);
//
// Marshalling info for DFS_VOLUME_PROPERTIES
//
extern MARSHAL_INFO MiVolumeProperties;
#define INIT_LDAP_DFS_VOLUME_PROPERTIES_MARSHAL_INFO() \
static MARSHAL_TYPE_INFO _MCode_VolumePropertiesInfo[] = { \ _MCode_guid(DFS_VOLUME_PROPERTIES, idVolume), \ _MCode_pwstr(DFS_VOLUME_PROPERTIES, wszPrefix), \ _MCode_pwstr(DFS_VOLUME_PROPERTIES, wszShortPrefix), \ _MCode_ul(DFS_VOLUME_PROPERTIES, dwType), \ _MCode_ul(DFS_VOLUME_PROPERTIES, dwState), \ _MCode_pwstr(DFS_VOLUME_PROPERTIES, wszComment), \ _MCode_struct(DFS_VOLUME_PROPERTIES, ftPrefix, &MiFileTime), \ _MCode_struct(DFS_VOLUME_PROPERTIES, ftState, &MiFileTime), \ _MCode_struct(DFS_VOLUME_PROPERTIES, ftComment, &MiFileTime), \ _MCode_ul(DFS_VOLUME_PROPERTIES, dwVersion), \ _MCode_ul(DFS_VOLUME_PROPERTIES, cbSvc), \ _MCode_pcauch(DFS_VOLUME_PROPERTIES, pSvc, cbSvc), \ _MCode_ul(DFS_VOLUME_PROPERTIES, cbRecovery), \ _MCode_pcauch(DFS_VOLUME_PROPERTIES, pRecovery, cbRecovery) \ }; \ MARSHAL_INFO MiVolumeProperties = \ _mkMarshalInfo(DFS_VOLUME_PROPERTIES, _MCode_VolumePropertiesInfo);
#endif // _MARSHAL_
|