Home | History | Annotate | Download | only in include
      1 /*
      2  * ntddtdi.h
      3  *
      4  * Contributors:
      5  *   Created by Casper S. Hornstrup <chorns (at) users.sourceforge.net>
      6  *
      7  * THIS SOFTWARE IS NOT COPYRIGHTED
      8  *
      9  * This source code is offered for use in the public domain. You may
     10  * use, modify or distribute it freely.
     11  *
     12  * This code is distributed in the hope that it will be useful but
     13  * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
     14  * DISCLAIMED. This includes but is not limited to warranties of
     15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
     16  *
     17  */
     18 
     19 #ifndef _NTDDTDI_
     20 #define _NTDDTDI_
     21 
     22 #ifdef __cplusplus
     23 extern "C" {
     24 #endif
     25 
     26 #define DD_TDI_DEVICE_NAME "\\Device\\UNKNOWN"
     27 #define _TDI_CONTROL_CODE(request,method)   CTL_CODE(FILE_DEVICE_TRANSPORT, request, method, FILE_ANY_ACCESS)
     28 #define IOCTL_TDI_ACCEPT                    _TDI_CONTROL_CODE( 0, METHOD_BUFFERED )
     29 #define IOCTL_TDI_CONNECT                   _TDI_CONTROL_CODE( 1, METHOD_BUFFERED )
     30 #define IOCTL_TDI_DISCONNECT                _TDI_CONTROL_CODE( 2, METHOD_BUFFERED )
     31 #define IOCTL_TDI_LISTEN                    _TDI_CONTROL_CODE( 3, METHOD_BUFFERED )
     32 #define IOCTL_TDI_QUERY_INFORMATION         _TDI_CONTROL_CODE( 4, METHOD_OUT_DIRECT )
     33 #define IOCTL_TDI_RECEIVE                   _TDI_CONTROL_CODE( 5, METHOD_OUT_DIRECT )
     34 #define IOCTL_TDI_RECEIVE_DATAGRAM          _TDI_CONTROL_CODE( 6, METHOD_OUT_DIRECT )
     35 #define IOCTL_TDI_SEND                      _TDI_CONTROL_CODE( 7, METHOD_IN_DIRECT )
     36 #define IOCTL_TDI_SEND_DATAGRAM             _TDI_CONTROL_CODE( 8, METHOD_IN_DIRECT )
     37 #define IOCTL_TDI_SET_EVENT_HANDLER         _TDI_CONTROL_CODE( 9, METHOD_BUFFERED )
     38 #define IOCTL_TDI_SET_INFORMATION           _TDI_CONTROL_CODE( 10, METHOD_IN_DIRECT )
     39 #define IOCTL_TDI_ASSOCIATE_ADDRESS         _TDI_CONTROL_CODE( 11, METHOD_BUFFERED )
     40 #define IOCTL_TDI_DISASSOCIATE_ADDRESS      _TDI_CONTROL_CODE( 12, METHOD_BUFFERED )
     41 #define IOCTL_TDI_ACTION                    _TDI_CONTROL_CODE( 13, METHOD_OUT_DIRECT )
     42 
     43 #ifdef __cplusplus
     44 }
     45 #endif
     46 
     47 #endif /* _NTDDTDI_ */
     48 
     49