windows-nt/Source/XPSP1/NT/net/config/netman/eapol/service/elglobals.h
2020-09-26 16:20:57 +08:00

136 lines
2.9 KiB
C

/*++
Copyright (c) 1999, Microsoft Corporation
Module Name:
elglobals.h
Abstract:
This module contains declaration of global variables
Revision History:
sachins, Apr 23 2000, Created
--*/
#ifndef _EAPOL_GLOBALS_H_
#define _EAPOL_GLOBALS_H_
// Current count of allocated PCBs
ULONG g_MaxPorts;
// Global read-write lock for PCB Hash bucket list
READ_WRITE_LOCK g_PCBLock;
// Structure used to define hash-table entities
typedef struct _PCB_BUCKET
{
EAPOL_PCB *pPorts;
} PCB_BUCKET, *PPCB_BUCKET;
typedef struct _PCB_TABLE
{
PCB_BUCKET *pPCBBuckets;
DWORD dwNumPCBBuckets;
} PCB_TABLE, *PPCB_TABLE;
// EAPOL PCB table
PCB_TABLE g_PCBTable;
// Handle to event log
HANDLE g_hLogEvents;
// Identifier of trace output
DWORD g_dwTraceId;
// Service Control Manager handle
SC_HANDLE g_hServiceCM;
// NDISUIO service handle
SC_HANDLE g_hNDISUIOService;
// Global Heap from which memory will be allocated
HANDLE g_hGlobalHeap;
// Pool of reusable read-write locks
PDYNAMIC_LOCKS_STORE g_dlsDynamicLockStore;
// Global indication as to whether user has logged on
ULONG g_fUserLoggedOn;
// Global indication as to whether netman is autostart and thereby
// machine auth supported or not
DWORD g_dwMachineAuthEnabled;
// Global timer queue for queueing timers using thread pool
HANDLE g_hTimerQueue;
//
// EAPOL globals
//
// Max number of EAPOL_STARTs that can be sent out without response
DWORD g_dwmaxStart;
// Default time interval in secs between two EAPOL_STARTs
DWORD g_dwstartPeriod;
// Default time interval in secs between sending EAP_Resp/Id and not
// receiving any authenticator packet
DWORD g_dwauthPeriod;
// Default time in secs held in case of received EAP_Failure
DWORD g_dwheldPeriod;
// Global read-write lock for EAPOL configuration
READ_WRITE_LOCK g_EAPOLConfig;
//
// EAP Globals
//
// Table containing pointer to functions of different EAP dlls
EAP_INFO *g_pEapTable;
// Number of EAP protocols for which DLLs are loaded
DWORD g_dwNumEapProtocols;
DWORD g_dwGuid;
//
// EAPOL service globals
//
// Event to exit main service thread
HANDLE g_hStopService;
// Event to indicate shutdown of EAPOL module and cleanup threads
HANDLE g_hEventTerminateEAPOL;
SERVICE_STATUS_HANDLE g_hServiceStatus;
SERVICE_STATUS g_ServiceStatus;
DWORD g_dwModulesStarted;
// Global values for NLA
HANDLE g_hNLA_LPC_Port;
PORT_VIEW g_ClientView;
READ_WRITE_LOCK g_NLALock;
#endif // _EAPOL_GLOBALS_H_