ReactOS  0.4.14-dev-390-g34947ad
subauth.h File Reference

Go to the source code of this file.

Classes

struct  _UNICODE_STRING
 
struct  _STRING
 
struct  _OLD_LARGE_INTEGER
 
struct  _CYPHER_BLOCK
 
struct  _CLEAR_BLOCK
 
struct  _LM_OWF_PASSWORD
 
struct  _USER_SESSION_KEY
 
struct  _LOGON_HOURS
 
struct  _SR_SECURITY_DESCRIPTOR
 
struct  _USER_ALL_INFORMATION
 
struct  _MSV1_0_VALIDATION_INFO
 
struct  _NETLOGON_LOGON_IDENTITY_INFO
 
struct  _NETLOGON_INTERACTIVE_INFO
 
struct  _NETLOGON_GENERIC_INFO
 
struct  _NETLOGON_NETWORK_INFO
 
struct  _NETLOGON_SERVICE_INFO
 

Macros

#define NT_SUCCESS(x)   ((x)>=0)
 
#define STATUS_SUCCESS   0
 
#define CYPHER_BLOCK_LENGTH   8
 
#define USER_SESSION_KEY_LENGTH   (CYPHER_BLOCK_LENGTH*2)
 
#define CLEAR_BLOCK_LENGTH   8
 
#define MSV1_0_PASSTHRU   1
 
#define MSV1_0_GUEST_LOGON   2
 
#define MSV1_0_VALIDATION_LOGOFF_TIME   1
 
#define MSV1_0_VALIDATION_KICKOFF_TIME   2
 
#define MSV1_0_VALIDATION_LOGON_SERVER   4
 
#define MSV1_0_VALIDATION_LOGON_DOMAIN   8
 
#define MSV1_0_VALIDATION_SESSION_KEY   16
 
#define MSV1_0_VALIDATION_USER_FLAGS   32
 
#define MSV1_0_VALIDATION_USER_ID   64
 
#define MSV1_0_SUBAUTH_ACCOUNT_DISABLED   1
 
#define MSV1_0_SUBAUTH_PASSWORD   2
 
#define MSV1_0_SUBAUTH_WORKSTATIONS   4
 
#define MSV1_0_SUBAUTH_LOGON_HOURS   8
 
#define MSV1_0_SUBAUTH_ACCOUNT_EXPIRY   16
 
#define MSV1_0_SUBAUTH_PASSWORD_EXPIRY   32
 
#define MSV1_0_SUBAUTH_ACCOUNT_TYPE   64
 
#define MSV1_0_SUBAUTH_LOCKOUT   128
 
#define NEXT_FREE_ACCOUNT_CONTROL_BIT   131072
 
#define SAM_DAYS_PER_WEEK   7
 
#define SAM_HOURS_PER_WEEK   168
 
#define SAM_MINUTES_PER_WEEK   10080
 
#define STATUS_INVALID_INFO_CLASS   0xC0000003L
 
#define STATUS_NO_SUCH_USER   0xC0000064L
 
#define STATUS_WRONG_PASSWORD   0xC000006AL
 
#define STATUS_PASSWORD_RESTRICTION   0xC000006CL
 
#define STATUS_LOGON_FAILURE   0xC000006DL
 
#define STATUS_ACCOUNT_RESTRICTION   0xC000006EL
 
#define STATUS_INVALID_LOGON_HOURS   0xC000006FL
 
#define STATUS_INVALID_WORKSTATION   0xC0000070L
 
#define STATUS_PASSWORD_EXPIRED   0xC0000071L
 
#define STATUS_ACCOUNT_DISABLED   0xC0000072L
 
#define STATUS_INSUFFICIENT_RESOURCES   0xC000009AL
 
#define STATUS_ACCOUNT_EXPIRED   0xC0000193L
 
#define STATUS_PASSWORD_MUST_CHANGE   0xC0000224L
 
#define STATUS_ACCOUNT_LOCKED_OUT   0xC0000234L
 
#define USER_ACCOUNT_DISABLED   1
 
#define USER_HOME_DIRECTORY_REQUIRED   2
 
#define USER_PASSWORD_NOT_REQUIRED   4
 
#define USER_TEMP_DUPLICATE_ACCOUNT   8
 
#define USER_NORMAL_ACCOUNT   16
 
#define USER_MNS_LOGON_ACCOUNT   32
 
#define USER_INTERDOMAIN_TRUST_ACCOUNT   64
 
#define USER_WORKSTATION_TRUST_ACCOUNT   128
 
#define USER_SERVER_TRUST_ACCOUNT   256
 
#define USER_DONT_EXPIRE_PASSWORD   512
 
#define USER_ACCOUNT_AUTO_LOCKED   1024
 
#define USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED   2048
 
#define USER_SMARTCARD_REQUIRED   4096
 
#define USER_TRUSTED_FOR_DELEGATION   8192
 
#define USER_NOT_DELEGATED   16384
 
#define USER_USE_DES_KEY_ONLY   32768
 
#define USER_DONT_REQUIRE_PREAUTH   65536
 
#define USER_MACHINE_ACCOUNT_MASK   448
 
#define USER_ACCOUNT_TYPE_MASK   472
 
#define USER_ALL_PARAMETERS   2097152
 

Typedefs

typedef LONG NTSTATUS
 
typedef LONGPNTSTATUS
 
typedef struct _UNICODE_STRING UNICODE_STRING
 
typedef struct _UNICODE_STRINGPUNICODE_STRING
 
typedef struct _STRING STRING
 
typedef struct _STRINGPSTRING
 
typedef PVOID SAM_HANDLE
 
typedef PVOIDPSAM_HANDLE
 
typedef struct _OLD_LARGE_INTEGER OLD_LARGE_INTEGER
 
typedef struct _OLD_LARGE_INTEGERPOLD_LARGE_INTEGER
 
typedef enum _NETLOGON_LOGON_INFO_CLASS NETLOGON_LOGON_INFO_CLASS
 
typedef struct _CYPHER_BLOCK CYPHER_BLOCK
 
typedef struct _CYPHER_BLOCKPCYPHER_BLOCK
 
typedef struct _CLEAR_BLOCK CLEAR_BLOCK
 
typedef struct _CLEAR_BLOCKPCLEAR_BLOCK
 
typedef struct _LM_OWF_PASSWORD LM_OWF_PASSWORD
 
typedef struct _LM_OWF_PASSWORDPLM_OWF_PASSWORD
 
typedef struct _USER_SESSION_KEY USER_SESSION_KEY
 
typedef struct _USER_SESSION_KEYPUSER_SESSION_KEY
 
typedef CLEAR_BLOCK LM_CHALLENGE
 
typedef CLEAR_BLOCKPLM_CHALLENGE
 
typedef LM_OWF_PASSWORD NT_OWF_PASSWORD
 
typedef LM_OWF_PASSWORDPNT_OWF_PASSWORD
 
typedef LM_CHALLENGE NT_CHALLENGE
 
typedef LM_CHALLENGEPNT_CHALLENGE
 
typedef struct _LOGON_HOURS LOGON_HOURS
 
typedef struct _LOGON_HOURSPLOGON_HOURS
 
typedef struct _SR_SECURITY_DESCRIPTOR SR_SECURITY_DESCRIPTOR
 
typedef struct _SR_SECURITY_DESCRIPTORPSR_SECURITY_DESCRIPTOR
 
typedef struct _USER_ALL_INFORMATION USER_ALL_INFORMATION
 
typedef struct _USER_ALL_INFORMATIONPUSER_ALL_INFORMATION
 
typedef struct _MSV1_0_VALIDATION_INFO MSV1_0_VALIDATION_INFO
 
typedef struct _MSV1_0_VALIDATION_INFOPMSV1_0_VALIDATION_INFO
 
typedef struct _NETLOGON_LOGON_IDENTITY_INFO NETLOGON_LOGON_IDENTITY_INFO
 
typedef struct _NETLOGON_LOGON_IDENTITY_INFOPNETLOGON_LOGON_IDENTITY_INFO
 
typedef struct _NETLOGON_INTERACTIVE_INFO NETLOGON_INTERACTIVE_INFO
 
typedef struct _NETLOGON_INTERACTIVE_INFOPNETLOGON_INTERACTIVE_INFO
 
typedef struct _NETLOGON_GENERIC_INFO NETLOGON_GENERIC_INFO
 
typedef struct _NETLOGON_GENERIC_INFOPNETLOGON_GENERIC_INFO
 
typedef struct _NETLOGON_NETWORK_INFO NETLOGON_NETWORK_INFO
 
typedef struct _NETLOGON_NETWORK_INFOPNETLOGON_NETWORK_INFO
 
typedef struct _NETLOGON_SERVICE_INFO NETLOGON_SERVICE_INFO
 
typedef struct _NETLOGON_SERVICE_INFOPNETLOGON_SERVICE_INFO
 

Enumerations

enum  _NETLOGON_LOGON_INFO_CLASS {
  NetlogonInteractiveInformation = 1, NetlogonNetworkInformation, NetlogonServiceInformation, NetlogonGenericInformation,
  NetlogonInteractiveTransitiveInformation, NetlogonNetworkTransitiveInformation, NetlogonServiceTransitiveInformation, NetlogonInteractiveInformation = 1,
  NetlogonNetworkInformation = 2, NetlogonServiceInformation = 3, NetlogonGenericInformation = 4, NetlogonInteractiveTransitiveInformation = 5,
  NetlogonNetworkTransitiveInformation = 6, NetlogonServiceTransitiveInformation = 7
}
 

Functions

NTSTATUS NTAPI Msv1_0SubAuthenticationRoutine (NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, PULONG, PULONG, PBOOLEAN, PLARGE_INTEGER, PLARGE_INTEGER)
 
NTSTATUS NTAPI Msv1_0SubAuthenticationFilter (NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, PULONG, PULONG, PBOOLEAN, PLARGE_INTEGER, PLARGE_INTEGER)
 
NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineGeneric (PVOID, ULONG, PULONG, PVOID *)
 
NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineEx (NETLOGON_LOGON_INFO_CLASS, PVOID, ULONG, PUSER_ALL_INFORMATION, SAM_HANDLE, PMSV1_0_VALIDATION_INFO, PULONG)
 

Macro Definition Documentation

◆ CLEAR_BLOCK_LENGTH

#define CLEAR_BLOCK_LENGTH   8

Definition at line 13 of file subauth.h.

◆ CYPHER_BLOCK_LENGTH

#define CYPHER_BLOCK_LENGTH   8

Definition at line 11 of file subauth.h.

◆ MSV1_0_GUEST_LOGON

#define MSV1_0_GUEST_LOGON   2

Definition at line 15 of file subauth.h.

◆ MSV1_0_PASSTHRU

#define MSV1_0_PASSTHRU   1

Definition at line 14 of file subauth.h.

◆ MSV1_0_SUBAUTH_ACCOUNT_DISABLED

#define MSV1_0_SUBAUTH_ACCOUNT_DISABLED   1

Definition at line 23 of file subauth.h.

◆ MSV1_0_SUBAUTH_ACCOUNT_EXPIRY

#define MSV1_0_SUBAUTH_ACCOUNT_EXPIRY   16

Definition at line 27 of file subauth.h.

◆ MSV1_0_SUBAUTH_ACCOUNT_TYPE

#define MSV1_0_SUBAUTH_ACCOUNT_TYPE   64

Definition at line 29 of file subauth.h.

◆ MSV1_0_SUBAUTH_LOCKOUT

#define MSV1_0_SUBAUTH_LOCKOUT   128

Definition at line 30 of file subauth.h.

◆ MSV1_0_SUBAUTH_LOGON_HOURS

#define MSV1_0_SUBAUTH_LOGON_HOURS   8

Definition at line 26 of file subauth.h.

◆ MSV1_0_SUBAUTH_PASSWORD

#define MSV1_0_SUBAUTH_PASSWORD   2

Definition at line 24 of file subauth.h.

◆ MSV1_0_SUBAUTH_PASSWORD_EXPIRY

#define MSV1_0_SUBAUTH_PASSWORD_EXPIRY   32

Definition at line 28 of file subauth.h.

◆ MSV1_0_SUBAUTH_WORKSTATIONS

#define MSV1_0_SUBAUTH_WORKSTATIONS   4

Definition at line 25 of file subauth.h.

◆ MSV1_0_VALIDATION_KICKOFF_TIME

#define MSV1_0_VALIDATION_KICKOFF_TIME   2

Definition at line 17 of file subauth.h.

◆ MSV1_0_VALIDATION_LOGOFF_TIME

#define MSV1_0_VALIDATION_LOGOFF_TIME   1

Definition at line 16 of file subauth.h.

◆ MSV1_0_VALIDATION_LOGON_DOMAIN

#define MSV1_0_VALIDATION_LOGON_DOMAIN   8

Definition at line 19 of file subauth.h.

◆ MSV1_0_VALIDATION_LOGON_SERVER

#define MSV1_0_VALIDATION_LOGON_SERVER   4

Definition at line 18 of file subauth.h.

◆ MSV1_0_VALIDATION_SESSION_KEY

#define MSV1_0_VALIDATION_SESSION_KEY   16

Definition at line 20 of file subauth.h.

◆ MSV1_0_VALIDATION_USER_FLAGS

#define MSV1_0_VALIDATION_USER_FLAGS   32

Definition at line 21 of file subauth.h.

◆ MSV1_0_VALIDATION_USER_ID

#define MSV1_0_VALIDATION_USER_ID   64

Definition at line 22 of file subauth.h.

◆ NEXT_FREE_ACCOUNT_CONTROL_BIT

#define NEXT_FREE_ACCOUNT_CONTROL_BIT   131072

Definition at line 31 of file subauth.h.

◆ NT_SUCCESS

#define NT_SUCCESS (   x)    ((x)>=0)

Definition at line 8 of file subauth.h.

◆ SAM_DAYS_PER_WEEK

#define SAM_DAYS_PER_WEEK   7

Definition at line 32 of file subauth.h.

◆ SAM_HOURS_PER_WEEK

#define SAM_HOURS_PER_WEEK   168

Definition at line 33 of file subauth.h.

◆ SAM_MINUTES_PER_WEEK

#define SAM_MINUTES_PER_WEEK   10080

Definition at line 34 of file subauth.h.

◆ STATUS_ACCOUNT_DISABLED

#define STATUS_ACCOUNT_DISABLED   0xC0000072L

Definition at line 44 of file subauth.h.

◆ STATUS_ACCOUNT_EXPIRED

#define STATUS_ACCOUNT_EXPIRED   0xC0000193L

Definition at line 46 of file subauth.h.

◆ STATUS_ACCOUNT_LOCKED_OUT

#define STATUS_ACCOUNT_LOCKED_OUT   0xC0000234L

Definition at line 48 of file subauth.h.

◆ STATUS_ACCOUNT_RESTRICTION

#define STATUS_ACCOUNT_RESTRICTION   0xC000006EL

Definition at line 40 of file subauth.h.

◆ STATUS_INSUFFICIENT_RESOURCES

#define STATUS_INSUFFICIENT_RESOURCES   0xC000009AL

Definition at line 45 of file subauth.h.

◆ STATUS_INVALID_INFO_CLASS

#define STATUS_INVALID_INFO_CLASS   0xC0000003L

Definition at line 35 of file subauth.h.

◆ STATUS_INVALID_LOGON_HOURS

#define STATUS_INVALID_LOGON_HOURS   0xC000006FL

Definition at line 41 of file subauth.h.

◆ STATUS_INVALID_WORKSTATION

#define STATUS_INVALID_WORKSTATION   0xC0000070L

Definition at line 42 of file subauth.h.

◆ STATUS_LOGON_FAILURE

#define STATUS_LOGON_FAILURE   0xC000006DL

Definition at line 39 of file subauth.h.

◆ STATUS_NO_SUCH_USER

#define STATUS_NO_SUCH_USER   0xC0000064L

Definition at line 36 of file subauth.h.

◆ STATUS_PASSWORD_EXPIRED

#define STATUS_PASSWORD_EXPIRED   0xC0000071L

Definition at line 43 of file subauth.h.

◆ STATUS_PASSWORD_MUST_CHANGE

#define STATUS_PASSWORD_MUST_CHANGE   0xC0000224L

Definition at line 47 of file subauth.h.

◆ STATUS_PASSWORD_RESTRICTION

#define STATUS_PASSWORD_RESTRICTION   0xC000006CL

Definition at line 38 of file subauth.h.

◆ STATUS_SUCCESS

#define STATUS_SUCCESS   0

Definition at line 9 of file subauth.h.

◆ STATUS_WRONG_PASSWORD

#define STATUS_WRONG_PASSWORD   0xC000006AL

Definition at line 37 of file subauth.h.

◆ USER_ACCOUNT_AUTO_LOCKED

#define USER_ACCOUNT_AUTO_LOCKED   1024

Definition at line 59 of file subauth.h.

◆ USER_ACCOUNT_DISABLED

#define USER_ACCOUNT_DISABLED   1

Definition at line 49 of file subauth.h.

◆ USER_ACCOUNT_TYPE_MASK

#define USER_ACCOUNT_TYPE_MASK   472

Definition at line 67 of file subauth.h.

◆ USER_ALL_PARAMETERS

#define USER_ALL_PARAMETERS   2097152

Definition at line 68 of file subauth.h.

◆ USER_DONT_EXPIRE_PASSWORD

#define USER_DONT_EXPIRE_PASSWORD   512

Definition at line 58 of file subauth.h.

◆ USER_DONT_REQUIRE_PREAUTH

#define USER_DONT_REQUIRE_PREAUTH   65536

Definition at line 65 of file subauth.h.

◆ USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED

#define USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED   2048

Definition at line 60 of file subauth.h.

◆ USER_HOME_DIRECTORY_REQUIRED

#define USER_HOME_DIRECTORY_REQUIRED   2

Definition at line 50 of file subauth.h.

◆ USER_INTERDOMAIN_TRUST_ACCOUNT

#define USER_INTERDOMAIN_TRUST_ACCOUNT   64

Definition at line 55 of file subauth.h.

◆ USER_MACHINE_ACCOUNT_MASK

#define USER_MACHINE_ACCOUNT_MASK   448

Definition at line 66 of file subauth.h.

◆ USER_MNS_LOGON_ACCOUNT

#define USER_MNS_LOGON_ACCOUNT   32

Definition at line 54 of file subauth.h.

◆ USER_NORMAL_ACCOUNT

#define USER_NORMAL_ACCOUNT   16

Definition at line 53 of file subauth.h.

◆ USER_NOT_DELEGATED

#define USER_NOT_DELEGATED   16384

Definition at line 63 of file subauth.h.

◆ USER_PASSWORD_NOT_REQUIRED

#define USER_PASSWORD_NOT_REQUIRED   4

Definition at line 51 of file subauth.h.

◆ USER_SERVER_TRUST_ACCOUNT

#define USER_SERVER_TRUST_ACCOUNT   256

Definition at line 57 of file subauth.h.

◆ USER_SESSION_KEY_LENGTH

#define USER_SESSION_KEY_LENGTH   (CYPHER_BLOCK_LENGTH*2)

Definition at line 12 of file subauth.h.

◆ USER_SMARTCARD_REQUIRED

#define USER_SMARTCARD_REQUIRED   4096

Definition at line 61 of file subauth.h.

◆ USER_TEMP_DUPLICATE_ACCOUNT

#define USER_TEMP_DUPLICATE_ACCOUNT   8

Definition at line 52 of file subauth.h.

◆ USER_TRUSTED_FOR_DELEGATION

#define USER_TRUSTED_FOR_DELEGATION   8192

Definition at line 62 of file subauth.h.

◆ USER_USE_DES_KEY_ONLY

#define USER_USE_DES_KEY_ONLY   32768

Definition at line 64 of file subauth.h.

◆ USER_WORKSTATION_TRUST_ACCOUNT

#define USER_WORKSTATION_TRUST_ACCOUNT   128

Definition at line 56 of file subauth.h.

Typedef Documentation

◆ CLEAR_BLOCK

◆ CYPHER_BLOCK

◆ LM_CHALLENGE

Definition at line 105 of file subauth.h.

◆ LM_OWF_PASSWORD

◆ LOGON_HOURS

◆ MSV1_0_VALIDATION_INFO

◆ NETLOGON_GENERIC_INFO

◆ NETLOGON_INTERACTIVE_INFO

◆ NETLOGON_LOGON_IDENTITY_INFO

◆ NETLOGON_LOGON_INFO_CLASS

◆ NETLOGON_NETWORK_INFO

◆ NETLOGON_SERVICE_INFO

◆ NT_CHALLENGE

Definition at line 107 of file subauth.h.

◆ NT_OWF_PASSWORD

Definition at line 106 of file subauth.h.

◆ NTSTATUS

typedef LONG NTSTATUS

Definition at line 70 of file subauth.h.

◆ OLD_LARGE_INTEGER

◆ PCLEAR_BLOCK

◆ PCYPHER_BLOCK

◆ PLM_CHALLENGE

Definition at line 105 of file subauth.h.

◆ PLM_OWF_PASSWORD

◆ PLOGON_HOURS

◆ PMSV1_0_VALIDATION_INFO

◆ PNETLOGON_GENERIC_INFO

◆ PNETLOGON_INTERACTIVE_INFO

◆ PNETLOGON_LOGON_IDENTITY_INFO

◆ PNETLOGON_NETWORK_INFO

◆ PNETLOGON_SERVICE_INFO

◆ PNT_CHALLENGE

Definition at line 107 of file subauth.h.

◆ PNT_OWF_PASSWORD

Definition at line 106 of file subauth.h.

◆ PNTSTATUS

typedef LONG * PNTSTATUS

Definition at line 70 of file subauth.h.

◆ POLD_LARGE_INTEGER

◆ PSAM_HANDLE

typedef PVOID * PSAM_HANDLE

Definition at line 82 of file subauth.h.

◆ PSR_SECURITY_DESCRIPTOR

◆ PSTRING

typedef struct _STRING * PSTRING

◆ PUNICODE_STRING

◆ PUSER_ALL_INFORMATION

◆ PUSER_SESSION_KEY

◆ SAM_HANDLE

typedef PVOID SAM_HANDLE

Definition at line 82 of file subauth.h.

◆ SR_SECURITY_DESCRIPTOR

◆ STRING

◆ UNICODE_STRING

◆ USER_ALL_INFORMATION

◆ USER_SESSION_KEY

Enumeration Type Documentation

◆ _NETLOGON_LOGON_INFO_CLASS

Enumerator
NetlogonInteractiveInformation 
NetlogonNetworkInformation 
NetlogonServiceInformation 
NetlogonGenericInformation 
NetlogonInteractiveTransitiveInformation 
NetlogonNetworkTransitiveInformation 
NetlogonServiceTransitiveInformation 
NetlogonInteractiveInformation 
NetlogonNetworkInformation 
NetlogonServiceInformation 
NetlogonGenericInformation 
NetlogonInteractiveTransitiveInformation 
NetlogonNetworkTransitiveInformation 
NetlogonServiceTransitiveInformation 

Definition at line 87 of file subauth.h.

Function Documentation

◆ Msv1_0SubAuthenticationFilter()

NTSTATUS NTAPI Msv1_0SubAuthenticationFilter ( NETLOGON_LOGON_INFO_CLASS  ,
PVOID  ,
ULONG  ,
PUSER_ALL_INFORMATION  ,
PULONG  ,
PULONG  ,
PBOOLEAN  ,
PLARGE_INTEGER  ,
PLARGE_INTEGER   
)

◆ Msv1_0SubAuthenticationRoutine()

NTSTATUS NTAPI Msv1_0SubAuthenticationRoutine ( NETLOGON_LOGON_INFO_CLASS  ,
PVOID  ,
ULONG  ,
PUSER_ALL_INFORMATION  ,
PULONG  ,
PULONG  ,
PBOOLEAN  ,
PLARGE_INTEGER  ,
PLARGE_INTEGER   
)

◆ Msv1_0SubAuthenticationRoutineEx()

NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineEx ( NETLOGON_LOGON_INFO_CLASS  ,
PVOID  ,
ULONG  ,
PUSER_ALL_INFORMATION  ,
SAM_HANDLE  ,
PMSV1_0_VALIDATION_INFO  ,
PULONG   
)

◆ Msv1_0SubAuthenticationRoutineGeneric()

NTSTATUS NTAPI Msv1_0SubAuthenticationRoutineGeneric ( PVOID  ,
ULONG  ,
PULONG  ,
PVOID  
)