Source code of Windows XP (NT5)
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.

77 lines
2.4 KiB

  1. /*++ BUILD Version: 0001 // Increment this if a change has global effects
  2. Copyright (c) 1990-1999 Microsoft Corporation
  3. Module Name:
  4. ntddtdi.h
  5. Abstract:
  6. This is the include file that defines all constants and types for
  7. accessing the Transport driver interface device.
  8. Author:
  9. Steve Wood (stevewo) 27-May-1990
  10. Revision History:
  11. Dave Beaver (dbeaver) 5 June 1991
  12. add support for TDI version 2.0 -- associate_address,
  13. disassociate_address
  14. --*/
  15. #ifndef _NTDDTDI_
  16. #define _NTDDTDI_
  17. #if _MSC_VER > 1000
  18. #pragma once
  19. #endif
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif
  23. //
  24. // Device Name - this string is the name of the device. It is the name
  25. // that should be passed to NtOpenFile when accessing the device.
  26. //
  27. // Note: For devices that support multiple units, it should be suffixed
  28. // with the Ascii representation of the unit number.
  29. //
  30. #define DD_TDI_DEVICE_NAME "\\Device\\UNKNOWN"
  31. //
  32. // NtDeviceIoControlFile IoControlCode values for this device.
  33. //
  34. // Warning: Remember that the low two bits of the code specify how the
  35. // buffers are passed to the driver!
  36. //
  37. #define _TDI_CONTROL_CODE(request,method) \
  38. CTL_CODE(FILE_DEVICE_TRANSPORT, request, method, FILE_ANY_ACCESS)
  39. #define IOCTL_TDI_ACCEPT _TDI_CONTROL_CODE( 0, METHOD_BUFFERED )
  40. #define IOCTL_TDI_CONNECT _TDI_CONTROL_CODE( 1, METHOD_BUFFERED )
  41. #define IOCTL_TDI_DISCONNECT _TDI_CONTROL_CODE( 2, METHOD_BUFFERED )
  42. #define IOCTL_TDI_LISTEN _TDI_CONTROL_CODE( 3, METHOD_BUFFERED )
  43. #define IOCTL_TDI_QUERY_INFORMATION _TDI_CONTROL_CODE( 4, METHOD_OUT_DIRECT )
  44. #define IOCTL_TDI_RECEIVE _TDI_CONTROL_CODE( 5, METHOD_OUT_DIRECT )
  45. #define IOCTL_TDI_RECEIVE_DATAGRAM _TDI_CONTROL_CODE( 6, METHOD_OUT_DIRECT )
  46. #define IOCTL_TDI_SEND _TDI_CONTROL_CODE( 7, METHOD_IN_DIRECT )
  47. #define IOCTL_TDI_SEND_DATAGRAM _TDI_CONTROL_CODE( 8, METHOD_IN_DIRECT )
  48. #define IOCTL_TDI_SET_EVENT_HANDLER _TDI_CONTROL_CODE( 9, METHOD_BUFFERED )
  49. #define IOCTL_TDI_SET_INFORMATION _TDI_CONTROL_CODE( 10, METHOD_IN_DIRECT )
  50. #define IOCTL_TDI_ASSOCIATE_ADDRESS _TDI_CONTROL_CODE( 11, METHOD_BUFFERED )
  51. #define IOCTL_TDI_DISASSOCIATE_ADDRESS _TDI_CONTROL_CODE( 12, METHOD_BUFFERED )
  52. #define IOCTL_TDI_ACTION _TDI_CONTROL_CODE( 13, METHOD_OUT_DIRECT )
  53. #ifdef __cplusplus
  54. }
  55. #endif
  56. #endif // ndef _NTDDTDI_