windows-nt/Source/XPSP1/NT/net/rras/ipx/rip/globals.c

117 lines
2.1 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
globals.c
Abstract:
globals
Author:
Stefan Solomon 07/06/1995
Revision History:
--*/
#include "precomp.h"
#pragma hdrstop
// *** registry parameters
ULONG SendGenReqOnWkstaDialLinks = 1;
ULONG CheckUpdateTime = 10;
// *** broadcast and null values for net & node ***
UCHAR bcastnet[4] = { 0xff, 0xff, 0xff, 0xff };
UCHAR bcastnode[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
UCHAR nullnet[4] = { 0, 0, 0, 0 };
// *** Rip operational state ***
ULONG RipOperState = OPER_STATE_DOWN;
//
// *** Database Lock - protects: ***
//
// Interface Database, i.e:
//
// List of interface CBs ordered by interface index
// Hash table of interface CBs hashed by interface index
// Hash table of interface CBs hashed by adapter index
// Discarded interfaces list
//
CRITICAL_SECTION DbaseCritSec;
// List of interface CBs ordered by interface index
LIST_ENTRY IndexIfList;
// Hash table of interface CBs hashed by interface index
LIST_ENTRY IfIndexHt[IF_INDEX_HASH_TABLE_SIZE];
// Hash table of interface CBs hashed by adapter index
LIST_ENTRY AdapterIndexHt[ADAPTER_INDEX_HASH_TABLE_SIZE];
// List of discarded interface CBs waiting for all references to terminate
// before being freed
LIST_ENTRY DiscardedIfList;
// *** Queues Lock - protects: ***
//
// Repost receive packets queue
// Work items queue
// Timer queue
//
// Receiver ref count
// Queue of event messages for the router manager
CRITICAL_SECTION QueuesCritSec;
// workers queue
// LIST_ENTRY WorkersQueue;
// timer queue
LIST_ENTRY TimerQueue;
// queue of rcv packets used by the worker and waiting to be reposted (or freed)
// by the rcv thread
LIST_ENTRY RepostRcvPacketsQueue;
// queue of event messages
LIST_ENTRY RipMessageQueue;
//*** Worker Thread Wait Objects Table ***
HANDLE WorkerThreadObjects[MAX_WORKER_THREAD_OBJECTS];
//*** Timer Timeout ***
ULONG TimerTimeout = INFINITE;
// IO Handle
HANDLE RipSocketHandle;
// Io Completion Port
HANDLE IoCompletionPortHandle;