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.

124 lines
2.9 KiB

  1. /*++
  2. Copyright (c) 1998-2002 Microsoft Corporation
  3. Module Name:
  4. ndis1394.h
  5. Abstract:
  6. This file contains the declarations common to nic1394 and enum1394.
  7. Environment:
  8. Kernel mode
  9. Revision History:
  10. AliD created.
  11. --*/
  12. #ifndef _NDIS1394_
  13. #define _NDIS1394_
  14. #ifndef EXPORT
  15. #ifdef _NDIS1394ENUM_
  16. #define EXPORT
  17. #else
  18. #define EXPORT DECLSPEC_IMPORT
  19. #endif
  20. #endif
  21. #define NDIS1394_CALLBACK_NAME L"\\Callback\\Ndis1394CallbackObject"
  22. #define NDIS1394_CALLBACK_SOURCE_ENUM1394 0
  23. #define NDIS1394_CALLBACK_SOURCE_NIC1394 1
  24. typedef struct _NIC1394_CHARACTERISTICS *PNIC1394_CHARACTERISTICS;
  25. typedef struct _NDISENUM1394_CHARACTERISTICS *PNDISENUM1394_CHARACTERISTICS;
  26. typedef
  27. NTSTATUS
  28. (*ENUM1394_REGISTER_DRIVER_HANDLER)(
  29. IN PNIC1394_CHARACTERISTICS Characteristics
  30. );
  31. typedef
  32. VOID
  33. (*ENUM1394_DEREGISTER_DRIVER_HANDLER)(
  34. VOID
  35. );
  36. typedef
  37. NTSTATUS
  38. (*ENUM1394_REGISTER_ADAPTER_HANDLER)(
  39. IN PVOID Nic1394AdapterContext,
  40. IN PDEVICE_OBJECT PhysicalDeviceObject,
  41. OUT PVOID* pEnum1394AdapterHandle,
  42. OUT PLARGE_INTEGER pLocalHostUniqueId
  43. );
  44. typedef
  45. VOID
  46. (*ENUM1394_DEREGISTER_ADAPTER_HANDLER)(
  47. IN PVOID Enum1394AdapterHandle
  48. );
  49. typedef struct _NDISENUM1394_CHARACTERISTICS
  50. {
  51. UCHAR MajorVersion;
  52. UCHAR MinorVersion;
  53. USHORT Filler;
  54. ENUM1394_REGISTER_DRIVER_HANDLER RegisterDriverHandler;
  55. ENUM1394_DEREGISTER_DRIVER_HANDLER DeregisterDriverHandler;
  56. ENUM1394_REGISTER_ADAPTER_HANDLER RegisterAdapterHandler;
  57. ENUM1394_DEREGISTER_ADAPTER_HANDLER DeregisterAdapterHandler;
  58. } NDISENUM1394_CHARACTERISTICS, *PNDISENUM1394_CHARACTERISTICS;
  59. typedef
  60. NTSTATUS
  61. (*NIC1394_REGISTER_DRIVER_HANDLER)(
  62. IN PNDISENUM1394_CHARACTERISTICS Characteristics
  63. );
  64. typedef
  65. VOID
  66. (*NIC1394_DEREGISTER_DRIVER_HANDLER)(
  67. VOID
  68. );
  69. typedef
  70. NTSTATUS
  71. (*NIC1394_ADD_NODE_HANLDER)(
  72. IN PVOID Nic1394AdapterContext, // Nic1394 handle for the local host adapter
  73. IN PVOID Enum1394NodeHandle, // Enum1394 handle for the remote node
  74. IN PDEVICE_OBJECT PhysicalDeviceObject, // physical device object for the remote node
  75. IN ULONG UniqueId0, // unique ID Low for the remote node
  76. IN ULONG UniqueId1, // unique ID High for the remote node
  77. OUT PVOID * pNic1394NodeContext // Nic1394 context for the remote node
  78. );
  79. typedef
  80. NTSTATUS
  81. (*NIC1394_REMOVE_NODE_HANLDER)(
  82. IN PVOID Nic1394NodeContext // Nic1394 context for the remote node
  83. );
  84. typedef struct _NIC1394_CHARACTERISTICS
  85. {
  86. UCHAR MajorVersion;
  87. UCHAR MinorVersion;
  88. USHORT Filler;
  89. NIC1394_REGISTER_DRIVER_HANDLER RegisterDriverHandler;
  90. NIC1394_DEREGISTER_DRIVER_HANDLER DeRegisterDriverHandler;
  91. NIC1394_ADD_NODE_HANLDER AddNodeHandler;
  92. NIC1394_REMOVE_NODE_HANLDER RemoveNodeHandler;
  93. } NIC1394_CHARACTERISTICS, *PNIC1394_CHARACTERISTICS;
  94. #endif // _NDIS1394_