Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
3.2 KiB

  1. //+----------------------------------------------------------------------------
  2. //
  3. // Copyright (C) 1992, Microsoft Corporation
  4. //
  5. // File: DfsGluon.h
  6. //
  7. // Contents: Declarations for dfs use of gluons
  8. //
  9. // Classes:
  10. //
  11. // Functions:
  12. //
  13. // History: March 24, 1994 Milans Created
  14. //
  15. //-----------------------------------------------------------------------------
  16. #ifndef _DFS_GLUON_
  17. #define _DFS_GLUON_
  18. #include <gluon.h>
  19. //
  20. // Marshalling info for TAddress
  21. //
  22. extern MARSHAL_INFO MiTAddress;
  23. #define INIT_TADDRESS_MARSHAL_INFO() \
  24. static MARSHAL_TYPE_INFO _MCode_TAddress[] = { \
  25. _MCode_conformant(TA_ADDRESS, Address, AddressLength), \
  26. _MCode_ush(TA_ADDRESS, AddressLength), \
  27. _MCode_ush(TA_ADDRESS, AddressType), \
  28. _MCode_cauch(TA_ADDRESS, Address, AddressLength) \
  29. }; \
  30. MARSHAL_INFO MiTAddress = _mkMarshalInfo(TA_ADDRESS, _MCode_TAddress);
  31. //
  32. // Marshalling info for DS_TRANSPORT
  33. //
  34. extern MARSHAL_INFO MiDSTransport;
  35. #define INIT_DS_TRANSPORT_MARSHAL_INFO() \
  36. static MARSHAL_TYPE_INFO _MCode_DSTransport[] = { \
  37. _MCode_conformant(DS_TRANSPORT, taddr.Address, taddr.AddressLength), \
  38. _MCode_ush(DS_TRANSPORT, usFileProtocol), \
  39. _MCode_ush(DS_TRANSPORT, iPrincipal), \
  40. _MCode_ush(DS_TRANSPORT, grfModifiers), \
  41. _MCode_struct(DS_TRANSPORT, taddr, &MiTAddress) \
  42. }; \
  43. MARSHAL_INFO MiDSTransport = _mkMarshalInfo(DS_TRANSPORT, _MCode_DSTransport);
  44. //
  45. // The following is needed to define an array of pointers to DS_TRANSPORT
  46. //
  47. typedef struct _DS_TRANSPORT_P {
  48. PDS_TRANSPORT pDSTransport;
  49. } DS_TRANSPORT_P;
  50. #define INIT_DS_TRANSPORT_P_MARSHAL_INFO() \
  51. static MARSHAL_TYPE_INFO _MCode_DSTransportP[] = { \
  52. _MCode_pstruct(DS_TRANSPORT_P, pDSTransport, &MiDSTransport) \
  53. }; \
  54. MARSHAL_INFO MiDSTransportP = _mkMarshalInfo(DS_TRANSPORT_P, _MCode_DSTransportP);
  55. extern MARSHAL_INFO MiDSTransportP;
  56. //
  57. // Marshalling info for DS_MACHINE
  58. //
  59. extern MARSHAL_INFO MiDSMachine;
  60. #define INIT_DS_MACHINE_MARSHAL_INFO() \
  61. static MARSHAL_TYPE_INFO _MCode_DSMachine[] = { \
  62. _MCode_conformant(DS_MACHINE, rpTrans, cTransports), \
  63. _MCode_guid(DS_MACHINE, guidSite), \
  64. _MCode_guid(DS_MACHINE, guidMachine), \
  65. _MCode_ul(DS_MACHINE, grfFlags), \
  66. _MCode_pwstr(DS_MACHINE, pwszShareName), \
  67. _MCode_ul(DS_MACHINE, cPrincipals), \
  68. _MCode_pcapwstr(DS_MACHINE, prgpwszPrincipals, cPrincipals), \
  69. _MCode_ul(DS_MACHINE, cTransports), \
  70. _MCode_castruct(DS_MACHINE, rpTrans, cTransports, &MiDSTransportP) \
  71. }; \
  72. MARSHAL_INFO MiDSMachine = _mkMarshalInfo(DS_MACHINE, _MCode_DSMachine);
  73. //
  74. // The following is needed to define an array of pointers to DS_MACHINE
  75. //
  76. typedef struct _DS_MACHINE_P {
  77. PDS_MACHINE pDSMachine;
  78. } DS_MACHINE_P;
  79. #define INIT_DS_MACHINE_P_MARSHAL_INFO() \
  80. static MARSHAL_TYPE_INFO _MCode_DSMachineP[] = { \
  81. _MCode_pstruct(DS_MACHINE_P, pDSMachine, &MiDSMachine) \
  82. }; \
  83. MARSHAL_INFO MiDSMachineP = _mkMarshalInfo(DS_MACHINE_P, _MCode_DSMachineP);
  84. extern MARSHAL_INFO MiDSMachineP;
  85. #endif // _DFS_GLUON_